1. 程式人生 > >數字影象處理MATLAB函式詳解

數字影象處理MATLAB函式詳解

函式詳解——padarray(matlab)

padarray功能:填充影象或填充陣列。

padarray用法:B = padarray(A,padsize,padval,direction)
       A為輸入影象,B為填充後的影象,padsize給出了給出了填充的行數和列數,通常用[r c]來表示。padval和direction分別表示填充方法和方向。它們的具體值和描述如下:
  padval:'symmetric'表示影象大小通過圍繞邊界進行映象反射來擴充套件;
                     'replicate'表示影象大小通過複製外邊界中的值來擴充套件;
                     'circular'影象大小通過將影象看成是一個二維周期函式的一個週期來進行擴充套件。

       direction:'pre'表示在每一維的第一個元素前填充;
                        'post'表示在每一維的最後一個元素後填充;
                        'both'表示在每一維的第一個元素前和最後一個元素後填充,此項為預設值。
       若參量中不包括direction,則預設值為'both'。若參量中不包含padval,則預設用零來填充。若參量中不包括任何引數,則預設填充為零且方向為'both'。在計算結束時,影象會被修剪成原始大小。

函式詳解——指令註釋

1.f=imread('filename')   將圖片以矩陣的形式儲存,圖片需要在matlab路徑下。

其中,filename包含檔案格式(‘dog.jpg’)無關圖片的形式。

2.imshow(f)  將讀入的圖片顯示出來,也可直接imshow('filename');imshow(f,[low high]) f中小於low與low相同處理定義為black,對於大於high的與high同處理定義為white;imshow(f,[]) 將f中最小的元素設定為low,最大元素設定為high,按照線性規則進行一一對映

3.imwrite(f,'filename') 將此時f矩陣所表示的圖片寫入'filename'中。

 imwrite(f,'filename.jpg','quality','q')   q界於(0,100)之間,q的值越小圖片退化越嚴重,僅適應於jpg格式圖片。

4.B=logical(A),將數值陣列轉化為二值影象,將A中所有非0的值轉化為邏輯1,0轉化為邏輯0,islogical(B)可用於檢測邏輯陣列,非邏輯陣列返回0;

5.數值型別轉換 im2uint8():轉換為無符號8位整型;im2uint16()轉化為無符號16位整型;im2double()轉化為雙精度浮點型別;im2single()轉換為單精度浮點型別;mat2gray()將影象轉換為[0,1]範圍的double陣列;

g=mat2gray(A,[Amin,Amax])  A中小於Amin的轉換為0,大於Amax的為1;

6.mean2(f) 取f中全部元素的平均值;mean=mean(f,1) 計算f中的全部列元素平均值,返回行向量;mean(f,2) 計算f中的全部行元素平均值,返回列向量;

7.size(A) 輸出矩陣A的行數和列數;size(A,1) 輸出矩陣A的行數;size(A,2) 輸出矩陣A的列數

8.numel(A) 返回陣列A中的元素個數

9.M=1:20:100與M=linspace(1,100,5)等效

10.zeros(n) 生成n階元素全部為0的方陣;zeros(n,m) 生成n*m元素全部為0的矩陣