我的图像阅读有问题。我想确保在matlab中可以读取和显示多大的图像?可以显示像(12689,4562,7)这样的巨大图像。如果没有,我如何检查这个图像是否在matlab中正确加载?
非常感谢
答案 0 :(得分:2)
这里有两个问题:
第一个问题的答案是它取决于您的RAM和操作系统的数量。第二个问题的答案是Matlab(或任何程序)在显示之前缩小图像,因为图像上没有那么多像素。所以这取决于内部算法,再取决于你的RAM数量。
答案 1 :(得分:0)
此类图像所需的RAM数量为(假设为8位/像素(uint8
)):
12689*4562*7 / 1e6 = 405.2 MB
您的Matlab版本中单个矩阵可以包含的元素数量:
[~, numEls] = computer;
在我的32位R2010b上是2.147483647e+09
。这远远超过12689*4562*7
,所以原则上,如果你有406GB的未使用的RAM,你应该能够将整个图像加载到RAM中。并且原则上,显示所述图像将涉及一些额外的RAM(并且可能需要 looong 时间),但是应该是可能的(除了显示图像的事实) 7色层不是非常标准的AFAIK)。