1. 程式人生 > >Matlab之imfilter()詳解

Matlab之imfilter()詳解

Imfilter(Img,filter) Img:待處理矩陣 filter:濾波器 其實imfilter(Img,filter)的這個方法的實現原理是很簡單的,下面通過一個例項來說明: Img:(5*5的矩陣) Img =    90    29    33   12      9    19    39     0   37     84
   29     2    21   14      8    39    84    88   21     24   392     8     5   32     58
imfilter:(3*3的濾波器) imfilter = 0.0400    0.1000    0.0600 0.1000    0.2500    0.1500 0.0600    0.1500    0.0900 若要處理Img(1,1),實際就要用到Img(1,2),Img(2,1),Img(2,2)來得到,下面我將用Img’來表示處理後的值,即 Img’(1,1) = Img(1,1)*imfilter(1,1) + Img(1,2)*imfilter(1,2) +
Img(2,1)*imfilter(2,1) + Img(2,2)*imfilter(2,2) 若要處理Img(2,2),實際就要用到Img(1,1),Img(1,2),Img(1,3),Img(2,3),Img(2,1),Img(3,1),Img(3,2),Img(3,3)來得到,下面我將用Img’來表示處理後的值,即 Img’(2,2) = Img(1,1)*imfilter(1,1) + Img(1,2)*imfilter(1,2) + Img(1,3)*imfilter(1,3) + Img(2,1)*imfilter(2,1) + Img(2,2)*imfilter(2,2) + Img(2,3)*imfilter(2,3) +   Img(3,1)*imfilter(3,1) + Img(3,2)*imfilter(3,2) + Img(3,3)*imfilter(3,3) 綜上,即在處理時只要把濾波器的中心點和要處理的點重合,然後把能夠重合的所有Img和imfilter的值相乘即可得到想要的值