天天看點

SURF特征提取算法原文翻譯與了解(下)

      上一部分主要是針對特征點的提取,下面的内容是特征點的描述,并在最後總結一下全部的步驟。

4.SURF特征描述子

    SURF算法使用的描述子跟SIFT相比複雜度更低。第一步是對每個興趣點,基于其圓形區域内的資訊,确定一個可重複的方向。第二步在興趣點上構造一個與標明方向對齊的方框,從這個方框中提取SURF描述符。這兩步下面會解釋。最後,提出一種直立版本的描述符(U-SURF),它并不具有旋轉不變性,但是也是以計算速度更快,它可以使用在相機近似水準的場合。

4.1方向的确定

    為了使描述子對圖像不同的旋轉角度都有同樣的描述,要給每個興趣點都定義一個可重複的方向(這裡可重複的意思大概就是不同旋轉角度下都能選出來把)。為此,對每個興趣點,以6s為半徑(s的定義見第3章,為該興趣點所在的尺度),計算圓形鄰域内x和y方向的Harr小波響應,采樣的步長也選為s,這樣又可以使用積分圖快速進行濾波計算了。得到每個點的x和y方向的響應以後,對響應值使用以興趣點為中心的濾波器進行高斯權重,這就相當于水準Harr小波特征映射到了x,把垂直Harr小波特征映射到了y,到了這一步以後,怎麼選擇我們要找的方向呢。方法就是,用一個60°的扇形,以興趣點為中心以一定的角度間隔掃描,統計目前扇形内所有x方向和y方向上的響應的和,這個x和y方向的響應的和是一個矢量,那麼最長的這個矢量就是要找的主矢量,主矢量就是說代表這個特征點的方向。

4.2描述子的提取

      為了提取描述子,第一步是在興趣點附近選個點,以此為中心構造一個方框,方框的方向是上一步确定的主矢量的方向。方框的尺寸是20s。第二步是将這個方框拆分成4*4的區域(16個)。對于每個這樣的小區域,統計25個像素的水準和垂直方向的Harr小波響應。為了提高魯棒性,對于dx和dy,可以進行高斯濾波,濾波器的中心選在興趣點上,并且現在的水準和垂直Harr小波響應都是相對于主矢量方向而言的。第三步,對每一個子區域,計算它内部的四項資料,分别是水準方向值之和,垂直方向值之和,水準方向絕對值之和,垂直方向絕對值之和,這四個數就組成了向量v,也就是說每個小區域用一個v表示,是以把這些矢量連在一起,每個大方框就有一個長度為64的矢量。把這個向量化為機關向量,就具有尺度不變特征。根據圖3的結果可以看到,采用這個64維的方案的時候,可以使這個描述子具有更好的可區分性。此外還提到,他們所進行的其他描述子的嘗試,但是不是精度差點,就是速度慢點,綜合來看目前的方案最好。

      最後,作者對SURF特征的比對提了建議,為了實作比對階段中的快速索引,可以考慮使用興趣點的拉普拉斯的符号(如Hessian的迹)來輔助判斷。一般來說,找出來的興趣點都是一個點那種形式,而暗背景上的明亮點和明亮背景上的暗點它們的拉普拉斯符号是不一樣的。這個特征并不需要占用提取環節的計算消耗,因為在特征點檢測環節就已經計算出來了。在比對環節,我們隻需要看着兩個符号就可以判斷出白背景上的黑點和黑背景上的白點不比對,隻有通過這個初篩,再去動用比對度的計算。這樣可以節省時間。

最後總結一下SURF的流程:

1.計算圖像上每個點的Hessian響應,根據Hessian響應的值來确定某點是否為特征點。為了更高效,引入盒子濾波器,并使用積分圖來計算;為了實作尺度不限,進行多組和多尺度下的計算;

2.對于選好的特征點,找到其描述子,包括兩個步驟:

2.1确定特征點的方向:在以感興趣點為中心,以6s為半徑的圓形鄰域内計算x和y方向的Harr小波響應;使用一個π/3的滑動視窗,計算視窗内的響應總和,這就得到一個局部的方向矢量,然後以響應最大的矢量作為該興趣點的描述矢量;

2.2提取描述子:為了提取描述子,首先在興趣點附近選個點,以此為中心構造一個方框,方框的方向是上一步确定的主矢量的方向;然後将這個方框拆分成4*4的區域,對于每個小區域,統計25個像素的水準和垂直方向的Harr小波響應;最後對每一個子區域,計算它内部的四項資料,分别是水準方向值之和,垂直方向值之和,水準方向絕對值之和,垂直方向絕對值之和,這四個數就組成了小區域的描述向量v,16個v組合起來就得到特征點的64維描述子。