藍(lán)朝楨,盧萬(wàn)杰,于君明,徐 青
1. 信息工程大學(xué)地理空間信息學(xué)院,河南 鄭州 450001; 2. 中國(guó)電子科技集團(tuán)公司第二十七研究所,河南 鄭州 450047
隨著遙感技術(shù)的飛速發(fā)展,可見(jiàn)光、紅外、合成孔徑雷達(dá)(synthetic aperture radar,SAR)等多類型傳感器對(duì)地觀測(cè)影像[1]日趨豐富。不同平臺(tái)和傳感器獲取的異源影像之間具有一定互補(bǔ)性,為遙感信息的深入挖掘、大數(shù)據(jù)分析提供了海量的數(shù)據(jù)來(lái)源[2]。影像之間的匹配是異源影像進(jìn)一步處理及分析的核心問(wèn)題。由于成像機(jī)理、波段、時(shí)相等不同,異源影像在輻射特征、幾何特征上都存在巨大差異,它們之間的匹配一直都是影像匹配的研究難點(diǎn)。
國(guó)內(nèi)外學(xué)者針對(duì)這一問(wèn)題提出了多種匹配方法。主要包括兩大類,一類是基于特征的匹配方法,另一類是基于模板匹配的方法。圖像特征匹配通常提取關(guān)鍵點(diǎn)周?chē)欢ㄠ徲騼?nèi)的局部特征信息描述符,通過(guò)比較描述符來(lái)確定匹配點(diǎn),其中最著名的是尺度不變特征轉(zhuǎn)換(scale invariant feature transformation,SIFT)描述符[3]。SIFT描述符能夠很好地抵抗影像間的旋轉(zhuǎn)和尺度差異,但由于基于影像局部鄰域的梯度分布描述關(guān)鍵點(diǎn),對(duì)異源影像的匹配效果較差。因此,眾多學(xué)者試圖通過(guò)改進(jìn)SIFT算法或者結(jié)合其他約束信息開(kāi)展異源影像匹配研究[4-8]。但是當(dāng)異源影像間的輻射和幾何差異較大時(shí),特別是存在較大的非線性誤差時(shí),由于較小的鄰域強(qiáng)度和梯度信息不能提供穩(wěn)定的特征[9],因此很難獲得良好的效果。
與SIFT及其改進(jìn)算法相比,基于模板的匹配可以獲得更大影像范圍內(nèi)的不變量。其中,在異源影像匹配方面比較成功的相似性測(cè)度包括互信息(mutual information,MI)以及相位一致性[9-13]。此外,文獻(xiàn)[14]提出了一種顧及灰度和梯度信息的多模態(tài)影像配準(zhǔn)算法,文獻(xiàn)[15]提出了基于相位一致性和最大索引圖的輻射不變特征匹配方法RIFT,都取得很好的匹配效果。
以上算法都依賴人工設(shè)計(jì)的描述符,當(dāng)面對(duì)的遙感影像在來(lái)源、模式和波段等方面變化越來(lái)越多的情況下,其擴(kuò)展和表達(dá)能力有限,基于模板的匹配效率也相對(duì)較低。近幾年,深度學(xué)習(xí)方法特別是卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)在計(jì)算機(jī)視覺(jué)任務(wù)如圖像分類、目標(biāo)檢測(cè)和分割方面取得了巨大的進(jìn)步和性能提升。自2014年文獻(xiàn)[16]首次引入以來(lái),學(xué)者們就開(kāi)始將CNN應(yīng)用于圖像特征提取過(guò)程,并逐漸從SIFT特征向CNN特征轉(zhuǎn)變[16-22]。傳統(tǒng)的人工設(shè)計(jì)的描述子只能提取和表示影像相對(duì)低層的特征,而CNN通常被認(rèn)為能夠提取更高層、更抽象的語(yǔ)義特征。利用高層的語(yǔ)義信息進(jìn)行匹配,有著很強(qiáng)的泛化性,更接近人類視覺(jué)觀察原理,理論上應(yīng)該更能夠抵抗由于波段、成像模式、季節(jié)變換等帶來(lái)的干擾,有望在匹配適應(yīng)性方面獲得較大提升。
早期提出的CNN特征提取方法大多使用全連接層展平提取整幅圖像或者圖像塊的特征向量,通常用于圖像分類或者識(shí)別,不進(jìn)行關(guān)鍵點(diǎn)特征的匹配。2016年以后,學(xué)習(xí)型關(guān)鍵點(diǎn)特征檢測(cè)和描述算法得到了迅速發(fā)展,相繼提出了LIFT[23]、SuperPoint[24]、DELF[25]、D2-Net[26]等。其中,D2-Net利用30多萬(wàn)個(gè)預(yù)匹配的立體像對(duì)進(jìn)行訓(xùn)練,在解決變化場(chǎng)景下影像匹配方面取得了重要進(jìn)展,且表現(xiàn)出巨大的潛力。但這些算法模型提出的主要目的是用于光照和視角變化的地面近景可見(jiàn)光影像,多用于地面車(chē)輛視覺(jué)導(dǎo)航等。文獻(xiàn)[27]專門(mén)針對(duì)跨模態(tài)異源的影像匹配問(wèn)題,提出了用跨模態(tài)上下文增強(qiáng)的局部描述子,取得了積極進(jìn)展。
本文試圖在引入D2-Net特征提取基本思想的基礎(chǔ)上,提出一種基于深度學(xué)習(xí)特征的異源遙感影像匹配算法(cross modality matching net,CMM-Net),希望能夠通過(guò)CNN提取的高層語(yǔ)義局部特征,自動(dòng)學(xué)習(xí)和尋找異源影像同名點(diǎn)之間幾何和輻射不變量,形成一種穩(wěn)健的端對(duì)端的異源遙感影像匹配方法。
要實(shí)現(xiàn)異源遙感影像穩(wěn)健的特征匹配,核心問(wèn)題在于如何減小異源影像輻射和幾何差異帶來(lái)的影響,找到不變特征表示方法。為達(dá)到這一目的,本文提出的CMM-Net著重在以下3個(gè)方面進(jìn)行考慮。①構(gòu)建一個(gè)適合特征關(guān)鍵點(diǎn)提取和描述的CNN網(wǎng)絡(luò)和提取算法。來(lái)自CNN較深層的特征圖可以看作是更高層的語(yǔ)義信息,高層抽象的語(yǔ)義信息要比低層梯度信息更能夠適應(yīng)輻射和幾何上的變化;適當(dāng)擴(kuò)大提取特征對(duì)應(yīng)的原始輸入影像范圍(感受域),有利于異源影像不變特征的提取。②利用已經(jīng)配對(duì)好的光照和拍攝角度都存在較大差異的數(shù)據(jù)對(duì)CNN網(wǎng)絡(luò)進(jìn)行訓(xùn)練,讓CNN特征提取器能學(xué)習(xí)到光照、幾何等變化影像的不變性特征。③采取“以多求可靠”的策略。異源影像差異大,即使考慮到以上兩點(diǎn),對(duì)于模式不同的影像(如SAR和光學(xué)影像)進(jìn)行匹配還是存在很大困難。因此,本文考慮“以多求可靠”的策略,讓提取的候選特征具有較多的數(shù)量,通過(guò)提升匹配過(guò)程的篩選機(jī)制進(jìn)行有效約束,以獲得更多可靠、更均勻的匹配對(duì)。
此外,特征定位也是特征匹配過(guò)程中不可忽視的問(wèn)題。通常CNN經(jīng)過(guò)卷積抽象后,輸出特征圖分辨率會(huì)成倍下降。CNN深度越深,特征的不變性表達(dá)能力越強(qiáng),但定位精度越差,特征的抽象和精確定位在CNN中是一對(duì)矛盾。本文在特征提取過(guò)程中,選擇抽取CNN網(wǎng)絡(luò)的中間層,并通過(guò)改變池化步長(zhǎng)方法來(lái)保證網(wǎng)絡(luò)最后一次池化輸出分辨率不降低,同時(shí),與SIFT等傳統(tǒng)算法一樣,采用關(guān)鍵點(diǎn)內(nèi)插的方式,獲得更高的定位精度。
為使CNN網(wǎng)絡(luò)適合特征提取,CMM-Net選取經(jīng)典VGG16網(wǎng)絡(luò)模型[28]并對(duì)其進(jìn)行適應(yīng)性改造。經(jīng)典的VGG16模型共5個(gè)卷積網(wǎng)絡(luò),主要用于分類任務(wù)。通常,網(wǎng)絡(luò)的前幾層感受域很小,得到的特征是相對(duì)底層的邊緣、角點(diǎn)等局部特征,但定位精度較高;網(wǎng)絡(luò)層數(shù)越深,提取的特征越抽象,信息越全局,越能抵抗異源影像帶來(lái)的干擾,但定位精度越差。因此,為了能夠使特征點(diǎn)既有足夠抽象性、也可以獲得較高的定位精度,本文算法丟棄VGG16的最后一個(gè)卷積層,選取中間第4層中的最后一個(gè)(第3個(gè))卷積層(Conv4_3)輸出作為關(guān)鍵點(diǎn)提取的特征圖,網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。特征圖是原始影像經(jīng)過(guò)CNN網(wǎng)絡(luò)多層卷積、池化后得到的輸出,其維度和同一層卷積核數(shù)量相同。選取Conv4_3的輸出作為特征圖,既具有較深的CNN不變性表達(dá)能力,又能保留一定的分辨率。
圖1 網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 The neural network structure
卷積神經(jīng)網(wǎng)絡(luò)每一層經(jīng)過(guò)池化后,分辨率一般都會(huì)下降,為了保持特征圖的分辨率,本文將最后一個(gè)(第3個(gè))池化層窗口滑動(dòng)步長(zhǎng)從2像素,替換為1像素,并且池化方法也由最大池化,替換為平均池化。第4層3個(gè)卷積(Conv4_1至Conv4_3)采用空洞卷積率(dilation)為2的空洞卷積,這樣可以擴(kuò)大感受域,提高特征表達(dá)泛化能力,有利于異源圖像特征的不變性表達(dá)。經(jīng)過(guò)改造后,相對(duì)經(jīng)典的VGG16網(wǎng)絡(luò),輸出的特征圖從原始圖像的1/8擴(kuò)大到1/4,定位精度提高一倍[26]。
利用上節(jié)設(shè)計(jì)的網(wǎng)絡(luò)結(jié)構(gòu),如果直接使用Conv4_3輸出的特征圖全部像素作為特征,特征將過(guò)于密集,且大部分特征不夠顯著。因此需要從特征圖中選擇一些特征明顯的關(guān)鍵點(diǎn)用于異源影像匹配,這一步稱為特征篩選。
假設(shè)輸入原始影像為I,尺寸為w×h,設(shè)網(wǎng)絡(luò)輸出特征圖為3D張量F=F(I),F(xiàn)∈Rw×h×n,其通道數(shù)n=512。特征關(guān)鍵點(diǎn)篩選和描述符提取即在F中進(jìn)行。
為了在Rw×h×n特征空間篩選出較為顯著的特征點(diǎn),CMM-Net采用了在高維特征圖的通道方向和局部平面內(nèi)同時(shí)最大的篩選策略[26],公式為
(1)
(2)
雖然CNN模型使用尺度上有差異的訓(xùn)練樣本進(jìn)行訓(xùn)練,特征描述符能夠?qū)W習(xí)一定程度的尺度不變性,但也難以應(yīng)對(duì)尺度變化較大的情況。因此,CMM-Net采取了離散影像金字塔模型來(lái)應(yīng)對(duì)尺度的較大變化。對(duì)輸入圖像I,金字塔影像Iρ,本文采用0.25、0.5、1.0、2.0倍分辨率(即ρ=0.25,0.5,1,2)4個(gè)離散尺度層來(lái)適應(yīng)兩幅圖像分辨率的劇烈變化。與通過(guò)有一定尺度差異的訓(xùn)練數(shù)據(jù)學(xué)習(xí)到的CNN模型一起構(gòu)成算法對(duì)輸入影像連續(xù)且較大尺度變化的適應(yīng)性。
(3)
由于金字塔分辨率不同,低分辨率特征圖需要線性內(nèi)插成與高分辨率特征圖相同大小才能進(jìn)行累加。此外,為了防止不同層級(jí)檢測(cè)特征的重復(fù),CMM-Net從最粗的尺度開(kāi)始,標(biāo)記檢測(cè)到的位置;這些位置將被上采樣到高一個(gè)尺度的特征圖中作為模板,如果高一級(jí)分辨率特征圖提取的關(guān)鍵點(diǎn)落入該模板中就會(huì)被舍棄。
ImageNet預(yù)訓(xùn)練的VGG16網(wǎng)絡(luò)模型不具備對(duì)異源影像相似性的表達(dá)能力。為讓CNN網(wǎng)絡(luò)模型能夠在輻射與幾何差異較大的異源遙感影像上學(xué)習(xí)共同特征的表達(dá),需要重新設(shè)計(jì)損失函數(shù)并利用合理的訓(xùn)練數(shù)據(jù)進(jìn)行模型微調(diào)。
CMM-Net采用了三元組距離排序函數(shù)(triplet margin ranking loss,TMRL)[29]作為損失函數(shù)。因?yàn)樵谔卣鳈z測(cè)過(guò)程中,希望特征點(diǎn)具有一定通用性,以適應(yīng)不同環(huán)境光照輻射和幾何差異的影響;但同時(shí),在特征描述過(guò)程中,又希望特征向量盡可能具有獨(dú)特性,以便尋找同名像點(diǎn)。針對(duì)這個(gè)問(wèn)題,三元組距離排序損失函數(shù)通過(guò)懲罰導(dǎo)致錯(cuò)誤匹配的任何不相關(guān)描述符來(lái)增強(qiáng)相關(guān)描述符的獨(dú)特性。此外,為尋求檢測(cè)特征的可重復(fù)性,將檢測(cè)項(xiàng)添加到損失函數(shù)中[26],公式為
(4)
上述損失函數(shù)會(huì)基于所有匹配項(xiàng)的檢測(cè)得分來(lái)生成距離因子m的加權(quán)平均值。因此,為了使損失最小化,具有較低的距離因子的最相關(guān)的對(duì)應(yīng)關(guān)系,將獲得較高的相對(duì)得分,并讓具有較高相對(duì)得分的對(duì)應(yīng)關(guān)系獲得與其余特征不同的相似描述符,提高匹配的穩(wěn)健性。
利用式(4),為了讓CNN模型能夠?qū)W習(xí)到輻射和幾何差異下像素級(jí)特征相似性的表達(dá),訓(xùn)練數(shù)據(jù)除了數(shù)量要足夠外,還必須同時(shí)具備以下兩個(gè)條件:①訓(xùn)練影像具備較大的輻射和幾何差異;②訓(xùn)練影像具備像素級(jí)的對(duì)應(yīng)關(guān)系。文獻(xiàn)[30]構(gòu)建了一種MegaDepth數(shù)據(jù)集。該數(shù)據(jù)集提出的初衷是進(jìn)行單張影像的深度恢復(fù),由100多萬(wàn)幅從互聯(lián)網(wǎng)獲得的地標(biāo)影像組成,這些影像拍攝光照、尺度差異都比較大,還包含了大量晝夜影像對(duì),如圖2所示。此外,該數(shù)據(jù)集還從這些影像中篩選出約10萬(wàn)幅優(yōu)質(zhì)影像,使用開(kāi)源運(yùn)動(dòng)恢復(fù)結(jié)構(gòu)軟件COLMAP[31]構(gòu)建了近200個(gè)不同全球地標(biāo)的三維場(chǎng)景,包括了相機(jī)內(nèi)/外部參數(shù)、場(chǎng)景結(jié)構(gòu)信息及深度圖。從這些三維場(chǎng)景中,可以獲得立體影像對(duì),并利用場(chǎng)景三維信息和相機(jī)參數(shù),第2幅影像上的像點(diǎn)可以投影到第1幅中,建立像對(duì)像素級(jí)的對(duì)應(yīng)關(guān)系。由此可見(jiàn),MegaDepth數(shù)據(jù)集可以滿足上述兩個(gè)條件。因此,本文算法選用該數(shù)據(jù)集進(jìn)行模型訓(xùn)練。
圖2 訓(xùn)練數(shù)據(jù)示例Fig.2 Examples of training data
CMM-Net骨干網(wǎng)絡(luò)采用了基于海量ImageNet數(shù)據(jù)集進(jìn)行預(yù)訓(xùn)練的VGG16模型,對(duì)網(wǎng)絡(luò)模型中最后一個(gè)密集特征提取器Conv4_3采用遷移學(xué)習(xí)微調(diào)訓(xùn)練的方法訓(xùn)練網(wǎng)絡(luò)模型。初始學(xué)習(xí)率設(shè)置為10-3,然后每10個(gè)Epoch減小一半,對(duì)于每對(duì)同名像點(diǎn),分別選擇以同名像點(diǎn)為中心的256×256像素的隨機(jī)影像區(qū)域送入到網(wǎng)絡(luò)進(jìn)行訓(xùn)練。通過(guò)訓(xùn)練可以使網(wǎng)絡(luò)能從較大輻射和幾何差異的異源遙感影像上獲得相似特征的良好性能。
CMM-Net匹配算法主要思想為:將1.2節(jié)算法作為特征提取器,在原始影像上提取深度特征。特征匹配方法采用快速最近鄰搜索(FLANN)方法。由于異源影像差異較大,提取的候選特征點(diǎn)數(shù)量較多,不可避免地會(huì)存在大量誤匹配的情況,本文提出了動(dòng)態(tài)自適應(yīng)距離約束條件和隨機(jī)采樣一致性(random sample consensus,RANSAC)約束相結(jié)合的誤匹配點(diǎn)剔除方法,實(shí)現(xiàn)“以多求可靠”策略中有效篩選這關(guān)鍵一環(huán)。算法流程如圖 3所示。
圖3 異源遙感影像匹配算法流程Fig.3 Overview of the proposed matching method pipeline
(5)
對(duì)于每一個(gè)待篩選匹配對(duì),剔除的條件為第1距離小于第2距離與距離差均值avgdis之差,公式為
(6)
算法通過(guò)從數(shù)據(jù)中統(tǒng)計(jì)得到的距離差均值,作為判別比較標(biāo)準(zhǔn),可以很好地適應(yīng)不同來(lái)源的像對(duì)之間的差異,能夠很好地進(jìn)行第1輪篩選,保留優(yōu)質(zhì)匹配點(diǎn),提高RANSAC輸出的穩(wěn)定性。
RANSAC中幾何約束關(guān)系要根據(jù)待匹配影像的成像幾何關(guān)系選擇合適的模型。在實(shí)際工程應(yīng)用中,應(yīng)盡可能采用嚴(yán)格的約束模型。如畫(huà)幅式面陣影像通??捎脝螒?yīng)矩陣、本質(zhì)矩陣等約束模型;線陣衛(wèi)星影像多采用基于PRC模型或者多項(xiàng)式模型的核線約束。本文試驗(yàn)中,由于選取的試驗(yàn)遙感影像攝影距離較遠(yuǎn)、地面相對(duì)高差不大、選取的影像區(qū)域也較小,故采用仿射變換模型,以適應(yīng)不同成像模型的像對(duì)之間的縮放、平移、旋轉(zhuǎn)和錯(cuò)切等變換。
本節(jié)首先對(duì)CMM-Net算法提取的異源影像同名特征的相似性進(jìn)行驗(yàn)證,并分別針對(duì)尺度和方向上的性能進(jìn)行試驗(yàn);然后,為評(píng)價(jià)CMM-Net的性能,與多個(gè)異源影像匹配算法進(jìn)行對(duì)比試驗(yàn);最后,利用實(shí)際異源遙感影像進(jìn)行配準(zhǔn)試驗(yàn),考查在影像配準(zhǔn)上的實(shí)際應(yīng)用效果。試驗(yàn)過(guò)程中,CMM-Net深度學(xué)習(xí)模型在PyTorch框架下實(shí)現(xiàn),試驗(yàn)用計(jì)算機(jī)為華碩ROG筆記本,CPU為 i7-9750H,顯卡為GeForce RTX 2060(6 GB顯存),內(nèi)存為32 GB;實(shí)現(xiàn)語(yǔ)言為Python,操作系統(tǒng)為Ubuntu 18.04。
提取的多源影像上的同名特征是否具有相似性,是異源影像匹配的關(guān)鍵。本文選取了高分三號(hào)SAR衛(wèi)星、資源三號(hào)光學(xué)衛(wèi)星、谷歌地球以及無(wú)人機(jī)等幾種來(lái)源的異源影像,見(jiàn)圖4。測(cè)試數(shù)據(jù)中成像模式不同、時(shí)相不同、分辨率也不同,具有代表性。幾幅圖像的中心位置經(jīng)過(guò)人工配準(zhǔn),試驗(yàn)通過(guò)該中心提取的特征向量的相似度進(jìn)行評(píng)估。
圖4 特征不變性測(cè)試數(shù)據(jù)Fig.4 Image data for feature invariance test
試驗(yàn)分別利用SIFT算法與本文方法提取了4幅試驗(yàn)圖像中心同名像點(diǎn)的特征向量,統(tǒng)一進(jìn)行L2范式歸一化,并以曲線的形式繪制,橫坐標(biāo)為特征向量維度,縱坐標(biāo)為歸一化的特征值。這種特征曲線走向可以反映異源影像特征之間的相似程度。為顯示清晰,隨機(jī)截取了其中一段范圍,如圖5所示。
對(duì)比圖5直觀展現(xiàn)出的4個(gè)異源圖像同名像點(diǎn)的特征向量的走向。很明顯,本文算法相對(duì)于SIFT算法明顯具有比較高的相似性,在很多維度坐標(biāo)(橫軸)上,曲線的波峰波谷變化規(guī)律接近。特別需要指出的是,差異最大的SAR圖像(紅色實(shí)線)和其他幾個(gè)特征曲線走向相似度也很高。為了量化特征向量直接的差異,統(tǒng)計(jì)了特征向量之間的余弦距離如表1所示。由于SIFT與本文算法提取的特征維度和量化標(biāo)準(zhǔn)不同,相對(duì)于歐氏距離,代表向量之間角度差異的余弦距離更能反映不同維度向量之間的相似度。
圖5 特征向量不變性測(cè)試結(jié)果Fig.5 Vector invariance test result
前期通過(guò)大量正確匹配點(diǎn)和錯(cuò)誤匹配點(diǎn)的特征向量的余弦距離統(tǒng)計(jì)得出一個(gè)經(jīng)驗(yàn),相似特征的余弦距離通常小于0.4。根據(jù)這個(gè)原則,表1的結(jié)果可以發(fā)現(xiàn),試驗(yàn)中SIFT算法無(wú)法描述差異較大的異源圖像的不變特征。而本文算法提出的特征表現(xiàn)出很好的相似性。同時(shí),不同的成像模式和高噪音的SAR圖像和光學(xué)影像的特征相似度雖然要弱于光學(xué)影像之間的相似度,但也在一個(gè)比較高的相似性水平。通過(guò)本節(jié)的試驗(yàn),說(shuō)明利用本文的CNN模型和訓(xùn)練方法,特征提取器可以為異源影像提出不變特征,能夠適應(yīng)由于成像模式和環(huán)境造成的輻射非線性畸變的影響。
表1 特征向量的余弦距離
為驗(yàn)證CMM-Net的離散金字塔多尺度模型的可行性,并測(cè)試特征在方向上的性能,本文設(shè)計(jì)了兩個(gè)試驗(yàn)分別驗(yàn)證。試驗(yàn)以圖4(d)為基準(zhǔn),人工縮小或繞中心旋轉(zhuǎn)圖4(c),得到在尺度和旋轉(zhuǎn)上連續(xù)變化的圖像,再通過(guò)比較兩幅圖像中心點(diǎn)提取的特征向量之間的余弦距離來(lái)評(píng)估算法在尺度和方向上的性能。試驗(yàn)結(jié)果如圖6和圖7所示。
圖6 尺度和旋轉(zhuǎn)不變性評(píng)估Fig.6 Scale and rotate invariance test result
圖6為尺度不變性評(píng)估結(jié)果。橫軸表示影像在尺度上縮小的倍數(shù),試驗(yàn)按照每隔0.1倍取樣;縱軸為尺度變化后提取的特征與基準(zhǔn)影像上同名特征之間的余弦距離。圖中可以反映尺度變化,所提取的特征描述符相似性的變化情況。其中,實(shí)線為應(yīng)用本文離散金字塔多尺度模型后特征相似性的變化。虛線是沒(méi)有采用多尺度模型的結(jié)果。從圖6可以看出,采用離散金字塔多尺度模型后,兩幅圖像上同名特征提取的相似度水平提升顯著。雖然會(huì)隨著尺度差異變大而有所下降,但下降相對(duì)緩慢,且在縮小近10倍的情況下,特征余弦距離仍然保持在0.3左右;相反,沒(méi)有采用多尺度模型情況下,相似性隨尺度改變變化劇烈,尺度變化2~3倍后,特征相似性基本消失(余弦距離大于0.4)。通過(guò)這個(gè)試驗(yàn)還可以看出,雖然本文采取的是4層離散(0.25,0.5,1,2倍)金字塔模型,但整個(gè)相似性曲線變化是連續(xù)的,并沒(méi)有出現(xiàn)階躍現(xiàn)象。這說(shuō)明,本文算法具備良好的連續(xù)多尺度適應(yīng)能力。分析其原因,主要在于CNN模型本身具備一定范圍的尺度適應(yīng)能力,離散金字塔模型擴(kuò)大了算法尺度適應(yīng)的范圍。
算法的旋轉(zhuǎn)適應(yīng)性試驗(yàn)結(jié)果如圖7所示。試驗(yàn)對(duì)第2幅影像以1°為步長(zhǎng),旋轉(zhuǎn)360°,計(jì)算旋轉(zhuǎn)后影像提取的特征和基準(zhǔn)圖上特征的余弦距離作為相似度指標(biāo)。
圖7 旋轉(zhuǎn)適應(yīng)性評(píng)估結(jié)果Fig.7 Rotate invariance test result
圖7(b)為圖7(a)曲線的局部放大,從中可以看出,總體上算法不具備旋轉(zhuǎn)不變性,但是在一定角度范圍(約15°)內(nèi),特征相似性可以保持一個(gè)較好的水平。原因在于,本文算法并沒(méi)有對(duì)CNN特征旋轉(zhuǎn)不變性進(jìn)行專門(mén)的設(shè)計(jì),小角度下的不變性是CNN網(wǎng)絡(luò)從具備一定角度變化的訓(xùn)練圖像上學(xué)習(xí)得到的。因此,本文算法只適用于較小角度(約15°)變換影像的匹配。說(shuō)明本文算法還有很大的提升空間,下一步對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行旋轉(zhuǎn)增廣,有可能改善這一性能。
另一方面,在工程應(yīng)用中,遙感影像通常具有相對(duì)準(zhǔn)確的軌道位姿態(tài)或者PRC等先驗(yàn)信息,預(yù)先可在一定的精度范圍內(nèi)計(jì)算影像之間在尺度和旋轉(zhuǎn)角度上的幾何差異,并進(jìn)行消除。因此,匹配算法能夠適應(yīng)一定角度旋轉(zhuǎn)和尺度變化即可滿足實(shí)際要求。
由于異源影像特別是模式不同的影像(例如SAR和光學(xué))特征相似性相對(duì)較弱,因此,篩選較多待選特征點(diǎn)的“以多求可靠”的策略是有必要的。試驗(yàn)選擇250×250像素大小的SAR影像和無(wú)人機(jī)(UAV)光學(xué)影像進(jìn)行特征點(diǎn)篩選,并可視化提取的特征圖和關(guān)鍵點(diǎn)篩選結(jié)果,如圖8所示。
從特征圖可視化結(jié)果圖8(b)、圖8(e)可以看出,CNN通過(guò)多層卷積、池化后,提取出了更為抽象的局部特征。利用深度和局部極大值的原則,CMM-Net算法在無(wú)人機(jī)影像塊上篩選出了436個(gè)特征,如圖8(c)所示;在SAR影像上篩選了358個(gè)特征,如圖8(f)。都提取出了較多的待選特征點(diǎn),這為下一步特征匹配奠定了基礎(chǔ)。
圖8 關(guān)鍵點(diǎn)選擇試驗(yàn)結(jié)果Fig.8 Results of key points selection test
試驗(yàn)數(shù)據(jù)情況如表2所示。測(cè)試數(shù)據(jù)源涵蓋了星載傳感器、無(wú)人機(jī)傳感器、谷歌地球影像,波段和模式上包括了可見(jiàn)光、SAR、熱紅外、夜光遙感圖像、柵格地圖圖像和深度圖等。分辨率不同,影像模式多,時(shí)間與季節(jié)跨度大,對(duì)測(cè)試算法適應(yīng)性具有很好的代表性。
表2 測(cè)試數(shù)據(jù)基本情況
圖9為測(cè)試影像的縮略圖。其中,第1組均為光學(xué)影像,但時(shí)間與季節(jié)跨度大、地物變化明顯。第2組為資源3號(hào)全色影像和高分3號(hào)SAR影像,SAR影像分辨率為光學(xué)影像的2.5倍,并且SAR影像上存在較大噪音。第3組為氣象衛(wèi)星獲取的可見(jiàn)光和紅外波段影像,地物反射率明顯不同,還存在一定旋轉(zhuǎn)關(guān)系。第4組為光學(xué)影像與夜光遙感影像,在輻射上存在明顯非線性畸變。第5組和第6組分別為光學(xué)影像與柵格地圖影像、光學(xué)圖像與LiDAR構(gòu)建的深度暈渲圖,具有完全不同的模式。
圖9 試驗(yàn)影像對(duì)數(shù)據(jù)Fig.9 Image pairs in the test
試驗(yàn)采用正確匹配點(diǎn)數(shù)量(NCM)、匹配準(zhǔn)確率(SR)、匹配點(diǎn)均方根誤差(RMSE)和匹配消耗時(shí)間(MT)來(lái)評(píng)價(jià)算法性能。指標(biāo)說(shuō)明如下。
2.4.2.1 正確匹配點(diǎn)數(shù)量(NCM)
正確匹配點(diǎn)判斷如式(7)所示
(7)
正確匹配點(diǎn)的數(shù)量為整幅影像上,滿足上述條件的所有匹配點(diǎn)對(duì)的數(shù)量。影像配準(zhǔn)等其他應(yīng)用對(duì)正確匹配點(diǎn)的數(shù)量都有一定要求,該指標(biāo)可以反映匹配算法的性能。
2.4.2.2 匹配準(zhǔn)確率(SR)
準(zhǔn)確率表達(dá)為滿足式(7)的正確匹配點(diǎn)數(shù)占算法給出的所有匹配點(diǎn)數(shù)(NTP)的百分比,這個(gè)指標(biāo)可以反映出算法得到的匹配點(diǎn)對(duì)成功率。
2.4.2.3 匹配點(diǎn)均方根誤差(RMSE)
匹配點(diǎn)均方根誤差RMSE可以反映匹配點(diǎn)的準(zhǔn)確程度,計(jì)算公式為
(8)
式中,NCM為正確匹配點(diǎn)的數(shù)量;H代表兩張影像的真實(shí)變換模型,本文采用人工檢查點(diǎn)擬合的仿射變換模型代替,該指標(biāo)可以反映匹配點(diǎn)在像素上的位置偏移誤差。
試驗(yàn)比較了多種在多源影像匹配中比較有代表性的匹配算法,包括基于傳統(tǒng)的影像互信息(MI)的匹配算法(商業(yè)軟件ENVI v5.3實(shí)現(xiàn))、基于深度學(xué)習(xí)特征的DELF與ContextDesc算法。其中,ContextDesc是專門(mén)為多模態(tài)影像設(shè)計(jì)的深度學(xué)習(xí)匹配算法。試驗(yàn)統(tǒng)計(jì)了各算法的正確匹配點(diǎn)數(shù)NCM、總匹配點(diǎn)數(shù)NTP以及正確匹配點(diǎn)的均方根誤差RMSE,并計(jì)算了匹配點(diǎn)的準(zhǔn)確率。精度閾值ε取3個(gè)像素,結(jié)果如表3所示。
通過(guò)對(duì)比分析表3數(shù)據(jù)可知,在試驗(yàn)采用的6種不同模式的像對(duì)匹配中,本文提出的CMM-Net算法對(duì)所有像對(duì)均能給出一定數(shù)量的正確匹配點(diǎn),匹配點(diǎn)均方根誤差約2個(gè)像素。而ENVI-MI、RIFT、ContextDesc 3種算法對(duì)差異較大的SAR圖像和可見(jiàn)光影像都沒(méi)能匹配出正確的點(diǎn)。RIFT算法在尺度相同的多模式影像上,都取得了非常好的匹配效果。DELF算法雖然也有一定適應(yīng)性,但匹配點(diǎn)數(shù)量明顯偏少。ENVI-MI算法對(duì)紅外和可見(jiàn)光的試驗(yàn)數(shù)據(jù)也未能正確匹配,ContextDesc算法對(duì)晝夜影像、地圖與衛(wèi)星影像的試驗(yàn)數(shù)據(jù)匹配未能成功。由此說(shuō)明,在以上5種算法中,CMM-Net在多模態(tài)影像匹配適應(yīng)性方面性能最為穩(wěn)定。
表3 匹配結(jié)果
從正確匹配點(diǎn)數(shù)量和精度上看,采用傳統(tǒng)相位一致性匹配算法的RIFT總體上要優(yōu)于CMM-Net。這是由于基于窗口模板匹配的定位精度要高于CNN特征,而基于滑動(dòng)窗口的算法,可以提取更加密集的待匹配點(diǎn)。但從匹配準(zhǔn)確率(SR)上看,CMM-Net相對(duì)高一些。此外,與適應(yīng)性較強(qiáng)的RIFT和DELF算法相比,CMM-Net算法耗時(shí)最短。
圖10、圖11和圖12直觀顯示了幾種匹配算法的匹配效果。從中可以看出,CMM-Net除了可以匹配出數(shù)量較多的匹配點(diǎn)外,其分布也較為均勻。
圖10的結(jié)果表明,對(duì)于有一定旋轉(zhuǎn)的影像,CMM-Net獲得了比RIFT更多的匹配點(diǎn),主要原因在于,訓(xùn)練數(shù)據(jù)具有一定的視角變化,使得CMM-Net具有一定范圍內(nèi)的旋轉(zhuǎn)不變性。從圖11也可以看出,CMM-Net和RIFT對(duì)夜光影像都取得了較多的匹配數(shù)量,DELF只匹配了很少數(shù)量的點(diǎn),而ContextDesc算法則完全失效。圖12為尺度差異2.5倍的SAR影像和可見(jiàn)光影像,由于模式不同且噪音較大,參與比較的算法中,只有DELF和CMM-Net有效,并且CMM-Net在匹配數(shù)量和點(diǎn)位分布均勻性上都優(yōu)于DELF,說(shuō)明CMM-Net算法對(duì)噪音、模式變化適應(yīng)性較好。
圖10 可見(jiàn)光與紅外影像(第3組)匹配結(jié)果Fig.10 Matching results of visible light and infrared images(Group 3)
圖11 可見(jiàn)光與夜光遙感影像(第4組)匹配結(jié)果Fig.11 Matching results of visible light and luminous remote sensing images(Group 4)
圖12 高分3號(hào)SAR影像與資源三號(hào)全色影像(第2組)匹配結(jié)果Fig.12 Matching results of GF-3 SAR image & ZY-3 image(Group 2)
異源影像匹配的主要目的之一是影像配準(zhǔn),為了更好地說(shuō)明CMM-Net算法的有效性,本文還在匹配算法的基礎(chǔ)上,進(jìn)行了影像配準(zhǔn)試驗(yàn)。首先,根據(jù)CMM-Net匹配給出的匹配點(diǎn)組,計(jì)算仿射變換參數(shù),再利用該參數(shù)對(duì)第一幅影像進(jìn)行糾正,得到與第2幅影像配準(zhǔn)的圖像。配準(zhǔn)的效果可以很好地反映匹配算法的精度,為便于檢查,試驗(yàn)采用疊加開(kāi)窗的顯示方式。圖13為4組影像的配準(zhǔn)效果圖,配準(zhǔn)圖右側(cè)為局部放大圖。
圖13 影像配準(zhǔn)結(jié)果Fig.13 Image registration results
從配準(zhǔn)結(jié)果可以看出,算法對(duì)SAR、紅外、夜光以及柵格地圖圖像與可見(jiàn)光的配準(zhǔn)圖像上各區(qū)域的配準(zhǔn)誤差基本都控制在2像素以內(nèi),肉眼很難看出明顯的錯(cuò)位,說(shuō)明CMM-Net匹配效果良好。
異源遙感影像之間由于成像模式、時(shí)相、分辨率等存在差異,匹配工作面臨巨大的挑戰(zhàn)。本文提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的匹配方法。試驗(yàn)結(jié)果表明,該異源影像匹配算法具有較強(qiáng)的穩(wěn)健性,在適應(yīng)性方面要強(qiáng)于其他幾種算法,且在匹配點(diǎn)數(shù)量、分布、效率等方面都有一定優(yōu)勢(shì)。雖然該算法目前還無(wú)法完全超越基于人工設(shè)計(jì)的相位一致性匹配算法,但也為異源遙感影像穩(wěn)健匹配提供了一種思路。但是,本文僅僅在利用卷積神經(jīng)網(wǎng)絡(luò)特征進(jìn)行異源影像不變特征的提取與搜索匹配方面進(jìn)行了探索和試驗(yàn),還存在如下局限性:①受限于GPU內(nèi)存,單次無(wú)法處理大像幅的影像;②從試驗(yàn)結(jié)果看,本文提出的CNN特征還很難做到子像素級(jí)精度的匹配;③算法流程中考慮先驗(yàn)幾何約束信息較少。
因此,在進(jìn)一步研究中,可以采用分塊特征提取方法,突破GPU內(nèi)存的限制;改進(jìn)特征提取網(wǎng)絡(luò),做到子像素級(jí)的特征檢測(cè);在匹配算法流程中,還可以綜合考慮先驗(yàn)的RPC或位姿參數(shù)、由粗到精的金字塔匹配策略以及物方約束等多種條件,提高匹配速度,并最大程度減小誤匹配率,以增強(qiáng)工程實(shí)用性。
本文匹配算法源代碼和測(cè)試數(shù)據(jù)開(kāi)源在Github上(https:∥github.com/lan-cz/cnn-matching),供感興趣的同行做進(jìn)一步研究。