MATLAB數字影象處理學習筆記之一——讀取、顯示、儲存影象
最近學習岡薩雷斯的數字影象處理(MATLAB),隨手寫個學習筆記,以備以後複習~
1、讀取影象
imread('filename'); %filename是一個含有影象檔案全名的字串(包含任何可用副檔名)
插一句:filename也可以是一個包含相對路徑或者是絕對路徑的字串,比如:
>> f=imread('.\myimages\pic.jpg');
表示從當前的工作目錄中名為myimages的子目錄中讀取影象檔案pic.jpg。
函式size可給出一幅影象的行數和列數:
使用[M,N] = size(f); 該語法將返回影象的行數M和列數N,該函式很有用。
2、顯示影象
在MATLAB桌面上一把使用函式imshow來顯示,該函式的基本語法為:
imshow(f , G)
f是一個影象陣列,也可以是一個字串;G是顯示該影象的灰度級數,如省略,則預設的灰度級數是256。
imshow(f , [low high])
會將所有小於或者等於low的值都顯示為黑色,所有大於或者等於high的值都顯示為白色。
inshow(f , [ ]);
可以將變數low設定為陣列f的最小值,將變數high設定為陣列f的最大值。這一形式在顯示一幅動態範圍較小的影象或者是基友正值又有負值的影象時非常有用。
Ps:函式imshow命令列結尾處的分號對結果無影響。(一般情況下命令列中分號的作用是取消一個命令列的輸出)
figure函式
figure函式用於保持第一幅影象並同時顯示第二幅影象。比如:
注意:沒想多顯示一幅影象,就要在顯示語句之前加一個figure。
3、儲存影象
3.1 imwrite函式
語法: imwrite(f , 'filename');
f是一個影象陣列,filename中包含的字串必須是一個可以識別的檔案格式的副檔名。
若filename中不包含路徑資訊,則imwrite會將檔案儲存到當前的工作目錄中。
3.2 imfinfo函式
使用imfinfo函式可以將影象的詳細資訊存入結構變數中,以便於後續的計算。例如:
存入影象資訊的K是一個結構體變數,可以用點號運算子訪問其結構體成員。
在命令列直接鍵入:imfinfo filename 結果是在螢幕上顯示出資訊。