郝 巖,白艷萍,張校非,杜敦偉
(1.中北大學(xué) 理學(xué)院, 太原 030051; 2 北京機電工程研究所, 北京 100074)
合成孔徑雷達(SAR)[1]是一種高分辨率成像雷達,具有不受光照和氣候條件等限制、能實現(xiàn)全天時、全天候?qū)Φ赜^測的特點,甚至可以透過地表或植被獲取其掩蓋的信息。作為一種獨特的偵察手段,合成孔徑雷達在民用與軍用領(lǐng)域的應(yīng)用廣泛。因此,SAR目標(biāo)識別也成為現(xiàn)今研究的一大熱點。對該問題的研究中,最重要的就是特征提取。為了避免復(fù)雜的特征提取和選擇過程,本文采用卷積神經(jīng)網(wǎng)絡(luò)(CNN),通過多層網(wǎng)絡(luò)的學(xué)習(xí)自動提取圖像特征。
卷積神經(jīng)網(wǎng)絡(luò)作為深度學(xué)習(xí)的一種,具有局部感知、權(quán)值共享、下采樣3個主要特點[2]。大部分特征提取方法無法保證所提取的特征具有很好的可分性,容易使圖像丟失很多重要信息。CNN不僅避免了這個缺點,而且被成功地應(yīng)用于手寫數(shù)字、人臉識別等多種領(lǐng)域。傳統(tǒng)的CNN采用soft-max分類器,但分類效果并不是很好,而支持向量機(SVM)具有適合處理高維度問題、泛化性能強、運行速度快等多方面的優(yōu)點。另外,SVM可通過設(shè)計不同的核函數(shù)處理原本線性不可分的問題。因此,本文將soft-max分類器替換為支持向量機,針對CNN提取的特征分類實現(xiàn)了較好的識別效果。
卷積神經(jīng)網(wǎng)絡(luò)[3]是一種多層前饋網(wǎng)絡(luò),包括輸入層、卷積層、池化層、全連接層以及輸出層,最為核心的是卷積層和池化層。
1) 輸入層
CNN的輸入層不同于其他網(wǎng)絡(luò),可以直接將原始數(shù)據(jù)作為輸入,無需額外的數(shù)據(jù)處理或特征設(shè)計,并可自動學(xué)習(xí)和提取圖像特征,大大減少了人工預(yù)處理的過程。
2) 卷積層(C層)
卷積層作為特征提取層,具有良好的平移不變性。每個卷積層中包含多個C元(卷積神經(jīng)元),每個C元只與前一層網(wǎng)絡(luò)對應(yīng)位置的局部感受域相連,并提取該部分的特征。相對于一般的前饋神經(jīng)網(wǎng)絡(luò),CNN的局部連接方式大大減少了網(wǎng)絡(luò)參數(shù)。為了進一步降低參數(shù)的數(shù)量級,CNN還采取了權(quán)值共享策略,即限制同一個卷積層不同的神經(jīng)元與前一層網(wǎng)絡(luò)不同位置相連的權(quán)重均相等。通過設(shè)計多個卷積層,網(wǎng)絡(luò)可提取多個用于分類的不同特征。
3) 池化層(S層)
池化層屬于特征映射層,每層包含多個S元(采樣神經(jīng)元),每個S元與前一層局部感受域連接的所有權(quán)值為一特定值。此時C層不再產(chǎn)生新的參數(shù),而是對前一層網(wǎng)絡(luò)提取的特征進行下采樣。池化一般包含平均池化和最大池化兩種。
4) 全連接層
與常見的前饋網(wǎng)絡(luò)一樣,該層的每一個神經(jīng)元與前一層的所有神經(jīng)元互相連接,同層神經(jīng)元之間不連接。
5) 輸出層
最后一層(C層或S層)得到的特征被拉成一個向量,作為某一分類器的輸入,通過該分類器的訓(xùn)練得到最終分類結(jié)果。
SVM是一種有監(jiān)督的統(tǒng)計學(xué)習(xí)方法,其核心思想是基于結(jié)構(gòu)風(fēng)險最小原理尋找最優(yōu)分類平面,能最小化經(jīng)驗誤差和最大化幾何邊緣,在非線性及高維模式識別問題中具有很大的優(yōu)勢,是一種較好的分類器[4]。
求解最優(yōu)分類平面的目標(biāo)函數(shù)和約束條件的定義如下:
(1)
其中:w為垂直于分類超平面的向量;b為偏置項;xi為一個n維向量;yi為向量所屬的類別信息。將目標(biāo)函數(shù)轉(zhuǎn)化,此問題可以變成一個凸二次規(guī)劃問題。雖然將原始數(shù)據(jù)映射到高維空間后,線性分類的概率明顯增加,但對于某些情況依然存在問題。為了放寬限制條件,引入松弛變量ξi≥0,表示數(shù)據(jù)點xi可以偏離的量,另外引入懲罰因子C,C為一個常數(shù),則原問題可轉(zhuǎn)化為
(2)
通過拉格朗日函數(shù)得到其對偶問題:
(3)
式中αi為支撐向量所對應(yīng)的系數(shù)。K(xi,xj)為核函數(shù),其種類包括[5]:
以上γ、r、σ為參數(shù)。
CNN是應(yīng)用最為廣泛的一種深度學(xué)習(xí)方法,其通過卷積層、池化層可以自動提取圖像特征,是一種性能良好的特征提取器,避免了復(fù)雜的人工特征設(shè)計過程。但由于soft-max需要計算每一類的概率,而且對于復(fù)雜的特征分類精度不是很高,這使得傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)還存在很大的提升空間。SVM是一種較成熟的算法,其應(yīng)用廣泛,可以解決非線性問題,同時相對于神經(jīng)網(wǎng)絡(luò)而言不存在局部最優(yōu)的問題,有較高的分類精度。本文將傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)分為兩個部分,即特征提取和分類。為了獲得更好的目標(biāo)識別效果,同時考慮CNN與SVM兩種算法的優(yōu)點,本文將二者相結(jié)合,利用CNN的自動學(xué)習(xí)能力將其作為特征提取器,將SVM作為最終的分類器。CNN-SVM示意圖見圖1。

