李 丹,徐倩南
(安徽工業(yè)大學(xué) 電氣與信息工程學(xué)院,安徽 馬鞍山 243032)
遙感圖像的配準(zhǔn)常用來獲取更加全面的地理信息,正確辨識相關(guān)的地理位置等?;谔卣鞯膱D像匹配由于其穩(wěn)健高效的特點(diǎn)成為研究的熱點(diǎn)[1]。經(jīng)典的SIFT(scale-invariant feature transform)[2]和SURF(speed up robust feature)[3]算法由于使用高斯金字塔構(gòu)建尺度空間,高斯模糊導(dǎo)致對象邊界信息的丟失,影響了定位的準(zhǔn)確性。KAZE[4]算法通過AOS(additive operator splitting)數(shù)值逼近方法建立非線性尺度空間,計算量較大,實(shí)時性難以滿足[5]。AKAZE[6]中,作者引入快速顯示擴(kuò)散數(shù)學(xué)框架FED(fast explicit diffusion)來求解偏微分方程,比當(dāng)下其它的非線性模式建立尺度空間都要快,同時比KAZE中的AOS[7]更加準(zhǔn)確。ORB(oriented FAST and rotated BRIEF)[8]算法結(jié)合FAST與BRIEF(binary robust independent elementary features)[9]提高了計算速度,但缺少尺度不變性。BRISK(binary robust invariant scalable keypoints)[10]利用像素灰度值的比較來構(gòu)建二進(jìn)制描述子,速度較快且具備旋轉(zhuǎn)與尺度不變性,但是匹配魯棒性較差[11]。GMS(grid-based motion statistics)[12]基于網(wǎng)格的運(yùn)動估計方法,通過在粗匹配點(diǎn)相鄰的區(qū)域中統(tǒng)計具有匹配關(guān)系的特征點(diǎn)數(shù)量來進(jìn)行匹配,快速且魯棒性強(qiáng)[13]。為了保證特征點(diǎn)定位的精度,本文采用AKAZE(accelerated-KAZE)算法來檢測特征點(diǎn),同時為了算法的實(shí)時性,使用速度較快且具有尺度與旋轉(zhuǎn)不變性的二進(jìn)制描述子BRISK進(jìn)行特征描述,為了提升匹配的魯棒性,我們采用基于網(wǎng)格的運(yùn)動估計方法對描述子進(jìn)行匹配,最后利用隨機(jī)采樣一致性算法剔除錯誤的匹配點(diǎn)。
基于網(wǎng)格運(yùn)動約束的遙感圖像配準(zhǔn)方法流程如圖1所示。
圖1 算法流程
AKAZE特征點(diǎn)檢測首先是構(gòu)造非線性尺度空間,通過非線性擴(kuò)散濾波方程,即流動函數(shù)的散度來表示圖像亮度在不同尺度空間變化的方法。利用如式(1)所示的非線性微分方程來描述
(1)
其中,L代表的是圖像亮度,c(x,y,t) 是傳導(dǎo)函數(shù),t表示尺度參數(shù)。非線性尺度空間由O組圖像組成,每一組包括S層,其中每組每層的尺度參數(shù)是σi(o,s),σi的單位是像素而ti的單位是時間,因此需要將兩者進(jìn)行轉(zhuǎn)換。對原始輸入圖像進(jìn)行高斯濾波,濾波后的圖像梯度直方圖70%位置上的值作為控制因子。獲取輸入圖像與控制因子之后,采用FED算法對擴(kuò)散方程進(jìn)行求解來構(gòu)建非線性尺度空間[7]。
尺度空間構(gòu)建完成后,然后采用Hessian矩陣進(jìn)行特征點(diǎn)提取,如式(2)所示
(2)
其中,Lxx,Lyy,Lxy為L的二階微分,σi為尺度歸一化因子,每一個像素點(diǎn)分別在當(dāng)前及其上下兩層以3*3窗口進(jìn)行極值點(diǎn)搜索,得到的極值點(diǎn)為初步關(guān)鍵點(diǎn),還要利用泰勒公式進(jìn)行亞像素點(diǎn)的精確定位,最終定位的點(diǎn)即為特征點(diǎn)。
圖2 BRISK描述子采樣模式
以關(guān)鍵點(diǎn)為中心將采樣點(diǎn)旋轉(zhuǎn)α角度,考慮其中短距離點(diǎn)對子集中的512個點(diǎn)對,進(jìn)行二進(jìn)制編碼,編碼方式如式(3)所示
(3)
為了解決當(dāng)前特征匹配存在的匹配速度和匹配效果難以同時滿足的問題,本文采用基于網(wǎng)格運(yùn)動估計的方法來進(jìn)行特征點(diǎn)的匹配。該方法的核心思想是運(yùn)動的平滑性導(dǎo)致了正確匹配的特征點(diǎn)鄰域有較多匹配的點(diǎn),相反錯誤的匹配點(diǎn)對由于對應(yīng)著三維空間中不同的位置,匹配對鄰域內(nèi)支持的點(diǎn)數(shù)較少,因此只要通過計數(shù)鄰域的匹配點(diǎn)個數(shù)就可以判斷一個匹配點(diǎn)對正確與否[12]。
首先利用暴力匹配獲取兩張圖像的特征匹配點(diǎn)對集合,GMS算法通過分析匹配點(diǎn)對鄰域內(nèi)支持匹配點(diǎn)對的數(shù)量,來分離匹配點(diǎn)對集合中的正確和錯誤的匹配。假設(shè)匹配對xi在兩幅圖中分別對應(yīng)的鄰域?yàn)閧a,b},χi表示在鄰域 {a,b} 內(nèi)的特征匹配對的數(shù)量,那么xi的支持匹配點(diǎn)對數(shù)量Si為
Si=|χi|-1
(4)
在特征點(diǎn)匹配中,每一個特征點(diǎn)的匹配是獨(dú)立的,因此匹配對xi所對應(yīng)的鄰域內(nèi)的其它n個匹配對服從二項分布,如式(5)所示
(5)
Si表示當(dāng)前特征點(diǎn)鄰域a內(nèi)的n個點(diǎn)匹配到兩幅圖像對應(yīng)的相同物體區(qū)域b的次數(shù),pt表示鄰域 {a,b} 對應(yīng)同一個三維位置時,區(qū)域a內(nèi)的特征點(diǎn)的匹配點(diǎn)在區(qū)域b內(nèi)的概率,pf表示鄰域 {a,b} 對應(yīng)的是不同的三維位置時,區(qū)域a內(nèi)特征點(diǎn)的匹配點(diǎn)在區(qū)域b內(nèi)的概率。
為了提高S分?jǐn)?shù)區(qū)分正確-錯誤匹配的能力,采用多鄰域模型來代替原先的單鄰域模型,那么支持匹配點(diǎn)對數(shù)量Si的計算如式(6)所示
(6)
那么Si的分布擴(kuò)展為式(7)形式
(7)
其中,n表示每一個小鄰域內(nèi)的平均的特征點(diǎn)數(shù),K表示小鄰域的個數(shù)。Si分布的均值和標(biāo)準(zhǔn)差分別為
(8)
如圖3所示,正確的匹配和錯誤的匹配都有自己的分布,且均滿足二項分布,為了使它們的區(qū)分度更大,首先這兩個分布要相隔足夠遠(yuǎn),即mt-mf足夠大,其次這兩個分布的標(biāo)準(zhǔn)差或方差要足夠小,區(qū)分能力得分如式(9) 所示
(9)
圖3 Si分布
GMS算法將一幅圖分成N×N的不重疊的網(wǎng)格,并且選取3*3網(wǎng)格作為一組來計算Si的值。為了獲得足夠大的區(qū)分能力得分P, 經(jīng)過實(shí)驗(yàn)選取的較為合理的參數(shù)為K=9,n=25,N=20。 當(dāng)支持匹配點(diǎn)對數(shù)量Si大于一定閾值的時候,便認(rèn)為是正確匹配。閾值τ的計算如式(10)所示
τ=mf+αsf
(10)
其中,α是調(diào)節(jié)參數(shù),mf的值通常很小,α的值很大,所以式(10)又可以近似表示為
τ≈αsf
(11)
對于本文提出的基于網(wǎng)格約束的遙感圖像匹配方法,我們進(jìn)行了大量的實(shí)驗(yàn),本實(shí)驗(yàn)運(yùn)行環(huán)境是Intel core5的CPU,64位Windows 10操作系統(tǒng),所有算法集成在Visual studio和OpenCV3.1環(huán)境下實(shí)現(xiàn)。為了驗(yàn)證算法效果,選出如圖4所示的圖(a)~圖(c)這3組IKONOS衛(wèi)星遙感圖片進(jìn)行對比,圖(a)組表示的是圖片的尺度變換,圖(b)組對應(yīng)的是圖片的亮度變換,圖(c)組是圖片的旋轉(zhuǎn)變換。通過3組圖片,分別對本文算法的抗尺度變化,抗亮度變化以及抗旋轉(zhuǎn)變化性能來進(jìn)行驗(yàn)證。將本文算法與AKAZE算法,KAZE算法以及速度較快的ORB算法進(jìn)行對比,從匹配結(jié)果圖,特征匹配速度,特征匹配正確率3個方面來對每個算法進(jìn)行定量的評價。
圖4 實(shí)驗(yàn)數(shù)據(jù)遙感
圖5顯示的是4種算法對3組遙感圖像的匹配結(jié)果圖,本文算法通過RANSAC算法剔除誤匹配點(diǎn),其余3種算法特征點(diǎn)匹配均采用暴力匹配算法,且均通過RANSAC算法對匹配點(diǎn)進(jìn)行提純。其中圖(a)組是尺度壓縮變換下匹配結(jié)果圖,圖(b)組是亮度變換下匹配結(jié)果圖,圖(c)組是旋轉(zhuǎn)變換下匹配結(jié)果圖。從最直觀的角度我們可以看出,在圖(a)組匹配圖中,由于尺度壓縮分辨率較低,4種算法匹配圖都有明顯的誤匹配,其中KAZE算法錯誤率最高,AKAZE和ORB算法錯誤率較少,本文算法匹配效果相對最穩(wěn)定。圖(b)和圖(c)在4種算法下都取得較好的匹配效果,但是可以明顯看出文中算法匹配效果突出,這也進(jìn)一步證實(shí)本文算法在尺度變化,光照變化,旋轉(zhuǎn)變化下都有較好的魯棒性。
圖5 配準(zhǔn)結(jié)果比較
采用對比匹配時間長短的方法來評價4種算法特征匹配的速度,匹配時間越短,特征匹配速度越快。表1給出了分別使用AKAZE算法,ORB算法,KAZE算法和本文算法對圖4所示的圖像數(shù)據(jù)進(jìn)行特征匹配所用的時間,其中AKAZE,KAZE和ORB算法均采用暴力匹配進(jìn)行粗匹配,然后利用隨機(jī)采樣一致性算法進(jìn)行提純,為了更鮮明地比較出各個算法匹配的快慢,圖6給出了各種算法匹配時間的折線圖。
表1 特征匹配用時比較/s
圖6 配準(zhǔn)時間比較
由折線圖可以很明顯看出,在匹配用時上,KAZE算法匹配用時最多,速度最慢,本文算法匹配用時最短,速度最快,ORB算法和AKAZE算法用時相近,由此可得,本文算法在匹配時間上效果較好。
匹配正確率CMR的定義是匹配正確點(diǎn)對數(shù)與總的匹配點(diǎn)對數(shù)之比,CMR是一種客觀的評價指標(biāo),匹配正確率越高,匹配性能越好。圖7所示的是4種算法對3組遙感圖片進(jìn)行匹配的正確率效果圖,柱狀圖從左到右的順序分別是AKAZE算法,ORB算法,本文算法,KAZE算法。從圖7中可以看出,本文算法在3組圖片下的匹配正確率相較其它3種算法皆為最高,這表明本文算法在尺度變化,亮度變化以及旋轉(zhuǎn)變化下皆有不錯的匹配性能,其中在抗尺度變化下匹配性能最為突出,AKAZE和KAZE算法匹配效果次之,ORB算法匹配效果較差,這也進(jìn)一步驗(yàn)證了本文算法具有較穩(wěn)定的匹配性能。
圖7 匹配正確率比較
本文提出了一種基于網(wǎng)格運(yùn)動約束的遙感圖像的局部特征匹配方法,該方法首先利用AKAZE算法進(jìn)行特征點(diǎn)提取,采用二進(jìn)制描述子BRISK對檢測的特征點(diǎn)進(jìn)行描述,然后使用GMS基于網(wǎng)格的運(yùn)動估計方法對特征點(diǎn)進(jìn)行精確匹配,最后使用RANSAC算法對匹配的點(diǎn)對進(jìn)一步提純,剔除誤匹配點(diǎn)。實(shí)驗(yàn)中將本文算法與魯棒性較強(qiáng)的AKAZE算法,KAZE算法和速度較快的ORB算法從匹配效果圖,匹配時間,匹配正確率3個方面進(jìn)行比較,實(shí)驗(yàn)結(jié)果表明,本文算法在提高特征匹配速度的基礎(chǔ)上保證了特征匹配正確率,在處理旋轉(zhuǎn)變化較大的圖片時依然能保持相對較好的匹配效果。由此可得,本文算法適合用于遙感圖片匹配處理。