Python 如何在Scipy中移动图像?

Python 如何在Scipy中移动图像?,python,numpy,scipy,scikit-image,Python,Numpy,Scipy,Scikit Image,我正在尝试使用以下代码翻译图像 im = io.imread("path/to/my/image.jpg") shift_image = scipy.ndimage.shift(im, np.array([1, 2])) 我正在使用浏览阅读图像 我得到以下错误 RuntimeError: sequence argument must have length equal to input rank 名称ndimage(其中包含“n维”)表明,包不会假设图像是二维的,任何其他维都意味着其他东西。

我正在尝试使用以下代码翻译图像

im = io.imread("path/to/my/image.jpg")
shift_image = scipy.ndimage.shift(im, np.array([1, 2]))
我正在使用
浏览
阅读图像

我得到以下错误

RuntimeError: sequence argument must have length equal to input rank

名称
ndimage
(其中包含“n维”)表明,包不会假设图像是二维的,任何其他维都意味着其他东西。毕竟,3D图像(MRI)是一种东西。因此,实际上,它是用一个抽象的n维数组操作的。对于二维RGB图像,由于有三个颜色通道,因此形状为
(高度、宽度3)
。因此,移位将是
[1,2,0]

名称
ndimage
(其中包含“n维”)表明该软件包不会假设图像是二维的,任何其他维都意味着其他东西。毕竟,3D图像(MRI)是一种东西。因此,实际上,它是用一个抽象的n维数组操作的。对于二维RGB图像,由于有三个颜色通道,因此形状为
(高度、宽度3)
。因此,移位将是
[1,2,0]

什么是
im.shape
?如果它是一个RGB图像,这是通道的第三维度。是的,这就是错误!我想既然包名为
ndimage
,它会对所有通道应用移位。什么是
im.shape
?如果它是一个RGB图像,这是通道的第三维度。是的,这就是错误!我认为,由于包名为
ndimage
,它将对所有通道应用移位。