我正在嘗試查找已加載到matlab中的圖像的大小。圖像的Matlab大小
image=imread('text.jpg');
[x,y]=size(image);
這將返回錯誤:
Indexing cannot yield multiple results.
是否imread不能閱讀圖像到一個二維數組,因此它應該有兩個尺寸?
我正在嘗試查找已加載到matlab中的圖像的大小。圖像的Matlab大小
image=imread('text.jpg');
[x,y]=size(image);
這將返回錯誤:
Indexing cannot yield multiple results.
是否imread不能閱讀圖像到一個二維數組,因此它應該有兩個尺寸?
只要使用這個whos
,然後按回車。
image=imread('text.jpg');
whos
對於那些希望找到在Matlab的圖像的大小,不使用:
[height, width] = size(image);
這是因爲imread存儲的RGB值分別(用於彩色圖像),產生了三維矩陣。
例如,如果您加載500p高200p寬的彩色圖像,則會產生500x200x3的矩陣。
以這種方式調用size()將導致維度被「捲起」,並將報告高度爲500,但寬度爲600(200 * 3)。
相反,使用:
[height, width, dim] = size(image);
將返回500正確的值,200,3
[X,Y,Z] =尺寸(圖像); 是正確的。 x和y將給出圖像的長度和寬度,z指定顏色。
數字圖像由RGB組成,因此z將爲3.
您的代碼對我來說確實很好。您是否嘗試過使用imfinfo來查看文件中的內容? – 2012-03-04 13:12:57