gpt4 book ai didi

python - 多个图像的时间中值图像

转载 作者:太空宇宙 更新时间:2023-11-03 21:27:04 26 4
gpt4 key购买 nike

除了使用 np.median(array) 计算每个像素的中值外,还有其他方法可以计算多幅图像的中值图像吗?

我知道已经有一个 question about this ,但这是 3 年前的事了,也许什么都发生了。

最佳答案

下面是将 3 个玩具图像放入(高度)x(宽度)x(图像数量)数组然后沿(图像数量)调用 numpy.median 的方法示例轴(如果图像按时间顺序沿其排列,则为时间轴)。

In [1]: img1 = np.array([[1, 2], [3, 4]])

In [2]: img2 = np.array([[10, 6], [1, 0]])

In [3]: img3 = np.array([[8, 1], [0, 4]])

In [4]: images = np.zeros(shape=img1.shape + (3,))

In [5]: images[:,:,0] = img1

In [6]: images[:,:,1] = img2

In [7]: images[:,:,2] = img3

In [8]: images
Out[8]:
array([[[ 1., 10., 8.],
[ 2., 6., 1.]],

[[ 3., 1., 0.],
[ 4., 0., 4.]]])

In [9]: images[:,:,0]
Out[9]:
array([[ 1., 2.],
[ 3., 4.]])

In [10]: np.median(images, axis=2)
Out[10]:
array([[ 8., 2.],
[ 1., 4.]])

numpy.dstack 函数可以方便地处理第 4-7 行。这将是等价的:

images = np.dstack((img1, img2, img3))

这是将二维图像读入列表或从文件中按顺序读取的常用方式,将追加数据结构以增量方式增长。虽然,预分配 slab of zeros 并在加载时按顺序插入数据通常效率更高。

关于python - 多个图像的时间中值图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28682985/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com