宋忠浩,谷 雨,陳 旭,聶圣東
杭州電子科技大學 自動化學院,杭州310018
高分辨率遙感圖像的目標檢測是高分對地觀測系統(tǒng)中圖像解譯的重要內容。與自然場景圖像相比,遙感圖像擁有更加廣闊的視野和更豐富的信息,在偵查監(jiān)視、資源勘探、災害監(jiān)測、城市規(guī)劃、交通管制、武器制導等領域有著廣泛的應用[1-3]。傳統(tǒng)遙感圖像目標檢測算法的流程是先進行區(qū)域選擇,然后基于圖像的紋理、色彩、尺度等進行特征提取,最后通過傳統(tǒng)機器學習分類器(如支持向量機等)對滑動窗口進行分類來達到目標檢測的目的。這種傳統(tǒng)的做法存在算法適應性不高,提取特征魯棒性弱,檢測實時性差的缺陷[4]。
近年來,隨著深度學習技術的迅速發(fā)展,遙感圖像的目標檢測技術實現(xiàn)了重大突破[4]。目前,基于深度學習的目標檢測算法大致可以分為基于區(qū)域的和基于回歸的兩大類?;趨^(qū)域的檢測算法以RCNN[5-7]系列為代表,將檢測問題劃分為兩個階段,該類算法精度高但檢測實時性較差?;诨貧w的算法以統(tǒng)一實時目標檢測算法(You Only Look Once,YOLO)[8]、多尺度單發(fā)射擊檢測算法(Single Shot multibox Detector,SSD)[9]為代表,是一種端到端的單階段方法,該類算法檢測速度快但精度較低。在兩類算法的基礎之上,很多專家和研究學者針對遙感圖像的目標尺度多樣性、旋轉角度多樣性、小目標居多、背景復雜以及遮擋等特點進行了適應性的改進和優(yōu)化[10-12]。并且在多個已公開的遙感圖像數(shù)據(jù)集上都取得了較好的實驗結果,如西北工業(yè)大學發(fā)布的大規(guī)模光學遙感圖像數(shù)據(jù)集(Object Detection in Optical Remote Sensing Images,DIOR)[13]和高分辨率遙感圖像數(shù)據(jù)集(Northwestern Polytechnical University Vary High Spatial Resolution Remote Sensing Images,NWPU VHR-10)[14]、中國科學院大學模式識別與智能系統(tǒng)開發(fā)實驗室標注的航空目標檢測數(shù)據(jù)集(University of Chinese Academy of Sciences Aerial Object Detection,UCAS-AOD)[15]、武漢大學研究團隊標注的遙感圖像目標檢測數(shù)據(jù)集(Remote Sensing Object Detection,RSOD)[16],以及武漢大學測繪遙感信息工程國家重點實驗室夏桂松教授等制作的大尺度航空目標檢測數(shù)據(jù)集(a Largescale Dataset for Object Detection in Aerial Images,DOTA)[17]等。王金傳等[18]采用基于區(qū)域建議網(wǎng)絡(Region Proposal Network,RPN)和牛津大學計算機視覺組提出的深度卷積神經(jīng)識別網(wǎng)絡(Visual Geometry Group 16,VGG16)構建了面向遙感圖像目標識別的深度網(wǎng)絡檢測模型,實現(xiàn)了對遙感圖像目標快速、準確的識別。但由于采用數(shù)據(jù)類別較少,沒有解決面向多類別的檢測問題。史文旭等[19]針對復雜場景下多尺度遙感目標檢測精度較低的問題,提出基于多尺度單發(fā)射擊檢測的特征增強檢測算法,基于SSD框架設計了淺層特征和深層特征的增強模塊,提高了骨干網(wǎng)絡的提取能力,有效改善了多尺度遙感圖像的檢測精度。陳丁等[20]針對光學遙感圖像中小目標居多、相似性及背景復雜等問題,提出卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)和混合玻爾茲曼機相結合的遙感圖像目標檢測方法,設計出細節(jié)-語義特征融合網(wǎng)絡來改善特征融合的效率,顯著提升了小目標的檢測精度。但該方法存在檢測耗時,上下文信息利用不足等問題。姚群力等[21]針對遙感圖像在復雜區(qū)域和密集區(qū)域下檢測精度較低的問題,提出多尺度特征融合目標檢測框架,設計了反卷積特征融合模塊,得到更加豐富的特征,有效改善了密集區(qū)域下的小尺度飛機目標檢測精度的問題。但由于需要手工設計不同縱橫比的候選框,該算法的遷移效果較差。魏瑋等[22]基于YOLOv3[23]進行改進,通過引入跳躍連接機制降低特征冗余,進一步提高了檢測準確率,降低了小目標的誤檢率和漏檢率。但是對于密集區(qū)域下的檢測存在一定的局限性。
受以上研究的啟發(fā),本文提出具有加權策略的改進YOLOv3遙感圖像目標檢測模型。為滿足實時性需求,本文對YOLOv3目標檢測算法進行改進和優(yōu)化,并將改進后的實驗結果與基于區(qū)域建議網(wǎng)絡的實時目標檢測算法(Towards Real-Time Object Detection with Region Proposal Networks,F(xiàn)aster-RCNN)、SSD 算法以及改進前的算法模型進行對比分析,驗證了該模型在改善小目標檢測能力,提高目標檢測精度上的有效性。本文主要創(chuàng)新點包括以下兩個方面:
(1)為了提高遙感圖像弱小目標的檢測能力,增加具有較小感受野的特征圖像的檢測輸出分支,提高了對不同尺度目標的檢測能力,并進一步探討了多尺度預測對于算法性能的影響。
(2)為了進一步提高算法模型的檢測準確率,設計了一種多尺度特征圖像自適應加權融合方法,將來自不同尺度的特征信息采用加權的策略進行融合,突出各層次特征表達的貢獻,綜合利用多尺度特征提高了目標檢測精度。
YOLOv3目標檢測算法是由Redmon等[23]提出的基于回歸的端到端單階段目標檢測算法,優(yōu)點是檢測速度快,因此被廣泛應用于工業(yè)領域的目標檢測、跟蹤等任務。與V1、V2版本相比,YOLOv3做出了如下改進:
(1)YOLOv3 采用Darknet-53 作為特征提取網(wǎng)絡,采用全卷積結構[24],借鑒了殘差網(wǎng)絡(Residual Network)的設計思想,在網(wǎng)絡中加入殘差模塊,有效的緩解了深層網(wǎng)絡在訓練過程中的梯度爆炸問題。整個網(wǎng)絡由53層卷積層組成,網(wǎng)絡結構如圖1所示。
圖1 Darknet-53網(wǎng)絡結構圖
(2)借鑒了兩階段目標檢測算法中的先驗框思想,在COCO數(shù)據(jù)集上進行聚類得到9種尺寸的先驗框,使得卷積神經(jīng)網(wǎng)絡更容易預測目標位置。
(3)借鑒了特征金字塔網(wǎng)絡(Feature Pyramid Networks,F(xiàn)PN)[25]的多尺度融合策略和上采樣思想,采用多尺度進行預測輸出,提高了小目標的檢測能力。
(4)支持多標簽對象,預測類別時不使用softmax,改成使用logistic的輸出進行預測。
YOLOv3 對3 個尺度的提取特征進行預測輸出,不同尺度特征具有不同的感受野,用于檢測不同尺寸的目標。對于多尺度檢測來說,如果可以利用更多的高分辨率特征信息,則檢測模型會更有利于小目標的檢測。但遙感圖像與自然圖像相比背景信息更加復雜,利用高分辨率特征會引入過多的背景噪聲,容易造成模型收斂速度緩慢甚至難以收斂的后果。同時,增加模型檢測尺度也會增加模型復雜度、訓練時間以及帶來的參數(shù)冗余。因此,綜合考慮各方面的影響因素,本文最終采用了4個檢測尺度進行預測輸出,在原來的基礎之上,增加了104×104特征圖像的檢測輸出分支。
由于預測輸出的特征圖數(shù)量和尺度發(fā)生了變化,先驗框的尺寸也需要進行相應的調整。本文對數(shù)據(jù)集中的目標進行了自適應維度聚類,以獲得更高的先驗匹配率。由于采用了4個檢測尺度,因此將先驗框的數(shù)量增加到12 個,其中當輸入為416×416 時,下采樣得到的特征圖與先驗框的分布如表1所示。
表1 不同分辨率特征圖的先驗框分布
對于多尺度檢測來說,特征融合策略已經(jīng)被廣泛的應用,目的是為了更加充分地利用不同分辨率的特征信息。低分辨率特征具有較強的語義信息,能夠區(qū)分目標和背景,但細節(jié)信息較少,而高分辨率特征具有較豐富的細粒度信息,相應的其語義信息較弱。在YOLOv3中,采用的特征融合策略是先對不同尺度的特征圖進行resize 操作,然后將特征圖進行簡單的拼接達到特征融合的目的,如FPN[25]。這種做法將不同層次的特征信息等同對待,沒有區(qū)分不同特征重要性的差異。然而不同尺度的特征包含著不同的目標信息,它們對于最終的預測輸出應當具有不同的貢獻表達。因此,本文提出具有加權策略的自適應特征圖像融合方法,其核心設計思想是對特征融合模塊進行改進,進行特征融合的各尺度特征具有不同的權重,權重系數(shù)在訓練中學習得到。此外,改進后的算法模型融合了3 個尺度的特征信息,如圖2所示。
圖2 特征融合模塊結構圖
其中,本體特征代表該下采樣層的尺度特征圖,附加體特征代表其他尺度的特征圖,ω1、ω2、ω3代表不同尺度特征進行加權融合的權重系數(shù),Conv、Deconv代表卷積和反卷積操作,以適應融合模塊的尺度要求。
本文基于精確度和速度的綜合考量,以4個檢測尺度為基準對模型進行了改進,并且優(yōu)化了特征融合策略,提出了基于加權策略的改進YOLOv3遙感圖像目標檢測模型,改進后的模型稱為Weighted-YOLOv3。針對遙感圖像背景信息復雜、小目標數(shù)量多的特點,隨著特征提取網(wǎng)絡深度的增加,加權點的位置逐漸向左偏移,目的為防止丟失目標在深層網(wǎng)絡中的語義特征信息。
改進模型的網(wǎng)絡結構如圖3所示,其中,f1~f5代表不同下采樣倍數(shù)的提取特征圖;DBL 模塊代表卷積層(Darknet Convolution)、批量歸一化層(Batch Normalization,BN)、激活層(Leaky Relu),是網(wǎng)絡結構中的基本組成部分。C1、C2、C3是網(wǎng)絡中設置的3個加權點,來自本層的本體特征與來自其他層的附加特征在加權點以一定權重進行融合,代表了不同層次特征對最終預測輸出的不同貢獻;ω1~ω9代表不同的權重系數(shù),在前向計算與反向誤差傳遞過程中不斷地迭代學習;y1、y2、y3、y4代表了不同尺度特征圖像輸出的預測信息,通道維度的計算方法如(1)所示;在本文自建的數(shù)據(jù)集中,預測類別為4類,預測通道深度為27;在上采樣層采用反卷積代替resize操作。
圖3 Weighted-YOLOv3模型網(wǎng)絡結構圖
其中,n表示每個尺度先驗框的個數(shù),tx,ty,tw,th,to是訓練中要學習的參數(shù),用來預測邊框的中心點坐標、寬高以及置信度得分,nclass代表預測的目標類別數(shù)量。
本文選擇西北工業(yè)大學發(fā)布的光學遙感數(shù)據(jù)集DIOR[13]進行實驗。為了評估本文所提算法模型的有效性,本文采集了不同場景下的飛機(airplane)、車輛(vehicle)、油庫(storagetank)、艦船(ship)4 類軍事領域常見的感興趣目標組建新的數(shù)據(jù)集(以下簡稱AVSS數(shù)據(jù)集)。其中選取的目標類別尺度分布差異明顯,小目標數(shù)量多,給目標檢測任務帶來一定的挑戰(zhàn)性。同時選取了NWPU VHR-10[14]、UCAS-AOD[15]和RSOD[16]數(shù)據(jù)集中包含的相關類別進行拓展實驗。數(shù)據(jù)集的具體信息如表2中所示。
表2 數(shù)據(jù)集詳細信息
AVSS 數(shù)據(jù)集的目標實例數(shù)量及尺度分布信息,如圖4所示。
圖4 AVSS數(shù)據(jù)集目標實例數(shù)量分布圖
由圖5中的散點分布圖可以看出,目標尺寸集中分布在300×300 像素大小以內。為了更加具體地說明目標尺寸相對于圖像大小的情況,本文定義目標占有率的表示方法:
圖5 AVSS數(shù)據(jù)集目標尺度散點分布圖
其中Pobject是感興趣目標標注框的像素面積,Ppicture是圖像的像素總數(shù)(在DIOR 數(shù)據(jù)集中為800×800),η是二者的比值。本文對AVSS數(shù)據(jù)集進行統(tǒng)計分析,得到目標占有率的分布結果如圖6所示。
由圖6 可以看出,AVSS 數(shù)據(jù)集的目標占有率分布差異明顯,但集中分布在0.3以下,說明了自建數(shù)據(jù)集中小目標數(shù)量較多,這對檢測模型提出了更高的要求。另外,為了增加訓練數(shù)據(jù)的多樣性,提高模型的泛化能力,本文通過對比度增強、圖像模糊等方法對訓練數(shù)據(jù)集進行了數(shù)據(jù)增廣。
圖6 AVSS數(shù)據(jù)集目標占有率分布折線圖
實驗在載有一塊NVIDA GeForce GTX1080 Ti 的顯卡,Inter core?i7-8700K CPU @3.70 GHz、RAM:32 GB 的電腦上進行。本文所使用的算法模型基于TensorFlow 深度學習框架實現(xiàn),采用平均精度均值(mean Average Precision,mAP)作為算法性能分析的主要評價指標。其中mAP 的計算方法為所有類別AP0.5的平均值,即當目標檢測框與目標標注框的面積交并比(Intersection-over-Union,IoU)大于或者等于0.5時,認為檢測結果正確,否則認為檢測錯誤。
在訓練網(wǎng)絡時,學習率不再采用分段設置的方式,而是采用熱啟動(Warmup)策略,這種方法有利于加快模型的收斂速度,避免提前過擬合。輸入數(shù)據(jù)時,采用批訓練(mini-batch)方式輸入數(shù)據(jù),迭代更新部分數(shù)據(jù)進行模型優(yōu)化,從而有效地提高計算效率。其他的一些超參數(shù)設置如表3所示。
表3 訓練參數(shù)設置
為了進一步驗證細粒度信息和語義信息進行融合后對于目標檢測性能的影響,本節(jié)設置了3組對比實驗,在網(wǎng)絡中分別選定3、4、5 個YOLO 層,在AVSS 數(shù)據(jù)集上進行訓練和測試。評價標準主要包括mAP、檢測幀頻率(frame/s)、模型浮點運算量(Billion Float operations per second,BFLops)、模型大小以及模型訓練時間等指標。當測試集的輸入為800×800時,具體實驗結果如表4所示。從測試結果來看,隨著YOLO層數(shù)的增加,檢測網(wǎng)絡的性能得到不同程度的改善。這是因為遙感圖像的目標占有率普遍較低,利用淺層網(wǎng)絡融合了更多的細節(jié)信息,有利于小目標的檢測,例如vehicle類別的AP最多提高了5.15個百分點,storagetank最多提高了10.66個百分點。但隨之帶來的是模型復雜度的增加,推理速度的減慢以及訓練時間的延長,在實際應用中,應綜合考慮檢測精度、實時性等多項指標選擇相應的算法模型。在硬件資源不受限的情況下,可以為了追求檢測精確度選擇較為復雜的模型,相應地如果資源受限,可以選擇較為簡單的模型,以獲得比較高的模型推理速度。
表4 多尺度預測實驗結果
為了驗證本文所提自適應加權融合策略的有效性,本節(jié)設置了4 組對比實驗,以mAP 作為評價指標,在AVSS 數(shù)據(jù)集上進行訓練和測試。其中,以4 個YOLO層模型作為基準模型,然后依次在網(wǎng)絡中加入C1、C2、C3這3個不同的加權點,對不同實驗條件下訓練出的模型性能進行對比分析。當測試集的輸入為800×800時,具體實驗結果如表5所示。
表5 不同加權點下的加權融合實驗結果
實驗結果表明,在網(wǎng)絡結構中設置不同個數(shù)的自適應加權點,對模型的檢測性能影響不同。Weighted-YOLOv3算法模型在特征融合網(wǎng)絡中設置3個自適應加權點,取得了80.25%的mAP,與未設置加權點的模型相比,mAP 得到了2.5 個百分點的提高。在實時性方面,改進模型的平均檢測速度可以達到8.71 frame/s,說明設置加權點對模型檢測速度沒有太大的影響,實現(xiàn)了檢測精度和速度的平衡。其次,隨著加權點個數(shù)的增加,平均檢測準確率不斷提高,這驗證了自適應加權機制在多尺度特征融合方法中的有效性,說明自適應加權策略更加靈活的融合了不同采樣層的特征信息,提高了骨干網(wǎng)絡的特征提取能力。最后,改進后的算法模型對不同尺度目標的檢測能力都有一定程度的提高,說明加權策略可以有效地降低模型對目標尺度的敏感度。
為了進一步說明改進模型的表現(xiàn)情況,下面給出該模型在測試集上的PR 曲線,如圖7 所示,其中Precision是精確率,Recall 是召回率,計算公式如下所示,TP表示預測結果正確的樣本數(shù),F(xiàn)P表示預測結果錯誤的樣本數(shù),F(xiàn)N表示未檢測出的樣本數(shù)。
圖7 Weighted-YOLOv3模型在AVSS測試集上的PR曲線
如圖8 所示,給出測試集上的部分檢測實例,并將模型改進前后的檢測結果進行對比??梢钥闯龈倪M后的Weighted-YOLOv3 模型有效降低了漏檢和誤檢,并且對不同尺度的目標取得了較好的檢測結果。
圖8 YOLOv3與Weighted-YOLOv3模型檢測結果對比
為了驗證本文所提Weighted-YOLOv3 模型對多類別場景的檢測能力,本節(jié)對DIOR數(shù)據(jù)集進行了全類別的訓練和測試實驗,并將實驗結果與其他算法模型結果[13]進行了比較。DIOR 數(shù)據(jù)集信息如表6 所示,其中c1~c20代表數(shù)據(jù)集的各個類別,各模型在測試集上的性能對比情況如表7 所示,加黑字體代表該類別的最好結果。
表6 DIOR數(shù)據(jù)集類別信息
表7 列出了本文所提Weighted-YOLOv3 算法模型與其他算法的對比結果??梢钥闯觯倪M后的模型在DIOR數(shù)據(jù)集上的平均精度均值有所提高,mAP達到了60.3%,相比改進前提高了3.2 個百分點,這說明了改進模型的有效性。兩階段檢測算法Faster R-CNN的mAP值并沒有超過SSD、YOLOv3 等單階段算法,這是因為遙感圖像具有成像視角特殊、背景復雜以及目標尺度差異大的特點,給設計候選框帶來了一定的挑戰(zhàn)。
表7 不同算法模型在DIOR測試集上的性能對比 %
文獻[26]為解決檢測器特征金字塔的不一致性問題,基于YOLOv3 進行改進,提出了一種自適應空間特征融合(Adaptively Spatial Feature Fusion,ASFF)方法。經(jīng)過測試,該方法在DIOR 測試集上的mAP 達到57.4%,且對airplane、chimney等類別取得了較高的檢測精度,這說明了自適應特征融合方法在目標檢測任務中的有效性。同時,由于該方法對3個尺度特征進行預測輸出,因此對小目標的檢測能力不如本文的Weighted-YOLOv3 模型,例如vehicle 目標的mAP 為37.6%,相比YOLOv3 下降了10.7 個百分點,相比本文模型下降了15.0個百分點。綜上所述,本文所提改進模型更適合于遙感圖像的目標檢測任務。
在實際的應用場景中,由于高分辨率遙感圖像的獲取成本較高,經(jīng)常會出現(xiàn)訓練樣本不足的問題,這使得目標檢測任務變得更加困難。因此,利用獲得的有限數(shù)據(jù)進行訓練,然后將訓練得到的模型用于檢測未知圖像是十分重要的。為了驗證本文所提Weighted-YOLOv3模型的適應性,本節(jié)在RSOD、UCAS-AOD 以及NWPU VHR-10 數(shù)據(jù)集中選取了相關類別圖片進行測試,其中測試圖像均未參與訓練,且圖像分辨率分布不均,背景復雜度也存在差異。具體結果如表8所示,測試結果說明,本文所提模型仍然可以對其進行有效的檢測,說明了改進后的模型對于類似的數(shù)據(jù)集可以實現(xiàn)較好的遷移效果。部分檢測實例如圖9所示。
圖9 Weighted-YOLOv3對其他數(shù)據(jù)集的部分測試結果實例
表8 Weighted-YOLOv3對其他數(shù)據(jù)集的測試結果
%
本文以高分辨率光學遙感圖像的目標檢測為研究背景,針對遙感圖像目標檢測任務中存在的目標尺度差異大、檢測精度低等問題,提出了一種基于加權策略的改進YOLOv3遙感圖像目標檢測模型。首先,為了提高遙感圖像中小目標的檢測精度,增加具有較小感受野的特征圖像的檢測分支,更多地利用了提取特征圖像的細節(jié)信息,提高了對不同尺度目標的檢測能力。然后,設計了一種多尺度特征圖像自適應加權融合方法,通過挖掘特征提取網(wǎng)絡的表征能力,綜合利用了多尺度特征提高目標檢測精度。實驗結果表明,改進后的模型在自建數(shù)據(jù)集上可以明顯提高感興趣目標的平均精度均值,取得了80.25%的mAP 和8.71 frame/s 的檢測速度,在實時性和檢測精度之間實現(xiàn)了較好的平衡。同時在公開遙感數(shù)據(jù)集DIOR 上取得了60.3%的mAP,進一步驗證了改進模型的有效性。最后,本文對其他數(shù)據(jù)集進行了拓展測試實驗,驗證了模型具有較好的適應性。但是,本文的研究仍然存在很多的不足,未來的工作一方面從模型的輕量化方向展開研究,進一步壓縮和裁剪模型,提高檢測速度,另一方面針對遙感圖像角度多樣性的特點進行任意旋轉框的檢測。