假设我们读入了一张200*200的可爱的猫猫图,其起名为I,并为了后续处理将其转换为double
( ⓛ ω ⓛ *)
(都已经2021年了咱实在是不想去看一张灰度图像了)
那么在matlab中这张图像是这样子存储的
200*200*3
此时若用size得到这张图片的尺寸会得到
和显示的一致的
但如果在函数使用时不注意的话,常见的一个错误使用是这样的
可以看到我们本来想得到的是200*200但若前面只有两个参数接受数据的话实际上得到的是200和200*3
若要正确得到200*200则应该改为
这样一来前两个数就是返回的图像的长和宽了,这与人的惯性思维一致
这个问题也可能是你会在处理彩色图像时会莫名其妙得到一个三倍长度的重复了三遍的结果的原因