影像處理之基礎---卷積模板簡介

來源:互聯網
上載者:User

標籤:blog   http   使用   io   strong   問題   html   log   

1.使用模板處理映像相關概念:      

     模板:矩陣方塊,其數學含義是一種卷積運算。

  卷積運算:可看作是加權求和的過程,使用到的映像地區中的每個像素分別與卷積核(權矩陣)的每個元素對應相乘,所有乘積之和作為地區中心像素的新值。

     卷積核:卷積時使用到的權,用一個矩陣表示,該矩陣與使用的映像地區大小相同,其行、列都是奇數,是一個權矩陣。

     卷積樣本:

             假設3 * 3的像素地區R與卷積核G分別為:

 

則卷積運算為:

              R5(中心像素)=R1G1 + R2G2 + R3G3 + R4G4 + R5G5 + R6G6 + R7G7 + R8G8 + R9G9

           

 

2、使用模板處理映像時涉及到的問題:

      邊界問題:當處理映像邊界像素時,卷積核與映像使用地區不能匹配,卷積核的中心與邊界像素點對應,卷積運算將出現問題。

      處理辦法:

              A.忽略邊界像素,即處理後的映像將丟掉這些像素。

              B.保留原邊界像素,即copy邊界像素到處理後的映像。

 

3、常用模板:

      (a)低通濾波器

                             
 

   (b)高通濾波器                 

                       

   (c)平移和差分邊緣檢測

                      

    (d)匹配濾波邊緣檢測

                       

 

    (e)邊緣檢測

                           

 

    (f)梯度方向邊緣檢測

                      

 

 

                     

 

 

        

 

4、我們來看一下一維卷積的概念.

    卷積(convolution,另一個通用名稱是德文的Faltung)的名稱由來,是在於當初定義它時,定義成integ(f1(v)*f2(t-v))dv,積分區間在0到t之間。舉個簡單的例子,大家可以看到,為什麼叫“卷積”了。比方說在(0,100)間積分,用簡單的辛普生積分公式,積分區間分成100等分,那麼看到的是f1(0)和f2(100)相乘,f1(1)和f2(99)相乘,f1(2)和f2(98)相乘,.........等等等等,就象是在座標軸上回卷一樣。所以人們就叫它“回卷積分”,或者“卷積”了。

    連續空間的卷積定義是f(x)與g(x)的卷積是f(t-x)g(x)在t從負無窮到正無窮的積分值.t-x要在f(x)定義域內,所以看上去很大的積分實際上還是在一定範圍的.
       實際的過程就是f(x)先做一個Y軸的反轉,然後再沿X軸平移t就是f(t-x),然後再把g(x)拿來,兩者乘積的值再積分.想象一下如果g(x)或者f(x)是個單位的階越函數.那麼就是f(t-x)與g(x)相交部分的面積.這就是卷積了.

    卷積運算滿足交換律,也就是說:f與g進行卷積完全等於g與f進行卷積。

   由兩個函數f和g進行卷積而得到的函數f*g,一般要比原來的f和g都要光滑。所以在影像處理中對映像進行卷積後會使原映像模糊。因為卷積具有平滑作用。

    有趣的是,如果把兩個人的照片互相進行卷積,所得到的照片,就同時和這兩個人都很相像。

把積分符號換成求和就是離散空間的卷積定義了.

   那麼在映像中卷積是什麼意思呢,就是映像就是映像f(x),模板是g(x),然後將模版g(x)在模版中移動,每到一個位置,就把f(x)與g(x)的定義域相交的元素進行乘積並且求和,得出新的映像一點,就是被卷積後的映像.模版又稱為卷積核.卷積核做一個矩陣的形狀。

5、卷積運算時的核函數

      在Matlab中,對映像進行卷積運算時,都要先得到一個核函數,其實就是模板。其函數調用是:

>> G=fspecial(‘gaussian‘,5,0.5)

G =

     0.0000    0.0000    0.0002    0.0000    0.0000

    0.0000    0.0113    0.0837    0.0113    0.0000

    0.0002    0.0837    0.6187    0.0837    0.0002

    0.0000    0.0113    0.0837    0.0113    0.0000

     0.0000    0.0000    0.0002    0.0000    0.0000

>> G=fspecial(‘gaussian‘,5,1.5)

G =

    0.0144    0.0281    0.0351    0.0281    0.0144

   0.0281    0.0547    0.0683    0.0547    0.0281

   0.0351    0.0683    0.0853    0.0683    0.0351

   0.0281    0.0547    0.0683    0.0547    0.0281

   0.0144    0.0281    0.0351    0.0281    0.0144

    能夠看出來,fspesial()函數的第一個參數表示返回高斯核函數(低通濾波器、模板等名稱其實都一樣)。第二個參數“5”表示該模板的大小,是5X5的矩陣。第三個參數是sigma了。

 

http://www.360doc.com/content/11/0829/21/4539198_144340527.shtml

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.