匹配算法:局部結構保留


匹配算法:局部結構保留

Locality Preserving Matching

論文地址:https://www.ijcai.org/Proceedings/2017/0627.pdf

摘要

   在計算機視覺中,獲取兩個特征集合的可靠的匹配關系是一個基礎而又重要的任務。本文要解決的問題是,在已知兩個特征集合的候選匹配關系時,剔除錯誤的匹配。為了實現該算法,本文一種名為“LPM”算法,其基本思想是保留正確的匹配的局部結構的一致性。本文將該問題抽象成數學模型,並推導了該問題的解析解,該算法具有線性對數的時間復雜度和線性的空間復雜度。該算法能夠實現在幾毫秒的時間內對數千個候選匹配進行錯誤匹配的篩選。為了驗證該算法在圖像匹配問題中的泛化性能,本文在通用特征匹配問題、點雲注冊問題、視覺定位問題和圖像檢索問題上進行了實驗。和當前最優算法相比,本文的算法在精度上能夠得到更好的結果,同時將運行時間減少了兩個數量級。

主要貢獻

本文的主要貢獻為:

1)本文提出了一種簡單有效的匹配算法,比起以往的算法,本文的算法不針對某一種特定的變換關系,而僅僅利用局部結構的一致性,因此具有更大的通用性;

2)本文的算法具有解析解,時間復雜度為線性對數。本文的方法能夠在僅僅幾毫秒內實現對上千對匹配的錯誤匹配的剔除;

3)本文的算法能夠應用在諸如點雲注冊、視覺定位、圖像檢索等任務中。實驗結果表明,本文的算法在精度和效率上都得到了改善。

性能指標

 

 

 

 

 

 算法流程

本文要解決的問題是:已知兩組特征的候選匹配,如何快速有效地剔除錯誤的匹配?解決個問題的基本出發點是:無論兩組特征間存在怎樣的幾何變換關系(剛性/非剛性),局部的幾何結構通常不會有太大改變,基於這一約束進行建模,就能實現對錯誤匹配的剔除。本文提出了兩種數學模型來描述這一約束:一是,距離約束,即兩對匹配(x1, y1)和(x2, y2)對應點的距離應該保持一致,即d(x1,x2)=d(y1,y2)。直觀上可以理解為:對於一個點及其鄰域內的點,如果其匹配點都為正確的點時,那么這些匹配點往往也聚在一起,而如果存在錯誤的匹配點,那么這些點往往很分散。二是,拓撲約束,即局部范圍內點的相對位置關系會保持一致。該約束是通過匹配點的偏移向量的長度和夾角關系來描述的。下面對算法進行具體的介紹:

一、局部一致性建模

 

 1、距離約束 

如上式所示,(xi, yi)為一對匹配特征,N_xi為xi的鄰域內的特征點,N_yi為yi鄰域內的特征點。上式懲罰在兩個特征集中,距離不一致的候選匹配。最后一項為正則項,鼓勵存在更多的內點。

考慮的在非剛性變換中,局部的線段長度不能完全保持不變,為提高魯棒性,對上式進行離散化:

  上述問題可以轉換為:

 

 2、拓撲約束

拓撲約束描述了局部特征點之間的相對位置關系,本文利用偏移向量來描述該約束。

對於一對匹配特征(xi, yi),其對應的偏移向量為vi=yi-xi。基於匹配向量,特征點間的拓撲約束定義為:

 

 其中前一項描述的是特征點偏移向量的長度變換,后一項描述的是夾角。當匹配及其鄰域內的匹配都為正確匹配時,各個偏移向量的長度應該比較接近,且方向接近平行,此時上式取更大的值。同樣,考慮到局部的形變,對上式進行離散化:

  3、多尺度鄰域構造

上述兩項約束中,都需要求某個特征的N近鄰,因此N的選取往往會對結果產生影響,尤其是當兩個特征集之間存在縮放時。本文通過構造多尺度的鄰域來解決這一問題,即:

 

 二、問題求解

        通過對上式進行整理,可得:

 

 其中,

 

 容易看出,上述問題的解為:

 

 三、鄰域點的選取

對於一個正確的匹配對,如果其鄰域存在錯誤的匹配對,可能導致上述代價函數取值偏大,如果能夠選擇所有的正確的匹配(內點)來構造一對匹配的鄰域,那么其代價函數與錯誤匹配的代價函數的差別將會更加顯著。本文的實驗表明,在選取所有的特征點來構造鄰域時,能夠將內點率提高到80%以上,在此基礎上,將得到的內點集作為構造鄰域的點集,能夠進一步提高內點率(90%以上)。

主要結果

 本文主要在非剛性點雲注冊、視覺歸航、圖像檢索三個任務中,對本文算法的精度和效率進行了驗證,主要的實驗結果為:

 

 1. LPM在10對具有代表性的圖像上的匹配結果。從上到下、從左到右依次為:陸地、狐狸、書、視網膜、T恤、教堂、熊玩具、截頭台和房子。這10對圖像的內點率分別為:40.81%, 85.93%, 76.14%, 49.50%, 43.81%, 57.26%, 65.94%, 78.71%, 65.96% 和78.49%。箭頭的顏色含義:藍色——TP,黑色——TN,綠色——FN,紅色——FP。為了能夠更好看清,每對圖像隨機選取100組匹配點進行顯示。

 

 2. 在五個數據集上,RANSAC, ICF, GS, GMS, BD, MR-RPM和LPM算法性能的定量比較。數據集從上到下分別是VGG, DAISY, DTU, RS和Retina。從左到右依次為:初始內點率、精度、召回率、運行時間。

 

 3. 二維點雲注冊:LPM和SC, TPS-RPM, RPM-LNS, GMMREG, CPD, VFC算法在魚(左)和中文字符(右)數據集上的結果比較。誤差箱型圖表示的是100次運行結果的誤差平均值和標准差。

 

 4. 三維點雲注冊任務:本文算法在狼形變(左)、遮擋(中)、野點(右)數據集上的實驗結果。第一行表示初始位姿,第二行表示注冊后的結果。

 

 5. 視覺歸航任務:在全景圖數據集上,RANSAC, ICF, GS, GMS, BD, MR-RPM 和LPM的精度(左),召回率(中)和運行時間(右)。 

 

 6. 圖像檢索任務:RANSAC, ICF, GS, GMS, MR-RPM和LPM算法的精度(左)和召回率(中)。右:14280次運行時間的統計結果。

 


免責聲明!

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



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