1. 程式人生 > >影象處理特徵不變運算元系列之Harris運算元(二)

影象處理特徵不變運算元系列之Harris運算元(二)

           在前面的博文中,介紹了Moravec運算元,並對moravec運算元的不足也進行了簡單的描述,具體請參考:影象處理特徵運算元系列之Moravec運算元(一)。Harris運算元針對Moravec運算元的不足,提出了以下的改進:

         1)Moravec運算元各向異性響應(Anisotropic Response of Operator

           Moravec運算元僅僅在8個方向(水平、垂直和四個對角方向)計算灰度變化,為了對其擴充套件,有必要設計一個可以在任何方向對灰度變化進行測度的函式。1988年,Harris和Stephen通過對Moravec運算元進行展開,推導得到了Plessey運算元,也即Harris運算元。

          我們先來看看與Harris相關的背景知識。通常,Prewitt運算元被用來對影象的梯度進行近似。然而,在實際應用中,一階梯度通過下圖中的公式來進行近似:


對Morevec運算元(如果對Moravec運算元也不清楚的地方,請參考博主前一篇對Morevec運算元的講解)進行分析可以得到:Two Morevec windows中對應畫素差的和可以作為影象梯度的合理近似。我們再來看下圖:


通過對上圖的分析,我們有可以進一步得到:morevec運算元中的灰度變化可以採用影象梯度進行近似

         通過上面的分析,灰度的變化可以表示為影象梯度的函式,公式表示如下:


其中,(u,v)表示滑動,x方向為(1,0),y方向為(0,1),微分的計算如上圖所示。

          到這裡,大家非常明瞭:上式可以對moravec運算元中的灰度變化計算進行精確的逼近。但是又與Moravec運算元中灰度變化不同的是通過合理的選擇(u,v)可以對任何方向的灰度變化進行測度。     

         2)噪聲響應  (Noise Response   

            在Moravec運算元中,滑動窗採用的是方形的(square window),方形窗使得不同方向上的中心畫素與邊界畫素的歐式距離是變化的。為了克服這個問題,Harris&Stephen提出只需將方向窗改成圓窗(circle window)。同時,窗中的每個畫素是同等地位的,理論上應該是離中心越近的權重越大,而離中心越遠,權重越小,因此我們加入高斯權重。因此,灰度變化的新測度方式可以通過下圖來表示:


         通過公式表示如下:

其中,wi表示位置i處的高斯權重。

           3)邊緣的強響應(Large Response of Edge

            因為Moravec運算元在邊緣處很容易出現誤檢,Harris&Stephen通過考慮不同方向的灰度度量形成新的角度性測度(cornerness measure)。接著,我們對上面的式子進行變換,如下式:


Harris&Stephen同時也注意到,上式可以寫成:


對上面的矩陣M,其特徵值與影象表面的主曲率是成正比的,並且形成了對M的旋轉不變的描述(Proportional to the principle curvature of the image surface and form a rotationally invariant description of M)。然後,由於M是通過水平和垂直方向的梯度來近似的,他們不是真正的旋轉不變。

          同樣,與Moravec運算元一樣,我們再來看下面的四張張圖:


圖中A表示在一個物體的內部或背景上,視窗內的灰度值相對不變,因此該視窗表面上幾乎沒有曲率,因此M的特徵值相對很小;B視窗在一個邊緣處,垂直於邊緣的地方將有明顯很大的曲率,而平行於邊緣的地方几乎沒什麼曲率,因此該形式下M的特徵值一個會比較大,另一個較小;C和D對應於角度和離散點,在兩個方向都會有很大的曲率,因此,M的特徵值都將會很大。假設r1和r2是M的兩個特徵值,通過上面的分析,可以將一個平面表示為以下三個可區分的區域:


            Harris&Stephen提出下面的角點性測度(cornerness measure)

:

k一般取值04~0.6。

         最後,我們來總結下Harris運算元的計算步驟:

        ( 1)對每一個畫素計算自相關矩陣M


  (2)構造角點性對映圖(Construct cornerness map)

          

        (3)閾值化,對得到的C(x,y)進行閾值

       (4)非極大值抑制

          總結:Harris運算元針對Moravec運算元的不足進行了改進,提高了特徵點的檢測率以及Repeatability。但是,Harris運算元計算量大,對尺度很敏感,不具有尺度不變形;另外Harris對特徵點的定位也不是很精確,而且Harris也是各向異性的,對噪聲敏感。