張萌生,楊樹文,賈鑫,臧麗日
(1.蘭州交通大學(xué)測繪與地理信息學(xué)院,蘭州 730070; 2.地理國情監(jiān)測技術(shù)應(yīng)用國家地方聯(lián)合工程研究中心,蘭州 730070; 3.甘肅省地理國情監(jiān)測工程實驗室,蘭州 730070)
遙感影像配準(zhǔn)是一個空間映射的過程,即通過某種空間變換使得2幅影像中同一目標(biāo)點達到空間位置一致。遙感影像配準(zhǔn)技術(shù)在影像自動處理領(lǐng)域得到廣泛應(yīng)用,是目前遙感研究應(yīng)用的熱點問題之一,學(xué)者們先后提出了多種配準(zhǔn)算法[1]。影像配準(zhǔn)算法大致可分為基于灰度信息和基于特征2種配準(zhǔn)算法。其中,基于特征的影像配準(zhǔn)算法以計算量小、速度快、魯棒性強的特點被廣泛的應(yīng)用。
在基于特征的影像配準(zhǔn)算法中最具代表性的是Lowe提出的尺度不變特征變換算法(scale-invariant feature transform,SIFT)[2-3],因具有優(yōu)秀的仿射不變性和魯棒性[4]在影像配準(zhǔn)領(lǐng)域得到了廣泛的認(rèn)可。在此基礎(chǔ)上,李曉明等首次將SIFT算法應(yīng)用在遙感影像的自動配準(zhǔn)中,但是傳統(tǒng)SIFT算法進行遙感影像配準(zhǔn)過程中的效果并不理想。為此,李曉明等[5]引入了隨機抽樣一致(random sample consensus,RANSAC)算法[6],較為有效地剔除了誤匹配點對并提高了匹配精度。然而,由于遙感影像的不確定性,SIFT與RANSAC算法結(jié)合進行遙感影像匹配過程中仍存在大量的誤匹配點對,達不到實際應(yīng)用的匹配效果。
針對此問題,程焱等[7]提出使用M估計代替RANSAC算法提高遙感影像自動配準(zhǔn)精度的建議。但由于在遙感影像的匹配過程中誤匹配點對較多,使用傳統(tǒng)的統(tǒng)計學(xué)方法剔除誤匹配點對仍較為困難。因此,學(xué)者們針對這一問題提出了一系列改進算法,如李芳芳等[8]對SIFT算法匹配精度進行了優(yōu)化,采用雙向匹配算法并結(jié)合匹配點對坐標(biāo)差進行誤匹配點對的剔除,該方法很大程度上提高了匹配點對的精確度; 程紅等[9]提出了利用象限和角度剔除SIFT特征匹配的誤匹配點對的思路,也在一定程度上解決了誤匹配的問題; 張謙等[10-11]在多源影像配準(zhǔn)過程中提出了使用透視變換方程耦合均方根誤差作為誤差模型剔除誤匹配的方法; 沈宇臻等[12]在多源影像匹配時提出了通過計算特征點對之間距離、方向夾角的關(guān)系等進行誤匹配點對剔除的思路,但是該方法需要首先設(shè)定距離閾值和方向閾值。
綜上所述,在實際配準(zhǔn)過程中,由于存在紋理相似、圖像噪聲等遙感影像不確定性因素的影響,在2幅圖像上檢測出的特征點存在較大差異,從而使得一些非同名特征點也被錯誤地匹配成為配準(zhǔn)點對。為了進一步提高影像配準(zhǔn)的精度,在影像進行SIFT算法特征點的提取和匹配之后,還需進一步剔除誤匹配點對,提高配準(zhǔn)點對的數(shù)量和精度。為此,本文提出使用格網(wǎng)索引對SIFT算法進行優(yōu)化,剔除大量的誤匹配點對之后再使用RANSAC算法,其顯著提高了SIFT算法在遙感影像配準(zhǔn)中的精度,并且使用該算法進行影像配準(zhǔn)得到了較好的結(jié)果。
SIFT算法利用高斯差分金字塔構(gòu)建多尺度空間,尋找多尺度空間的穩(wěn)點特征和描述。SIFT算法的核心思路可分為4步[3]:
1)尺度空間極值檢測。基于多尺度空間理論通過高斯差分代替拉普拉斯差分建立多層高斯差分金字塔,在差分金字塔中尋找極值檢測點。
2)關(guān)鍵點定位。比較檢測點所在圖像的3×3鄰域8個像素點,以及其相鄰的上下2層的3×3鄰域18個像素點共26個像素點,是否為極值點。通過曲線擬合尋找尺度空間的極值點的位置,再去除低對比度的關(guān)鍵點和不穩(wěn)定的邊緣響應(yīng)點,得到穩(wěn)定性強的關(guān)鍵點。
3)關(guān)鍵點主方向分配。利用關(guān)鍵點鄰域像素的梯度分布特性來確定其方向參數(shù),再利用圖像的梯度直方圖求取關(guān)鍵點局部結(jié)構(gòu)的穩(wěn)定方向。
4)關(guān)鍵點描述子構(gòu)造。以關(guān)鍵點為中心取16×16的窗口,并均分為4×4個子區(qū)域,計算每個子區(qū)域8個方向的梯度方向直方圖,這樣每個關(guān)鍵點都可以產(chǎn)生4×4×128維的特征向量。
為了驗證、分析SIFT算法的效率和精度,基于GF-2影像進行了大量分析實驗,結(jié)果如圖1和2所示。其中,圖1是使用SIFT算法對2幅實驗區(qū)域相同的遙感影像提取特征點,圖1(a)為GF-2待配準(zhǔn)全色影像(空間分辨率為1 m)所提取得到的特征點圖像,大小為500像素×500像素,圖1(b)為GF-2經(jīng)人工配準(zhǔn)融合后基準(zhǔn)多光譜影像(空間分辨率為1 m)所提取得到的特征點圖像,大小為737像素×633像素。圖2是圖1這2幅影像利用歐式距離進行特征點匹配的結(jié)果。從圖2中可以直觀地看出匹配的結(jié)果中存在大量誤匹配點對。
圖2 SIFT算法進行匹配后的結(jié)果(隨機顯示100對)Fig.2 Result of matching by SIFT algorithm
鑒于SIFT算法存在的不足,在大量實驗分析的基礎(chǔ)上,發(fā)現(xiàn)引入格網(wǎng)索引能夠有效提高匹配精度。格網(wǎng)索引是一種常見的空間索引,其原理是將一定地理范圍劃分成M行N列,得到M×N個格網(wǎng)[13]。為了建立起地理區(qū)域與格網(wǎng)索引的對應(yīng)關(guān)系,存儲了每個空間對象落在格網(wǎng)區(qū)域內(nèi)的索引信息,并對每個格網(wǎng)賦予唯一的索引值。具體步驟為: 首先,通過SIFT算法匹配得到待配準(zhǔn)影像在基準(zhǔn)影像中的對應(yīng)區(qū)域; 然后,建立相對應(yīng)的格網(wǎng),如圖3所示; 最后,根據(jù)空間對象的地理坐標(biāo)計算出空間對象屬于的格網(wǎng),再將其索引信息存儲到該點內(nèi)。本文將SIFT算法檢測出的特征點建立格網(wǎng)索引(格網(wǎng)大小為5×5),通過索引值將SIFT算法匹配得到的特征點對進行剔除,保留索引值相同的特征點對。
在進一步的實驗研究中發(fā)現(xiàn),將RANSAC算法與格網(wǎng)索引進行耦合,能夠進一步提高匹配精度。RANSAC算法從包含較多噪聲點或無效點的數(shù)據(jù)集中,通過反復(fù)選擇數(shù)據(jù)中的隨機子集建立模型,符合該模型的數(shù)據(jù)稱為“內(nèi)點”,不符合的稱為“外點”,最后通過“內(nèi)點”和模型的錯誤率選擇最優(yōu)模型,確定出有效樣本。該算法對圖像噪聲有很好的魯棒性,因此在消除誤匹配點,提高配準(zhǔn)精度方面已有廣泛的應(yīng)用。使用RANSAC算法對SIFT匹配結(jié)果進行優(yōu)化,能夠一定程度上提高匹配的精確度。但是由于遙感影像會存在近似的紋理特征,導(dǎo)致誤匹配點對較多,并且由于誤匹配點對數(shù)量增多,造成RANSAC算法“外點”增多,會導(dǎo)致RANSAC無法準(zhǔn)確區(qū)分“內(nèi)點”與“外點”,影響RANSAC算法優(yōu)化SIFT匹配的結(jié)果。
在上述多個理論的基礎(chǔ)上,提出了基于格網(wǎng)索引優(yōu)化的遙感影像自動配準(zhǔn)算法,流程如圖4所示。
圖4 基于格網(wǎng)索引優(yōu)化的遙感影像配準(zhǔn)流程Fig.4 Flow chart of remote sensing imageregistration based on grid index
為了驗證本文算法的有效性,進行了大量的遙感影像配準(zhǔn)實驗,并與SIFT算法、SIFT+RANSAC算法和分塊SIFT算法進行匹配性能的比較,其中分塊SIFT算法[14]中使用RANSAC算法剔除誤匹配。本文實驗環(huán)境: Intel Core I5-4200U 1.60 GHz處理器,8 GB運行內(nèi)存,64位Win7操作系統(tǒng),OpenCV 3.0.0。本文選取3組不同區(qū)域且拍攝時間不同的遙感影像進行配準(zhǔn)實驗,實驗數(shù)據(jù)詳細信息如表1所示,其中基準(zhǔn)影像為經(jīng)人工配準(zhǔn)融合后的GF-1多光譜影像(空間分辨率為2 m),如圖5所示。
表1 實驗數(shù)據(jù)的詳細信息Tab.1 Detailed description of test data
對3組實驗區(qū)域影像采用SIFT算法、SIFT+RANSAC算法、分塊SIFT算法和本文算法進行對比實驗,上述4種算法所得的實驗結(jié)果如表2所示。表2分別統(tǒng)計了4種算法的配準(zhǔn)點數(shù)量和正確率,可以看出本文算法的正確率得到了較大提升,并且正確配準(zhǔn)點對數(shù)量較SIFT+RANSAC算法得到顯著提升。
表2 4種算法配準(zhǔn)點對數(shù)量和正確率對比Tab.2 Comparison of the number and correct rate of registration of four algorithms
圖6展示了通過本文算法進行影像配準(zhǔn)的效果(圖中上層影像為已配準(zhǔn)的全色影像透明度為50%,下層圖像為基準(zhǔn)影像),可以看出圖6中由于得到了大量高精度匹配點對,使得多項式幾何糾正后的配準(zhǔn)精度更高。
為了定量分析本文算法的配準(zhǔn)精度,從第一組實驗的基準(zhǔn)影像和配準(zhǔn)影像中選取10對同名像點作為檢查點如表3所示,計算得到坐標(biāo)的均方根誤差為2.560 24,即0.695 69個像素。其中2幅影像均為WGS84坐標(biāo)系,投影系為UTM投影。
表3 配準(zhǔn)精度評價Tab.3 Registration accuracy evaluation
1)本文針對SIFT算法在遙感圖像配準(zhǔn)中出現(xiàn)的大量誤匹配現(xiàn)象,提出了基于格網(wǎng)索引的遙感影像自動配準(zhǔn)算法,引入格網(wǎng)索引剔除了SIFT算法的大量誤匹配點對,從而減少了RANSAC算法中的“外點”,提升了RANSAC算法的效果。利用本文優(yōu)化的SIFT算法可以同時提高遙感影像配準(zhǔn)點對的正確率和配準(zhǔn)點對數(shù)量。實驗表明,該算法相對于原有傳統(tǒng)的分塊SIFT算法顯著提升了遙感影像配準(zhǔn)的精度,結(jié)果更加理想。
2)本文算法部分過程計算量較大,效率較低,并且本文算法配準(zhǔn)的精度跟檢測到配準(zhǔn)點對數(shù)量的多少有關(guān),在遙感影像存在輻射差異的情況下配準(zhǔn)效果較差,下一步將對此問題進行深入研究,以提升遙感影像配準(zhǔn)的普適性。