陶 凱,武龍龍,韓培林,王澤鵬
(1.北京宇航系統(tǒng)工程研究所,北京 100076;2.北京理工大學(xué),北京 100081)
合成孔徑雷達(dá)(synthetic aperture radar, SAR)是一種主動(dòng)成像技術(shù),具有全天候、全天時(shí)、可透視、高分辨率和遠(yuǎn)距離成像等優(yōu)點(diǎn)。SAR景象匹配制導(dǎo)是目前精確制導(dǎo)技術(shù)重要的發(fā)展方向之一,在彈道中段進(jìn)行彈上SAR景象匹配制導(dǎo)時(shí),安裝在導(dǎo)彈上的SAR設(shè)備獲取實(shí)時(shí)的SAR圖像,處理器將實(shí)時(shí)圖像與預(yù)存的可見光參考圖像模板進(jìn)行景象匹配,從而計(jì)算出導(dǎo)彈位置,供制導(dǎo)系統(tǒng)修正導(dǎo)彈的飛行軌跡和慣導(dǎo)誤差[1]。
現(xiàn)有的圖像匹配方法大致可分為兩類:基于特征的匹配方法和基于區(qū)域(模板)的匹配方法[2]?;谔卣鞯钠ヅ浞椒ㄊ紫葘D像進(jìn)行特征提取,之后利用特征之間的相似性進(jìn)行匹配。常用的特征包括點(diǎn)特征[3-4]、線特征[5]、面特征[6]和局部不變性特征[7-8]等。然而,由于異源圖像間存在較大的非線性強(qiáng)度差異,并且SAR圖像被一種名為散斑噪聲的強(qiáng)乘性噪聲破壞,異源圖像間使用傳統(tǒng)特征檢測法檢測到的特征往往重復(fù)率較低,使得匹配效率低下,不能較好地應(yīng)用于異源圖像間的匹配[9]。
基于區(qū)域(模板)的圖像匹配方法首先在待匹配的圖像上選擇一個(gè)適當(dāng)尺寸的模板窗口,然后在參考圖像的搜索域中利用某種相似性度量方法進(jìn)行匹配,選取相似度最大的點(diǎn)為匹配點(diǎn)。常用的相似性度量有互信息(MI)[10]、歸一化互相關(guān)(NCC)[11]等。這些相似性度量方法直接使用圖像的灰度信息進(jìn)行計(jì)算,受輻射差異影響比較大,在異源圖像的匹配中表現(xiàn)不佳。
為解決現(xiàn)有圖像匹配方法的不足,本文提出基于孿生神經(jīng)網(wǎng)絡(luò)的異源圖像匹配方法。孿生神經(jīng)網(wǎng)絡(luò)(siamese neural network)可以通過深層網(wǎng)絡(luò)的學(xué)習(xí)來提取異源圖像間的共有特征,能有效地抵抗圖像間的非線性強(qiáng)度差異與噪聲影響[12]。此外,本文采取模板匹配的方法以避免特征檢測重復(fù)率的影響,最終實(shí)現(xiàn)異源圖像間的高精度匹配。
孿生神經(jīng)網(wǎng)絡(luò)是一種通過提取訓(xùn)練樣本對的深層特征來進(jìn)行圖像相似性檢測的深度學(xué)習(xí)網(wǎng)絡(luò)模型。
孿生神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖1所示,它包含兩個(gè)分支的特征提取網(wǎng)絡(luò)和一個(gè)度量網(wǎng)絡(luò),其中特征提取網(wǎng)絡(luò)是共享權(quán)重的。特征提取網(wǎng)絡(luò)可以包含卷積層、池化層和全連接層等,用于提取訓(xùn)練圖像對的深層特征。度量網(wǎng)絡(luò)除了是上述這些神經(jīng)網(wǎng)絡(luò)層,也可以使用某種相似性度量算法,目的是評估圖像之間的相似性。
圖1 孿生神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Structure of Siamese neural network
傳統(tǒng)的孿生神經(jīng)網(wǎng)絡(luò)中包含池化層,其通過降低輸入特征圖的空間分辨率來減少特征和參數(shù),簡化了網(wǎng)絡(luò)計(jì)算復(fù)雜度,提高了計(jì)算速度;同時(shí),池化層可以保持一定的平移不變性,可以較好地應(yīng)用于基于特征的匹配方法。
在基于區(qū)域(模板)的匹配方法中,由于池化層的平移不變性,會(huì)使得孿生神經(jīng)網(wǎng)絡(luò)對小范圍內(nèi)偏移的不敏感,降低檢測精度。有研究表明,使用步長為2的卷積層+ReLU來替代池化層,可以同時(shí)提高網(wǎng)絡(luò)的性能和對平移的敏感度[13]。因此,本文設(shè)計(jì)的特征提取網(wǎng)絡(luò)使用步長為2的卷積層來進(jìn)行下采樣。
特征提取網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。網(wǎng)絡(luò)的輸入為64×64大小的灰度圖。其中,“5×5 conv,32”表示卷積核大小為5×5,卷積核個(gè)數(shù)為32的卷積層,不加“/2”的層默認(rèn)卷積步長為1,否則為2。每個(gè)卷積層之后的激活函數(shù)均為Leaky ReLU。
圖2 特征提取網(wǎng)絡(luò)Fig.2 Feature extraction network
由于圖像平滑的部分難以匹配,使用這些部分不僅會(huì)影響最終的匹配精度,還會(huì)降低匹配的速度,本文使用基于譜殘差的顯著性檢測方法[14]對待匹配的SAR圖像進(jìn)行顯著性檢測,選取其中顯著性高的圖像塊參與匹配。
圖像信息H(Image)可以分成兩部分:
H(Image)=H(Innovation)+H(Prior Knowledge)
(1)
式(1)中,H(Innovation)為新穎性部分,也就是顯著性部分;H(Prior Knowledge)是先驗(yàn)知識(shí)部分,也就是冗余信息。
基于譜殘差的顯著性檢測法認(rèn)為,不同圖像的對數(shù)幅度譜具有相似的趨勢。在平均對數(shù)幅度譜中存在局部線性。通過減去這個(gè)平均對數(shù)幅度譜,得到的譜殘差就可以用于求取顯著性圖。
顯著性圖的具體計(jì)算過程如下:
1)對于圖像I(x),先對其進(jìn)行傅里葉變換,求出它的幅值譜A(f)和相位譜P(f),幅度譜轉(zhuǎn)換到對數(shù)域,得到對數(shù)幅度譜L(f):
2)計(jì)算譜殘差R(f):
R(f)=L(f)-h(f)L(f)
(2)
式(2)中,h(f)為頻域低通濾波器(均值濾波器)。
3)最后計(jì)算顯著性圖S(x),在頻率區(qū)域?qū)θ≈笖?shù)后的殘差進(jìn)行傅里葉反變換:
S(x)=F-1{exp[R(f)+P(f)]}2
求取顯著性圖后,將SAR圖像劃分為64×64大小的圖像塊,計(jì)算每個(gè)圖像塊的顯著性值并排序,挑選顯著性值前25%的圖像塊參與匹配,SAR圖像顯著性圖及根據(jù)顯著性值挑選的圖像塊如圖3所示。
圖3 SAR圖像顯著性圖及根據(jù)顯著性值挑選的圖像塊Fig.3 Saliency map of SAR image and image block selected according to saliency value
傳統(tǒng)孿生神經(jīng)網(wǎng)絡(luò)的度量網(wǎng)絡(luò)一般使用三層全連接層,全連接層相當(dāng)于一個(gè)特征空間變換,可以把提取到的特征信息進(jìn)行整合,降低特征維數(shù),最終輸出圖像相似性。由于全連接層參數(shù)過多,在訓(xùn)練集有限的情況下容易產(chǎn)生過擬合,另外也增大了很多計(jì)算量,本文使用4個(gè)卷積層來替代一個(gè)全連接層。
度量網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。SAR圖像和可見光圖像經(jīng)過特征提取網(wǎng)絡(luò)被提取的特征圖先進(jìn)行拼合,再輸入度量網(wǎng)絡(luò)。FC(512)表示輸出為512個(gè)節(jié)點(diǎn)的全連接層。除最后一層外其余各層之后的激活函數(shù)均為Leaky ReLU,最后一層后面的激活函數(shù)為softmax。softmax將輸出的兩個(gè)值映射到(0,1)上,并且相加之和等于1,分別代表相似的概率和不相似的概率。
圖4 度量網(wǎng)絡(luò)Fig.4 Measurement network
其公式如下:
用于孿生神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練的訓(xùn)練圖像對分為正樣本對和負(fù)樣本對,訓(xùn)練的目的是使正樣本之間的相似度盡可能高,負(fù)樣本間的相似度盡可能低。正負(fù)樣本對均有標(biāo)簽進(jìn)行區(qū)分,正樣本對的標(biāo)簽為(0,1),負(fù)樣本對的標(biāo)簽為(1,0)。訓(xùn)練過程中正負(fù)樣本對經(jīng)過網(wǎng)絡(luò)模型輸出結(jié)果并根據(jù)標(biāo)簽計(jì)算損失,通過優(yōu)化損失來優(yōu)化網(wǎng)絡(luò)模型。損失函數(shù)使用交叉熵?fù)p失,對于二分類,其公式如下:
L(xi,yi)=-yilog(xi)-(1-yi)log(1-xi)
(3)
式(3)中,yi為標(biāo)簽值,xi為預(yù)測值。
模板匹配的方法需要在搜索域上搜索相似度最高的像素點(diǎn)。逐點(diǎn)搜索雖然不會(huì)出錯(cuò),但是計(jì)算量巨大,計(jì)算時(shí)間過長,難以滿足制導(dǎo)的要求??梢姽饽0鍒D像與SAR實(shí)時(shí)圖像如圖5所示。
圖5 光學(xué)模板圖與SAR圖像Fig.5 Template image and real-time image
為了提高搜索速度,本文設(shè)計(jì)了一種快速搜索策略。首先進(jìn)行粗略搜索,從搜索域的左上方開始搜索,設(shè)置一個(gè)相似度閾值τ,當(dāng)使用的多個(gè)待配準(zhǔn)圖像塊與參考圖像塊間的的平均相似度小于τ時(shí),使用一個(gè)較大的搜索步長L1;當(dāng)平均相似度大于閾值τ的時(shí)候,使用較小的搜索步長L2,L1和L2滿足1 以精細(xì)搜索中心為圓心,R為半徑的圓域上進(jìn)行逐點(diǎn)的精細(xì)搜索,得到的平均相似度最高的像素點(diǎn)坐標(biāo)(x1,y1)為匹配坐標(biāo)。若平均相似度最高的點(diǎn)不止一個(gè),則取其幾何中心坐標(biāo)并取整,作為匹配坐標(biāo)。 特征提取網(wǎng)絡(luò)使用了卷積下采樣來擴(kuò)大感受野、減少計(jì)算量,引入了一定的誤差,本文使用集成學(xué)習(xí)的思想,通過多個(gè)模型共同判斷,以優(yōu)化最終的搜索結(jié)果。 集成學(xué)習(xí)的思想是通過訓(xùn)練多個(gè)能力相對較弱的模型,將其進(jìn)行組合,形成一個(gè)更強(qiáng)的模型來完成任務(wù)。這些模型可以是相同的也可以是不同的。其中單個(gè)模型,叫做“基模型”或“弱模型”,最終得到的整個(gè)模型叫做“強(qiáng)模型”。 本文算法一共使用n個(gè)性能相近的基模型,其中基模型1參與2.2節(jié)中的搜索過程,在得到匹配坐標(biāo)(x1,y1)后,使用另外n-1個(gè)基模型各自在以(x1,y1)為圓心,r為半徑(r 本文提出的異源圖像匹配方法,匹配流程如圖6所示。 圖6 異源圖像匹配方法流程圖Fig.6 Flow chart of heterogeneous image matching algorithm 1)對于獲取到的SAR圖像,首先進(jìn)行顯著性檢測,將圖像劃分為64×64的圖像塊,統(tǒng)計(jì)每個(gè)圖像塊里的顯著性值并排序,選取顯著性排名前25%的圖像塊用于匹配; 2)在作為參考的可見光圖像上,從左上角開始進(jìn)行搜索,通過孿生神經(jīng)網(wǎng)絡(luò)計(jì)算對應(yīng)圖像塊的平均相似度,按照先粗略后精細(xì)的策略,找到平均相似度最高的像素坐標(biāo)點(diǎn); 3)使用集成學(xué)習(xí)策略,通過多模型聯(lián)合決策,提高最終的預(yù)測精度。 基于以上的算法進(jìn)行模型訓(xùn)練,測試匹配的精準(zhǔn)度和成功率,并與傳統(tǒng)的模板匹配方法(NCC、MI)進(jìn)行比較。試驗(yàn)硬件平臺(tái)的CPU為2*Intel Xeon Silver 4210,GPU為4*Nvidia GeForce RTX 2080 Ti,采用的深度學(xué)習(xí)框架為Pytorch。 評價(jià)指標(biāo)為匹配精度和匹配成功率,匹配精度采用均方根誤差衡量,公式如下: (4) 式(4)中,Δx和Δy分別表示x方向和y方向上的坐標(biāo)誤差。 本文將單次匹配RMSE≤5的匹配結(jié)果視為匹配成功,匹配成功率的計(jì)算公式如下: (5) 式(5)中,N是匹配成功的對數(shù),M是總匹配數(shù)對。 已有2 550對已配對的可見光和SAR圖像作為原始數(shù)據(jù)集,均為灰度圖像。其中SAR圖像來自于高分三號遙感衛(wèi)星圖像,可見光圖像來自于資源三號遙感衛(wèi)星圖像。其中可見光圖像的尺寸為800×800,作為參考圖像,SAR圖像的尺寸為512×512,作為待配準(zhǔn)圖像,已知標(biāo)簽為SAR圖像左上角在其對應(yīng)可見光圖像上的坐標(biāo)。從中隨機(jī)選取2 000對圖像作為訓(xùn)練集,250對圖像作為驗(yàn)證集,300對圖像作為測試集。訓(xùn)練集和驗(yàn)證集的可見光圖像均按對應(yīng)標(biāo)簽坐標(biāo)裁剪成512×512大小(即與SAR圖像完全匹配),并對圖像作翻轉(zhuǎn)、旋轉(zhuǎn)以擴(kuò)充數(shù)據(jù)。 使用訓(xùn)練集和驗(yàn)證集處理后的數(shù)據(jù)構(gòu)建正負(fù)樣本對,正負(fù)樣本對比例均為1∶1。其中正樣本是一對編號相同的SAR圖像和可見光圖像,負(fù)樣本是一對編號不同的SAR圖像和可見光圖像,如圖7所示。 訓(xùn)練時(shí)在訓(xùn)練集的正負(fù)樣本對上對應(yīng)位置隨機(jī)裁取64×64的圖像塊作為輸入,每批次有8組正負(fù)樣本,總共迭代200輪。在每個(gè)全連接層前加入0.5的dropout以防止過擬合。在驗(yàn)證集的正負(fù)樣本對上固定位置裁取64×64的圖像塊作為輸入,取驗(yàn)證集所有樣本對損失之和最小的5個(gè)模型作為基模型1—基模型5(按損失從小到大排列)。梯度優(yōu)化算法使用Adam,學(xué)習(xí)率為0.000 2,權(quán)重衰減為0.002。 圖7 正負(fù)樣本對示例Fig.7 Examples of positive and negative sample pairs 對于測試集,通過第1章中的算法輸出SAR圖像左上角在可見光圖像中對應(yīng)的坐標(biāo)。NCC和MI方法選擇的圖像塊與本文方法選取的相同。測試結(jié)果如表1所示。 表1 測試結(jié)果對比Tab.1 Comparison of test results 從結(jié)果可以看出,本文提出的算法的匹配成功率和匹配準(zhǔn)確度大大高于傳統(tǒng)模板匹配方法NCC和MI,另外,使用集成學(xué)習(xí)聯(lián)合預(yù)測后匹配成功率和匹配準(zhǔn)確度都顯著上升,證明了其有效性。 本文提出基于孿生神經(jīng)網(wǎng)絡(luò)的SAR-可見光異源圖像匹配方法。該方法通過顯著性檢測選取圖像塊,使用孿生神經(jīng)網(wǎng)絡(luò)對SAR圖像塊和可見光圖像塊進(jìn)行相似度度量,并且使用快速搜索策略以加快匹配速度,使用集成學(xué)習(xí)優(yōu)化最終的匹配精度。實(shí)驗(yàn)結(jié)果表明,該方法的匹配成功率和匹配精度顯著高于傳統(tǒng)模板匹配方法。 由于本方法基于模板匹配,所以只能針對存在平移變化的圖像,對于存在旋轉(zhuǎn)和尺度變化的圖像匹配,還有待進(jìn)一步的研究。2.4 集成學(xué)習(xí)優(yōu)化搜索結(jié)果
3 模型訓(xùn)練與測試
3.1 數(shù)據(jù)集準(zhǔn)備
3.2 模型訓(xùn)練
3.3 測試結(jié)果
4 結(jié)論