1. 程式人生 > >影象演算法之二:特徵提取算法系列之Harris

影象演算法之二:特徵提取算法系列之Harris

Harris運算元介紹:

該運算元是C.Harris和M.J.Stephens在1988年提出的一種點特徵提取運算元。這種運算元受訊號處理中自相關函式的啟發,可以給出影象中某一畫素點的自相關矩陣肘,其特徵值是自相關函式的一階曲率,如果X,Y兩個方向上的曲率值都高,那麼就認為該點是角點。

Harris[2]角點檢測運算元是Moravec角點檢測運算元的改進.

(1)運算元用高斯函式代替二值視窗函式,對離中心點越近的畫素賦于越大的權重,以減少噪聲影響。

這裡寫圖片描述

                    圖1-3高斯函式

(2)Moravec運算元只考慮了每隔45度方向,Harris運算元用Taylor展開去近似任意方向。

寫成矩陣形式: :

這裡寫圖片描述式子(1-2)

這裡寫圖片描述 式子(1-3)
式中,Ix為x方向的差分,Iy為y方向的差分,w(x,y)為高斯函式。

(3) Harris採用了一種新的角點判定方法。矩陣M的兩個特徵向量l1和l2與矩陣M的主曲率成正比。Harris利用l1, l2來表徵變化最快和最慢的兩個方向.若兩個都很大就是角點,一個大一個小就是邊緣,兩個都小就是在變化緩慢的影象區域。

這裡寫圖片描述

圖1- 4用矩陣M的特徵向量分類影象畫素點

但是解特徵向量需要比較多的計算量,且兩個特徵值的和等於矩陣M的跡,兩個特徵值的積等於矩陣M的行列式。所以用(1-4)式來判定角點質量。(k常取0.04-0.06)
這裡寫圖片描述

(1-4)
(4) Harris演算法總結

Step 1:對每一畫素點計算相關矩陣M。
這裡寫圖片描述
Step 2:計算每畫素點的Harris 角點響應。
這裡寫圖片描述
Step 3.在w*w範圍內尋找極大值點,若Harris 角點響應大於閥值,則視為角點。

Harris運算元對灰度的平移是不變的,因為只有差分,對旋轉也有不變性,但是對尺度很敏感,在一個尺度下是角點, 在在另一個尺度下可能就不是了.
這裡寫圖片描述

              圖1- 5 harris運算元對尺度的敏感性

這裡寫圖片描述

             圖1- 6 harris運算元對簡單影象的響應

Harris 運算元是一種有效的點特徵提取運算元,其優點總結起來有:

①計算簡單:Harris 運算元中只用到灰度的一階差分以及濾波,操作簡單。

②提取的點特徵均勻而且合理:Harris 運算元對影象中的每個點都計算其興趣值,然後在鄰域中選擇最優點。實驗表明,在紋理資訊豐富的區域,Harris 運算元可以提取出大量有用的特徵點,而在紋理資訊少的區域,提取的特徵點則較少。

③穩定:Harris運算元的計算公式中只涉及到一階導數,因此對影象旋轉、灰度變化、噪聲影響和視點變換不敏感,它也是比較穩定的一種點特徵提取運算元。

Harris 運算元的侷限性有:

  ①它對尺度很敏感,不具有尺度不變性。
  ②提取的角點是畫素級的。

參考文獻:
[1]Chris Harris, Mike Stephens, A Combined Corner and Edge Detector, 4th Alvey Vision Conference, 1988, pp147-151