日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

SURF算法与SIFT算法的性能比较——图像特征点检测与提取算法分析

發布時間:2023/11/27 生活经验 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SURF算法与SIFT算法的性能比较——图像特征点检测与提取算法分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

圖像特征點提取算法的算法研究(SURF和SIFT算法)

?

1. 摘要

?

? ? 計算機視覺中,很大一部分研究集中在圖像特征提取和特征生成算法上。對圖像的優化,不同于一般數學問題的優化方法,圖像的優化是對像素點,在某一個小的鄰域內,進行特征的提取或者圖像的分析,該優化主要是進行局部區域的優化,要尋找局部極值,而不像傳統的優化算法那樣進行全局的優化求解。

?

由于相同物體在不同狀態下所產生的圖像不同,使得不同圖像具有不同亮度,不同旋轉方向和不同尺度的差異。想要提取出具有代表性且性質魯棒的特征點,一直是學術研究的焦點之一。為了引入尺度不變的特征,將檢測到的每個特征點都計算其對應的尺寸因子,方便特征點匹配和圖像拼接等后續圖像應用,Bay于2006年提出了SURF(Speeded Up Robust Features)特征檢測算法。該算法具有較好的尺度不變性和旋轉不變性,并且具有快速的計算能力,一直是圖像拼接、圖像檢測和恢復等應用采用的主流算法之一。

本文主要敘述SURF特征點提取的優化步驟,將其與SIFT特征點提取算法,進行分析和比較,最后給出了關于圖像亮度,圖像的旋轉和圖像的尺度等三個方面的性能比較,驗證了SURF特征點檢測算法優化性能。

SIFT(Scale invariant feature Transform)算法是由David Lowe提出的尺度不變特征轉換算法,其目標是解決低層次特征提取及其圖像匹配中的實際問題。該算法是一種基于尺度空間,對圖像縮放變換保持不變性的圖像局部特征描述子。其主要分為三部分進行圖像的特征點提取和描述。

SIFT算法的優點是特征穩定,對旋轉、尺度變換、亮度保持不變性,對視角變換、噪聲也有一定程度的穩定性;缺點是實時性不高,并且對于邊緣光滑目標的特征點提取能力較弱,不夠優化。因此,更加魯棒的快速特征提取算法SURF應運而生,由于SURF運算簡單,效率高,特征計算時間短,到今天都還受歡迎。

SURF算法是對SIFT算法的加強版本,同時能夠加速提取更加魯棒的特征,是SIFT算子的速度的三倍以上,并且提取出的特征點更有代表性。同時也對描述子的生成以及特征點的匹配進行了優化。其主要采用了Harr特征以及積分圖像,加快了程序搜索和運行的時間,優化了特征點提取的理論算法。

?

?

?

2. 優化過程

SURF算法的特征點檢測優化過程如下:

2.1 構建積分圖像,在圖像每個像素點上,生成積分圖像。

? ? ?其中,在一個特征點x=(x,y)的鄰域上,計算其積分圖像I(x,y):

?

?

在圖像上,積分圖像的意義如下圖1所示。

?

? ? ? ? ? ? ? ? ??

2.2 對當前的積分圖像I,構建Hessian矩陣,進行逼近,提取特征點。

構建Hessian矩陣的目的是為了生成圖像穩定的邊緣點,描述圖像的局部變化。給定點積分圖像中一點,則關于X點在尺度因子?下的Hessian矩陣定義為:

其中,Lxx(x,sigma)表示在積分圖像I的點X處的高斯二階微分的卷積,同理,Lxy(x,sigma)表示對圖像的卷積。

?

當Hessian矩陣的判別式取得局部極大值時,判定當前點是比周圍鄰域內其他點更亮或更暗的點,由此來定位關鍵點的位置。在離散數字圖像中,x方向的一階導數是相鄰像素的灰度差:

????????????????? ??????????????????

x方向的二階導數為:

? ? ? ? ??

由于在連續函數中,可以通過判斷Hessian矩陣的特征值的符號來判斷當前點是否為極值點,Hessian矩陣的判別式為:

???????????????? ????????????????

在圖像的處理中,由于要特征點的尺度不變性,就需要利用高斯濾波,讓特征點與尺度無關,隨后在進行Hessian 矩陣的構造。高斯濾波公式如下:

????????????????? ???????????

為了加速處理,采用Box濾波器對高斯二階微分模板進行近似處理。

?

