劉晨, 曲長文, 周強, 李智
(1.海軍航空工程學院電子信息工程系, 山東煙臺 264001;2.海軍航空工程學院科研部, 山東煙臺 264001)
合成孔徑雷達相比于光學、紅外等傳感器,具有不受天氣、光照等外界條件的限制,可以全天候、長期、實時對目標進行監測。隨著其技術的日益成熟,在民用和軍事領域都得到了較為廣泛的應用,具有較高的研究價值。通過對SAR圖像目標的分類識別,可以實時對陸地和海洋等軍事目標進行監測,獲得陸地及海洋軍事目標的位置、類型和運動狀態等信息,為取得戰場主動權、提升目標打擊能力提供了有力保證。
卷積神經網絡(CNN)可以有效地從大量樣本中學習到相應的特征,提取出優于人工設計的特征,并且樣本數量越大,提取的特征越有利于分類識別。由于卷積神經網絡可以直接對二維圖像進行處理,因此,在圖像處理方面得到了越來越多的關注,并取得了較多的研究成果,如醫學圖像識別[1]、人臉識別[2]、人體行為識別[3]等。該網絡是一種端到端的學習模型,經過對卷積神經網絡的訓練,可以學習到圖像中的特征,并且通過學習到的特征完成對圖像的分類識別[4]。CNN通過簡單的非線性模型從原始圖像中提取出更加抽象的特征,并且在整個過程中只需少量的人工參與[5]。
本文主要研究卷積神經網絡在SAR圖像上的應用,解決人工設計的特征分類識別能力不足的問題,提升SAR圖像分類識別能力。通過對比激活函數和改變權值更新方式,對卷積神經網絡進行優化,提升卷積神經網絡對SAR圖像的適用性,同時提出了一種ZCA白化與PCA相結合的SAR圖像預處理方法。實驗結果表明,該優化方法可以提升網絡的訓練和檢測速度并且取得較優的分類效果。
1.1 卷積神經網絡基本結構
目前典型的卷積神經網絡結構仍然采用卷積層和下采樣層交替連接的方式,并且最后通過全連接層與輸出層相連,如圖1所示。

圖1 卷積神經網絡結構圖
卷積層主要用于提取特征和降低噪聲。假設第l層為卷積層,則第l層第j個特征圖的計算公式如下所示:
(1)

下采樣層主要利用圖像局部之間相關性的原理,降低需要處理的數據量。將鄰域4個像素變為一個像素,常用的方法有均勻下采樣、最大下采樣和概率最大下采樣,最終產生一個大概縮小4倍的特征映射圖Sx+1。
卷積和下采樣過程如圖2所示。

圖2 卷積神經網絡卷積和下采樣過程
卷積神經網絡權值更新方式采用的是后向傳播(Back Propagation, BP)算法[6]。算法的流程圖如圖3所示。

圖3 BP算法流程圖
具體步驟如下:
1) 對參數進行初始化: ΔW=0, Δb=0,

2) 計算網絡各層的輸出,計算公式為
(2)
式中,l表示層數,x表示特征圖,w表示卷積核,b表示當前層的偏置,f表示激活函數。
3) 假設輸出結果分為m類,即最后輸出為m維數據,將輸出值與樣本標簽之間的均方誤差作為代價函數,進而求得第n個樣本的代價函數J(w,b;x,y)為
(3)

為求取單個樣本的代價函數對參數的導數,通過引入靈敏度的概念,定義第l層的靈敏度為
(4)
第nl層為輸出層,根據式(2)、式(3)可得輸出層的靈敏度為
δ(nl)=-(y-a(nl))·f′(z(nl))
(5)
式中, “·”表示點乘。
對于l=nl-1,nl-2,…,2的各層靈敏度為
δ(l)=((w(l))Tδ(l+1))·f′(z(l))
(6)
完成上述代價函數的反向傳播后,利用梯度下降法,將代價函數對網絡中參數求偏導,對參數進行更新,最終使代價函數達到極小值。代價函數J(w,b;x,y)對w(l)和b(l)的偏導計算公式如下:
(7)
(8)
更新權重參數為
(9)
式中,α表示學習率。
2.1 前向傳導過程的調整
在前向傳導過程中激活函數的正確選擇可以極大地降低網絡訓練的時間和提高網絡訓練的準確度。卷積、下采樣和全連接操作僅能夠表達出線性映射,即使引入更深層的網絡結構,仍然還是一個線性映射,對于非線性分布的數據不能有效地建模,因此需要引入一個非線性激活函數來增加網絡的非線性學習能力。從最早的Sigmoid函數開始,針對不同的訓練需求,逐漸發展出各種改進版的激活函數,如Tanh函數、RELU函數等。各函數圖如圖4所示。

