Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python array从图像创建列主矩阵_Python_Image_Numpy_Column Major Order - Fatal编程技术网

Python array从图像创建列主矩阵

Python array从图像创建列主矩阵,python,image,numpy,column-major-order,Python,Image,Numpy,Column Major Order,我试图在python中打开一个960(宽)x640(高)像素的矩阵图像 由于某些原因,在运行以下行之后: originalImage = Image.open('fat_zack.jpg') originalImageMatrix = numpy.asarray(originalImage) originalImageMatrix的大小为(640960,3),我必须通过在行坐标之前提供列坐标来访问其元素 如果我尝试执行以下操作:originalImageMatrix[959][1][1]我会得

我试图在python中打开一个960(宽)x640(高)像素的矩阵图像

由于某些原因,在运行以下行之后:

originalImage = Image.open('fat_zack.jpg')
originalImageMatrix = numpy.asarray(originalImage)
originalImageMatrix
的大小为
(640960,3)
,我必须通过在行坐标之前提供列坐标来访问其元素

如果我尝试执行以下操作:
originalImageMatrix[959][1][1]
我会得到以下错误:

IndexError: index 959 is out of bounds for axis 0 with size 640

你知道我遗漏了什么吗?

用Matt Pitkin的解决方案->originalImageMatrix.swapaxes(0,1)修复了它


但是,我仍然不知道是什么导致了这个问题。

正如您所说,第一个坐标最多有640行。第二个高达960。问题是图像有640列,而不是行,高度设置为第一维度,而不是宽度。您可以使用Numpy交换第0轴和第1轴。图像的高度为640。以数组形式表示,即640行。使用
arr[639,0,:]