Arrays 将NXM阵列重塑为MxNxN

Arrays 将NXM阵列重塑为MxNxN,arrays,image,matlab,reshape,Arrays,Image,Matlab,Reshape,我有一个25000个图像阵列,尺寸为128x128。我希望它的大小为25000x128x128,而不是128x128x25000。在Matlab中重塑它: data_reshaped = reshape(data, 25000, 128, 128) 其中,数据的尺寸为128x128x25000。但是,当我试图用imshow(挤压(数据整形(1,:,:))可视化数据整形中的一个图像时,我得到了一个损坏的图像 您将要执行的操作“更改形状”与函数名“重塑”混淆了。您要做的是更改尺寸标注的顺序,保持形

我有一个25000个图像阵列,尺寸为128x128。我希望它的大小为25000x128x128,而不是128x128x25000。在Matlab中重塑它:

data_reshaped = reshape(data, 25000, 128, 128)
其中,
数据
的尺寸为128x128x25000。但是,当我试图用
imshow(挤压(数据整形(1,:,:))
可视化
数据整形中的一个图像时,我得到了一个损坏的图像


您将要执行的操作“更改形状”与函数名“
重塑”
混淆了。您要做的是更改尺寸标注的顺序,保持形状不变

data_reshaped = permute(data,[3 2 1]);
可能是你寻求的解决方案,否则请尝试

data_reshaped = permute(data,[3 1 2]);

我想你是想改变它,而不是重塑它。@AnderBiguri或
shiftim
谢谢!两种解决方案都有效。