圖1 CNN-SVM示意圖
為了進一步提升該模型的性能,本文首先對圖像進行剪裁處理,去除多余的背景。由于CNN是一個深度學(xué)習(xí)模型,其訓(xùn)練過程包括特征學(xué)習(xí)和分類兩個部分,其中特征學(xué)習(xí)是指對輸入數(shù)據(jù)進行卷積、池化操作,以自動學(xué)習(xí)圖像特征。而要獲得一個好的網(wǎng)絡(luò)模型,同時避免過擬合,需要大量的訓(xùn)練數(shù)據(jù),因此本文采用加噪和去噪的方法對樣本進行擴充,包括添加高斯噪聲、泊松噪聲、椒鹽噪聲、相干斑噪聲和高斯去噪、小波加噪去噪、中值濾波、線性空間濾波、二維自適應(yīng)維納濾波9種方法,再加上預(yù)處理后的樣本將其擴充為原來的10倍,然后添加冗余將樣本擴充為原來的30倍。另外,為了解決在訓(xùn)練過程中中間層數(shù)據(jù)分布發(fā)生改變,出現(xiàn)梯度消失或爆炸的問題,本文引入歸一化加快訓(xùn)練速度。最后,通過訓(xùn)練集將網(wǎng)絡(luò)訓(xùn)練好,用選定的測試集進行測試,同時提取訓(xùn)練集與測試集的特征,將其分別作為SVM的訓(xùn)練集和測試集。CNN-SVM流程見圖2。

