高志幫 劉以安
(江南大學(xué) 江蘇 無錫 214000)
合成孔徑雷達(synthetic aperture radar,SAR)是一種安裝在飛行器上,利用移動的天線在目標區(qū)域進行探測的微波遙感成像技術(shù)[1]。和傳統(tǒng)的基于波束掃描的雷達相比,合成孔徑雷達圖像分辨率較高,且不受天時,氣候和光照的影響。因此SAR圖像在資源探測,遙感攝像,軍事偵查等領(lǐng)域得到廣泛的關(guān)注和應(yīng)用[2-3]。
SAR圖像識別的難點在于其成像的機理中,由于其回波信號在不同散射單元強度的隨機性,引入了相干斑[4]噪聲導(dǎo)致的圖像質(zhì)量的下降。傳統(tǒng)的SAR圖像識別的過程一般分為三個步驟:圖像預(yù)處理、特征提取、分類。圖像的預(yù)處理算法包括Lee濾波,Kuan濾波等,這些方法用來降低相干斑噪聲對識別效果的影響,但同時降低了識別的時效性。特征提取方式一般有兩種:全局特征提取和局部特征提取。全局特征提取算法包括主成分分析[5](PCA),獨立成分分析(ICA[6])等,這些方法表征了圖像的整體信息,但對于圖像邊緣,紋理等特征表達效果差。局部特征提取方法包括HOG算子[7],LBP算子[8],稀疏表示[9]等,描述了圖像的局部特征,但沒有充分考慮到特征之間的聯(lián)系性。圖像識別方法包括神經(jīng)網(wǎng)絡(luò),SVM[10],KNN[11]等,得到非常廣泛的應(yīng)用,但是由于SAR圖像場景的復(fù)雜性,成像機理的特殊性以及對于實時性的要求,增加了識別的難度。
卷積神經(jīng)網(wǎng)絡(luò)[12](CNN)是一種前饋人工神經(jīng)網(wǎng)絡(luò),被廣泛應(yīng)用到圖像識別的領(lǐng)域。CNN和傳統(tǒng)的人工神經(jīng)網(wǎng)絡(luò)相比最重要的是卷積和池化的操作。卷積是一種數(shù)學(xué)運算方式,在卷積神經(jīng)網(wǎng)絡(luò)中卷積層利用多個卷積核對圖像進行自動特征提取,具有平移不變性,旋轉(zhuǎn)不變性的優(yōu)點;而池化層則減少了特征的數(shù)量,概括了局部特征的特性,減少了參數(shù)的數(shù)量。池化方法有平均值池化法和最大值池化法。但是卷積神經(jīng)網(wǎng)絡(luò)需要海量的數(shù)據(jù)集作為支持,缺少數(shù)據(jù)則會導(dǎo)致特征提取能力的不足,這對卷積神經(jīng)網(wǎng)絡(luò)的效果產(chǎn)生了影響。
非下采樣輪廓波變換(NSCT)[13]是一種多尺度的圖像分解方法。經(jīng)NSCT分解出的高頻分量包含了圖像的邊緣,細節(jié)等關(guān)鍵信息,可以增強神經(jīng)網(wǎng)絡(luò)特征提取的能力。同時,NSCT在圖像分解的過程中取消了下采樣的步驟,繼承了輪廓波變換(CT)的多方向性和各向異性,還具備輪廓波變換(CT)缺乏的平移不變性,能夠有效應(yīng)對圖像的旋轉(zhuǎn),平移等操作。
提出一種基于NSCT多尺度分解和卷積神經(jīng)網(wǎng)絡(luò)(CNN)的合成孔徑雷達圖像識別方法。首先在使用NSCT對原圖像進行尺度分解,并將獲取的高低頻特征圖分量進行空間連結(jié),輸入卷積神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練和識別。實驗結(jié)果表明,提出的算法能有效提高神經(jīng)網(wǎng)絡(luò)的識別率。
非下采樣輪廓波變換(NSCT)是一種基于輪廓波變換(CT)的多尺度分解方法。經(jīng)非下采樣輪廓波分解后的高頻分量包含邊緣細節(jié)信息,低頻分量包含輪廓、紋理等信息。經(jīng)NSCT分解后的zoneplate圖像如圖1所示。
圖1 zooneplate原圖和NSCT分解結(jié)果
NSCT的分解過程主要有兩個步驟:第一是非下采樣塔型分解(NSP);第二是非下采樣方向濾波組(NSDFB)[14]。首先NSP利用兩通道二維濾波組對圖像進行多尺度分解,通過對當(dāng)前組波帶利用同一個濾波器進行上采樣得到下一組波帶(Subband),同時避免了重新設(shè)計濾波器的操作。其帶來的冗余度為J+1,J表示分解的級數(shù),而小波變換(NSWT)的冗余度為3J+1,和NSWT相比,冗余度減少了三分之一,提高了效率。
非下采樣方向濾波組(NSDFB)繼承自方向濾波組(DFB),主要改進是取消了下采樣操作。所以其在圖像分解過程中主要是上采樣。上采樣算法如式(1)所示:
(1)
式(1)中y為輸出結(jié)果,h是給定的濾波器,Sk為樣本矩陣,x為此級波帶。從式(1)可以看出,NSCT算法在實現(xiàn)多尺度,多方向性分解的同時,并沒有增加計算的復(fù)雜度。NSCT算法的分解過程如圖2所示。
圖2 NSCT算法的分解過程
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是前饋人工神經(jīng)網(wǎng)絡(luò)(ANN)的一種改進,通過局部操作對圖像特征進行分層抽象,主要被應(yīng)用在圖像領(lǐng)域。LeNet-5[15]是經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò),包含輸入層,卷積層,池化層,全連接層和輸出層,其基本結(jié)構(gòu)如圖3所示。
圖3 LeNet-5的基本結(jié)構(gòu)
神經(jīng)網(wǎng)絡(luò)通過計算損失值并反向傳播訓(xùn)練參數(shù)。其中二次損失函數(shù)定義為:
(2)
其中,x表示輸入的樣本,y(x)表示實際的值,aL(x)表示預(yù)測的輸出,L表示神經(jīng)元的最大層數(shù)。代價函數(shù)計算輸出值和實際值之間的誤差,并傳遞給反向傳播函數(shù)進行參數(shù)更新。
卷積操作能夠提取圖像的邊緣特征,同時對于圖像的旋轉(zhuǎn),平移等變換具有較好的穩(wěn)定性。為了更充分地提取圖像的深層信息,卷積層一般是由多個卷積核組成。卷積核是一個二維矩陣,一般是3×3或5×5的大小,首先賦予卷積核的權(quán)值一個初值,由訓(xùn)練決定最終的結(jié)果。卷積層的計算公式為:
F=sigmoid[conv(M,N)+B1]
(3)
式(3)中:sigmoid為激活函數(shù);conv為卷積函數(shù);M是輸入矩陣,大小為p×p;N為卷積核,大小為q×q;B1為偏置矩陣;F為得到的(p-q+1)×(p-q+1)維特征圖矩陣。對同一個圖像來說,不同的卷積濾波器運算會產(chǎn)生不同的特征值,因此訓(xùn)練得到合適的卷積濾波器是圖像識別成功的關(guān)鍵。
池化操作是圖像處理領(lǐng)域經(jīng)常使用的操作,池化將圖像的一個局部內(nèi)的像素點用一個像素點來代替。池化的作用第一是減小圖像的大小和參數(shù)的數(shù)量,第二是增加算法的穩(wěn)定性。假設(shè)特征矩陣為J,偏置為B2,獲得的采樣矩特征圖為O,則計算方式為:
O=Φ0(J)+B2
(4)
常用的池化操作有平均池化和最大值池化兩種。假設(shè)特征圖為L,池化移動的步長為d,得到的采樣結(jié)果為S。平均池化和最大值池化計算公式為:
(5)
S=max(Lij)
(6)
式(6)中max函數(shù)表示從輸入的特征圖L中提取最大值。
圖4所示為本文的算法結(jié)構(gòu)圖。尺度分解結(jié)合卷積神經(jīng)網(wǎng)絡(luò)的圖像識別主要由三個方面組成:圖像預(yù)處理,尺度分解進行特征提取,CNN訓(xùn)練分類。圖像預(yù)處理主要有灰度歸一化、尺度歸一化、數(shù)據(jù)增強等。主要目的是節(jié)省網(wǎng)絡(luò)的收斂時間,同時提高樣本的數(shù)量。經(jīng)過圖像預(yù)處理之后,圖像的大小為128×128,灰度范圍為[0,1]。
圖4 算法結(jié)構(gòu)圖
尺度分解算法利用NSCT對原圖像進行尺度分解,將分解出的高低頻分量與原特征圖空間連結(jié),作為新的特征。計算過程如式(7)所示:
H(x)=f(x)⊕Nsct(f(x))h⊕Nsct(f(x))l
(7)
其中f(x)表示輸入的特征圖,Nsct(f(x))h表示尺度分解f(x)獲取高頻分量;Nsct(f(x))l表示尺度分解f(x)并獲取低頻分量;⊕表示空間連結(jié)操作。特征提取之后加入到網(wǎng)絡(luò)進行訓(xùn)練,最后使用softmax分類器對測試集進行分類。
具體的步驟如下:
1)對樣本進行數(shù)據(jù)增強[16](Data Augmentation)。包括對圖像進行剪裁、翻轉(zhuǎn)、顏色變換等操作。
2)對從1)獲得的數(shù)據(jù)進行NSCT變換,將原圖、高頻分量和低頻分量空間連結(jié)。
3)進行尺度歸一化和灰度歸一化處理,得到大小為64×64×3,灰度范圍在[0,1]之間的數(shù)據(jù)集。
4)將得到的數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)的輸入,進行卷積操作和池化操作,得到FC層特征,計算損失值并通過反向傳播算法訓(xùn)練網(wǎng)絡(luò)模型參數(shù)。
5)將測試樣本輸入訓(xùn)練好的網(wǎng)絡(luò),通過softmax分類獲得預(yù)測結(jié)果。
為了驗證算法的有效性,采用MSTAR(Moving and Stationary Target Acquisition and Recogniton)[17]公開數(shù)據(jù)庫作為實驗對象。數(shù)據(jù)庫包含了三個場景,八種識別目標。俯仰角度主要有15°和17°。同一場景下的每種目標的圖像有299張。將15°和17°的圖像作為數(shù)據(jù)集,以80%的比例作為訓(xùn)練集,20%的比例作為測試集。選取的7種對象作為識別的目標。圖5展示了七種目標的光學(xué)圖像和對應(yīng)的SAR圖像。
圖5 七類目標的光學(xué)和對應(yīng)的SAR圖像從左到右依次為2S1(榴彈炮),BRDM2(裝甲車),BTR70(裝甲車),D7(推土機),T72(坦克),ZIL131(拖拉機),ZSU-23(坦克)
實驗中使用的卷積神經(jīng)網(wǎng)絡(luò)共七層,包含三個卷積層,兩個池化層交替連接,最后是全連接層和輸出層,激活函數(shù)為TANH激活函數(shù)。具體參數(shù)如表1所示。
表1 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
LayerTypeMapsSizeKernel sizeStrideActivationOutFully Connected-7--RBFF6Fully Connected-84--tanhC5Convolution1201×15×51tanhS4Max Pooling1629×292×22tanhC3Convolution1658×585×51tanhS2Max Pooling662×622×22tanhC1Convolution6124×1245×51tanhlnInput3128×128---
實驗?zāi)P椭饕腔赥ensorFlow深度學(xué)習(xí)框架搭建而成,實驗硬件環(huán)境:Intel(CORE)I5-4200H,8G RAM,NVIDA GeForce GTX TitanX GPU;軟件環(huán)境:Ubuntu 16.06操作系統(tǒng),TensorFlow深度學(xué)習(xí)框架。
如表2所示,是本文算法(NSCT+CNN)與神經(jīng)網(wǎng)絡(luò)(CNN),支持向量機(HOG+SVM)[18],K最近鄰算法(HOG+KNN)的比較結(jié)果。每組實驗的結(jié)果均是取三次實驗結(jié)果的平均值。其中,卷積神經(jīng)網(wǎng)絡(luò)(CNN)使用的是LetNet-5網(wǎng)絡(luò)結(jié)構(gòu),激活函數(shù)是sigmoid;支持向量機(HOG+SVM)使用的是MATLAB版本的LIBSVM3.22,核函數(shù)為高斯核函數(shù);K近鄰算法(KNN)選擇的K值為10。從表中可以看出NSCT+CNN的識別率最高,達到93.3%,超過CNN算法近4個百分點。而對于SVM和KNN算法,選擇了HOG算子作為特征提取算法,其識別率分別為87.6%和73.0%。值得一提的是提出算法的運行時間比CNN長1.3s,主要是因為尺度分解算法需要耗時,但隨著計算機計算能力的提升,這個問題的影響會越來越小。
表2 本文算法與其他算法的比較結(jié)果
Algorithm測試總數(shù)正確預(yù)測錯誤預(yù)測平均時間識別率(%)NSCT+CNN420392285.2s93.3CNN+SIGMOID420378423.9s90.0HOG+SVM420368523.4s87.6HOG+KNN42030711325.6s73.0
SAR圖像識別的精度受相干斑的影響較大,為了測試算法的魯棒性,基于實驗數(shù)據(jù),測試了各組算法在不同級別噪聲下的識別率。圖6展示了目標2S1經(jīng)五級椒鹽噪聲后的圖像,其中信噪比分別為0.01,0.02,0.03,0.04,0.05。其識別結(jié)果如表3所示。結(jié)果表明,本文提出的算法的魯棒性較高。在五級噪聲下,識別率受到較小的影響,下降了0.5個百分點,低于其他幾種算法下降的程度。幾組實驗的結(jié)果均驗證了本文算法的有效性和可行性。
圖6 五級椒鹽噪聲信噪比依次為0.01、0.02、0.03、0.04、0.05
表3 五級噪聲下的識別率比較
算法噪聲密度等級12345NSCT+CNN93.393.393.393.392.8CNN+SIGMOID90.090.090.089.287.6HOG+SVM87.686.685.786.0685.2HOG+KNN73.071.467.160.957.1
本文提出一種基于尺度分解和卷積神經(jīng)網(wǎng)絡(luò)的SAR圖像識別方法。首先通過非下采樣輪廓波變換提取原圖像的高低頻信息,然后把原圖及高低頻分量空間連結(jié)作為特征圖輸入網(wǎng)絡(luò)進行訓(xùn)練。實驗結(jié)果表明,和幾種典型算法相比,提出的算法具有較高的識別率,在MSTAR數(shù)據(jù)庫上達到93.3%;同時,算法具有較高抗噪性,在五級椒鹽噪聲的影響下下降了5%,能夠在一定程度上應(yīng)對SAR圖像識別中的相干斑問題。算法的不足之處是識別速度有待提高,如何進一步提高算法的識別速度是研究的主要方向。