岳冰瑩 陳 亮 師 皓 盛青青
(1.北京理工大學信息與電子學院雷達技術研究所,北京 100081;2.北京理工大學重慶創(chuàng)新中心,重慶 401120;3.嵌入式實時信息處理技術北京市重點實驗室,北京 100081)
近幾十年來,石油泄漏、沿海海洋污染等與船舶有關的各種問題不斷發(fā)生。為了保護海洋資源、提前應對可能發(fā)生的船舶事故,需要有效進行船舶管理。同時,在軍事領域中艦船目標檢測同樣關乎國土安全。我國近年來多顆高分辨率遙感成像衛(wèi)星陸續(xù)發(fā)射并投入使用。光學圖像能直觀反映地物的真實紋理、顏色等信息,所以光學傳感器獲取的影像細節(jié)信息豐富、視覺特征明顯,但可見光成像容易受時間、云層遮擋、雨霧等影響。合成孔徑雷達基于距離測量并主要觀測目標場景的理化性質,具有全天時、全天候成像能力,所以利用合成孔徑雷達(SAR)進行艦船探測在廣域海洋監(jiān)視中起著至關重要的作用。但是SAR 影像對場景的紋理邊緣描述較不完整,視覺特征不明顯,解譯困難,遙感應用的水平嚴重滯后于空間遙感技術的發(fā)展,這阻礙了人們從中獲取信息和進行相關應用。同時,由于海上環(huán)境復雜,且船只具有大縱橫比、任意方向、密集分布的特點,高分辨率復雜場景中SAR 圖像艦船檢測是一個具有挑戰(zhàn)性的問題。
傳統(tǒng)的SAR 圖像艦船目標檢測方法多采用恒虛警率法[1]、尾跡檢測法[2]等。一方面,SAR 圖像在視覺上是灰度圖像,且存在相干斑噪聲;另一方面受海況、海岸島礁等復雜背景噪聲的影響,僅靠人工進行目標識別難度很高,效率較低。隨著深度學習技術的不斷發(fā)展,其在SAR 圖像目標檢測方面的應用具有良好的發(fā)展前景。2014 年以來,目標檢測框架分為一階目標檢測模型和二階目標檢測模型兩大類,前者以YOLO[3]和SSD[4]為主要框架,同時完成檢測和回歸任務,后者以經典方法RCNN[5],Fast RCNN[6],Faster R-CNN[7]為代表,將檢測任務分為回歸和分類任務。
在SAR圖像船只目標檢測領域,Chen等人[8]提出了一種輕量級的船舶探測器,稱為Tiny YOLOLite,以自主設計的主干網結構和網絡剪枝來實現,還采用了知識提取的方法彌補剪枝造成的網絡性能下降。Yang 等人[9]提出基于RetinaNet 和旋轉包圍盒(RBox)的單級目標檢測框架R-RetinaNet,通過尺度校正,使輸出主干特征圖與目標的尺度分布相一致,設計基于任務注意特征的特征融合網絡(TAFPN)。Liang 等人[10]提出了一種基于由粗到細機制的自適應分層船只檢測方法,構造了改進的圖像域與頻域相結合的視覺注意機制,采用保持恒虛警特性的非參數BKDE(block kernel density estimation)對目標進行精確檢測。Gao等人[11]提出了一種輕量級的特征抽取器,嵌入注意塊并采用了一種基于中心點的無錨探測器,同時對船舶中心和船舶尺寸進行回歸。Wei 等人[12]設計了高分辨率FPN 網絡,將高分辨率子網與低分辨率子網并行連接,用軟化非極大值抑制(Soft NMS)方法提高網絡管理系統(tǒng)的性能,從而提高密集型艦船的探測性能。Chen等人[13]在網絡中使用輕量級的非局部注意模塊,改進了錨機制并設計了一種特征引導對齊模塊,將當前優(yōu)化錨點的位置和形狀信息編碼到特征點中。
本文選擇RetinaNet模型為基本結構,創(chuàng)新點主要如下:
(1)采用單級檢測結構保證方法的運行速度;采用深度殘差網絡自主獲取圖像特征,避免重復特征的提取。
(2)為降低非目標對特征提取的干擾,利用基于圓形平滑標簽(CSL)的旋轉框檢測方法實現精準定位,將角度預測轉化為一個高精度分類任務,解決了邊界不連續(xù)問題,也更有利于對密集排列目標的檢測。
(3)在分類與檢測網絡中加入注意力機制以增強網絡特征提取能力。
本文選擇單級網絡RetinaNet[14]實現對SAR 圖像中艦船目標的檢測,改進后的網絡結構如圖1 所示。由圖可知,RetinaNet 算法由ResNet 網絡[15](a),FPN 網絡(Feature Pyramid Networks)[16](b)和分類和位置回歸網絡(c)三部分構成。ResNet 網絡主要用來初步提取圖像特征,FPN 完成特征融合,實現特征的精細化提取,分類和位置回歸子網絡用于目標的分類和定位。
傳統(tǒng)的RetinaNet 的特征提取部分采用了深度殘差網絡(ResNet50),其參數如圖2 所示。通常,神經網絡越深,其獲取信息更多,特征也越豐富,網絡的性能越好。但是直接進行網絡加深會出現梯度爆炸或梯度消失問題,導致網絡性能下降。對于這類問題,可以通過歸一化保證反向傳播中采用隨機梯度下降,實現收斂效果。但歸一化操作只適用于幾十層的網絡,當網絡深度加深,還是會出現模型退化問題。而ResNet 引入了跳躍鏈接線,通過一個恒等快捷鍵直接跳過一層或多層完成數據傳遞,如圖3所示。當神經網絡深度增加導致梯度消失時,對原有網絡進行了恒等映射,保證了信息的完整性,提取了較多細節(jié)信息,避免了網絡性能迅速下降。
特征金字塔網絡(FPN)以特征金字塔為基礎結構,對每一層不同尺度的特征圖都進行預測,提高了特征提取的精度和速度。傳統(tǒng)的卷積網絡自下而上進行特征提取,低層網絡提取出的特征空間分辨率高,目標位置更準,網絡越深,特征的語義信息越豐富,但空間信息丟失。FPN 通過自上而下的連接和橫向連接實現不同層級間的特征融合,同時利用低層特征和高層特征,可以實現對小目標的精確檢測,如圖4 所示。在ResNet 中五次特征提取產生的特征圖C1-C5,對C5 進行1×1 的卷積改變特征圖的通道數,生成M5,然后做3×3 的卷積運算生成P5。對C4 進行1×1 卷積,將它與M5 與經過線性插值上采樣的結果相加,得到M4,對M4做3×3卷積得到P4。重復此過程,產生P3、P2。
本文采用的分類與位置回歸網絡結構如圖1(c)所示,其中C 表示目標的分類,T 表示角度的分類。由于基于回歸的旋轉檢測器存在邊界不連續(xù)的問題,本文使用圓形平滑標簽(Circular Smooth Label,CSL)[17]解決此問題。CSL 將回歸任務的角度預測轉變?yōu)橐粋€高精度分類任務,在旋轉檢測中設計一種基于高精度角度分類的周期性循環(huán)標簽編碼,如圖5所示。從圖中可以看到標簽值在邊界處是連續(xù)的,不受角的周期性和邊緣的互換性影響。
CSL標簽的表達式如下:
其中,g(x)是窗口函數,本文中采用高斯函數。r是窗口函數的半徑,默認值為1,θ表示當前邊界框的角度。
RetinaNet 算法借鑒了Faster-RCNN[7]中的Anchor 機制,滑動窗口在原圖上的映射點為Anchor。使用七個高寬比的錨和三種不同的尺度,Anchor 面積依次為322,642,1282,2562,5122。邊界框回歸的計算公式為:
其中,t表示真實框與anchor框相對位置的坐標向量(tx,ty,tw,th,tθ),t'表示預測框與anchor框相對位置的坐標向量,x,y,w,h,θ分別表示矩形框的中心點坐標、寬、高和角度。x表示真值框的中心點橫坐標,xa表示anchor框的中心點橫坐標,x'表示預測框的中心點橫坐標,其他四個變量同理。tθ采用弧度制表示?;貧w任務的損失函數L如下,該公式由回歸損失、CSL 分類損失、類別損失三部分表示:
其中N表示所有預測框的數量。objn表示是前景/背景(objnj=1是前景,objn=0 是背景)。vnj表示真實的目標向量表示預測偏移向量。θn,分別表示角度的標簽和預測。tn表示目標的標簽。pn表示用Sigmoid 函數計算各類概率分布。Lreg表示位置回歸損失,使用的是smooth L1損失,計算方式圖公式(4)所示。LCSL,Lcls分別表示CSL 分類損失和類別損失,使用的是焦點損失函數focal loss 計算,如公式(5)所示。超參數λ1,λ2,λ3表示平衡各個損失的權重,默認值是{1,0.5,1}。
y為真實標簽類別,p?[0,1]為y=1 的概率值。參數α?[0,1],控制正負樣本的貢獻權重,默認值為0.25。參數γ為聚焦參數,默認值為2。
SAR圖像從視覺上是灰度圖像,分辨率較低,存在相干斑噪聲,本文通過注意力機制重點關注目標區(qū)域,實現從SAR 圖像中對艦船目標的精確檢測。注意力機制源于人類視覺,在人類處理信息的過程中,會做出信息篩選,從輸入信息中選取一部分重要信息,而忽視其他可見信息,以分配有限的信息資源。普通的卷積神經網絡中的池化層采用平均池化或者最大池化的方法直接將信息合并,這樣很可能會錯過關鍵信息。卷積層的注意力機制模塊(Convolutional Block Attention Module,CBAM)[18]結合了空間[19]和通道[20]的注意力,同時運用了以上兩種池化方式,引導神經網絡更有針對性地提取目標特征。
通道注意力模塊在空間維度進行操作,能夠找出圖片信息中的重要內容,即可能存在目標的區(qū)域,其結構如圖6所示。通道注意力模塊的流程是,輸入的特征圖分別經過最大池化和平均池化,來聚合特征映射的空間信息,然后分別經過MLP 共享網絡,再將輸出的特征進行逐元素加和,經過sigmoid縮放到[0,1]之間,與輸入特征圖做乘法,得到結果。通道注意力模塊從W×H×C的特征圖得到1×1×C的注意力權重,可以表達為:
其中,F表示輸入特征圖,F'表示本模塊輸出,MC表示經過通道注意力操作,AvgPool 表示對輸入特征圖在空間維度上使用平均池化,MaxPool 表示空間維度上的最大池化,MLP表示多層感知機運算,σ為sigmoid操作,符號?代表逐元素相乘。
空間注意力模塊在通道維度進行操作,能夠找出圖片信息中需要被關注的區(qū)域,其結構如圖7 所示。具體流程是將輸入特征圖(W×H×C)做一個基于通道的最大池化和平均池化,也就是將所有通道池化成了2個實數,得到2個(W×H×1)的特征圖,將兩個特征圖拼接,對它做7×7 的卷積操作,降維為1 個(W×H×1)的特征圖。經過sigmoid 激活操作后,和該模塊的輸入特征做乘法,得到調整后的特征圖??臻g注意力模塊可以表達為:
其中,F表示輸入特征圖,F"表示本模塊輸出,MS表示經過空間注意力操作,AvgPool 表示對輸入特征圖在通道維度上使用平均池化,MaxPool 表示通道維度上的最大池化,f7×7表示一個7×7 的卷積操作,σ為sigmoid操作,符號?代表逐元素相乘。
本文使用公開的SSDD 數據集[21],SSDD 數據集中的圖像樣本通過C 波段的Radarsat-2、Sentinel-1衛(wèi)星以及X 波段的TerrraSAR-X 衛(wèi)星的SAR 圖像數據裁剪得到,包含HH、HV、VV 和VH 四種極化方式,圖像大小為390×205 像素~600×500 像素。該數據集包含1160 張圖像、2456 只艦船目標,平均每張圖像有2.12 個艦船,包含7×7 像素的小目標艦船到211×298 像素的大目標艦船,涉及了大片遠海區(qū)域和近岸區(qū)域目標,目標背景多樣。
實驗在Ubuntu18.04 系統(tǒng)的Tensorflow 深度學習框架下運行,并使用CUDA10.1 和cudnn7.4.2 來加速訓練。計算機配置為Intel?Xeon?Gold 6240,2.60 GHz,顯卡為NVIDIA TITAN RTX,24 Gb 顯存,算法的訓練和測試均在GPU加速下完成。
將SSDD 數據集按照8∶2 的比例隨機劃分為訓練集和測試集。在劃分過程中,將圖像按照遠海/近海場景、目標尺度、目標密集度均勻分配,以保證實驗結果的有效性。模型通過水平翻轉、裁剪等操作實現數據增廣,提高模型的泛化能力。非極大值抑制和預測概率的閾值均為0.5。本文中的實驗默認由ResNet50初始化,初始學習率設置為0.0005。采用動量優(yōu)化器,動量值設置為0.9。
本文采用平均精度AP(average precision)作為SAR 圖像艦船檢測模型性能的評價指標,計算公式為:
其中TP 為正確定位的目標數量;FP 為誤檢目標數量;FN為漏檢目標數量;精確率P(Precision)表示檢測正確的目標在全部檢測結果中的比率;召回率R表示檢測正確的目標占所有艦船目標真值的比率;以P為縱軸,R為橫軸,可以繪制出PR 曲線,曲線與橫坐標軸圍成的面積為AP 值,AP 用來衡量單類目標的檢測精度,AP 值越接近1,說明其檢測精度越高。
利用本文算法在SSDD 數據集上進行檢測,將引入不同模塊的檢測算法結果進行對比,采用檢測精度作為性能指標,實驗結果如表1 所示。表中RetinaNet 為原始網絡不加改進模塊的檢測結果;CBAM_RetinaNet 對RetinaNet 算法只引入注意力機制;CSL_RetinaNet 對RetinaNet 算法只引入圓形平滑標簽的角度分類方法;本文方法指對RetinaNet算法同時引入注意力機制與圓形平滑標簽的角度分類方法。從表1 可以看出,本文方法的檢測精度高于其他3 種算法,擁有更好的檢測性能,在SSDD數據集檢測的AP 值相較于RetinaNet 算法提升了8.74%,引入注意力機制和引入圓形平滑標簽的角度分類方法都一定程度提高了艦船目標的檢測精度,同時引入兩種改進方法時網絡的檢測性能最好。
表1 SAR圖像艦船目標檢測結果對比Tab.1 Comparison of ship target detection results in SAR images
為驗證本文所提檢測網絡的性能,在SSDD 數據集上完成本文方法與其他常用算法的對比實驗,其他算法包括SSD、YOLOv3 和Faster R-CNN 算法,實驗結果如表2 所示。從表中可以看出,本文方法在單目標檢測精度AP 評價指標上取得了最優(yōu)結果。
表2 算法性能對比Tab.2 Algorithm performance comparison
圖8 展示了本文方法在SSDD 數據集上的檢測結果,其中綠色框為算法正確檢測出的結果,紅色框為漏檢目標,黃色框為虛警。圖8(a)展示了近岸大目標檢測情況,圖8(b)展示了遠海大目標檢測情況,圖8(c)展示了近岸小目標檢測情況,圖8(d)展示了遠海小目標檢測情況。從圖中可以看出,本文算法對遠海大目標、近海小目標的檢測性能較好。這是由于在這兩種場景下目標周圍為海面區(qū)域,復雜背景雜波少,容易將艦船目標準確檢出。而對于圖8(a)近岸場景下的大目標檢測所示結果,有3 個艦船目標漏檢、1個虛景。這是由于近岸場景下,部分海岸、港口、島礁等與艦船特征相近,且都表現為強散射點,在特征提取的過程中引入背景干擾信息多,易導致漏檢、誤檢。對于圖8(d)呈現了遠海小目標檢測結果,由于艦船尺度差異明顯,在SAR 圖像中表現為幾十個像素到幾萬像素的多尺度目標,小目標易存在漏檢。總體來說,對于SAR 圖像艦船目標檢測,本文方法在近海和遠海場景下都能取得良好的效果,能夠在復雜背景下識別艦船目標,并且能更好地處理多尺度問題,得到更加精準的檢測框。
圖9(a)展示了本文方法在SSDD 數據集上強干擾環(huán)境中的目標檢測情況,在背景干擾嚴重的近岸SAR 圖像艦船目標檢測也有很好的檢測性能。圖9(b)展示了本文方法對多尺度目標的檢測效果。
本文算法能夠檢測出更多正確的艦船目標,總體的誤檢、漏檢目標數量較少,大多數目標可以被正確地檢測到。在復雜的海洋環(huán)境中,此方法仍然取得了較好的檢測性能,驗證了該方法對于密集型和小型艦船檢測穩(wěn)健性能。艦船目標被預測邊界框很好地覆蓋,旋轉檢測框中不包含背景區(qū)域信息,可以有效地排除背景區(qū)域的干擾,保證提取的目標特征更準確。注意力機制完成了對艦船目標特征的精確提取,從而大大減少了艦船目標的漏檢和誤檢。對于誤檢、漏檢目標問題,分析原因可知,港口處于海陸分割區(qū)域,且呈現出與艦船目標相似的成像特征,海岸、碼頭等陸地強散射體與艦船目標接近,這些多變的地物類型對艦船目標檢測造成了干擾,導致出現誤檢、漏檢。
本文基于深度學習的方法提出用于SAR 圖像艦船檢測的改進RetinaNet 模型,在圓形平滑標簽(CSL)進行旋轉框檢測的基礎上,在分類與定位網絡中加入了注意力機制。經SSDD 數據集實驗驗證,檢測精度相比較于RetinaNet 模型提升了8.74%,驗證了本方法的有效性,特別是在近岸和近海場景中的艦船檢測更為精確和魯棒。本方法巧妙地平衡了旋轉框預測的質量和單級框架的高速性,對于SAR 圖像目標智能提取具有重要意義。但本文方法對背景復雜度較高的SAR 圖像艦船目標仍存在錯檢和漏檢現象,下一步工作將考慮進一步優(yōu)化網絡結構。另外,如何針對SAR圖像自身特點,合理利用注意力機制進行高精度檢測,而不再簡單沿用光學圖像目標檢測方法仍需研究。