周光宇 鐘漢生 章曉敏
(寧波財經(jīng)學(xué)院數(shù)字技術(shù)與工程學(xué)院 浙江 寧波 315175)
圖像匹配是計算機(jī)視覺、圖像處理和機(jī)器學(xué)習(xí)等研究領(lǐng)域的一個基礎(chǔ)性問題,已經(jīng)在目標(biāo)識別[1-2]、圖像拼接[3-4]和視頻跟蹤[5-6]等領(lǐng)域得到了廣泛的關(guān)注和應(yīng)用。目前圖像匹配方法多種多樣,但常用的主要是基于模板匹配的方法和基于局部特征的方法。
基于模板匹配的方法較為依賴模板圖像和目標(biāo)圖像對應(yīng)區(qū)域的相似性度量方式,比如平方誤差和(Sum of Squared Differences,SSD)、絕對誤差和(Sum of Absolute Differences,SAD)和余弦相似度等,因其速度優(yōu)勢得到了廣泛應(yīng)用[7-9],但是這些方法僅僅關(guān)注了模板圖像和目標(biāo)圖像像素間的差異,具有一定的局限性。
Korman等[10]提出了一種基于2D仿射變換的模板匹配方法,可以近似求解出全局最優(yōu)解,但是該方法在像素比對時易受噪聲的影響。Dekel等[11]提出了一種基于互近鄰的模板匹配方法,該方法通過統(tǒng)計兩幅圖像之間最相似網(wǎng)格的像素總數(shù)進(jìn)行匹配區(qū)域的搜索,雖然增強(qiáng)了模板匹配的穩(wěn)定性,但是降低了匹配精度。Tian等[12]提出了一種基于非剛性形變的全局最優(yōu)估計方法。但是,該方法假設(shè)兩幅圖像的相似區(qū)域間存在完全的映射關(guān)系,在異常值存在時匹配效果不佳,例如由遮擋和視角變換引起的異常值。
另一類基于局部特征的方法,因其魯棒性和靈活性,成為當(dāng)前的研究熱點。其中最具代表性的是尺度不變特征轉(zhuǎn)換[13](Scale-Invariant Feature Transform,SIFT)、快速魯棒性特征[14](Speeded Up Robust Features,SURF)、局部二值模式[15](Local Binary Pattern,LBP)和定向二進(jìn)制簡單描述[16](Oriented FAST and Rotated BRIEF,ORB)等。
與SIFT、SURF和LBP等算法相比,ORB算法具有速度上的實時性,近幾年被廣泛地應(yīng)用于三維重建、機(jī)器人導(dǎo)航和地圖創(chuàng)建[17-18]。但是該算法誤匹配率高、抗視角變換能力弱,嚴(yán)重影響了它在實際工程中的應(yīng)用。因此,很多國內(nèi)外學(xué)者對ORB算法進(jìn)行了改進(jìn),侯毅等[19]引入仿射變換模型模擬視角變換,提出了一種仿射不變的ORB特征匹配算法。曾慶化等[20]通過融合透視模型與ORB算法得到了一種抗視角變換的ORB特征匹配算法,同時,利用隨機(jī)抽樣一致性(Random Sample Consensus,RANSAC)算法進(jìn)行誤匹配對剔除,在保持抗視角變換能力的同時,提高了匹配精度。王強(qiáng)等[21]對ORB算法特征提取階段進(jìn)行了改進(jìn),利用差分幅值生成描述符,降低了噪聲的影響。Aguilera等[22]利用多尺度、多方位的對數(shù)Gabor濾波器描述了頻率和空間信息相結(jié)合的特征點鄰域,提出了一種適用于非線性強(qiáng)度變化的圖像特征描述符。但是上述兩種方法提取的特征點都不穩(wěn)定,特征點對的誤匹配率仍然較高。Bian等[23]提出了一種基于ORB與網(wǎng)格統(tǒng)計的特征匹配方法,該方法集合多個特征點的鄰域位置約束判斷特征點對是否匹配,提高了特征匹配的準(zhǔn)確性,但是該方法難以處理視角變換和噪聲干擾下的特征匹配問題。
針對上述問題,本文提出了一種融合交叉驗證ORB和一致空間映射的快速圖像匹配算法。在ORB算法的框架下分別檢測模板圖像和目標(biāo)圖像的特征點集,并利用每個特征點的描述符建立兩個特征點集之間的對應(yīng)關(guān)系;利用每對匹配特征點鄰域的支持點集,交叉驗證對應(yīng)特征點對的準(zhǔn)確性,從正反兩個方向篩選出高準(zhǔn)確性的對應(yīng)特征點對;基于一致空間映射對經(jīng)過篩選的特征點集進(jìn)行更加精確的非線性匹配,從而進(jìn)一步提高算法的匹配精度和抗視角變換能力。
ORB算法利用FAST算法進(jìn)行特征提取,采用BRIEF描述子形成特征點的二進(jìn)制描述,利用漢明距離判斷特征描述子的相似程度,具有很強(qiáng)的速度表現(xiàn)力和一定的旋轉(zhuǎn)不變性。
(a) (b)圖1 ORB特征匹配示意圖
步驟1驗證從特征點pi到特征點qi的正向匹配是否成立。
(1)
式中:Ai表示仿射矩陣;ti表示平移向量。
(2)
將ti代入F(Ai,ti)進(jìn)行化簡,得到:
(3)
令F(Ai)對Ai求導(dǎo),求解出仿射矩陣Ai:
(4)
步驟2驗證從qi到pi的反向匹配是否成立。
(5)
本文假設(shè)特征點集中的離群點(錯誤匹配的特征點)服從均值為0,方差為σ2的標(biāo)準(zhǔn)高斯分布,并且離群點分布均勻。可以得到高斯混合模型的似然函數(shù)如下:
(6)
式中:θ={f,σ2,γ}表示一組未知參數(shù);γ表示正確匹配對所占的百分比;α表示權(quán)重系數(shù)。P和Q是M×3維的矩陣,每一行用齊次坐標(biāo)的形式表示一個特征點,比如P中的第i個特征點為pi=(pix,piy,1)。
θ通過最大化似然函數(shù)v(Q|P,θ)來估計:
(7)
式(7)可采用EM算法的框架進(jìn)行求解。
E步:在一致空間映射f已知的條件下,估計各個特征點屬于正確特征點的概率。令zi=f(pi),更新vi:
(8)
M步:根據(jù)當(dāng)前的概率更新σ2、γ:
(9)
γ=trace(V)/M
(10)
式中:P=diag(p1,p2,…,pM)是對角矩陣;Z=(z1,z2,…,zM)是M×3維的矩陣。在M步中還需要估計一致空間映射f。
本文通過最小化加權(quán)平方誤差Ews來估計一致空間映射f。
(11)
式中:vi表示第i個特征點屬于正確特征點的后驗概率。當(dāng)vi=0時,pi和qi被定義為錯誤匹配點對,并且不被用以估計一致空間映射f;當(dāng)vi∈(0,1]時,vi被定義為一個連續(xù)的軟決策。
(12)
(13)
式中:λ表示正則化參數(shù);為了求解TPS參數(shù)A和W,引入QR分解。令V1/2P=[Q1,Q2][R,0]T,最小化式(13)得到:
(14)
(15)
當(dāng)EM算法收斂時,得到穩(wěn)定的一致空間映射f。通過檢查匹配特征點對(pi,qi)是否滿足此映射關(guān)系,就可以精確剔除剩下的錯誤匹配點對,輸出匹配圖像。
(16)
式中:τ表示剔除閾值;C表示正確匹配關(guān)系。
為了驗證本文算法的精確性和穩(wěn)健性,選擇Mikolajczyk數(shù)據(jù)集[24]進(jìn)行大視角變換下的圖像特征匹配實驗,選擇BBS數(shù)據(jù)集[11]進(jìn)行現(xiàn)實場景下的圖像特征匹配實驗,將SIFT[13]、ORB[16]、LGHD[22]和GMS算法[23]作為對比算法,采用匹配精度和運行時間對算法的匹配性能進(jìn)行評價,匹配精度被定義為(正確匹配數(shù)/總匹配數(shù))×100%。本文算法均采用Python代碼實現(xiàn),并在配置為Intel(R) Core(TM) i7-8750H和16 GB RAM的電腦上運行。
在抗視角變換對比實驗中,采用Mikolajczyk數(shù)據(jù)集中的Graffiti圖像組進(jìn)行實驗。該組圖像由6幅圖像組成,第1幅為參考圖像,第2至6幅分別為視角變化20°、30°、40°、50°和60°的目標(biāo)圖像。
本文算法與其他4種主流圖像特征匹配算法在Graffiti圖像組上測試的匹配精度曲線如圖2所示,其橫軸為視角,縱軸為匹配精度。本文算法與其他4種圖像特征匹配算法在30°視角下的特征匹配示意圖如圖3所示。本文算法與其他4種圖像特征匹配算法在30°視角下的特征匹配結(jié)果如表1所示。
圖2 本文算法與其他4種圖像特征匹配算法在Graffiti圖像組上測試的匹配精度曲線
(a) SIFT
(c) LGHD
(d) GMS
(e) 本文算法圖3 本文算法與其他4種圖像特征匹配算法在30°視角下的特征匹配示意圖
表1 本文算法與其他4種圖像特征匹配算法在30°視角下的特征匹配結(jié)果
由圖2可知,在相同視角變化情況下,本文算法的匹配精度高于其他4種圖像特征匹配算法。這是因為本文算法在ORB算法粗略匹配的基礎(chǔ)上,首先采用了交叉驗證的特征點集篩選方法,初步剔除了兩特征點集之間錯誤匹配的特征點對,接著又通過一致空間映射對經(jīng)過篩選的特征點集進(jìn)行穩(wěn)健的非線性匹配,進(jìn)一步提高了本文算法的匹配精度。
由圖3和表1可知,本文算法的特征匹配效果明顯高于SIFT、ORB、LGHD和GMS算法。SIFT、ORB、LGHD和GMS算法在30°視角下的特征匹配精度均不超過91%,并且匹配點對中存在了過多的錯誤匹配。而本文算法的特征匹配精度為97.87%,這說明本文算法在ORB初始匹配的基礎(chǔ)上,通過引入第一階段的特征點集交叉驗證和第二階段的一致空間映射,可以有效提高圖像特征匹配的精度。
在算法的運行時間上,ORB算法的運行速度最快,本文算法的運行速度處于ORB算法和GMS算法之間,排第二位。這是因為本文算法首先利用ORB算法檢測模板圖像和目標(biāo)圖像的初始特征點集,其次才進(jìn)行由粗到精的兩階段錯誤匹配對剔除,因此運行速度比ORB算法略慢。但是本文算法的匹配精度比ORB算法提高了約46%,這同樣證明了本文算法引入兩階段錯誤匹配對剔除的有效性。
在現(xiàn)實場景對比實驗中,采用BBS數(shù)據(jù)集進(jìn)行實驗。該數(shù)據(jù)集來源于現(xiàn)實場景,由105對低分辨率圖像組成,其中最小的分辨率為128×96,最大的分辨率為480×360。數(shù)據(jù)集中的每對圖像都包含了一定程度的幾何形變,局部遮擋和背景變化,利用這些來自現(xiàn)實場景的圖像數(shù)據(jù)可以較好地評估本文算法和對比算法的特征匹配性能。
圖4為本文算法與其他4種圖像特征匹配算法在BBS數(shù)據(jù)集上測試的匹配成功率曲線對比圖。匹配成功率曲線直觀反映了圖像特征匹配算法的匹配性能,曲線越高,說明對應(yīng)算法的特征匹配性能越好。表2為本文算法與其他4種圖像特征匹配算法在BBS數(shù)據(jù)集上測試的特征匹配結(jié)果。
圖4 本文算法與其他4種圖像特征匹配算法在BBS數(shù)據(jù)集上測試的匹配成功率曲線
表2 本文算法與其他4種圖像特征匹配算法的匹配性能對比
由圖4可知,本文算法的匹配成功率曲線均高于其他4種主流圖像特征匹配算法,這說明在進(jìn)行圖像特征點集交叉驗證的基礎(chǔ)上,利用一致空間映射對經(jīng)過篩選的圖像特征點集進(jìn)行精確匹配,可以有效提高圖像特征匹配算法的精確性和穩(wěn)健性,驗證了本文算法的匹配性能優(yōu)于所對比的其他圖像特征匹配算法。表2中,本文算法的平均匹配精度為74.54%,超過其他4種圖像特征匹配算法,并且比第二名GMS算法的平均匹配精度提高了約6%。在算法的運行時間上,本文算法的平均匹配時間為0.335 2 s,僅略慢于ORB算法的0.262 5 s,排在第二位,這證明了本文算法的實時性。
圖5是本文算法與其他4種圖像特征匹配算法的部分匹配結(jié)果示意圖??梢钥闯?,與其他4種圖像特征匹配算法相比,本文算法匹配的特征點對誤匹配率最低,達(dá)到了最佳的特征匹配效果,這充分反映了本文算法在特征點集匹配方面的精確性和穩(wěn)健性。即使對于幾何形變、局部遮擋、背景變化和低分辨率下的圖像特征匹配問題,本文算法依然能夠達(dá)到較好的特征匹配效果。
(c) LGHD
為了解決傳統(tǒng)ORB算法誤匹配率高、抗視角變換能力弱等問題,提出了一種融合交叉驗證ORB和一致空間映射的快速圖像匹配算法。在ORB特征點檢測并匹配的基礎(chǔ)上,首先利用每對匹配特征點鄰域的支持點集,交叉驗證對應(yīng)特征點對的準(zhǔn)確性,從正反兩個方向篩選出準(zhǔn)確性較高的對應(yīng)特征點對。然后通過一致空間映射對經(jīng)過篩選的特征點集進(jìn)行穩(wěn)健的非線性匹配。實驗證明,本文算法在進(jìn)行大視角變換和現(xiàn)實場景下的圖像特征匹配問題時,精確性和穩(wěn)健性均有所提升。下一步,將在算法的初始階段改進(jìn)一種更加穩(wěn)定高效的特征點集提取方法,進(jìn)一步提高本文算法的穩(wěn)健性和實時性,并將其應(yīng)用于即時定位與地圖構(gòu)建(Simultaneous Localization And Mapping,SLAM)的前端。