(a)Sigmoid函數

(b)Tanh函數

(c)RELU函數圖4激活函數
從圖4可以看出,Sigmoid函數在定義域內處處可導,有利于BP算法的計算,而Tanh函數的輸出均值相比于Sigmoid更接近0,可以加快訓練速度。但是二者有一個共同的缺點,當輸入值的絕對值過大時,函數的導數接近為0,進入飽和區,在BP算法中將導致向低層傳遞的導數變得非常小,不利于網絡的訓練,發生梯度消失現象[7]。RELU激活函數解決了上述問題,該函數的導數為0或1,可以有效地緩解梯度消失的問題。
BP算法采用梯度下降的方法對權重進行調整,常用的梯度下降方法主要分為3類:全量梯度下降、隨機梯度下降和小批量梯度下降。這3類方法的區分方式主要是根據每次訓練樣本的個數決定的。全量梯度下降每次使用全部的樣本進行訓練,具有每次更新都向著正確的方向進行的優點,但是對于大量樣本,將導致訓練時間過長、消耗大量內存等問題。隨機梯度下降每次用一個樣本進行訓練,該方法可以解決全量梯度下降的訓練時間長和占用大量內存的問題,但同時也導致每次更新并不是按照正確的方向進行,產生擾動現象。因此,通過對上述兩種方法的分析,小批量梯度下降結合二者的優點,每次訓練從樣本中隨機選取n個樣本(n小于樣本總數)進行訓練。該方法在提高訓練速度的同時使權重更新更加穩定。
但是小批量梯度下降方法在局部極值點附近容易產生振蕩,降低網絡的收斂速度。為使網絡可以更快地收斂,選擇梯度下降優化算法中動量更新的方法進行權重的調整,如式(10)所示:
(10)
式中,γ為動量系數,一般為γ∈(0,1),η為學習率, ΔW為權重更新量,W為權重。
從式(10)可以看出,通過以前經驗積累,有利于降低網絡訓練過程中的振蕩現象,從而加快網絡訓練速度[8]。
2.3.1 主成分分析(PCA)
PCA是一種數據降維方法,通過計算出輸入數據的協方差矩陣,求得相應的特征值,選取前k項主成分,其余全部賦值為0,通過PCA降維處理在極大保留數據特征的同時可以降低圖像相鄰像素之間的相關性,提升算法的分類識別速度。
由于SAR圖像相鄰像素之間具有很強的相關性,所以用原始圖像進行訓練時會存在冗余現象,而白化的目的就是降低圖像的冗余性。通過白化處理后的圖像會降低特征之間的相關性以及使所有的特征具有相同的方差。
首先假設輸入的數據為:X∈Rn×m,n為數據維數,m為樣本個數。求得數據的協方差矩陣:

(11)
對該協方差矩陣進行奇異值分解:
[U,S,V]=svd(Σ)
(12)
式中,U為Σ的特征向量矩陣,S為其特征值矩陣,因為Σ是對陣方陣,所以V=U′,Σ=USV。
ZCA白化結果如下:
(13)
結合上述兩種方法的優點,本文將ZCA白化與PCA降維結合起來對SAR圖像進行預處理。首先通過ZCA白化降低圖像相鄰像素之間的相關性,然后將ZCA白化后的數據進行PCA降維,提高算法的訓練速度。實驗結果表明,該方法在提高分類準確率的同時提高了檢測速度。從每類目標中隨機選取一幅圖片,經過預處理后結果如圖5所示。

(a)原始圖片 (b)PCA處理后

