戴文鑫
(四川大學(xué)計算機學(xué)院,成都610065)
合成孔徑雷達(Synthetic Aperture Radar,SAR)是全天候全天時的傳感器,能夠?qū)τ^測區(qū)域進行高分辨的成像,它可以在能見度極低和晚上等氣象條件如霧氣極重的條件下,提供分辨率高的圖像。目前在SAR圖像已廣泛應(yīng)用于漁船探測、船舶交通監(jiān)測和移民控制[1-2]。傳統(tǒng)的SAR 圖像船舶目標檢測方法包括四個階段:海陸分割[7]、預(yù)處理、預(yù)篩和識別[8]。海陸分割的目的是消除土地帶來的不利影響,預(yù)處理旨在提高后續(xù)階段的船舶檢測精度,預(yù)篩試圖尋找候選區(qū)域作為船舶建議框,恒虛警率(CFAR)是最廣泛的預(yù)篩方法[9-11],識別旨在消除虛假警報,獲得真實目標區(qū)域[12-14]。傳統(tǒng)的方法依賴手工提取的特征,在復(fù)雜背景條件下識別能力和適應(yīng)性有限。因此,為了提高SAR 圖像艦船檢測的效率和識別能力,需要引入其他具有高效提取特征能力的檢測器。
深度神經(jīng)網(wǎng)絡(luò)方法能夠?qū)?shù)據(jù)進行表征學(xué)習(xí),所提取的特征比手工提取的特征具有更好的表達性能,通過引入深度神經(jīng)網(wǎng)絡(luò)應(yīng)用于SAR 船舶目標檢測已成為一種發(fā)展趨勢。其中基于區(qū)域提案的Faster R-CNN 檢測算法是最有代表性的。Faster R-CNN 主要由共享卷積層、區(qū)域提案網(wǎng)絡(luò)和檢測網(wǎng)絡(luò)組成,共享卷積層主要用于提取特征,區(qū)域提案網(wǎng)絡(luò)用于產(chǎn)生候選區(qū)域(候選窗口),它采用錨框機制,通過直接在最頂層的特征圖上產(chǎn)生候選窗口,大大減小了計算量,區(qū)域提案網(wǎng)絡(luò)產(chǎn)生的候選框經(jīng)過RoI 池化層(RoI 池化層用于不同尺寸的特征圖變成固定長度的向量)輸入到檢測網(wǎng)絡(luò),檢測網(wǎng)絡(luò)用于對候選框的分類和定位。本文將引入Faster R-CNN 進行SAR 船舶目標檢測,并與傳統(tǒng)的CFAR 進行對比實驗。
受人類中樞神經(jīng)系統(tǒng)的影響,人工神經(jīng)網(wǎng)絡(luò)由神經(jīng)元構(gòu)成的,如圖1。單個神經(jīng)元的作用是通過權(quán)重將輸入信息進行連接并與閾值b(通常在深度學(xué)習(xí)中叫做偏置)進行比較,在激活函數(shù)的作用下得到神經(jīng)元的輸出傳遞給下一個神經(jīng)元,大量相同形式的神經(jīng)元組合在一起形成了人工神經(jīng)網(wǎng)絡(luò)。
圖1 基于單個神經(jīng)元結(jié)構(gòu)
其中,xi表示來自第i 個神經(jīng)元的輸入,wi表示第i個神經(jīng)元的連接權(quán)重,圓表示當(dāng)前神經(jīng)元,b 為當(dāng)前神經(jīng)元的閾值,y 為當(dāng)前神經(jīng)元的輸出,它們具有下列的關(guān)系式:
f(*)表示神經(jīng)元激活函數(shù),其中tanh 函數(shù),ReLU函數(shù),sigmod 函數(shù)等是常見的激活函數(shù)。
交并比(Intersection over Union,IoU)和非極大值抑制是(Non-Maximum Suppression)是目標檢測任務(wù)中非常重要的兩個概念。交并比是一種常見的用于衡量目標定位精度的標準,可以理解為兩個邊框之間重疊度,可以通過兩個邊框相交的面積除以其相并的面積進行計算。IoU 在目標檢測任務(wù)中被廣泛的使用,非極大值抑制算法也用到了IoU,主要是用于防止最后產(chǎn)生過多邊框,導(dǎo)致檢測效果不好,非極大值抑制就是對這些多余邊框進行過濾,得到最終的有效的檢測結(jié)果。首先,NMS 先獲得生成的邊框類別得分,并計算邊框的面積,然后根據(jù)得分高低進行排序,得分高的在前面,降序排序。然后從得分最高的開始,計算其他邊框與當(dāng)前得分最高邊框之間的IoU,IoU 大于閾值的邊框會被過濾掉。重復(fù)上面過程,直到可選的邊框為空為止。非極大值抑制每次只能處理一個類別的目標,例如對于PASCAL VOC 這種有20 類目標的數(shù)據(jù)集,極大值抑制需要重復(fù)此過程20 次。
邏輯回歸、SVM 等是用于解決二分類問題的常見分類器,但是對多分類問題,如自動識別手寫數(shù)字,這兩種分類器的效果就不是很好了,Softmax 分類器就logistic 的推廣,它對處理多分類問題的效果要比邏輯回歸、SVM 等分類器的效果好很多,Softmax 公式如下:
公式(3)中θj 為參數(shù)向量,通過梯度下降算法來優(yōu)化最小化代價函數(shù),這個過程會涉及到偏導(dǎo)數(shù),通過訓(xùn)練得到最優(yōu)模型參數(shù)。
邊框回歸(Bounding Box Regression)是目標檢測當(dāng)中的任務(wù),也可以叫做邊框位置調(diào)整,最早是在RCNN 中提出的,首先對檢測的物體進行定位,確定物體的邊框,生成對應(yīng)的候選框(Region Proposal),然后在進一步確定邊框內(nèi)是否為正樣本。所以候選框的定位準度會直接影響檢測器性能。一般采用線性回歸對候選框進行微調(diào),得到最終的預(yù)測邊框。通過線性回歸的方式來尋找這種映射的前提是候選框與真實框要比較接近,否則就不滿足線性關(guān)系,而隨著模型逐漸收斂,該線性關(guān)系也能一直滿足。我們假設(shè)特征向量X為輸入層,學(xué)習(xí)的參數(shù)為w,通過線性關(guān)系與真實值Y逼近,整個映射滿足關(guān)系Y=WX。
對于一個邊框可以通過(x,y,w,h)四個參數(shù)來表示,x,y 表示邊框的中心點,w,h 分別表示邊框的寬度和高度。通過邊框回歸得到一種映射關(guān)系,即輸入P經(jīng)過映射后得到與g 更接近的G,也就是:給定輸入P=(Px,Py,Pw,Ph),GT=(Gx,Gy,Gw,Gh),尋找一種映射。
本文采用的訓(xùn)練集是來源于OpenSARShip 是上海交通大學(xué)于2017 年構(gòu)建的用于SAR 圖像艦船目標識別的數(shù)據(jù)集,它有11346 只船及其對應(yīng)的AIS(Automatic Identification System)信息。圖2 是OpenSARShip數(shù)據(jù)集示例。由于該數(shù)據(jù)集里面的圖片很多尺寸很小(30×30 像素),不適合進行檢測實驗,所以我們篩選出去尺寸大于(70×70 像素)的船舶圖片進行實驗,總共4712 張圖片,采用7:2:1 進行劃分訓(xùn)練集、測試集、驗證集。
圖2 OpenSARShip數(shù)據(jù)集
深度學(xué)習(xí)的算法需要強大的計算力做支撐,本文所有實驗均在高配置的計算機上進行,操作系統(tǒng)為64位 Ubuntu 16.04,Intel Xeon CPU E3- 1230 v5 @3.40GHz,顯卡采用的是NVIDIA GTX1080T GPU,12GB 顯存,通過CUDA8.0 和cuDNN5.0 進行深度學(xué)習(xí)運算加速。
通過對每個圖片只利用一次卷積神經(jīng)網(wǎng)絡(luò)進行特征提取,極大的減少了冗余計算,從而提高了檢測性能和檢測速度。
每張圖片只進行一次CNN 特征提取,通過降低冗余計算操作來提高模型的檢測性能和速度。
基于區(qū)域提案的Faster R-CNN 檢測算法是最有代表性的,主要由共享卷積層、區(qū)域提案網(wǎng)絡(luò)和檢測網(wǎng)絡(luò)組成。Faster R-CNN 綜合了R-CNN 和Fast R-CNN的優(yōu)點,并改進了他們的不足,每張圖片只進行一次CNN 特征提取,通過降低冗余計算操作來提高模型的檢測性能和速度。共享卷積層主要用于提取特征,區(qū)域提案網(wǎng)絡(luò)用于產(chǎn)生候選區(qū)域(候選窗口),區(qū)域提案網(wǎng)絡(luò)產(chǎn)生的候選框經(jīng)過RoI 池化層輸入到檢測網(wǎng)絡(luò)。檢測網(wǎng)絡(luò)里的全連接層后連接的分類分支用于候選框內(nèi)目標和背景的分類,回歸分支則用于候選框目標的定位。他們的損失損失函數(shù)包括分類損失函數(shù)和回歸損失函數(shù),根據(jù)梯度下降算法進行網(wǎng)絡(luò)參數(shù)的優(yōu)化。
為了訓(xùn)練Faster R-CNN 檢測模型,我們需要即需要訓(xùn)練RPN 又需要訓(xùn)練Fast R-CNN。對于訓(xùn)練RPN,需要為所有候選區(qū)域標注一個標簽(正樣本/負樣本),以下兩種由RPN 產(chǎn)生的候選框可以看出正樣本,第一種:候選框與目標真實邊框有最高的交并比,第二種:候選框與真實邊框的重疊高于0.7。對于候選框與真值區(qū)域的交并比低于0.3 的視為負樣本,其他樣本不參與RPN 模型訓(xùn)練。
通過把SAR 圖像輸入到共享卷積層提取特征,得到共享特征圖,將共享特征圖同時輸入到RPN 和Fast R-CNN。RPN 在特征圖上生成候選框,然后將這些候選框輸入到Fast R-CNN,從輸入圖像經(jīng)過共享卷積層的最高層獲取特征圖,并計算候選框在該特征圖上對應(yīng)的映射位置,最終輸入到RoI 池化層進行尺寸統(tǒng)一,最終經(jīng)過全連接層,得到展開好后的一維空間的特征向量。然后輸入到分類層和回歸層,分類層和回歸層對輸入的特征向量進行神經(jīng)元全連接計算,計算得到候選框的位置坐標和分類概率。然后將位置坐標和分類概率送入到多任務(wù)損失函數(shù)進行計算,損失函數(shù)通過位置坐標和分類概率與真實值之間的誤差進行計算對應(yīng)損失,然后調(diào)整神經(jīng)元參數(shù),使檢測模型達到最優(yōu)。
采用Faster R-CNN 算法卷積網(wǎng)絡(luò)分別為ZF 網(wǎng)絡(luò)和VGG16 網(wǎng)絡(luò)分別對OpenSARShip 數(shù)據(jù)集進行船舶檢測,實驗結(jié)果如表1。
表1 Faster R-CNN 算法性能比較
表1 采用篩選過后的OpenSARShip 數(shù)據(jù)集作為實驗對象。從該表中可以看出,CFAR、FRCN-ZF 和FRCN-VGG16 三種檢測算法中,傳統(tǒng)的CFAR 檢測算法性能最低,基于卷積神經(jīng)網(wǎng)絡(luò)的FRCN-ZF 和FRCN-VGG16 性能最好明顯優(yōu)于CFAR 算法。同時由于FRCN-VGG16 的網(wǎng)絡(luò)層數(shù)更深,所以FRCNVGG16 的檢測性能優(yōu)于FRCN-ZF 網(wǎng)絡(luò)。
為了說明基于卷積神經(jīng)網(wǎng)絡(luò)的檢測算法的性能,本文通過在公開的OpenSARShip 數(shù)據(jù)集中進行實驗,
實驗結(jié)果表明,基于基于卷積神經(jīng)網(wǎng)絡(luò)的檢測算法在性能上要明顯優(yōu)于傳統(tǒng)的SAR 檢測算法CFAR。同時隨著卷積神經(jīng)網(wǎng)絡(luò)的深度加深,對目標的特征提取加強,檢測性能也有所提升?;赩GG16 的Faster R-CNN 檢測算法的檢測性能可以達到80%以上。本文的研究結(jié)果表明卷積神經(jīng)網(wǎng)絡(luò)算法在SAR 船舶目標檢測上同樣具有很高的發(fā)展?jié)摿Α?/p>