SURF算法


一、原理:

Sift算法的優點是特征穩定,對旋轉、尺度變換、亮度保持不變性,對視角變換、噪聲也有一定程度的穩定性;缺點是實時性不高,並且對於邊緣光滑目標的特征點提取能力較弱。
Surf(Speeded Up Robust Features)改進了特征的提取和描述方式,用一種更為高效的方式完成特征的提取和描述。

二、Surf實現流程如下:

1. 構建Hessian(黑塞矩陣),生成所有的興趣點,用於特征的提取

黑塞矩陣(Hessian Matrix)是一個多元函數的二階偏導數構成的方陣,描述了函數的局部曲率。由德國數學家Ludwin Otto Hessian於19世紀提出。
surf構造的金字塔圖像與sift有很大不同,Sift采用的是DOG圖像,而surf采用的是Hessian矩陣行列式近似值圖像。
Hessian矩陣是Surf算法的核心,構建Hessian矩陣的目的是為了生成圖像穩定的邊緣點(突變點),為下文的特征提取做好基礎。
每一個像素點都可以求出一個Hessian矩陣。

H ( f ( x , y ) ) = [ 2 f x 2 2 f x y 2 f x y 2 f x 2 ]

Hessian矩陣的判別式為:
d e t ( H ) = 2 x 2 2 f y 2 ( 2 f x y )

當Hessian矩陣的判別式取得局部極大值時,判定當前點是比周圍鄰域內其他點更亮或更暗的點,由此來定位關鍵點的位置。

在SURF算法中,圖像像素l(x,y)即為函數值f(x,y)。但是由於我們的特征點需要具備尺度無關性,所以在進行Hessian矩陣構造前,需要對其進行高斯濾波,選用二階標准高斯函數作為濾波器。
L ( x , t ) = G ( t ) I ( x , t )
通過特定核間的卷積計算二階偏導數。通過特定核間的卷積計算二階偏導數,這樣便能計算出H矩陣的三個矩陣元素L_xx, L_xy, L_yy從而計算出H矩陣:
H ( x , σ ) = [ L x x ( x , σ ) L x y ( x , σ ) L x y ( x , σ ) L y y ( x , σ ) ]
由於高斯核是服從正態分布的,從中心點往外,系數越來越低,為了提高運算速度,Surf使用了盒式濾波器來近似替代高斯濾波器,提高運算速度。
盒式濾波器(Boxfilter)對圖像的濾波轉化成計算圖像上不同區域間像素和的加減運算問題,只需要簡單幾次查找積分圖就可以完成。
每個像素的Hessian矩陣行列式的近似值:
d e t ( H ) = D x x D y y ( 0.9 D x y ) 2
在Dxy上乘了一個加權系數0.9,目的是為了平衡因使用盒式濾波器近似所帶來的誤差:

2. 構建尺度空間

同Sift一樣,Surf的尺度空間也是由O組L層組成,不同的是,Sift中下一組圖像的尺寸是上一組的一半,同一組間圖像尺寸一樣,但是所使用的高斯模糊系數逐漸增大;而在Surf中,不同組間圖像的尺寸都是一致的,但不同組間使用的盒式濾波器的模板尺寸逐漸增大,同一組間不同層間使用相同尺寸的濾波器,但是濾波器的模糊系數逐漸增大。

3. 特征點定位

特征點的定位過程Surf和Sift保持一致,將經過Hessian矩陣處理的每個像素點與二維圖像空間和尺度空間鄰域內的26個點進行比較,初步定位出關鍵點,再經過濾除能量比較弱的關鍵點以及錯誤定位的關鍵點,篩選出最終的穩定的特征點。

4. 特征點主方向分配

Sift特征點方向分配是采用在特征點鄰域內統計其梯度直方圖,而在Surf中,采用的是統計特征點圓形鄰域內的harr小波特征。
在特征點的圓形鄰域內,統計60度扇形內所有點的水平、垂直harr小波特征總和,然后扇形以一定間隔進行旋轉並再次統計該區域內harr小波特征值之后,最后將值最大的那個扇形的方向作為該特征點的主方向。

5. 生成特征點描述子

在Sift中,是取特征點周圍44個區域塊,統計每小塊內8個梯度方向,用着448=128維向量作為Sift特征的描述子。
Surf算法中,也是在特征點周圍取一個4
4的矩形區域塊,但是所取得矩形區域方向是沿着特征點的主方向。每個子區域統計25個像素的水平方向和垂直方向的haar小波特征,這里的水平和垂直方向都是相對主方向而言的。該haar小波特征為水平方向值之后、垂直方向值之后、水平方向絕對值之后以及垂直方向絕對值之和4個方向。

把這4個值作為每個子塊區域的特征向量,所以一共有444=64維向量作為Surf特征的描述子,比Sift特征的描述子減少了一半。

6. 特征點匹配

與Sift特征點匹配類似,Surf也是通過計算兩個特征點間的歐式距離來確定匹配度,歐氏距離越短,代表兩個特征點的匹配度越好。
不同的是Surf還加入了Hessian矩陣跡的判斷,如果兩個特征點的矩陣跡正負號相同,代表這兩個特征具有相同方向上的對比度變化,如果不同,說明這兩個特征點的對比度變化方向是相反的,即使歐氏距離為0,也直接予以排除。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM