scipy.signal.convolve 使用 'same' 时翻转结果轴
scipy.signal.convolve flips axis in result when using 'same'
我正在使用 scipy.signal.convolve 将简单的滤镜应用于灰度图片
我的输入如下:
kk -> 文件管理器 (2x2)
im -> 图片 (500x800) 通过 pillow
打开
>>> from scipy.signal import convolve as cv
>>> kk
[[1, 2], [1, 2]]
>>> im.size
(500, 800)
>>> cvRes = cv(im,kk,'same')
当我应用卷积时,我期望结果的形状为 (500,800),即与输入图像 (im) 相同,但结果的形状为 (800,500)。
>>> cvRes = cv(im,kk,'same')
>>> cvRes.shape
(800, 500)
我对这个输出有点困惑,我想我可能遗漏了一些东西或者误解了库应该如何工作。
感谢任何关于如何获得非翻转输出和如果我在尝试获取单个像素的值时可以翻转 x/y?
谢谢!
这是 PIL 的副作用。大小为 (800,500) 的 PIL 图像有 500 行 800 列。当它变成一个 numpy 数组时,它的形状为 (500,800)。所以,并不是数组被转置,而是两个模块对轴的编号不同。
我正在使用 scipy.signal.convolve 将简单的滤镜应用于灰度图片
我的输入如下:
kk -> 文件管理器 (2x2)
im -> 图片 (500x800) 通过 pillow
>>> from scipy.signal import convolve as cv
>>> kk
[[1, 2], [1, 2]]
>>> im.size
(500, 800)
>>> cvRes = cv(im,kk,'same')
当我应用卷积时,我期望结果的形状为 (500,800),即与输入图像 (im) 相同,但结果的形状为 (800,500)。
>>> cvRes = cv(im,kk,'same')
>>> cvRes.shape
(800, 500)
我对这个输出有点困惑,我想我可能遗漏了一些东西或者误解了库应该如何工作。
感谢任何关于如何获得非翻转输出和如果我在尝试获取单个像素的值时可以翻转 x/y?
谢谢!
这是 PIL 的副作用。大小为 (800,500) 的 PIL 图像有 500 行 800 列。当它变成一个 numpy 数组时,它的形状为 (500,800)。所以,并不是数组被转置,而是两个模块对轴的编号不同。