Python中图像矩阵尺寸的异常顺序

时间:2018-11-30 15:43:03

标签: python-3.x matlab

我下载了一个数据集,其中包含一个名为“ depths.mat”的MATLAB文件,该文件包含一个尺寸为480 x 640 x 1449的3维矩阵。实际上是1449张图像,每个图像的尺寸为640 x 480。使用scipy库将其加载到python中,但问题是尺寸的异常顺序。这使Python认为有480张尺寸为640 x 1449的图像。我试图在python中重塑矩阵,但是简单的重塑操作并不能解决我的问题。

欢迎提出任何建议。谢谢。

1 个答案:

答案 0 :(得分:2)

您误会了。您不想重塑形状,而是想要对其进行转置。在MATLAB中,数组为\%#=1,而在python中,数组为A(x,y,z)。确保一旦加载了整个矩阵,就可以更改第一个和最后一个尺寸。

您可以使用P[z,y,x]函数来执行此操作,但要注意!它不会进行复制也不会更改数据,只是更改swapaxes的更高级别索引访问内部存储器的方式。如果您有足够的RAM,最好的机会就是复制并转储原始文件。