邵子康, 張曉玲,*, 張?zhí)煳? 曾天嬌
(1. 電子科技大學信息與通信工程學院, 四川 成都 611731; 2. 電子科技大學航空航天學院, 四川 成都 611731)
合成孔徑雷達(synthetic aperture radar, SAR)是一種先進的地球觀測遙感工具[1]。相比于光學傳感器,SAR具有全天時、全天候工作的能力。因此,SAR被廣泛應(yīng)用于農(nóng)業(yè)管理、海洋監(jiān)視等領(lǐng)域。海洋艦船檢測作為一項基本海洋監(jiān)視任務(wù),在多個領(lǐng)域都具有廣泛的應(yīng)用[2]。在民用領(lǐng)域,SAR艦船檢測在漁業(yè)管理、港口調(diào)度等方向發(fā)揮著重要作用。此外,SAR艦船檢測對國防安全、邊境管理等具有重要意義。因此,SAR艦船檢測受到了學者們的廣泛關(guān)注[3]。
傳統(tǒng)SAR艦船檢測算法通常基于專家經(jīng)驗來分析SAR圖像中海面艦船的特點,采用手工方式定義艦船特征,最后基于所定義的特征在SAR圖像中搜索艦船[4]。常見的傳統(tǒng)SAR艦船檢測算法包括基于恒虛警率的算法[5]、基于極化分解的算法[6]、基于變換域的算法[7],以及基于視覺顯著性的算法[8]。這些方法依賴于手工特征,在面對復雜的海洋環(huán)境時,存在泛化能力較差、對復雜場景適應(yīng)性不強等問題[9]。
近年來,基于深度學習的SAR艦船檢測方法因其具有對復雜場景適應(yīng)能力強、泛化能力優(yōu)秀等優(yōu)點,受到了學者們的廣泛關(guān)注[10-14]。文獻[10]基于YOLO(you only look once)模型[11],實現(xiàn)了無錨框SAR艦船檢測。文獻[12]基于RetinaNet模型[13],引入分離卷積和空間注意力機制提高檢測精度。文獻[14]基于RetinaNet模型,提出了一種使用旋轉(zhuǎn)檢測框的SAR艦船檢測模型。以上方法均未能實現(xiàn)錨框自適應(yīng)學習,這可能導致錨框無法適應(yīng)多形態(tài)艦船目標,從而可能導致檢測精度下降。
因此,本文提出了一種基于自適應(yīng)錨框和多尺度增強網(wǎng)絡(luò)(adaptive anchor multi-scale enhancement network, AA-MSE-Net)的SAR艦船檢測方法,該方法的主要貢獻如下:
(1) 引入了自適應(yīng)錨框機制,來生成適應(yīng)目標形態(tài)的高質(zhì)量錨框,增強了艦船形態(tài)描述能力;
(2) 提出了多尺度增強特征金字塔網(wǎng)絡(luò)(multi-scale enhancement feature pyramid network, MSE-FPN)來融合增強多尺度特征,增強了多尺度描述能力;
(3) 引入了變形卷積(deformable convolution, D-Conv)來提取艦船形變特征,進一步提高檢測精度。
AA-MSE-Net的結(jié)構(gòu)如圖1所示,其由骨干網(wǎng)絡(luò)、特征金字塔、區(qū)域建議網(wǎng)絡(luò)(region proposal network, RPN)和檢測頭構(gòu)成。首先由骨干網(wǎng)絡(luò)提取輸入SAR圖像的多尺度特征圖,然后在特征金字塔中進行融合增強,接著將融合增強的特征圖輸入RPN和感興趣區(qū)域?qū)R(region of interest alignment, ROIAlign)模塊提取特征子集。ROIAlign可將RPN生成的不同尺度的候選框映射為大小統(tǒng)一的候選框[15],最后將特征子集輸入檢測頭中,以獲取SAR艦船檢測結(jié)果。圖1中紅色字體表示AA-MSE-Net的各項改進。
圖1 AA-MSE-Net結(jié)構(gòu)圖Fig.1 Structure of AA-MSE-Net
大多數(shù)目標檢測模型,例如Faster區(qū)域總卷積神經(jīng)網(wǎng)絡(luò)(region convolutional neural network, RCNN)[16]、YOLO[11]以及Cascade RCNN[17]等模型均基于錨框?qū)崿F(xiàn)目標檢測。錨框是一組人工設(shè)計的矩形框,具有固定尺寸和長寬比,作為分類和回歸的基準[18]。然而,如圖2所示,艦船長寬比差距較大,使用人工設(shè)計的固定長寬比錨框可能與艦船實際形態(tài)有較大偏差,無法準確預(yù)測艦船形狀[19]。
圖2 不同艦船長寬比Fig.2 Different ship’s aspect ratio
因此,受文獻[20]啟發(fā),在RPN中引入自適應(yīng)錨框機制,以在RPN中生成高質(zhì)量的位置自適應(yīng)和形狀自適應(yīng)錨框。錨框自適應(yīng)生成網(wǎng)絡(luò)的結(jié)構(gòu)圖如圖3所示。
圖3 自適應(yīng)錨框生成網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.3 Structure diagram of adaptive anchor generator network
錨框自適應(yīng)生成網(wǎng)絡(luò)含有兩個并行的分支,分別用于預(yù)測錨框尺寸和錨框位置。對于大小為H×W×C的輸入特征圖Q,首先,使用一個1×1卷積層(記為CL)預(yù)測錨框位置,并使用Sigmoid函數(shù)激活:
CL(Q)=WL·Q
(1)
QL=Sigmoid(CL(Q))
(2)
式中:WL為1×1卷積層CL的權(quán)重系數(shù)。Sigmoid激活函數(shù)定義如下:
(3)
1×1卷積層CL和激活函數(shù)Sigmoid輸出大小為H×W×1的特征圖QL。QL上的每個位置的值表示錨框產(chǎn)生在當前位置的概率。設(shè)位置閾值為εL,對于QL上的任意位置(x,y),當QL(x,y)>εL時,網(wǎng)絡(luò)在該位置生成錨框,否則不生成。εL設(shè)置過高會導致生成錨框過少,進而導致目標漏檢。εL設(shè)置過低會導致生成錨框過多,干擾檢測精度。因此,根據(jù)文獻[20]和文獻[21],將位置閾值εL設(shè)置為0.01。由于含艦船目標位置僅占SAR圖像中的一小部分,使用焦點損失[13]作為位置預(yù)測分支的損失函數(shù),以避免產(chǎn)生大量負樣本,干擾檢測精度,即:
lossFL(pt)=-at(1-pt)γlog2pt
(4)
(5)
式中:y表示真值,y=1表示正例,否則為負例;p表示預(yù)測概率,取值范圍為[0, 1];at表示加權(quán)因子,設(shè)置為經(jīng)驗值0.25。
接著,如圖3所示,另使用一個1×1卷積層(記為CS)預(yù)測錨框尺寸。該過程可描述為
CS(Q)=WS·Q
(6)
QS=CS(Q)
(7)
式中:WS為1×1卷積層CS的權(quán)重系數(shù)。
CS輸出大小為H×W×2的特征圖QS。輸出特征圖通道數(shù)設(shè)置為2表示分別預(yù)測錨框?qū)挾葁和錨框高度h。因此,QS上的每個位置的值均表示當前位置錨框的寬度和高度??紤]到錨框形狀預(yù)測分支對錨框的空間位置較為敏感,使用交并比(intersection over union, IOU)損失[22]作為該預(yù)測分支的損失函數(shù)。IOU定義為真值框和預(yù)測錨框的交集,與真值框和預(yù)測錨框的并集之比,即有
(8)
式中:G表示真值框;P表示預(yù)測錨框。
根據(jù)文獻[22],IOU損失定義如下:
(9)
最后,將QL和QS結(jié)合得到自適應(yīng)錨框。此外,考慮到尺度較大錨框應(yīng)對特征圖較大區(qū)域編碼,尺度較小錨框則對應(yīng)特征圖較小區(qū)域[20],添加了特征圖偏移場,使得不同大小的錨框與所對應(yīng)的特征圖區(qū)域相匹配。該過程可描述為
(10)
綜上,通過基于自適應(yīng)錨框生成網(wǎng)絡(luò),產(chǎn)生了基于艦船實際形態(tài)的自適應(yīng)錨框,隨后通過ROIAlign將其映射至匹配轉(zhuǎn)換后的特征圖,以提取其對應(yīng)的特征區(qū)域,并用于后續(xù)檢測頭。
如圖4所示,由于衛(wèi)星拍攝視角不同、艦船自身尺寸不同、雷達觀測構(gòu)型不同、系統(tǒng)參數(shù)和成像分辨率不同等多方面原因,SAR圖像中艦船呈現(xiàn)出多尺度的特點[23]。星載SAR圖像中的SAR艦船,往往具有尺度較小的特點[24]。相對地,機載SAR圖像中的艦船往往尺度更大。不同種類的船只本身尺度差異也很大,漁船、貨船具有較小的尺度。軍艦、貨輪具有較大的尺度。艦船間較大的尺度差異給艦船檢測帶來阻礙[25]。
圖4 不同艦船尺度Fig.4 Ship with different scales
先前已有一些對多尺度SAR目標檢測的研究,文獻[26]提出了一種改進的YOLOX網(wǎng)絡(luò),以改善多尺度檢測精度。文獻[27]使用多個跨尺度連接的特征層增強尺度信息交互。文獻[28]利用密集連接感受野模塊增強多尺度特征。本文從特征融合的角度出發(fā),為了增強多尺度特征,提高網(wǎng)絡(luò)多尺度描述能力,設(shè)計了MSE-FPN。
圖5展示了MSE-FPN的網(wǎng)絡(luò)結(jié)構(gòu)。由圖5所示,MSE-FPN主要包含兩個部分:路徑增強和空間融合。路徑增強的核心在于增加了一條自底而上的路徑聚合支路,以補充特征金字塔中高層空間位置缺失的信息。大多數(shù)金字塔網(wǎng)絡(luò)使用自頂而下的路徑,將高層語義信息傳遞到低層。然而,低層空間信息未能充分融合,易導致檢測框位置的偏差[29]。因此,低層空間信息對檢測精度的提高具有重要的意義。如圖5所示,為了增強低層空間信息的向上融合,MSE-FPN增加了一條自底而上的路徑聚合支路。
圖5 MSE-FPN結(jié)構(gòu)圖Fig.5 Structure of MSE-FPN
此外,為了平衡來自多個尺度的信息特征,MSE-FPN還加入了空間融合模塊[30],將多尺度信息融合增強,如圖5所示。首先,路徑增強后的特征圖E″被整形為大小一致的特征圖,為了使融合效果更好,選擇整形后大小與E3一致[31]。接著,通過全局注意力增強模塊建立空間自注意,減少因融合帶來的信息干擾。全局注意力增強模塊可描述為
(11)
如圖6(a)和圖6(b)所示,使用標準3×3卷積對形態(tài)各異的艦船提取特征存在局限,無法對船的形狀信息建模,不利于后續(xù)網(wǎng)絡(luò)對艦船形狀的預(yù)測。因此,受文獻[32]的啟發(fā),在骨干網(wǎng)絡(luò)中引入了可變形卷積,在特征提取階段對艦船的形狀信息建模并融合至多尺度特征圖中,以便后續(xù)處理。圖6(c)和圖6(d)展示了基于可變形卷積的特征提取,可以自適應(yīng)地擬合艦船形狀,并避免背景干擾。
圖6 標準卷積和可變形卷積示意圖Fig.6 Schematic diagram of standard convolution and deformable convolution
圖7展示了基于可變形卷積的骨干網(wǎng)絡(luò)結(jié)構(gòu)。骨干網(wǎng)絡(luò)基于經(jīng)典的深度殘差網(wǎng)絡(luò)-50(Residual network-50, ResNet-50)[33],將其卷積層均替換為可變形卷積層,并在骨干網(wǎng)絡(luò)的輸出端加入1×1大小的可變形卷積層??勺冃尉矸e增強了骨干網(wǎng)絡(luò)的特征提取能力,使其能自適應(yīng)提取艦船形變特征,以提高檢測精度。
圖7 可變形卷積的骨干網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.7 Structure of deformable convolution backbone network
基于可變形卷積的骨干網(wǎng)絡(luò)核心是可變形卷積,圖8展示了可變形卷積的基本結(jié)構(gòu)。如圖8所示,記輸入特征圖為X,大小為W×H×C,首先使用3×3卷積層學習每個卷積區(qū)域的N個位置偏移量(N等于輸入特征圖中的元素數(shù))。由于每個位置偏移由x方向偏移和y方向偏移構(gòu)成,因此輸出特征圖大小為W×H×2N。然后,將學習得到的卷積核偏移量Δpn作用于原始卷積區(qū)域,并通過卷積運算得到每個位置的輸出。對輸入卷積層的所有位置執(zhí)行上述操作,即可獲得可變形卷積的輸出X′。該過程可描述為
圖8 可變形卷積結(jié)構(gòu)圖Fig.8 Structure of deformable convolution
(12)
式中:X′為可變形卷積的輸出;w為網(wǎng)絡(luò)權(quán)重參數(shù);X為輸入特征圖;R為指定卷積區(qū)域;p0為可變形卷積核的中心位置;pn遍歷整個卷積區(qū)域R;Δpn為卷積核偏移量,由網(wǎng)絡(luò)學習獲得,且為浮點型小數(shù)。
因此,添加偏移量的位置p=p0+pn+Δpn,也為浮點型小數(shù)。為了使新位置p能嵌入特征圖中(要求位置為整數(shù)),對輸入特征圖在位置p進行雙線性插值:
(13)
式中:q為輸入特征圖X的整數(shù)位置;G(·)為二維雙線性插值核,由兩個一維插值核構(gòu)成:
G(q,p)=G(qx,px)·G(qy,py)
(14)
g(a,b)=max(0,1-|a-b|)
(15)
式中:qx和px表示x方向插值位置;qy和py表示y方向插值位置。
本文在公開數(shù)據(jù)集BBox-SSDD[34]上進行實驗。BBox-SSDD數(shù)據(jù)集上含有來自Radarsat-2、TerraSAR-X和Sentinel-1衛(wèi)星的1 160張樣本,共計2 587艘艦船。圖像平均尺寸為500像素×500像素,圖像中艦船尺度分布廣泛,最小艦船尺寸為5像素×4像素,最大艦船尺寸為180像素×308像素。圖9展示了BBox-SSDD數(shù)據(jù)集艦船尺度分布。由圖9可知,BBox-SSDD中的艦船具有多尺度特點。艦船尺寸集中分布在左下角,表示小尺度艦船較多;部分較大艦船尺寸分布在圖上其他位置,表示尺度分布不均。
圖9 BBox-SSDD數(shù)據(jù)集艦船尺度分布圖Fig.9 Distribution of ship scales in BBox-SSDD dataset
AA-MSE-Net訓練及測試圖像大小均使用經(jīng)典雙線性插值,調(diào)整大小為512×512。優(yōu)化器選用隨機梯度下降(stochastic gradient descent, SGD),學習率設(shè)置為0.01,動量設(shè)置為0.9,權(quán)重衰減設(shè)置為0.000 1[35]。訓練迭代次數(shù)設(shè)置為12,在第8次迭代和第11次迭代時學習率衰減為原本學習率的1/10。受限于硬件,訓練批次大小batchsize設(shè)置為2。程序運行的計算機平臺使用i7-10700 CPU,顯卡為Nvidia 2080Ti。使用Windows操作系統(tǒng),程序編寫語言為Python,編程框架為Pytorch。
AA-MSE-Net訓練檢測頭網(wǎng)絡(luò)的損失函數(shù)分為分類損失LCLS和回歸損失LREG:
(16)
(17)
L1(x)=|x|
(18)
本文采用PASCALVOC[36]格式數(shù)據(jù)集,因此采用基于PASCALVOC數(shù)據(jù)集的評價指標來衡量檢測性能。評價指標主要包括召回率(Recall),準確率(Precision)和均值平均精度(mean average precision, mAP)。召回率定義為
(19)
式中:TP表示真正例,即正確的正樣本;FN表示假負例,即錯誤的負樣本。
準確率定義為
(20)
式中:FP表示假正例,即錯誤的正樣本。
mAP通過對精度召回率曲線求積分得到,定義為
(21)
式中:N為類別數(shù)。在本文中僅有艦船一類目標,因此mAP等同于平均精度(average precision, AP)[37],本文中均以AP代替mAP。
表1展示了在BBox-SSDD上,AA-MSE-Net與其他8種現(xiàn)有方法的SAR艦船檢測定量對比結(jié)果,包括Faster RCNN[16]、YOLOv3[11]、高分辨率艦船檢測網(wǎng)絡(luò)(high resolution ship detection network, HR-SDNet)[38]、Cascade RCNN[17]、Libra RCNN[31]、Double-Head RCNN[39]、Free-Anchor[40]、Grid R-CNN[41]。上述方法參數(shù)設(shè)置盡量與其原始工作保持一致,以保證實驗的公平性。由表1可知,相較于其他8種現(xiàn)有方法,AA-MSE-Net具有最高的SAR艦船檢測精度,且高于次優(yōu)模型Double-Head RCNN 1.87%。
表1 定性對比實驗結(jié)果Table 1 Quantitative comparison results %
圖10展示了在BBox-SSDD數(shù)據(jù)集上,AA-MSE-Net與次優(yōu)模型Double-Head RCNN,以及初始模型Faster RCNN的檢測結(jié)果對比。圖10(a)展示了真值框,圖10(b)展示了Faster RCNN的檢測結(jié)果,圖10(c)展示了Double-Head RCNN的檢測結(jié)果,圖10(d)展示了AA-MSE-Net的檢測結(jié)果。如圖10所示,AA-MSE-Net對于多尺度艦船具有更優(yōu)秀的檢測能力,例如對比圖10中第1列圖像,在近岸復雜場景、大小艦船混雜的環(huán)境下,Faster RCNN模型和Double-Head RCNN模型均存在小尺度艦船重復檢測以及出現(xiàn)陸地虛警的現(xiàn)象,而本文所提出的AA-MSE-Net則準確檢測到不同尺度的艦船,且沒有出現(xiàn)虛警。這是因為AA-MSE-Net的多尺度增強金字塔能夠增強多尺度特征,以及可變形卷積的引入增強了網(wǎng)絡(luò)特征提取能力,并減少了背景干擾。此外,如圖10中第2列圖像所示,對于海面上的大尺度艦船,AA-MSE-Net能夠提供更準確的檢測結(jié)果。對比圖10中第2列圖像,Faster RCNN模型受背景干擾,在圖像右側(cè)產(chǎn)生了虛警。Double-Head RCNN模型則出現(xiàn)了重復檢測的問題。而AA-MSE-Net模型未產(chǎn)生虛警以及復檢問題,這是因為AA-MSE-Net引入了自適應(yīng)錨框生成機制,可根據(jù)艦船實際形態(tài)產(chǎn)生質(zhì)量較高的自適應(yīng)錨框。此外,多尺度增強金字塔中的全局自注意力機制有效抑制了背景噪聲,從而減少了海面虛警。如圖10中第3列圖像所示,對于海面上小尺度艦船,AA-MSE-Net能夠提供更準確的檢測結(jié)果。Faster RCNN模型產(chǎn)生了3個漏檢,而AA-MSE-Net模型僅產(chǎn)生了1個漏檢。這證明了AA-MSE-Net對小尺度艦船目標也具有更高的檢測精度,同時證明了AA-MSE-Net對多尺度艦船目標都具有更高的檢測精度。
圖10 定性結(jié)果對比Fig.10 Comparison of qualitative results
表2展示了AA-MSE-Net的消融實驗結(jié)果。本文以Faster RCNN為基礎(chǔ)模型,在其中加入自適應(yīng)錨框、MSE-FPN以及D-Conv。由表2可知,在加入上述改進后,AP值逐漸提高,由89.74%逐漸提升至92.42%。首先,加入自適應(yīng)錨框后,由于網(wǎng)絡(luò)能夠根據(jù)圖像內(nèi)容自適應(yīng)生成尺度合適的錨框,檢測精度AP上升至91.29%。其次,加入多尺度增強金字塔后,網(wǎng)絡(luò)多尺度艦船檢測能力增強,檢測精度AP上升至91.66%。最后,在骨干網(wǎng)絡(luò)中加入可變形卷積后,網(wǎng)絡(luò)特征提取能力增強,檢測精度上升至92.97%。因此,綜上所述,本文提出的改進方法均能有效提高艦船檢測精度。
表2 消融實驗結(jié)果Table 2 Results of ablation experiment %
針對目前基于深度學習的SAR艦船檢測錨框尺度固定以及多尺度檢測性能較差的問題,提出了一種基于AA-MSE-Net的SAR艦船檢測方法。首先,AA-MSE-Net引入了自適應(yīng)錨框機制,增強了艦船形態(tài)描述能力。其次,AA-MSE-Net提出了多尺度增強金字塔,增強了多尺度描述能力。最后,AA-MSE-Net在骨干網(wǎng)絡(luò)中引入了可變形卷積,進一步提高了檢測精度。在數(shù)據(jù)集BBox-SSDD上的實驗證明了AA-MSE-Net具有更好的艦船形態(tài)描述能力、更強的多尺度描述能力以及更高的檢測精度。相較于8種對比模型,AA-MSE-Net的檢測精度AP高于次優(yōu)模型1.87%。