(c)ZCA白化后 (d)ZCA白化和PCA 處理后圖5預處理后的圖像
3.1 實驗數據集
為對本文提出的方法進行驗證,數據集采用的是美國MSTAR數據庫,實驗采取其中的BRDM2,BTR60,D7,S1和T62五類目標進行分類識別,如圖6所示。
圖像的分辨率為0.3m×0.3m,大小為128×128像素,訓練樣本為17°俯視角的SAR圖像目標,共1 450幅,測試樣本為15°俯視角的SAR圖像目標,共1 290幅。為加快網絡的訓練速度,截取圖像中心包含目標的42×42大小的圖像塊進行實驗。

(a)BRDM2 (b)BTR60

(c)D7 (d)S1

(e)T62圖6MSTAR數據實驗目標
實驗采用的卷積神經網絡模型如圖1所示,由5層網絡結構組成,第一層卷積層包含8個濾波器,大小為5×5,第二層下采樣層采用均值下采樣,大小為2×2,第三層卷積層包含16個濾波器,大小為4×4,第四層下采樣與第二層一樣,最后一層為全連接層。動量系數γ為0.9,最大迭代次數為10次。
采用不同激活函數的實驗結果如表1所示。

表1 不同激活函數下的分類準確率對比
在已經調整好網絡結構參數的條件下,對SAR圖像分別進行PCA降維和ZCA白化處理,實驗結果如表2所示。
針對本文提出的方法,通過ZCA白化與PCA相結合的方法對SAR圖像進行預處理,對比3種預處理方法,結果如圖7所示。

表2 不同預處理條件下的分類準確率對比

圖7 3種預處理后結果對比
從圖7可以看出,本文提出的方法在經過5次迭代后就已經得到了最優的分類效果,與其近似的ZCA白化方法需要經過8次迭代才能達到相同效果,可以看出本文提出的ZCA白化與PCA降維相結合的預處理方法在較少的迭代次數下可以得到更優的分類效果。
最終改進后的預處理方法實驗結果如表3所示。

表3 5類目標的SAR圖像分類結果
從表3可以看出,本文方法對5類SAR圖像取得了較好的分類效果,平均識別率達到了96.74%。
針對海量SAR圖像目標特征提取困難、分類精度不高的問題,本文采用卷積神經網絡對其進行分類識別,通過優化網絡結構參數,提高卷積神經網絡對SAR圖像目標分類的適用性,同時提出了一種改進的SAR圖像預處理方法,對輸入的SAR圖像進行ZCA白化與PCA相結合的預處理方法。實驗結果表明,該方法對5類SAR圖像目標的分類可以達到96.74%的準確率,并且訓練速度得到顯著的提升。
[1]CIOMPI F, DE HOOP B, VAN RIEL S J, et al. Automatic Classification of Pulmonary Peri-Fissural Nodules in Computed Tomography Using an Ensemble of 2D Views and a Convolutional Neural Network Out-of-the-Box[J]. Medical Image Analysis, 2015, 26(1):195-202.
[2]MA Yukun, HE Jiaoyu, WU Lifang, et al. An Effective Face Verification Algorithm to Fuse Complete Features in Convolutional Neural Network[C]∥ 22nd International Conference on Multimedia Modeling, Miami, FL, USA:Springer, 2016:39-46.
[3]IJJINA E P, MOHAN C K. Human Action Recognition Based on MOCAP Information Using Convolution Neural Networks[C]∥ 13th International Conference on Machine Learning and Applications, Detroit, MI, USA:IEEE, 2015:159-164.
[4]李彥冬,郝宗波,雷航. 卷積神經網絡研究綜述[J]. 計算機應用, 2016, 36(9):2508-2515.
[5]LECUN Y, BENGIO Y, HINTON G. Deep Learning[J]. Nature, 2015, 521(7553):436-444.
[6]RUMELHART D E, HINTON G E, WILLIAMS R J. Learning Representations by Back-Propagating Errors[J]. Nature, 1986, 323(6088):533-536.
[7]GLOROT X, BENGIO Y. Understanding the Difficulty of Training Deep Feedforward Neural Networks[J]. Journal of Machine Learning Research, 2010, 9(1):249-256.
[8]韓力群. 人工神經網絡教程[M]. 北京:北京郵電大學出版社, 2006:67-68.