韓子碩,王春平,付強 (陸軍工程大學 石家莊校區(qū) 電子與光學工程系,河北 石家莊 050003)
針對SAR圖像艦船檢測,傳統(tǒng)算法在特征提取和圖像分析等多個環(huán)節(jié)均需要人工參與,致使整個過程耗時耗力且檢測效果并不理想. 究其原因,一是各類艦船尺度差異大,且存在大量小目標甚至點目標;二是大量的散斑噪聲、艦船與海面相互耦合以及近岸區(qū)域的復雜環(huán)境,導致目標視覺顯著性差;三是海尖峰、冰山、小島、鉆井平臺、浮標等眾多假目標給檢測帶來難度. 針對目標尺度差異大的問題,DAI等[2]和楊龍等[3]利用特征融合技術(shù),構(gòu)建位置信息和語義信息同等豐富的金字塔結(jié)構(gòu)特征圖,并在多尺度特征層上進行目標檢測,增強了網(wǎng)絡對多尺度艦船的適應性. 但對于小目標占比大甚至包含一定數(shù)量點目標的寬幅大場景SAR圖像的目標檢測效果并不是很理想. 針對目標視覺顯著性差的問題,HU等[4]通過學習特征圖各通道之間的依賴關(guān)系得到重要性參數(shù),并以此為依據(jù)為每個通道賦予不同的權(quán)值,達到增強有用特征、抑制無用特征的目的. 基于CNN的注意力模型(CNN-Based AM)[5]通過學習特征圖像素點重要性參數(shù),實現(xiàn)像素級空間特征增強. WOO等[6]從通道和空間兩個層面分別構(gòu)建注意力模塊,兩者經(jīng)并行連接后共同將網(wǎng)絡注意力聚焦于目標區(qū)域. SE-Net和CBAM中的通道注意力結(jié)構(gòu)雖對特征豐富的光學圖像效果明顯,但對特征并不豐富的SAR圖像卻并不友好. 而CNN-Based AM需要進行大量的實驗進行微調(diào),工作量大. 針對干擾假目標多的問題,KANG等[7]依照人類視覺習慣,利用目標及其周邊特征構(gòu)建上下文信息,為分類器和回歸器提供額外判別依據(jù),有效降低了目標虛警. LUO等[8]通過分析計算各類別之間的距離構(gòu)建上下文類別關(guān)系矩陣,重新定義分類概率和回歸置信度,顯著提升了網(wǎng)絡檢測性能.
基于以上分析,針對SAR圖像艦船檢測所面臨的困難,本文在YOLOv3[9]單階段檢測算法基礎上,提出了一種深層次特征增強的多尺度目標檢測框架(YOLO-DAC). 通過在四尺度特征圖上進行目標預測,提升網(wǎng)絡對小尺度目標的敏感度;以基于注意力機制的特征融合方式銜接相鄰特征層,自下而上構(gòu)建目標信息豐富、特征顯著的增強型特征金字塔,提升網(wǎng)絡對不同尺度艦船的適應能力;同時為了擴大檢測網(wǎng)絡視野和消除假目標誤導,利用目標周邊上下文信息為檢測器提供有力判別依據(jù),最終實現(xiàn)SAR圖像多尺度艦船檢測.
YOLO-DAC共包含4層YOLOv3特征提取網(wǎng)絡(YOLOv3-4Layer)、深層次特征增強網(wǎng)絡(DFEN)和融合上下文信息的檢測網(wǎng)絡(Contextual-DNet)三個部分,整體網(wǎng)絡結(jié)構(gòu)如圖1所示.
圖1 基于YOLO-DAC的SAR圖像艦船檢測網(wǎng)絡框架Fig.1 The architecture of ship detection network based on YOLO-DAC in SAR images
原始YOLOv3模型以Darknet-53為主干網(wǎng)絡,并采用全局到局部的思想構(gòu)建多尺度金字塔完成目標檢測,在多尺度(尤其是小尺度)目標檢測方面具有天然優(yōu)勢[10],且Darknet-53具備一定的泛化能力進一步提升了檢測性能. 雖然YOLOv3的性能優(yōu)越,但仍不足以處理目標尺度差異大、小目標占比多的SAR圖像艦船檢測. YOLOv3要求輸入圖像分辨率為416×416,并將F5、F4、F3作為預測目標的特征層,三者的下采樣步長分別為32、16、8,那么該模型理論上能檢測到的最小目標分辨率在8×8左右. 然而,以SAR圖像艦船公開數(shù)據(jù)集SSDD[11]為例,當將輸入圖像的尺寸統(tǒng)一至416大小時,有136個艦船目標的長或者寬小于8,如圖2所示. 以此推斷,將有5.4%的目標存在漏檢風險. 因此,需進一步增大預測目標特征層的分辨率. 基于以上分析,重新設計特征提取網(wǎng)絡,將下采樣步長為4且具有更高分辨率的F2層加入特征金字塔(FPN)中,進一步提高小尺度目標檢測的細粒度,形成四尺度目標預測網(wǎng)絡,如圖1中的YOLOv3-4Layer模塊所示.
圖2 SSDD數(shù)據(jù)集艦船目標長寬分布Fig.2 Distribution of ship targets in SSDD dataset
為了有效利用高層特征圖的語義信息和淺層特征圖的細粒度特征,本文從豐富特征圖信息和提升顯著性特征兩方面入手,設計了DFEN結(jié)構(gòu),如圖3所示. 在YOLOv3-4Layer輸出的初始FPN基礎上,DFEN通過自下而上重構(gòu)特征金字塔的方式,達到縮小淺層特征圖與高層特征圖之間的卷積跨度,豐富高層特征圖所含細粒度特征的目的. 如經(jīng)過重構(gòu)特征金字塔,Darknet-53的淺層特征圖C2與最高預測層之間的卷積跨度由原來的47減小為6. 此外,為了提升預測層的顯著性特征,DFEN以基于空間注意力機制的特征融合(AFF)方式銜接相鄰特征層,在生成顯著性特征的同時,完成特征金字塔的自下而上連接. 注意力模塊中沿通道方向的池化操作(AvgPool和MaxPool)可以有效突出信息區(qū)域[12],再經(jīng)一層卷積和Sigmoid函數(shù)整合后,輸出空間注意力圖. 針對四尺度的目標檢測網(wǎng)絡,僅需要三個AFF模塊即可,每個模塊有兩路輸入Pi∈C×2H×2W和Fi+1∈C×2H×2W,經(jīng)過特征融合輸出Pi+1∈C×2H×2W,C、H、W分別表示通道數(shù)、高和寬,特征融合過程可表示為:
圖3 深層次特征增強網(wǎng)絡示意圖Fig.3 Illustration of the DFEN
(1)
式中:Att(·)為注意力機制;σ(·)為Sigmoid函數(shù);f3×3為3×3卷積;f1×1為1×1卷積;AvgPool、MaxPool、g2x-up分別為平均池化、最大池化和2倍下采樣;⊕為concatenate特征疊加方式.
DFEN構(gòu)建的多尺度融合特征金字塔在一定程度上結(jié)合了一些上下文信息,但從特征提取的角度來看,并沒有對上下文特征進行特殊處理或利用. 基于以上分析,將目標周邊特征作為上下文信息引入檢測網(wǎng)絡,為分類和定位提供有力判定依據(jù). YOLO-DAC從4個尺度的增強型特征圖(即圖3中的P5:P2)上生成錨框,每個尺度的特征圖獨立進行目標分類和邊框回歸,進而預測出坐標、目標分數(shù)和類別置信度. 圖4展示了在分辨率為13×13的特征圖P5上實現(xiàn)艦船檢測的基本原理,其它尺度特征圖上的檢測原理與此相同.
為了有效提高結(jié)構(gòu)的剛度,將傳感器支路的連接方式由鉸約束改為了固支約束,在主體結(jié)構(gòu)不變的前提下最大限度的提高了剛度[2]。然而這樣就導致了傳感器無法保證輸入輸出之間的線性關(guān)系。
圖4 Contextual-DNet原理Fig.4 The principle of Contextual-DNet
將輸入圖像分成13×13個單元格,每個圖像塊對應特征圖P5上一個像素點,以P5上每個像素點為中心產(chǎn)生不同尺度的錨框(anchor). 根據(jù)錨框內(nèi)的圖像特征計算出目標預測邊框(bounding box)的偏移量(tx,ty,tw,th)、目標分數(shù)Pobj和類別置信度Pk. 每個錨框預測回歸一個目標邊框,邊框回歸過程如圖5所示,pw和ph為錨框的寬和高,(cx,cy)為單元格左上角坐標. 邊框回歸其實就是對錨框的平移和縮放,平移參數(shù)為(σ(tx),σ(ty)),σ(·)為Sigmoid函數(shù),其作用是將預測邊框的中心點和錨框的中心點限制在同一單元格內(nèi),縮放參數(shù)為(etw,eth),邊框坐標(bx,by,bw,bh)通過式(2)進行計算:
圖5 邊框回歸示意圖Fig.5 Diagram of bounding box regression
(2)
目標分數(shù)Pobj表示邊框內(nèi)包含目標的概率,類別置信度Pk表示邊框內(nèi)的目標屬于第k類的概率. 由于本文主要針對的是艦船目標檢測,因此只設置了一個目標分類標簽,即“ship”. 分類器只需要計算出目標屬于背景的概率P0和屬于艦船的概率P1即可.
Pobj和Pk是網(wǎng)絡根據(jù)錨框內(nèi)的特征確定的,而錨框不一定囊括整個目標區(qū)域,且沒有參考信息來輔助檢測器進行判定. 為了提升判定的準確性,將預測邊框周邊特征作為上下文信息,為檢測網(wǎng)絡提供補充信息. 根據(jù)邊框坐標(bx,by,bw,bh),在相應預測特征圖上提取目標周邊上下文特征(context),上下文區(qū)域坐標取(bx,by,βbw,βbh),β為擴大倍數(shù),如圖4所示. 上下文特征首先經(jīng)過兩個3×3卷積層進行特征整合,然后通過平均池化層進行降維,最后經(jīng)Sigmoid函數(shù)輸出目標分數(shù)調(diào)整參數(shù)λobj和類別置信度調(diào)整參數(shù)λk.Pobj和Pk通過式(3)進行調(diào)整:
(3)
式中:σ(·)為Sigmoid函數(shù);Pr(object)和Pr(classk)為由卷積層直接輸出且未經(jīng)Sigmoid函數(shù)規(guī)范化的目標分數(shù)和類別置信度值.
為了驗證本文算法的有效性,實驗中共使用了兩個數(shù)據(jù)集:SSDD數(shù)據(jù)集及自建SAR艦船數(shù)據(jù)集(SAR-Ship).
SSDD數(shù)據(jù)集是由LI等[11]構(gòu)建的SAR圖像公開艦船檢測數(shù)據(jù)集,共包含1 160張SAR圖像,含有2 456個艦船目標,場景類型包含港口、島礁、海上區(qū)域等. 該數(shù)據(jù)集中的SAR圖像收集于RadarSat-2、TerraSAR-X和Sentinel-1三個星載SAR. 圖像的分辨率和尺寸均不固定,樣例見圖6. 數(shù)據(jù)集分布信息見表1.
圖6 SSDD數(shù)據(jù)集樣例Fig.6 Samples of SSDD data set
表1 SSDD數(shù)據(jù)集分布信息Tab.1 Distribution of SSDD data set
SAR-Ship自建數(shù)據(jù)集選取7景歐洲航天局(ESA)提供的Sentinel-1星載SAR圖像作為原始實驗數(shù)據(jù). 本文以10%的重疊率將原始SAR圖像切割成一系列500×500的子圖像,并按照SSDD樣本標簽格式進行標注,而后進行訓練和測試. Sentinel-1全景圖分割示例如圖7所示. 取5景圖像作為訓練數(shù)據(jù),將包含艦船目標的1 936幅子圖像作為訓練數(shù)據(jù)集,其余2景圖像切割而成的3 536幅子圖像作為測試數(shù)據(jù)集. 訓練數(shù)據(jù)集和測試數(shù)據(jù)集分布信息如表2所示.
圖7 SAR-Ship數(shù)據(jù)集分割示例Fig.7 Segmentation example of SAR-Ship data set
表2 SARShip數(shù)據(jù)集分布信息Tab.2 Distribution of SAR-Ship data set
網(wǎng)絡訓練過程共分為兩個階段:第一個階段只開放主干網(wǎng)絡的卷積核參數(shù),凍結(jié)其余卷積層,訓練50個epoch;第二階段開放所有卷積層參數(shù),訓練80個epoch.
檢測網(wǎng)絡在4個不同尺度的特征圖上進行預測,以特征圖上的每個像素點為中心生成3個不同大小的錨框,共需設置3×4=12個錨框. 為了利用艦船目標多為狹長形這一先驗知識,通過k-means聚類算法在訓練集上預估錨框的寬和高.k-means設置12個聚類中心,每個聚類中心對應一種錨框類型,預估錨框設置見表3.
表3 SSDD數(shù)據(jù)集和SAR-Ship數(shù)據(jù)集中錨框的寬高設置
檢測網(wǎng)絡中上下文區(qū)域的大小取決于β值. 合適的β取值可以使上下文信息輔助檢測網(wǎng)絡做出更加準確的判定,取值過小作用不明顯,取值過大則給檢測網(wǎng)絡帶來干擾信息,從而導致錯誤判定. 為了確定β的最優(yōu)值,以所提方法為檢測模型,分別取β=1~6,在SSDD數(shù)據(jù)集和SAR-Ship數(shù)據(jù)集上分別進行6組實驗,結(jié)果如表4所示,其中Ntp為正確預測的目標數(shù)量,Nfp為錯誤預測的目標數(shù)量,Nfn為漏檢數(shù)量,P為精確率,R為召回率,AP為平均準確率.
由表4可知,當β取1~5時,隨著β值的增大,檢測器在兩個數(shù)據(jù)集上的性能表現(xiàn)均呈現(xiàn)向好趨勢. 當β=5時,網(wǎng)絡性能達到最優(yōu),SSDD數(shù)據(jù)集上的AP值達到0.944 3,SAR-Ship數(shù)據(jù)集上的AP值達到0.919 2,相較于β=1時,Nfp和Nfn均有所下降,AP分別增長了0.012 6、0.032 0,說明上下文信息可以為檢測器提供更加有力的判別依據(jù),增加目標判定的置信度. 當β取6時,目標特征被過多的上下文信息掩蓋,網(wǎng)絡性能驟降. 基于以上分析,本文將β值設置為5.
表4 不同β取值時的實驗結(jié)果比對Tab.4 Comparison of experimental results with different β
為了評估YOLOv3-4Lyer、DFEN、Contextual-DNet對提升網(wǎng)絡檢測能力的貢獻度,分別在SSDD數(shù)據(jù)集和SAR-Ship數(shù)據(jù)集上做5組實驗:第1組實驗為原始YOLOv3模型,第2組實驗為4尺度的YOLOv3(YOLOv3+4Layer),第3組實驗為嵌入深層次特征增強網(wǎng)絡的YOLOv3(YOLOv3+DFEN),第4組實驗為融合上下文信息的YOLOv3(YOLOv3+CD),第5組實驗為所提模型(YOLO-DAC). 各組實驗結(jié)果的定量比較如表5所示.
表5 不同算法實驗結(jié)果的定量比較Tab.5 Comparison of experimental results based on different methods
YOLOv3-4Lyer在YOLOv3基礎上加入了具有更高分辨率的預測特征層,艦船目標的漏檢數(shù)量得以減少,但虛警數(shù)量有所上升,在SSDD數(shù)據(jù)集和SAR-Ship數(shù)據(jù)集上的AP值分別達到0. 862 4和0.850 0,比YOLOv3高0.026 8和0.076 5.YOLOv3+DFEN從豐富特征圖信息和提升顯著性特征兩方面對YOLOv3進行了增強,兩個數(shù)據(jù)集上的AP值分別達到了0.903 7和0.871 2,比YOLOv3提升了0.067 2、0.097 7. YOLOv3+CD在YOLOv3基礎上融入了上下文信息,兩個數(shù)據(jù)集上的AP值分別提升了0.058 7和0.056 6,且Nfp和Nfn各有不同程度的下降. YOLO-DAC是嵌入三個增強模塊的綜合檢測模型,在兩個數(shù)據(jù)集上取得最優(yōu)AP值,分別達到了0.944 3和0.919 2,比YOLOv3高0.108 7和0.145 7.
從各檢測模型所取得的性能增益可以看出,由于SAR-Ship數(shù)據(jù)集中的小尺度目標占比比SSDD數(shù)據(jù)集更大,因此YOLOv3-4Lyer的作用對其更加突顯;Contextual-DNet在兩個數(shù)據(jù)集上所帶來的性能增益基本持平,虛警和漏檢有明顯下降,說明上下文信息可以為檢測器提供強有力的判定依據(jù);相較于其它兩個模塊,DFEN對網(wǎng)絡性能的提升效果更加明顯,說明豐富預測特征圖所含信息和增強顯著性特征是提升檢測性能的關(guān)鍵.
本節(jié)通過與SSD、YOLOv3、DFPN[13]、Faster R-CNN+[14]、YOLOv4[15]、SCRNet[16]進行比較來驗證所提YOLO-DAC模型的優(yōu)越性,各網(wǎng)絡模型在SSDD數(shù)據(jù)集和SAR-Ship數(shù)據(jù)集上的檢測結(jié)果定量評估如表6所示,其中t表示測試一幅圖像的平均推斷時間.
表6 不同網(wǎng)絡模型的艦船檢測結(jié)果定量比較Tab.6 Quantitative comparison of ship detection results based on different network models
由不同方法的性能評價結(jié)果和PR曲線圖(如圖8所示)可以看出,本文算法的檢測性能最為優(yōu)異且PR曲線平穩(wěn),平均推斷時間也遠小于性能相近的其它模型.
圖8 不同網(wǎng)絡模型的PR曲線Fig.8 The PR curves of different method
圖9給出了YOLO-DAC在兩個數(shù)據(jù)集上的可視化檢測結(jié)果,由圖亦知,所提模型能夠有效完成SAR圖像艦船檢測任務. SSD采取的主干網(wǎng)絡的泛化性能較差,提取的艦船目標特征不夠完善,導致檢測性能較差;YOLOv3雖然應用了特征金字塔結(jié)構(gòu),但基于三尺度特征圖的目標預測仍不足以滿足小尺度目標檢測的需求;YOLOv4綜合多種目標檢測算法之長,對YOLOv3進行了改進,在SSDD數(shù)據(jù)集上的AP值達到了0.920 9,但在小尺度目標占比更大的SAR-Ship數(shù)據(jù)集上的表現(xiàn)卻差強人意,PR曲線下降態(tài)勢過早;Faster R-CNN+利用特征融合技術(shù)豐富特征信息,但單預測層設置和復雜的SAR圖像環(huán)境致使性能表現(xiàn)比較中庸;SCRDet通過將高層特征融合至低層特征來提高預測層的分辨率和特征表達,并嵌入多維注意力網(wǎng)絡提升顯著性特征,在兩個數(shù)據(jù)集上的AP值分別達到0.931 5和0.859 7;DFPN采取跨尺度連接的方式融合各層特征,構(gòu)建特征表達更加全面豐富的密集特征金字塔,并在四尺度特征圖上進行目標預測,在SAR-Ship數(shù)據(jù)集上的表現(xiàn)優(yōu)于前5種算法,但SSDD數(shù)據(jù)集中各類圖像的特征豐富性遠不足于支撐訓練如此密集的網(wǎng)絡結(jié)構(gòu),導致該方法的檢測性能受到影響,PR曲線跌宕起伏.
圖9 艦船檢測可視化結(jié)果Fig.9 Visualization results of ship detection
為了進一步驗證模型對于SAR圖像艦船檢測的魯棒性和泛化能力,利用SSDD數(shù)據(jù)集的訓練模型分別對AIR-SARShip[17]和HRDIS[18]數(shù)據(jù)集中的艦船目標進行檢測.AIR-SARShip數(shù)據(jù)集中的圖像尺寸均為3 000×3 000,分辨率包括1 m和3 m;HRDIS數(shù)據(jù)集中的圖像尺寸均為800×800,分辨率包括0.5、1.0和3.0. 圖10給出了SSDD訓練模型在兩個數(shù)據(jù)集上的檢測結(jié)果. 由圖可知,盡管各個數(shù)據(jù)集中的樣本分布和艦船目標呈現(xiàn)出的灰度紋理特性均有不同,但所提算法仍能有效檢測出圖像中存在的艦船目標,說明所提模型具有良好的魯棒性和泛化能力. 究其原因,一方面是因為四尺度特征圖的預測模式能夠適應多尺度目標;另一方面得益于Darknet53和DFEN結(jié)構(gòu)強大的特征表達能力,探測器能夠借助更加有利的目標特征做出準確判定.
圖10 AIR-SARShip和HRSID數(shù)據(jù)集上的檢測結(jié)果Fig.10 Detection results of AIR-SARShip and HRSID datasets
針對SAR圖像艦船檢測中目標尺度差異大、小型目標占比多、視覺顯著性特征不明顯和干擾假目標多等問題,本文提出了一種基于深層次特征增強的單階段目標檢測網(wǎng)絡. 該方法通過增加更底層的高分辨率特征圖來增強網(wǎng)絡對小尺度目標的敏感度,設計特征增強網(wǎng)絡重構(gòu)目標信息豐富、顯著性特征強勁的增強型特征金字塔,提升網(wǎng)絡對不同尺度艦船的適應能力,同時利用目標周邊上下文信息為檢測器提供有力的判別依據(jù),有效消除假目標誤導. 相較于SSD、YOLOv3、DFPN、Faster R-CNN+、YOLOv4和SCRNet算法,所提模型更能合理有效地利用特征信息,并可以將網(wǎng)絡注意力集中至目標區(qū)域. 經(jīng)過在數(shù)個SAR圖像艦船數(shù)據(jù)集上進行多組實驗驗證,所提方法能夠高效完成SAR圖像艦船檢測任務,且具有良好的魯棒性和泛化能力.