圖2:從左到右依次為y方向的二階高斯微分模板;xy方向的二階高斯微分模板;

對y方向近似的Box濾波器;對xy方向進行的Box濾波器。

通過近似后,我們可以得到圖像的Hessian矩陣判別式:

??????????????? ??????????????

為了平衡使用Box濾波器帶來的近似誤差,我們在Dxy方向上乘以一個加權系數來抵消誤差。因為我們使用的是9*9的高斯模板,標準差為1.2。所以有:

?????????????????????

按照上述的誤差因子,在構建的矩陣中,通常不會改變,因此在接下來的特征點判斷中,不改變w的值。最后有了判別式:

????????????? ?????????????

通過計算的det(Happrox)值來得到像素點在尺度的響應圖像。

2.3 構造尺度空間

由于SURF需要圖像在不同的尺度空間下,具有尺度不變性,因此內部需要對圖像進行處理,構建出不同尺度的圖像,得到更加魯棒的特征點。具體方法是:構造尺度空間傳統的方法即構造一個高斯金字塔,原始圖像作為最底層,然后對圖像進行高斯模糊再降采樣(2倍)作為下一層圖像,循環迭代下去。高斯金字塔是對原圖像的尺寸是在不斷變化的,高斯模板尺寸不變。每一層的建立必須等到上一層構造完畢后才能進行處理,依賴性很強,這樣造成速度上很慢。SURF構建尺度金字塔的方法采用原圖像大小不變,變化的是模板大小,即采用變化的模板盒子尺寸對原圖像進行濾波,構造出尺度空間。同時,SURF可以采用并行運算,對金字塔中的每層圖像同時進行處理。通過逐漸增大的盒子尺寸濾波模板與積分圖像卷積產生的Hessian矩陣行列式的響應圖像,構造出金字塔。

?

圖3:左圖為高斯金字塔的構建方法;右圖為SURF的尺度空間構建方法。

2.4 非極大值抑制

對每層圖像上的每個像素與空間鄰域內和尺度鄰域內的響應值比較,同層上有8個鄰域像元,向量尺度空間共有2×9=18個,共計26個像元的值進行比較,如果是極大值則保留下來,作為候選特征點。同時如果特征點的響應值小于Hessian行列式的閾值,也被排除。

2.5 特征點定位于提取

由于是離散空間的極值點,通過擬合方法,準確定位到特征點的位置,每個特征點包含三個參數H(x,y,sigma),即位置與尺度。

??????????????????????????

對x求導,并令其為0,可以得到:

?????????????????????? ??????????????????

其中,兩個因子的計算式為:

???????????,????????????

求得的x_hat=(x,y,sigma),即獲得在三個方向的偏移量,其中sigma表示特征點所在的尺度空間。

2.6 選取特征點主方向確定

為了保證旋轉不變性,在SURF中,不統計其梯度直方圖,而是統計特征點領域內的Harr小波特征。即以特征點為中心,計算半徑為6s(s為特征點所在的尺度值)的鄰域內,統計60°扇形內所有點在x(水平)和y(垂直)方向的Haar小波響應總和(Haar小波邊長取4s),并給這些響應值賦高斯權重系數,使得靠近特征點的響應貢獻大,而遠離特征點的響應貢獻小,然后60°范圍內的響應相加以形成新的矢量,遍歷整個圓形區域,選擇最長矢量的方向為該特征點的主方向。這樣,通過特征點逐個進行計算,得到每一個特征點的主方向。該過程的示意圖如下:

?

圖4:對選取的特征點選取主方向,最右邊的圖為最終主方向。

2.7 生成特征點描述子

在SIFT中,是取特征點周圍4×4個區域塊,統計每小塊內8個梯度方向,用著4×4×8=128維向量作為SIFT特征的描述子。

SURF算法中,也是在特征點周圍取一個4×4的矩形區域塊,但是所取得矩形區域方向是沿著特征點的主方向。每個子區域統計25個像素的水平方向和垂直方向的Haar小波特征,這里的水平和垂直方向都是相對主方向而言的。該Haar小波特征為水平方向值之和、垂直方向值之和、水平方向絕對值之和以及垂直方向絕對值之和4個方向。該過程示意圖如下:

?

圖5:特征點描述子的生成示意圖。

把這4個值作為每個子塊區域的特征向量,所以一共有4×4×4=64維向量作為SURF特征的描述子,比SIFT特征的描述子減少了2倍。

