, , , ,
(長沙理工大學(xué)電氣與信息工程學(xué)院, 湖南長沙 410114)
合成孔徑雷達(Synthetic Aperture Radar,SAR)是一種基于飛機、衛(wèi)星、宇宙飛船等多種平臺的主動式對地觀測系統(tǒng),能全天時、全天候?qū)Φ孛孢M行觀測。隨著SAR系統(tǒng)與成像技術(shù)的不斷進步與完善,大量的SAR圖像需要處理,因此從眾多基于復(fù)雜場景的圖像中獲取特征信息并應(yīng)用于目標(biāo)檢測、目標(biāo)分類和識別、場景分類等問題成為了SAR圖像解譯領(lǐng)域的研究趨勢。傳統(tǒng)的SAR圖像場景分類關(guān)鍵環(huán)節(jié)是為圖像建立一種有效的表示,使得這種表示既能穩(wěn)定地獲取反映場景類別的結(jié)構(gòu)信息,又能抑制紋理等細(xì)節(jié)上的不顯著差異[1]。SIFT[2]和GIST[3]是兩種比較常見的圖像描述特征,對平移、縮放及遮擋等情況具有穩(wěn)定的辨別能力。以上針對SAR圖像的目標(biāo)和場景分類的研究均基于人為設(shè)計的特征描述,對提取的特征在分類問題上的穩(wěn)定性要求較高,并且由于這些特征通常都是單一的基于目標(biāo)的底層或中層視覺特征,因此針對大的數(shù)據(jù)集往往無法獲得充分表征數(shù)據(jù)的本質(zhì)屬性,導(dǎo)致分類性能較差。
深度學(xué)習(xí)是一種基于人工神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)算法,通過一種深層神經(jīng)網(wǎng)絡(luò)逐層提取數(shù)據(jù)的底層到高層特征,獲取數(shù)據(jù)的分布式特征表示。近年來,深度學(xué)習(xí)模型在圖像識別與分類領(lǐng)域展現(xiàn)出了強大的學(xué)習(xí)能力,在Image Net數(shù)據(jù)集上一種深度神經(jīng)網(wǎng)絡(luò)將錯誤率從之前的26%降到了15%[4]。隨后許多學(xué)者在不同的應(yīng)用背景下提出了多種深度學(xué)習(xí)模型如棧式消噪自動編碼機[5]、深度置信網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)等。卷積神經(jīng)網(wǎng)絡(luò)作為一種基于局部感受野視覺原理的深度學(xué)習(xí)框架,圖像可直接作為網(wǎng)絡(luò)的輸入,是一種端到端的網(wǎng)絡(luò)模型。目前卷積神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域取得了廣泛的應(yīng)用,如人臉識別[6]、行為識別[7]、醫(yī)學(xué)圖像識別[8]等。
針對SAR圖像目標(biāo)和場景分類問題,本文提出一種改進的卷積神經(jīng)網(wǎng)絡(luò)算法。首先針對訓(xùn)練樣本較少問題,采用數(shù)據(jù)增強的方法從已有數(shù)據(jù)中產(chǎn)生一批新的數(shù)據(jù);然后利用卷積層局部感受野和權(quán)值共享的特點減少網(wǎng)絡(luò)參數(shù),并引入ReLU非線性激活函數(shù)加速網(wǎng)絡(luò)的收斂;針對高層卷積層參數(shù)過多的問題,采用了一種多尺度模塊替代卷積層;輸出層采用卷積和全局均值池化的組合替代全連接層。實驗結(jié)果表明,該算法具有較好的分類效果。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)是人工神經(jīng)網(wǎng)絡(luò)中的一種監(jiān)督學(xué)習(xí)網(wǎng)絡(luò),目前已成為當(dāng)前語音分析和圖像識別與分類領(lǐng)域的研究熱點。CNN的權(quán)值共享網(wǎng)絡(luò)結(jié)構(gòu)使之更類似于生物神經(jīng)網(wǎng)絡(luò),降低了網(wǎng)絡(luò)模型的復(fù)雜度,減少了權(quán)值的數(shù)量。卷積網(wǎng)絡(luò)是為識別二維形狀而特殊設(shè)計的一個多層感知器,這種網(wǎng)絡(luò)結(jié)構(gòu)對平移、比例縮放、傾斜等圖像變形具有高度不變性。在CNN中,圖像的一小部分即局部感受野作為層級網(wǎng)絡(luò)結(jié)構(gòu)的底層輸入,每層通過一個數(shù)字濾波器去獲得觀測數(shù)據(jù)最顯著的特征,特征信息再依次傳輸?shù)礁叩膶印>矸e神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)示意圖如圖1所示。
卷積神經(jīng)網(wǎng)絡(luò)作為一種由數(shù)據(jù)驅(qū)動的監(jiān)督式學(xué)習(xí)網(wǎng)絡(luò),通常需要大量的數(shù)據(jù)作為支撐,才能獲得較好的分類效果。針對卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中因數(shù)據(jù)量較小引起的過擬合問題,在訓(xùn)練樣本準(zhǔn)備階段,采用數(shù)據(jù)增強(Data Augmentation)的方法通過平移、翻轉(zhuǎn)、加噪聲等方法從已有數(shù)據(jù)中產(chǎn)生出一批新的數(shù)據(jù),人工增加了訓(xùn)練樣本的大小。
2.2.1 卷積層
在卷積層,基于局部感受野的人體視覺原理,將輸入圖像或上一層的特征圖與該層的卷積濾波器進行卷積加偏置,通過一個非線性激活函數(shù)輸出卷積層的輸出特征圖(feature map):
(1)
fc=f(y)
(2)
式中,xl-1為上一層輸出的特征圖,k為卷積核,b為偏置,“*”為卷積計算,f()為非線性激活函數(shù),fc為卷積層的輸出特征圖。選擇ReLU函數(shù)作為卷積層的非線性激活函數(shù)。常用的非線性激活函數(shù)如sigmoid和tanh由于其正負(fù)飽和區(qū)的梯度都接近于0,會出現(xiàn)梯度彌散[9]問題,而ReLU函數(shù)在對應(yīng)輸入大于0的部分梯度為常數(shù),因此有效地避免了梯度彌散的出現(xiàn)[10]。
2.2.2 池化層
在卷積神經(jīng)網(wǎng)絡(luò)中,由于圖像直接作為網(wǎng)絡(luò)的輸入且卷積濾波器會輸出大量的特征圖,為了減少待處理數(shù)據(jù)的數(shù)量,需要對網(wǎng)絡(luò)中產(chǎn)生的特征圖進行降維。在池化層,對卷積層的輸出特征圖進行下采樣,實現(xiàn)數(shù)據(jù)的降維。均值和最大值是目前常用的兩種池化方式。本算法采用最大值池化作為下采樣方式,輸出池化區(qū)域中的最大值:
Rl=max(Rl-1)
(3)
式中,Rl-1表示上一層的輸出特征圖中對應(yīng)的一個池化區(qū)域,Rl表示該池化區(qū)域的最大值下采樣輸出。
2.2.3 多尺度卷積模塊
卷積神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域已經(jīng)展現(xiàn)了其強大的學(xué)習(xí)能力,目前提高卷積神經(jīng)網(wǎng)絡(luò)性能最直接的方法就是增加網(wǎng)絡(luò)的深度,以提升網(wǎng)絡(luò)對數(shù)據(jù)的表征能力。但網(wǎng)絡(luò)深度的增加意味著參數(shù)的增加,這使得擴大后的網(wǎng)絡(luò)易出現(xiàn)過擬合的問題。針對這一問題,在參數(shù)較多的高層卷積層,采用一種多尺度卷積模塊(Inception)[11]替代高層卷積層,在保證網(wǎng)絡(luò)深度的同時,減少了網(wǎng)絡(luò)參數(shù)數(shù)量。多尺度卷積模塊示意圖如圖2所示。
該模塊包含3種尺度的卷積和池化操作,其中3×3的卷積和3×3的最大值池化在模塊中作為過濾器實現(xiàn)數(shù)據(jù)特征提取,1×1的卷積主要起到特征圖降維的效果。通過多尺度卷積模塊的引入,增加了網(wǎng)絡(luò)的深度和寬度,同時相比于傳統(tǒng)卷積層單一尺度的卷積操作,多尺度模塊的輸出特征圖包含了更豐富的特征信息。
2.2.4 卷積和全局均值池化
傳統(tǒng)的CNN通過全連接層整合特征圖信息輸出分類結(jié)果,而CNN中大部分訓(xùn)練參數(shù)集中于全連接層,過多的網(wǎng)絡(luò)參數(shù)往往帶來訓(xùn)練收斂效果差和過擬合的問題。在本文算法中,采用卷積層和全局均值池化(Global Average Pooling,GAP)的組合作為CNN的輸出層,卷積層輸出為個數(shù)為N的特征圖(分別對應(yīng)樣本的N個類別),然后通過一個全局均值池化將這N個特征圖降維成1×1的尺寸,最后采用Softmax進行歸一化,輸出對應(yīng)類別的概率。由于卷積是一種局部連接的神經(jīng)元輸出,相比較與全連接層,這種組合能有效地減少網(wǎng)絡(luò)的參數(shù)。Softmax回歸模型是logistic回歸模型在多分類問題上的推廣,對于給定的輸入x,Softmax的回歸模型定義如下:
(4)
式中,zk表示第k個神經(jīng)元的輸出,wT和b分別表示權(quán)重和偏置。由式(4)可以看出,Softmax回歸模型把神經(jīng)元的輸出映射到0~1之間,同時起到了歸一化的作用。該算法中誤差函數(shù)定義為交叉熵誤差函數(shù):
E=-∑kyklnzk
(5)
式中,zk表示神經(jīng)元實際輸出,yk表示對應(yīng)于第k類的真實值,取值為0或1。
圖3為改進的基于卷積神經(jīng)網(wǎng)絡(luò)的SAR圖像目標(biāo)識別算法流程圖。具體步驟如下:
1) SAR圖像數(shù)據(jù)集通過數(shù)據(jù)增強處理,得到的擴充訓(xùn)練樣本作為卷積神經(jīng)網(wǎng)絡(luò)的輸入;
2) 根據(jù)高斯分布隨機初始化方法,對卷積層和全連接層的權(quán)重和偏置進行初始化;
3) 卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練:
① 根據(jù)式(1)、式(2)計算卷積,采用ReLU函數(shù)對卷積結(jié)果進行非線性,得到卷積層的特征圖;
② 根據(jù)式(3)對上一層的特征圖進行最大值下采樣,輸出池化層的特征圖;
③ 將經(jīng)卷積和池化操作提取到的特征圖輸入到多尺度卷積模塊,得到該層的特征圖輸出;
④ 將先前層提取到的特征圖通過卷積和全局均值池化,輸出對應(yīng)各類的特征圖,最后利用Softmax回歸模型輸出對應(yīng)類別概率,根據(jù)式(4)得到識別結(jié)果;
⑤ 根據(jù)式(5)計算網(wǎng)絡(luò)權(quán)值和偏置的梯度,采用梯度下降法進行誤差反向傳播,從而調(diào)整網(wǎng)絡(luò)參數(shù)。
為了驗證算法的有效性,分別采用美國國防部高級研究計劃局(DARPA)支持的MSTAR公開數(shù)據(jù)集和陜西渭南地區(qū)的高分辨率SAR圖像進行目標(biāo)和場景分類實驗。實驗基于caffe深度學(xué)習(xí)框架構(gòu)造卷積神經(jīng)網(wǎng)絡(luò),具體環(huán)境為:i7-6700(3.4 GHz,四核),16 GB內(nèi)存,卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程采用GPU加速。
3.1.1 卷積神經(jīng)網(wǎng)絡(luò)框架配置與數(shù)據(jù)分布
針對MSTAR數(shù)據(jù)集,構(gòu)建一個包含5個卷積層、5個池化層和1個多尺度卷積模塊的卷積神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)框架配置如表1所示。將數(shù)據(jù)增強后的MSTAR數(shù)據(jù)集訓(xùn)練樣本直接作為網(wǎng)絡(luò)的輸入,最終輸出層輸出一個N維的向量,對應(yīng)于N個類別的概率。
表1 CNN框架配置
MSTAR數(shù)據(jù)集是通過高分辨率的聚束式合成孔徑雷達采集到的靜止車輛的SAR切片圖像,包括多類目標(biāo)SAR圖像數(shù)據(jù)。實驗中,訓(xùn)練樣本為17°方位角的SAR圖像數(shù)據(jù),測試樣本為15°方位角的SAR圖像數(shù)據(jù)。在10類目標(biāo)識別實驗中,實驗數(shù)據(jù)包括BMP2,BTR70,T72,2S1,BRDM2,ZSU234,BTR60,D7,T62,ZIL131十類目標(biāo)數(shù)據(jù)。采用數(shù)據(jù)增強對訓(xùn)練樣本進行擴充,通過像素平移的方法使得每類訓(xùn)練數(shù)據(jù)在原有基礎(chǔ)上擴充了5倍,10類目標(biāo)測試與訓(xùn)練數(shù)據(jù)分布如表2所示。
表2 10類目標(biāo)測試與訓(xùn)練數(shù)據(jù)分布
采用批量隨機梯度下降法(Mini-Batch Stochastic Gradient Descent,MSGD)訓(xùn)練網(wǎng)絡(luò),batchsize設(shè)置為25,學(xué)習(xí)率設(shè)置為0.001,訓(xùn)練迭代60 000次,10類目標(biāo)的最終分類結(jié)果如表3所示。
表3 10類目標(biāo)分類結(jié)果
3.1.2 不同框架對比
為了更好地評測本文算法提出的框架的性能,構(gòu)建一個與本文算法框架具有相同網(wǎng)絡(luò)層數(shù)的CNN框架進行對比。在網(wǎng)絡(luò)的前4個卷積層,對比框架與本文算法框架具有相同的卷積核尺寸和數(shù)量;為了對比不同結(jié)構(gòu)作為網(wǎng)絡(luò)輸出層的效果,對比框架的輸出層設(shè)置為全連接層。兩個CNN框架具體參數(shù)如表4所示,其中CNN-1為本文算法的框架,CNN-2為對比框架,加粗?jǐn)?shù)字指網(wǎng)絡(luò)中的訓(xùn)練參數(shù)。
表4 網(wǎng)絡(luò)框架參數(shù)對比
由表4可以計算出CNN-1網(wǎng)絡(luò)訓(xùn)練參數(shù)為 4 930,CNN-2網(wǎng)絡(luò)訓(xùn)練參數(shù)為35 900,CNN-1相比較于CNN-2參數(shù)減少了86%。兩個CNN框架均基于caffe平臺構(gòu)建,訓(xùn)練樣本為MSTAR的10類數(shù)據(jù),訓(xùn)練過程最大迭代次數(shù)為60 000次,訓(xùn)練和測試的訓(xùn)練誤差和測試正確率曲線如圖4和圖5所示。
由訓(xùn)練誤差曲線可以看出,兩個CNN框架在訓(xùn)練迭代15 000次后誤差已基本達到收斂,其中CNN-1收斂速度較慢,可能的原因是多尺度模塊的引入,導(dǎo)致梯度在反向傳播時計算量增加。由測試正確率曲線可以看出,在迭代約24 000次后,CNN-1的測試正確率已超過CNN-2,且正確率大小整體趨于穩(wěn)定。
實驗采用陜西渭南地區(qū)的機載高分辨率SAR圖像(分辨率為1 m)進行場景分類,通過Photoshop工具對尺寸為7 420×10 788的原始高分辨率SAR圖像截取出667張包含3類SAR圖像場景的局部SAR圖像,尺寸為500×500,以8∶2的比例分配給卷積神經(jīng)網(wǎng)絡(luò)作為訓(xùn)練及測試樣本。3類(農(nóng)田、城鎮(zhèn)、高架橋)SAR局部場景圖像如圖6所示。
針對高分辨率SAR圖像場景分類問題,構(gòu)建一個卷積神經(jīng)網(wǎng)絡(luò)如表5所示。訓(xùn)練樣本準(zhǔn)備階段,首先采用最大值下采樣池化對尺寸為500×500的局部SAR圖像進行降維;然后通過數(shù)據(jù)增強的方法,將圖像分別旋轉(zhuǎn)4個角度,使得訓(xùn)練樣本的數(shù)量擴充為原來的4倍。
表5 CNN框架配置
采用批量隨機梯度下降法訓(xùn)練網(wǎng)絡(luò),batchsize設(shè)置為27,學(xué)習(xí)率設(shè)置為0.001,訓(xùn)練迭代50 000次,3類SAR場景的最終測試分類結(jié)果如表6所示。由表6所示可以得出本文算法在3類SAR圖像場景分類上取得了較好的分類精度。
表6 場景分類結(jié)果
本文針對SAR圖像目標(biāo)和場景分類問題,提出了一種改進的基于卷積神經(jīng)網(wǎng)絡(luò)的SAR圖像分類算法。針對數(shù)據(jù)集訓(xùn)練樣本較少的問題,采用數(shù)據(jù)增強的方法人工地增加訓(xùn)練樣本的大小;為了解決卷積神經(jīng)網(wǎng)絡(luò)中因網(wǎng)絡(luò)參數(shù)過多導(dǎo)致的過擬合問題,采用一種多尺度卷積模塊替代高層卷積層,在輸出層采用卷積和全局均值池化的組合替代全連接層。分別對MSTAR數(shù)據(jù)集和陜西渭南地區(qū)的高分辨率SAR圖像進行目標(biāo)和場景分類實驗,本文算法針對MSTAR 10類目標(biāo)和高分辨率SAR圖像3類場景的分類正確率分別達到了98.89%和91.85%;通過構(gòu)建相同深度的卷積神經(jīng)網(wǎng)絡(luò)進行對比實驗,結(jié)果表明,本文算法有效地解決了網(wǎng)絡(luò)的過擬合問題。