圖2 CNN-SVM流程
CNN-SVM的算法流程如下:
① 輸入:輸入預(yù)處理后的訓(xùn)練集trainx及其對應(yīng)標(biāo)簽trainy;
② 設(shè)置參數(shù):初始化網(wǎng)絡(luò)參數(shù),包括卷積核大小、數(shù)量、下采樣步幅、迭代次數(shù)(epoches);
③ for i 通過trainx,trainy訓(xùn)練網(wǎng)絡(luò),BP反向調(diào)整網(wǎng)絡(luò)參數(shù),并提取訓(xùn)練集特征trainx_feature end ④ 將測試集testx輸入步驟③訓(xùn)練好的網(wǎng)絡(luò),提取測試集特征testx_feature; ⑤ 將trainx_feature作為SVM的訓(xùn)練集,testx_feature作為測試集,并進行歸一化,對目標(biāo)進行分類,得到最終分類結(jié)果。 實驗數(shù)據(jù)來自于MSTAR的公開數(shù)據(jù)集,3類目標(biāo)分別為BMP2(裝甲車)、BTR70(裝甲車)以及T72(主戰(zhàn)坦克)。實驗選取SN_C21、SN_C71和SN_132在17°俯仰角下的圖像作為訓(xùn)練樣本,將15°俯仰角下的圖像作為測試樣本。訓(xùn)練樣本和測試樣本分別為698個和588個。數(shù)據(jù)庫中的SAR圖像分辨率為0.3 m×0.3 m,目標(biāo)圖像大小為128像素×128像素。 由于圖像的目標(biāo)均集中于圖像的中間部分,因此本文首先將圖像剪裁為大小64像素×64像素的圖像。同時,CNN作為深度學(xué)習(xí)的一種,在訓(xùn)練過程中往往需要大量的訓(xùn)練樣本,而本文選取的實驗數(shù)據(jù)過少,因此采取加噪和去噪的方法對樣本進行擴充。采用的數(shù)據(jù)擴充方法包括添加高斯噪聲、泊松噪聲、椒鹽噪聲、相干斑噪聲、高斯去噪、小波加噪去噪、中值濾波、線性空間濾波、二維自適應(yīng)維納濾波9種方法。通過加上預(yù)處理后的樣本將其擴充為原來的10倍,然后使用repmat函數(shù)對訓(xùn)練樣本添加冗余,將樣本擴充為原來的30倍,最終得到 20 940個訓(xùn)練樣本,5 880個測試樣本。圖3是圖像的預(yù)處理過程,圖中只顯示了2種擴充方法。 圖3 圖像預(yù)處理過程 實驗中的其他設(shè)置為:① 實驗配置為Matlab R2016b。 ② CNN包括2個卷積層。第1個卷積層有5種卷積核,第2個卷積層有10種卷積核。2個對于池化層本文采用平均池化,采樣步幅為2。激活函數(shù)選用sigmoid函數(shù)。批量訓(xùn)練的大小為10。迭代次數(shù)為8。③ 改進算法中,SVM訓(xùn)練集與測試集的歸一化區(qū)間為[0,0.2],其他設(shè)置均與LIBSVM工具箱中的設(shè)置相同。 4.2.1 實驗1 為了證明本文所采用的預(yù)處理方法的有效性,針對原始數(shù)據(jù)、剪裁、去噪以及擴充后的數(shù)據(jù)進行實驗,實驗結(jié)果見表1。除擴充(加噪、去噪等)方法外,其余訓(xùn)練數(shù)據(jù)均通過repmat函數(shù)擴充為20 940,測試數(shù)據(jù)擴充為5 880,2個卷積層均采用大小為9×9的卷積核以確保實驗的有效性。 表1 不同預(yù)處理方法對比 從表1可以看出:第1、3、4、7組實驗的識別效果均為33.33%,即所有未剪裁的數(shù)據(jù)均將3類目標(biāo)分為了1類,原因是未剪裁的圖像在目標(biāo)周圍有很多復(fù)雜的背景,對目標(biāo)的準(zhǔn)確識別產(chǎn)生了一定的干擾;對比第2組和第5組實驗,在剪裁的基礎(chǔ)上去除圖像的高斯噪聲,識別準(zhǔn)確率提高了1.7%,說明噪聲對目標(biāo)識別也具有一定的影響;第2組實驗的識別準(zhǔn)確率之所以比第7組高是因為第2組數(shù)據(jù)在擴充時直接復(fù)制原數(shù)據(jù),降低了識別的困難程度;最后,第5組比第8組實驗的識別效果好也是因為擴充數(shù)據(jù)直接添加了冗余??傮w而言,剪裁、去噪對目標(biāo)的識別具有非常重要的作用,特別是剪裁處理。 4.2.2 實驗2 實驗以最終特征圖大小10像素×10像素為目標(biāo),通過改變2個卷積層卷積核的大小對傳統(tǒng)的CNN算法進行測試,不同大小卷積核識別率見表2。 表2 不同大小卷積核識別率 從表2可以看出:不同大小的卷積核對于識別效果有一定的影響,且卷積核較大時,相應(yīng)的運行時間也變長。通過對比發(fā)現(xiàn),當(dāng)兩層的卷積核均為9×9時,識別效果最好,識別正確率達到97.5%。 4.2.3 實驗3 實驗主要針對改進后的算法CNN-SVM進行性能測試,根據(jù)實驗2的結(jié)果,本實驗中2個卷積層均采用大小為9×9的卷積核,網(wǎng)絡(luò)結(jié)構(gòu)如下: 1) 輸入層:為預(yù)處理后的圖像,大小為64像素×64像素; 2) 卷積層1: 采用5種大小為9×9的卷積核,得到5個大小為56像素×56像素的特征圖; 3) 池化層1:5個大小為28像素×28像素的特征圖; 4) 卷積層2:采用10種大小為9×9的卷積核,得到10個大小為20像素×20像素的特征圖; 5) 池化層2:10個大小為10像素×10像素的特征圖; 6) 全連接層:1 000個神經(jīng)元節(jié)點; 7) 輸出層:3個神經(jīng)元節(jié)點。 圖4為測試集中一個樣本的特征圖,其中:(a)為預(yù)處理后的輸入圖;(b)為第1個卷積層的特征圖;(c)為第1個池化層的特征圖;(d)為第2個卷積層的特征圖;(e)為第2個池化層的特征圖。 圖4 各層部分特征圖 從圖4可以看出:特征圖的大小在不斷減小,圖像的結(jié)構(gòu)信息越來越少,剩余的是細節(jié)信息,這是深度學(xué)習(xí)的一個不足之處,在本文中不考慮該問題。 本文采用卷積神經(jīng)網(wǎng)絡(luò)提取訓(xùn)練集和測試集的特征,并將其分別作為SVM的訓(xùn)練集與測試集,因此SVM訓(xùn)練集大小為1 000×6 980,測試集大小為1 000×5 880。為了加快訓(xùn)練速度,提高識別正確率,將訓(xùn)練集與測試集數(shù)據(jù)做歸一化處理,歸一化區(qū)間為[0,0.2],最終實現(xiàn)了99.4%的識別正確率。 對比實驗2、3的結(jié)果可以發(fā)現(xiàn),CNN-SVM的識別正確率相對傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)提高了1.9%,充分證明了改進算法的有效性。 為了進一步說明本文算法的識別效果,給出幾個文獻中的識別效率,將用本文方法與文獻方法得到的識別效果進行對比,見圖3。 表3 本文方法與文獻方法的對比 表3中,文獻[6]利用深度卷積神經(jīng)網(wǎng)絡(luò)模型,提取并展示目標(biāo)的多維度層級特征,soft-max分類精度達到93.99%;文獻[7]在卷積神經(jīng)網(wǎng)的基礎(chǔ)上提出了一種新的識別框架SARNet,該框架通過組合多個不同的基本操作單元實現(xiàn),最終3類目標(biāo)識別率達到 95.48%;文獻[8]在誤差代價函數(shù)中引入類別可分性度量,利用SVM對特征分類,達到95.9%的識別精度。由此可見,相比上述3個文獻中的方法,本文的方法更為有效。 本文針對SAR目標(biāo)識別問題提出CNN以及CNN-SVM兩種方法,并在MSTAR數(shù)據(jù)集上對3類目標(biāo)進行3組仿真實驗,兩種方法的最佳識別正確率分別為97.5%和99.4%,均高于文獻[6-8]的識別正確率,證明了本文所提算法的有效性。但是對于卷積神經(jīng)網(wǎng)絡(luò)而言,由于結(jié)構(gòu)的限制,其在網(wǎng)絡(luò)記憶能力和表達能力上遠弱于一般的全連接網(wǎng)絡(luò)。盡管局部連接和權(quán)值共享大大減少了參數(shù)數(shù)量,但操作時仍然耗時較長,在這兩方面卷積神經(jīng)網(wǎng)絡(luò)依然有很大的改進空間。 [1] 李君寶,楊文慧,許劍清,等.基于深度卷積網(wǎng)絡(luò)的SAR圖像目標(biāo)檢測識別[J].導(dǎo)航定位與授時,2017(1):60-66. [2] 謝劍斌.視覺機器學(xué)習(xí)20講[M].北京:清華大學(xué)出版社,2015:170-178. [3] 陳耀丹,王連明.基于卷積神經(jīng)網(wǎng)絡(luò)的人臉識別方法[J].東北師大學(xué)報(自然科學(xué)版),2016 (2):70-76. [4] 張迪飛,張金鎖,姚克明,等.基于SVM分類的紅外艦船目標(biāo)識別[J].紅外與激光工程,2016(1):179-184. [5] 王小川,史峰,郁磊,等.MATLAB 神經(jīng)網(wǎng)絡(luò)43個案例分析[M].北京:北京航空航天大學(xué)出版社,2013:102-103. [6] 張慧,肖蒙,崔宗勇.基于卷積神經(jīng)網(wǎng)絡(luò)的SAR目標(biāo)多維度特征提取[J].機械制造與自動化,2017(1):111-115. [7] 王家寶,李陽,張耿寧,等.合成孔徑雷達圖像目標(biāo)的卷積神經(jīng)網(wǎng)識別框架[J].計算機應(yīng)用研究,2017(4):1-5. [8] 田壯壯,占榮輝,胡杰民,等.基于卷積神經(jīng)網(wǎng)絡(luò)的SAR圖像目標(biāo)識別研究[J].雷達學(xué)報,2016(3):320-325.4 實驗與結(jié)果分析
4.1 實驗準(zhǔn)備

4.2 實驗




5 結(jié)束語