華山論劍----常用角點檢測與角點匹配方法比較


  

  

  最近這些日子,我在中科院實習了一段時間,收獲了很多寶貴的知識和經驗,也認識了一些朋友,在這里感謝老師們對我的指導和建議。作為一名圖像處理專業的數學Geek,我很喜歡做關於圖像方面的算法研究,在這里把近幾年的角點特征匹配方法做個總結,和大家分享一下。

  圖像匹配能夠應用的場合非常多,如目標跟蹤,檢測,識別,圖像拼接等,而圖像匹配最核心的技術就要屬角點匹配了,所謂角點匹配是指尋找兩幅圖像之間的特征像素點的對應關系,從而確定兩幅圖像的位置關系。

  角點匹配可以分為以下四個步驟:

  1.提取檢測子:在兩張待匹配的圖像中尋找那些最容易識別的像素點(角點),比如紋理豐富的物體邊緣點等。

  2.提取描述子:對於檢測出的角點,用一些數學上的特征對其進行描述,如梯度直方圖,局部隨機二值特征等。

檢測子和描述子的常用提取方法有:sift, harris, surf, fast, agast, brisk, freak, brisk,orb等。

  3.匹配:通過各個角點的描述子來判斷它們在兩張圖像中的對應關系。常用方法如 flann

  4.去外點:去除錯誤匹配的外點,保留正確的內點。常用方法有Ransac, GTM。

 

  我對上述這些常用的檢測子和描述子的性能和速度做了一個測試,以找出其中性價比最好的組合(不考慮后兩步)

 

                        圖一

 

                      圖二

  上面兩幅圖是對上述部分檢測子與描述子進行測試的結果。

  其中圖一和圖二的x坐標表示不同的檢測子與描述子的組合,從1到30分別對應

(surf、agast、brisk、fast、sift、orb)檢測子與 (brisk、agast、surf、sift、orb)描述子的線性組合,如第四組表示surf檢測子+sift描述子的組合。

  圖一和圖二的y坐標表示一系列測試圖片組,每組由兩張圖組成,這些圖片都是質量較低的衛星地圖,約2000*2000像素,每組的兩張圖片是由不同衛星對地面上同一地區進行拍攝的。它們之間的關系可能包含旋轉,縮放,仿射變換,亮度變化,模糊,噪音等。從1到11的測試圖片組大概對應着以下變換關系:

  1.強烈亮度變化

  2.旋轉

  3.仿射變換+尺度變化+旋轉

  4.仿射變換+亮度變化+旋轉

  5.仿射變換+噪音

  6.模糊+亮度變化

  7.旋轉+噪音

  8.旋轉+尺度變化

  9.亮度變化+旋轉+模糊+噪音

  10. 亮度變化+旋轉+尺度變化

  11. 亮度變化+旋轉+尺度變化+強烈噪音。

  圖一的z坐標表示成功匹配的像素對的個數。圖二的z坐標表示所需計算時間。

  從測試結果來看,orb檢測子與surf描述子配合的效果是最好的,不過速度也是最慢的。古老的sift和surf依然好用,速度也還是那么不給力。在不考慮旋轉和仿射變換的情況下,fast是很不錯的選擇,在小幅旋轉(20度內)的情況下,fast也還是有一定的容錯能力的。在旋轉變化和尺度變化方面,各家武功相差不多,雖然在理論上sift支持旋轉變化,不過測試中它並沒有表現出明顯的優勢。在噪音方面,sift和orb明顯強於其它算法;在亮度變化和仿射變換上,orb的魯棒性是最好的;綜合比較,orb的性價比在此次華山論劍中略勝一籌。

  下面兩張圖是上面11組圖片的均值,從平均值來看,orb也是最好的

  

 

  


免責聲明!

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



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