夏一帆,趙鳳軍,王櫻潔,王春樂
(1.中國科學(xué)院空天信息創(chuàng)新研究院,北京 100190;2.中國科學(xué)院大學(xué) 電子電氣與通信工程學(xué)院,北京 100049)
合成孔徑雷達(Synthetic Aperture Radar,SAR)以其全天候、全天時、高分辨率和穿透云霧和植被的能力,具有光學(xué)傳感器無法比擬的優(yōu)勢,在目標(biāo)檢測中逐步得到應(yīng)用。飛機目標(biāo)具有高價值和時敏性的特點[1],對檢測的自動化、有效性和實時性提出了較高的要求,因而精確、魯棒、快速的飛機目標(biāo)檢測算法成為當(dāng)前研究的熱點。
以恒虛警率(Constant False Alarm Rate,CFAR)等為代表的傳統(tǒng)SAR目標(biāo)檢測算法,主要思想是將目標(biāo)從背景中分割出來后,根據(jù)目標(biāo)的特性建立模型進行檢測和識別。傳統(tǒng)的算法[2-5]檢測往往依賴人工設(shè)計特征,實現(xiàn)過程效率低且泛化能力差,對強噪聲的抑制能力較弱,在復(fù)雜場景下受周圍強反射地物干擾難以準(zhǔn)確建模。
隨著計算機算力的提升和深度學(xué)習(xí)的發(fā)展,基于神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測算法開始興起。Girshick等人[6]提出了二階段目標(biāo)檢測算法R-CNN(Region Convolution Neural Network),通過選擇性搜索算法獲得候選區(qū)域,并使用CNN提取特征,然后將提取的特征輸入分類器進行分類,最后利用全連接網(wǎng)絡(luò)進行邊框回歸。此后的Faster R-CNN[7]和Cascade R-CNN[8]等都是基于該思想加以改進。Redmon等人[9]提出了一階段目標(biāo)檢測算法YOLO(You Only Look Once),其思想就是將圖像劃分成多個網(wǎng)格,然后為每一個網(wǎng)格同時預(yù)測邊界框并給出相應(yīng)概率。YOLO系列發(fā)展迅速,迄今已有多個版本,受到了研究者們廣泛認可[10-12]。
雖然許多研究者都注意到了飛機目標(biāo)在SAR圖像中多呈現(xiàn)出小目標(biāo)密集分布的情況,但是卻往往忽視了SAR圖像中飛機目標(biāo)的多尺度的問題。過于專注于小尺度飛機的檢測效果會影響模型對于大尺度飛機的整體特征的提取。此外,在飛機檢測過程中,背景地物的強散射點(如航站樓、塔臺等)分布在飛機附近會弱化飛機目標(biāo)的散射,且飛機部件的散射會和地物的散射點混淆,使得飛機難以判別和準(zhǔn)確定位。為此,本文著眼于SAR圖像飛機檢測中目標(biāo)多尺度和背景強散射干擾的兩大挑戰(zhàn),試圖提出一種基于坐標(biāo)注意力和自適應(yīng)特征融合的SAR圖像飛機目標(biāo)檢測方法。算法首先在YOLOv4的主干網(wǎng)絡(luò)中引入坐標(biāo)注意力機制(Coordinate Attention,CA),有效改善了對于圖像邊緣目標(biāo)檢測效果,增強了對于飛機散射點集合的聚焦能力。同時,在特征融合網(wǎng)絡(luò)中將路徑聚合網(wǎng)絡(luò)(Path Aggregation Network,PANet)和自適應(yīng)特征融合(Adaptively Spatial Feature Fusion,ASFF)網(wǎng)絡(luò)結(jié)合,優(yōu)化網(wǎng)絡(luò)對飛機多層特征的提取與融合,抑制特征圖中噪聲疊加。此外,為了先驗框能夠更好地檢測目標(biāo),利用基于交并比(Intersection over Union,IOU)距離改進的K-means算法對真實框進行重新聚合獲取先驗框。改進后的YOLOv4召回率達到91.01%,精確率達到90.09%,AP0.5達到92.34%,顯著優(yōu)于原算法。
YOLOv4[13]作為一種單階段目標(biāo)檢測算法,核心思想是利用整張圖片作為網(wǎng)絡(luò)的輸入,直接輸出檢測框的位置和類別。YOLOv4通過對前人的研究成果進行整理組合,加以創(chuàng)新,實現(xiàn)了速度和精度的平衡。在預(yù)處理階段,YOLOv4采用Mosaic數(shù)據(jù)增強方式,將4張圖片進行隨機變換組成一張圖片,達到擴充數(shù)據(jù)集的目的。YOLOv4改進自YOLOv3,主干網(wǎng)絡(luò)相較于YOLOv3,在原主干網(wǎng)絡(luò)Darknet53的基礎(chǔ)上引入跨階段局部網(wǎng)絡(luò)(Cross Stage Partial Network,CSP)和Mish激活函數(shù),最終獲得CSPDarknet53網(wǎng)絡(luò)。為了更好地利用特征信息,YOLOv4在頸部網(wǎng)絡(luò)引入空間金字塔池化[14](Spatial Pyramid Pooling,SPP)和路徑聚合網(wǎng)絡(luò)來增強感受野的作用,獲取更全面的細節(jié)特征。
在SAR圖像飛機檢測的過程中,一方面,在SAR圖像存在大量的噪聲,這些噪聲會影響模型對于目標(biāo)特征的提取[15];另一方面,飛機所在的機場中往往會有建筑物、車輛等具有強反射點的物體,這些會對飛機的檢測造成干擾。為了抑制背景噪聲,提高模型對于飛機目標(biāo)特征表達能力,本文在主干網(wǎng)絡(luò)中集成了坐標(biāo)注意力機制[16]。
受到人類視覺機制的啟發(fā),注意力機制傾向于通過快速掃描全局圖像,關(guān)注圖像中有利于判斷的部分信息,并忽略掉不相關(guān)的信息。注意力機制具有“即插即用”的特點,對于通道數(shù)為C,高度為H,寬度為W的張量X進行轉(zhuǎn)化后能夠輸出同尺寸張量Y,不影響輸入后續(xù)的網(wǎng)絡(luò)結(jié)構(gòu),即
X=[x1,x2,…,xc]∈H×W×C→Y=
[y1,y2,…,yc]∈H×W×C
(1)
圖1為坐標(biāo)注意力機制的結(jié)構(gòu)圖。坐標(biāo)注意力機制分為位置信息嵌入和注意力生成兩部分。
圖1 坐標(biāo)注意力結(jié)構(gòu)Fig.1 Structure of coordinate attention
對于輸入的特征圖X∈H×W×C,首先利用沿水平方向的全局池化和沿垂直方向的全局池化對每個通道進行編碼,獲得一對嵌入位置信息的方向感知特征圖。其中,高度為h的第c通道的輸出特征圖和寬度為w的第c通道的輸出特征圖可以分別表示為
(2)
(3)
之后在注意力生成階段,對上面變換拼接成大小為C×1×(H+W)的特征圖。為了降低模型的復(fù)雜性和計算的開銷,采用1×1的卷積變換將其壓縮至C/r維(在實驗中取r=16),之后使用激活函數(shù)(在本文使用GELU激活函數(shù))進行非線性激活。即
f=δ(F1(concat(zh,zw)))
(4)
式中:f表示獲得的特征圖;δ表示非線性激活函數(shù);F1表示1×1的卷積變換;concat表示拼接操作。
將獲取到的特征圖f沿空間維分解為張量fh∈C/r×H和fw∈C/r×W。利用1×1的卷積變換將兩張量恢復(fù)至C維,并利用sigmiod激活函數(shù)進行非線性激活,獲得注意力圖:
gh=σ(Fh(fh))
(5)
gw=σ(Fw(fw))
(6)
最后,將注意力圖gw和gh和輸入特征圖x相乘獲得輸出:
(7)
如圖2所示,本文在YOLOv4的主干網(wǎng)絡(luò)CSP-Darknet53后3個殘差塊中集成坐標(biāo)注意力模塊,使不同尺度的特征圖能夠充分利用全局信息,同時側(cè)重于提升對飛機散射點集合的特征的提取能力。
圖2 集成坐標(biāo)注意力模塊的主干網(wǎng)絡(luò)CA-CSPDarknet53Fig.2 Backbone CA-CSPDarknet53 with integrated coordinate attention module
對樣本進行熱力圖實驗驗證,結(jié)果如圖3所示。對比圖3(b)和圖3(c)的紅色區(qū)域可見,引入注意力機制后,網(wǎng)絡(luò)對于飛機散射結(jié)構(gòu)的聚焦能力得到增強,目標(biāo)檢測效果得到有效改善。
圖3 熱力圖對比Fig.3 Comparison of heatmaps
在特征提取與融合階段,YOLOv4的目標(biāo)檢測采用PANet[17]結(jié)構(gòu)。PANet對于不同尺度的特征圖通過卷積、上下采樣變換成相同尺寸后進行堆疊。當(dāng)數(shù)據(jù)集中包含不同大小的目標(biāo)時,會出現(xiàn)在某一層特征圖中一個對象被判定為正,在其他層次中被判定負的矛盾。為了提高對不同大小飛機的特征提取能力,同時降低不同特征圖中的噪聲疊加的影響,本文在特征融合網(wǎng)絡(luò)PANet和YOLO檢測頭之間引入自適應(yīng)特征融合機制ASFF[18],結(jié)構(gòu)如圖4所示。
圖4 ASFF結(jié)構(gòu)Fig.4 Structure of ASFF
(8)
(9)
(10)
(11)
PANet獲得的3個不同尺度的特征圖經(jīng)過ASFF處理后,獲得的3個特征圖尺寸仍與輸入一致,方便輸入檢測頭結(jié)構(gòu)獲得最終的分類和坐標(biāo)信息。結(jié)合前文改進骨干網(wǎng)絡(luò)CA-CSPDarknet53,最終改進的YOLOv4網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。
圖5 改進YOLOv4結(jié)構(gòu)Fig.5 Structure of improved YOLOv4
對于YOLO等基于錨框的算法,錨框的設(shè)置將最終影響檢測的性能。原始的YOLO錨框主要是針對COCO數(shù)據(jù)集聚類得到的,適用于檢測多類別目標(biāo),對于本文要識別的對象并不適用,因此本文利用K-mean聚類方法獲得先驗框。為了避免大尺寸框在歐氏距離中分布過于離散導(dǎo)致獲得的先驗框不能覆蓋到不同尺寸的目標(biāo)的情況,實驗中用IoU的距離替換歐氏距離。IoU距離表示為
D=1-IoU(box,centriod)
(12)
(13)
式中:IoU表示交并比運算;box為標(biāo)記框面積;centriod為類簇中心面積。最終的聚類獲得的9個先驗框為(18,18),(20,31),(29,22),(26,26),(29,31),(37,37),(53,65),(66,53),(107,107)。
本實驗采用華中科技大學(xué)公開的SAR圖像飛機目標(biāo)檢測數(shù)據(jù)集[19](SAR Aircraft Detection Dataset,SADD)。該數(shù)據(jù)集獲取自TerraSAR-X衛(wèi)星,圖像分辨率在0.5~3 m不等,部分?jǐn)?shù)據(jù)集如圖6所示。
圖6 數(shù)據(jù)集展示Fig.6 Examples of SADD dataset
數(shù)據(jù)集共有2 966個大小為224×224的切片,包括7 835個飛機目標(biāo)。本次實驗將數(shù)據(jù)集按照6∶2∶2的比例隨機劃分為訓(xùn)練集、驗證集和測試集,如表1所示。
表1 數(shù)據(jù)集劃分Tab.1 Dataset splitting
本次實驗使用精確率(Precision)、召回率(Recall)和類別平均精度(Average Precision,AP)[20]3項指標(biāo)對模型的檢測效果進行量化評價,并采用采用輸入張量大小為(224,224,3)時的算法10億次浮點運算次數(shù)(Giga Floating Point Operations,GFLOPs)[21]和生成參數(shù)文件大小來衡量計算效率與存儲占用量。
精確率表征為在所有被檢測為飛機目標(biāo)的結(jié)果中實際為飛機目標(biāo)的概率,召回率表征為實際飛機目標(biāo)中被預(yù)測為正樣本的概率,兩者公式如下:
(14)
(15)
式中:TP表示被正確檢測到的飛機目標(biāo)數(shù)量;FP表示被算法錯誤識別出的飛機目標(biāo)數(shù)量;FN表示沒有被識別出的真正的飛機目標(biāo)數(shù)量。
AP能夠反映單目標(biāo)檢測算法的全局性能,公式為
(16)
式中:Precision(Recall)表示精確率-召回率曲線;IOU為交并比閾值。本次實驗采用AP0.5作為評價指標(biāo)。
由于在實際應(yīng)用中算法的計算效率與算法復(fù)雜度、硬件環(huán)境甚至深度學(xué)習(xí)框架的版本有關(guān),而軟硬件環(huán)境往往是不同的,我們從算法的復(fù)雜度對算法的計算效率進行刻畫,故采用輸入張量大小為(224,224,3)時的算法浮點運算次數(shù)(Floating Point Operations,FLOPs)來評價計算效率,公式表示為
(17)
式中:D,Ml,Kl,Cl-1和Cl分別代表網(wǎng)絡(luò)總層數(shù)、第一層輸出特征圖尺寸、卷積核尺寸、第l-1層與l層通道數(shù)。
本次實驗環(huán)境GPU為RTX A4000,顯存16 GB;CPU為12核Intel(R) Xeon(R) Gold 5320;內(nèi)存為32 GB;操作系統(tǒng)為Ubuntu 20.04。深度學(xué)習(xí)環(huán)境配置為TensorFlow v2.5+Cuda v11.2 + cuDNN v8.1.1。
為公平比較,實驗訓(xùn)練過程統(tǒng)一采用SGD算法進行優(yōu)化,初始學(xué)習(xí)率設(shè)置為0.05,并采用cos退火算法進行學(xué)習(xí)率衰退,學(xué)習(xí)率最低可降低到5×10-5,動量參數(shù)momentum設(shè)置為0.937,權(quán)值參數(shù)設(shè)置為5×10-4,batch設(shè)置為32,訓(xùn)練epochs為800,并取最好實驗結(jié)果。
表2為本文改進算法與主流的一階段檢測算法SSD、EfficientDet[22]、YOLOv3[23]、YOLOv4、YOLOv5-x的比較,并結(jié)合圖7進行部分測試集的可視化對比。
表2 SAR飛機識別網(wǎng)絡(luò)綜合性能比較Tab.2 Comprehensive performance comparison of SAR aircraft detection networks
圖7 不同算法結(jié)果可視化對比Fig.7 Visual comparison of the results of different algorithms
通過對表2結(jié)果進行分析可以看出,本文的改進算法與原YOLOv4算法相比,引入CA和ASFF機制后網(wǎng)絡(luò)層數(shù)增加,改進算法的FLOPs和參數(shù)文件大小分別增加了4×106和11 MB,但是召回率、精確率和AP值分別提高2.49%,6.56%和3.62%,做到了在盡可能少地引入額外參數(shù)量的情況下實現(xiàn)精確率、召回率和AP值的提升。輕量化算法EfficientDet雖然有較高的精確率和較低算法復(fù)雜度,但是82.46%的召回率無法滿足算法對于檢測性能的總體需求。與YOLO系列進行比較,改進算法除了具有最高的召回率和精確率之外,在精確率上也有了顯著的提升,達到了90.09%,較次高的YOLOv5-x提升了4.86%,改善了YOLO系列算法在SAR飛機目標(biāo)檢測中存在的精度低下的問題。
圖7中組1、組2和組3展示了6種算法在強散射干擾圖像中的檢測效果。3組圖像中,飛機呈現(xiàn)出以小尺寸規(guī)則分布于建筑物一側(cè)的特點,而飛機目標(biāo)附近航站樓等建筑物存在的強散射點會弱化飛機頭部、機翼等部件的散射。此外,部分地物散射點也會有與飛機相近的散射特征,這使得算法容易產(chǎn)生漏檢和虛檢。如組2中航站樓的某處強散射點被YOLOv5判定為飛機,組3中除改進算法外其他算法都有不同程度的漏檢。前3組圖表明在背景地物強散射點干擾環(huán)境下,改進算法的檢測表現(xiàn)要明顯優(yōu)于其他算法。
組4和組5中飛機呈現(xiàn)出小尺寸、緊密排列的特征,同時結(jié)合組1、組2、組3中小目標(biāo)的檢測表現(xiàn),發(fā)現(xiàn)YOLO系列對于小目標(biāo)具有更好的檢測性能。但是對于圖6這種大尺寸目標(biāo),YOLOv3和YOLOv4的檢測效果卻不如SSD和EfficientDet的檢測效果。組7展示了不同大小的飛機目標(biāo)出現(xiàn)在同一樣本圖片中的檢測效果,各種算法對于小尺寸飛機目標(biāo)都有不同程度的漏檢,其中YOLOv5未檢測出左側(cè)的小目標(biāo),而EfficientDet將多個小目標(biāo)視作一個整體進行檢測,改進算法則僅漏檢一個目標(biāo)。組4~7的實驗表明,改進算法對于多尺寸的SAR圖像飛機目標(biāo)檢測具有更顯著的效果,說明針對SAR圖像飛機尺寸多的特點引入CA和ASFF機制是有效的。
為證明算法各種改進的有效性,在YOLOv4的基礎(chǔ)上對不同改進及改進組合進行消融實驗,結(jié)果如表3所示。
表3 消融實驗對比Tab.3 Ablation experiments
實驗2對比實驗1,精確率提高2.40%,表明改進K-means聚類方法獲得的先驗框能夠更好覆蓋不同尺寸的飛機目標(biāo),提高定位精度。
為了驗證CA機制相較于其他注意力機制的優(yōu)勢,實驗3、實驗4以及實驗5在實驗2的基礎(chǔ)上比較了CA機制與常用的BAM[1,24]以及GAM[25-26]的性能。實驗顯示3種注意力機制都有助于提升目標(biāo)檢測算法的檢測性能。引入CA和BAM兩種機制較實驗2在召回率上分別提高了0.51%和0.95%,而引入GAM后召回率反而降低了1.61%。對于精確率和AP0.5值,引入3種注意力機制后相較于實驗2都有所提升,其中實驗3引入CA機制提升最高,精確率提高2.69%,AP0.5提高1.54%。結(jié)合圖3的熱力圖,表明CA機制較BAM和GAM能夠更有效地提高檢測算法性能,增強網(wǎng)絡(luò)對于飛機結(jié)構(gòu)的提取能力。
實驗6雖然在結(jié)果上較實驗2召回率降低了1.83%,但是精確率和AP0.5值分別提高了1.64%和0.36%,召回率與精確率相近,實驗結(jié)果表明ASFF機制對于實驗?zāi)P偷木_率和召回率起到平衡作用。
實驗7在綜合改進機制后,召回率、精確率和AP0.5達到了91.01%,90.09%和92.34%,相較實驗1分別提高2.49%,6.56%和3.62%,改進效果顯著。實驗表明CA和ASFF機制結(jié)合改進算法能夠滿足SAR圖像飛機目標(biāo)檢測的任務(wù)的需要。
本文著眼于SAR圖像飛機檢測中存在的目標(biāo)尺度多樣性和背景強散射干擾的問題,提出了一種基于注意力和自適應(yīng)特征融合的YOLOV4 SAR圖像目標(biāo)檢測算法ASFF,能夠緩解精確率和召回率之間不平衡的問題。此外,為了確保先驗框能夠更好地檢測目標(biāo),本文利用基于交并比距離改進的K-means算法對數(shù)據(jù)集的真實框進行重新聚合獲取先驗框。與其他算法的對比結(jié)果表明,本文的改進算法滿足了在不同條件下對飛機目標(biāo)進行識別的需求。隨后進行的消融實驗進一步證明了本文算法各種改進的有效性。未來的工作將重點優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),實現(xiàn)高檢測效率、低算法資源消耗。