2.8 特征點匹配

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

3. 特征點檢測算法實現效果比較

通過在Windows 7,64位操作系統,Intel Core i7-4790K 4GHz CPU,8GB運存進行實現。采用紅色標出特征點,效果如下:

?

圖6 :SURF算法特征點提取效果圖

通過選取一副參考圖像,再選取另外三種分別具有尺度,旋轉和明暗改變的圖像,對兩種特征點檢測算法進行測試。改變其中的參數,對其檢測出的特征點個數,檢測和匹配時間以及準確程度,進行仿真和評估。

3.1 強度變化下的匹配性能評估

本組圖像對相同的物體,選取一張相對參考圖像較陰暗的匹配圖像。其中主要變量是像素的強度,圖像的旋轉和尺度保持不變。圖像匹配的結果和性能參數比較展示在圖7和表1中。

圖7:圖像強度變化的匹配效果圖

其中,執行時間指的是特征點檢測和匹配時間。從表1的實驗結果可以看出,在圖像強度變化的情況下, SIFT的匹配率較高,為59.0%。但從執行時間來看, SURF的速度是SIFT的4倍,說明SURF的檢測和匹配速度較快。

表1 不同強度下的圖像匹配結果

算法

執行時間

圖1特點

個數

圖2特征點

個數

匹配對數

匹配率(%)

SURF

0.3640s

304

286

153

53.5

SIFT

1.3213s

200

200

118

59.0

?

3.2 尺度變化的匹配性能評估

在本組實驗中,對參考圖像,選取目標相同但具有尺度變化的匹配圖像,進行兩種算法的評估。圖像匹配的結果和性能參數比較展示在圖8和表2中。

?

圖8:圖像尺度變化的匹配結果

從實驗的執行時間可以看出,SURF的速度在尺度變換下,依然比SIFT快4倍左右。雖然SIFT的匹配率為41.0%,在不同尺度下的匹配率最高,但結合實驗的效果圖,可以看出SIFT存在較多的誤匹配。相反,雖然SURF的匹配率為30.0%,但其實際匹配效果較SIFT算法好,特征點匹配的精確度高于SIFT算法。在尺度變化下,SIFT的性能已經開始大降。

表2 不同尺度下的圖像匹配結果

算法

執行時間

圖1特征點

個數

圖2特征點

個數

匹配對數

匹配率(%)

SURF

0.3769s

200

200

60

30.0

SIFT

1.3000s

200

200

82

41.0

3..33 旋轉變化的匹配性能評估

本組實驗,對目標進行旋轉,再進行匹配,可以檢測出算法的旋轉不變性。圖像匹配的結果和性能參數比較展示在圖9和表3中,其中目標旋轉約為45°。

圖9:圖像尺度變化的匹配效果圖

從表3可以看出,SURF算法相對于SIFT算法,匹配率在91.0%,說明對于旋轉的目標,該算法具有較強的旋轉不變性。而SIFT的匹配率最低,為51.0%。從圖9的匹配結果可以看出,SIFT算法的匹配結果較差。不能準確的對旋轉后的圖像進行特征點匹配,且算法執行時間較長。

表3 不同角度下的圖像匹配結果

算法

執行時間

圖1特征點

個數

圖2特征點

個數

匹配對數

匹配率(%)

SURF

0.1268s

200

200

182

91.0

SIFT

1.3386s

200

200

102

51.0

3.4 結論

通過對圖像的特征點提取算法進行優化,引入了Hessian矩陣,在特征點的判斷中,計算積分圖像的2階偏導數,組成Hessian矩陣。然后通過Hessian矩陣的行列式大小來進行判斷。隨后對Hessian矩陣求導,通過相關計算可以獲得特征點的位置和尺度,這是優化的核心。

4. 參考文獻

[1] H. Bay, T. Tuytelaars, and L.Van Gool. Surf: Speeded up robust features. InEuropean Conference onComputer Vision, May 2006. 1, 2

[2] E. Rosten and T. Drummond.Machine learning for highspeed corner detection. In European Conference onComputer Vision, volume 1, 2006. 1

[3] D. G. Lowe. Distinctive imagefeatures from scale-invarian keypoints. International Journal of ComputerVision, 60(2):91–110, 2004. 1, 2

?

?

?

?

?

?

?

?

?

?

總結

以上是生活随笔為你收集整理的SURF算法与SIFT算法的性能比较——图像特征点检测与提取算法分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。