?

基于深度學習的遙感目標檢測技術

2024-02-22 08:02章程軍胡曉兵魏上云
計算機工程與設計 2024年2期
關鍵詞:網絡結構精度特征

章程軍,胡曉兵,魏上云,郭 爽

(1.四川大學 機械工程學院,四川 成都 610065;2.四川大學 宜賓產業技術研究院,四川 宜賓 644000)

0 引 言

相比于傳統自然場景圖像目標,遙感目標具有尺度差異明顯、成像視角特殊方向多樣、目標小且分布密集、背景環境復雜等特點,這給快速精準完成遙感目標檢測造成困難[1-3]。

傳統目標檢測算法主要分為感興趣區域(region of interest,ROI)搜索、區域特征提取、分類器分類3個步驟[2],由于傳統算法手工設計特征的局限性,限制算法檢測精度以及遷移性。深度學習因其不需要人為設計特征,能夠自主實現檢測目標特征識別,具有更好的魯棒性與遷移性。王金傳等[4]基于Faster R-CNN算法,通過特征融合實現遙感圖像中艦船等目標的識別,雖然在檢測精度上取得一定效果,但檢測效率不高。Lu等[5]基于SSD算法提出一種注意力特征融合結構,通過將遙感目標多層特征融合增強網絡檢測能力,但網絡對于圖像分辨率要求較高,例如橋梁等某些特定目標檢測效果不佳,檢測實時性存在不足??紤]到遙感目標復雜性,本文基于深度學習技術,對遙感目標快速準確檢測展開研究。

1 YOLOv5網絡結構

目前基于深度學習的目標檢測算法主要有R-CNN[6,7]、YOLO[6,8-10]、SSD[6]系列。綜合各網絡特點,選用YOLO網絡實現遙感目標檢測。

YOLO目標檢測算法在檢測時,會將輸入圖片劃分為若干個(SxS)網格,每個網格負責預測中心點在其內部的目標,這包括目標邊界框位置、置信度、目標類別信息。作為YOLO系列中最新版本的檢測算法,YOLOv5中每個網格預測3個邊界框(bounding box)的坐標信息 (x,y,w,h)、 置信度和條件類別概率信息。目前YOLOv5包含4種不同寬度和深度的網絡結構模型,見表1。

表1 YOLOv5不同寬度深度模型

YOLOv5網絡相比于前4個版本,在目標檢測的精度與速度上均得到提升,這與其網絡結構的改進以及合適訓練技巧的應用密不可分。其網絡結構由4部分組成:①輸入端(Input):對圖像進行統一尺寸、計算最優錨框等預處理操作,同時進行數據增強以豐富數據集提高網絡檢測能力;②主干網絡(Backbone):主干網絡是實現目標特征提取的關鍵部分,其主要有Focus、CBL、CSP、SPP這4種模塊組成。Focus模塊是YOLOv5相較于YOLOv1-v4所獨有的模塊,其將輸入主干網絡的圖片進行2倍下采樣的切片操作,每個特征圖被分成4份后在空間通道進行拼接,圖片W、H信息轉成空間信息并不會造成目標特征信息減少,相比于通過卷積實現下采樣操作,網絡能夠提取更多目標特征信息。CSP模塊借鑒跨階段局部網絡[11](cross stage partial network,CSPNet)網絡思想對殘差結構進行改進,從網絡結構設計角度出發,解決網絡模型在推理過程中梯度信息重復問題,在一定程度上減少網絡計算量的同時增強了網絡目標特征提取能力,SPP模塊是通過空間金字塔池化實現多尺度特征融合;③頸部網絡(Neck):用于生成特征金字塔實現對主干網絡提取的目標特征進行增強,提高網絡對多尺度目標的檢測精度。YOLOv5頸部網絡為FPN-PAN結構,FPN[12]對主干網絡提取特征圖進行上采樣,將深層語義信息與淺層目標位置信息進行融合,在此基礎上融合PAN[13]結構,對上采樣得到的特征圖進行下采樣,這種自頂向下和自底向上方式全面提升網絡對深層語義信息和淺層定位信息的學習性能;④輸出層(Head):由3個檢測頭組成,分別對應20×20、40×40、80×80大小特征圖,每個檢測頭會生成對應大小的特征向量,用于預測目標邊界框位置,目標類別以及對應置信度信息。YOLOv5網絡結構如圖1所示。

圖1 YOLOv5網絡模型結構

2 YOLOv5模型改進

綜合比較單階段和雙階段網絡,雖然單階段網絡在檢測精度上低于雙階段網絡,對于網絡檢測速度卻有明顯優勢,YOLOv5在速度和精度方面得到較好的平衡,網絡對于目標檢測的效果較好。由于YOLOv5在提出來時主要以COCO數據集為研究對象,針對特定領域的目標檢測雖然能夠達到較高的檢測精度滿足實時性要求,但仍有一定提升空間??紤]到遙感目標尺度差異大,小目標占比多。本文對原有網絡進行改進,提出一種基于密集連接的YOLOv5遙感目標檢測網絡。將網絡主干部分用于提取特征信息的CSP模塊替換為采用DenseNet[14]網絡結構思想的CSP-D模塊,在不同尺度上捕獲目標特征信息,從而獲取更有效的目標特征;采用BiFPN[15]結構對頸部網絡進行改進,充分考慮淺層位置信息和深層語義信息,實現特征信息多尺度融合,避免網絡過多注重深層次信息進行目標預測,提高網絡對于遙感目標檢測能力。改進YOLOv5模型如圖2所示。

圖2 改進YOLOv5網絡模型結構

2.1 主干網絡(Backbone)改進

目前基于深度學習的目標檢測網絡都是利用卷積神經網絡(CNN)進行目標特征提取,本文針對YOLOv5提取目標特征的主干網絡,對網絡中CSP模塊進行改進,借鑒DenseNet網絡思想,以提高網絡對目標特征提取能力。

為了提高網絡檢測精度,通過加深加寬網絡結構被證明為一種有效的手段,但隨著網絡的加深,梯度消失成為限制網絡精度的重要問題。殘差網絡[16](ResNet)的提出有效解決了梯度消失問題,常用于目標檢測領域中作為主干網絡進行目標特征的提取,但殘差網絡提取特征信息不具有細粒度特征,對于小樣本數據集容易產生過擬合。密集連接網絡(DenseNet)網絡的提出為目標特征提取提供一種新思路,其不同于通過加深加寬網絡結構以提高網絡預測精度的思想,而是直接從特征圖(feature)入手,更加充分利用特征圖信息。相比于ResNet網絡,DenseNet網絡不僅減輕梯度消失問題;它加強了feature傳遞,更加有效地利用feature,特征提取能力更強,特征表達能力更多樣化;Dense Block結構的設計使得DenseNet網絡更窄,網絡參數和計算量(FLOPs)更少;在一定程度上抑制過擬合問題,對于小樣本數據集目標檢測效果更好。ResNet與DenseNet網絡差異主要是由于兩者對特征聚合方式不同,ResNet網絡聚合特征信息采用求和方式,這種方式雖然增加了來自上一層的輸入,但隨著網絡結構的加深,淺層特征信息會逐漸稀釋,網絡預測結果更加注重深層信息;而DenseNet網絡聚合特征信息采用密集連接(concat)方式,當前層會連接前面所有層作為輸入,這種方式充分考慮淺層和深層特征信息,淺層特征信息不會隨著網絡的加深逐漸稀釋,每層都具有不同大小感受野信息,可以捕獲不同尺度目標特征,使得輸出可以綜合考慮淺層和深層特征信息對目標進行檢測,更加有利于目標特征提取。Dense Block網絡結構如圖3所示。

圖3 Dense Block結構

DenseNet所采用的這種密集連接方式隨著網絡的加深,聚合前面層特征越逐漸增多,會造成特征冗余,增加運行成本,一定程度上降低網絡效率,使得目標預測速度變慢。為了能夠保證網絡特征提取能力的同時解決特征冗余造成的問題,我們對網絡密集連接方式進行改進,每層不再連接前方所有層特征信息,而是直接在最后一層對所有層特征進行融合,這種方式在利用深層和淺層信息同時,降低運行成本,避免因密集連接導致目標檢測速度降低。本文針對YOLOv5改進的CSP-D模塊,將輸入特征圖分為兩部分,一部分直接聚合到模塊末層,另一部分則通過改進的Dense Block模塊;將兩部分特征信息在模塊末層進行融合,加強特征圖信息傳遞,充分利用不同層之間特征信息,實現網絡不同梯度信息組合。CSP-D模塊結構如圖4所示。

圖4 CSP-D模塊結構

2.2 頸部網絡(Neck)結構改進

作為主干網絡(Backbone)與輸出層(Head)之間的過渡層,頸部(Neck)網絡會進行特征增強以提高網絡檢測精度。在深度學習領域早期的研究中,目標檢測算法主要結構都是采用自底向上的前向過程,這種方法直接利用深層特征信息對目標進行預測,淺層信息沒有直接參與網絡檢測結果預測,且隨著網絡加深,淺層信息逐漸稀釋,導致預測結果只注重深層語義信息,對于淺層位置信息利用不充分,目標檢測時定位誤差較大。隨著研究的進一步發展,特征增強模塊FPN(特征金字塔)的提出有效解決了深層語義信息與淺層位置信息利用不平衡的問題,成為目前目標檢測和實例分割等領域重要組成模塊。相比于早期純粹的利用前向過程進行目標預測,FPN(特征金字塔)網絡在原有網絡基礎上添加了自頂向下結構即將深層特征進行上采樣獲得新的特征圖,通過橫向連接與原有網絡特征信息進行融合。這種特征增強結構將深層語義信息連接到淺層特征中,實現融合后不同大小特征層與輸出層相互對應,對多尺度目標檢測以及小目標檢測能力有所提升,同時提高目標檢測時目標定位精度。由于FPN結構對深層的小尺度特征圖進行上采樣會導致一些目標詳細信息的丟失,從而限制大中型目標的檢測精度的提升。在YOLO系列中,YOLOv3已經融合FPN結構,YOLOv5為進一步改進網絡性能,在此基礎上借鑒PANet網絡結構進行改進,在FPN基礎上為了使淺層豐富的位置信息與深層豐富的語義信息進行充分融合,添加了下采樣的金字塔結構,自底向上將底層信息傳遞到高層。這種方式加強了在相鄰層之間信息的融合,對于非相鄰層間的語義信息和位置信息并沒有過多注重。無論是FPN結構還是PANet結構,在進行特征融合時都是平等對待不同尺度的特征信息,為了能夠使特征信息高效進行多尺度融合,我們借鑒BIFPN(加權雙向特征金字塔)結構,引入權重以對不同尺度的特征信息進行融合。頸部網絡(Neck)結構如圖5所示。

圖5 頸部網絡(Neck)結構

本文頸部網絡(Neck)包含兩條通路,一條為自頂向下進行上采樣通路,將高層特征的語義信息傳遞到底層;另一條是自底向上進行下采樣通路,將底層特征位置信息傳遞到頂層。頸部網絡刪除只有一條輸入的節點,確保每個節點至少有兩條輸入邊以保證特征融合,對于原始輸入節點和輸出節點,若兩者處于同一層具有相同大小特征信息,則會額外添加一條連接,使輸出結果充分考慮原始輸入特征信息,在不增加過多運算成本的情況下融合更多特征信息。這種引入權重以平衡不同尺度信息的融合方式提高具有多尺度特征信息數據集的檢測精度。

3 實驗過程與分析

3.1 實驗數據集

3.2 實驗環境與評價指標

本實驗采用操作系統為Linux系統,使用軟件為python3.7+Torch1.6.0;實驗硬件配置為處理器(CPU)為因特爾Core(TM)i9-990 0k 3.60 GHz、顯卡(GPU)為NVIDIA GeForce RTX 2080Ti、內存11 G。實驗訓練模型時采用隨機梯度下降法(SGD)法更新網絡訓練參數,以減少算法收斂時間。實驗設置網絡超參數見表2。

表2 網絡訓練超參數

為衡量改進前后網絡性能優劣,實驗結果從召回率(recall)、查準率(precision)、平均準確率均值(mean average precision,mAP)、各個類別的平均準確率(ave-rage precision,AP)、推理時間(s)以及浮點運算量(FLOPs)6個方面來對比網絡性能。相關計算公式如下

(1)

(2)

(3)

(4)

召回率(recall)和查準率(precision)指所檢測到正樣本數量分別占標記真實樣本數量和檢測到的所有樣本數量比率,為平均準確率(average precision,AP)與平均準確率均值(mean average precision,mAP)計算基礎。在式(1)、式(2)中TP、FP、FN關系見表3。

表3 TP、FP、FN關系

3.3 模塊改進對比分析

為驗證各個模塊改進是否提高網絡檢測精度,進行消融實驗,見表4。

表4 改進網絡消融實驗

3.4 YOLOv5改進前后對比分析

為驗證改進對網絡性能影響,改進YOLOv5s與原網絡訓練結果對比分析見表5、表6。

表5 改進前后網絡性能對比

表6 目標平均準確率(AP)對比

由表5可以看出,改進YOLOv5s相比于原網絡查準率(precision)、召回率(recall)、平均準確率均值(mAP)均有所提高,其中查準率提高1.7%、召回率提高1.9%、mAP值提高2.1%。改進后模型推理時間為0.011 s,相比于原網絡0.007 s雖有升高,仍能達到毫秒級別,滿足實時性要求。

表6為網絡模型改進前后數據集20個目標類平均準確率(AP)對比表,相比原YOLOv5s,改進網絡對于每個目標類檢測AP值均有所提升,其中Train station目標類AP值提升最高,達到6.60%;bridge目標類AP值也提升4.2%。

已有研究表明,通過增加網絡深度和寬度可以提高網絡對目標檢測精度,但此方法同時增加網絡復雜度,浮點運算量(FLOPs)作為衡量網絡模型復雜度指標,表7為不同大小YOLOv5模型與改進后模型對比分析。

表7 模型復雜度對比

表7表明,YOLOv5m模型通過增加網絡深度寬度,相比于YOLOv5s模型mAP值提升1.4%,但網絡浮點運算量(FLOPs)大幅升高,為YOLOv5s網絡浮點運算量3倍多。改進YOLOv5s網絡相比于YOLOv5m網絡mAP值高出0.7%,并且浮點運算量更少,網絡復雜度低。

網絡改進前后總損失值和平均準確率(mAP)對比曲線如圖6所示,從圖6(a)、圖6(b)中看出,網絡在訓練批次迭代到60次時基本達到穩定。隨著迭代次數的增加,網絡趨于穩定后改進網絡mAP值穩定高于YOLOv5s網絡;總損失值不斷降低,整體低于YOLOv5s網絡。

圖6 YOLOv5s改進前后總損失值和mAP值對比

圖7為網絡改進前后實際檢測效果對比圖,其中左側為原始網絡實際檢測效果,右側為改進后網絡實際檢測效果。與改進YOLOv5s網絡相比,YOLOv5s網絡針對不同密度目標雖能檢測出大部分目標,但仍存在漏檢、誤檢問題,且已檢目標置信度要低于改進網絡。如前4幅圖中,針對harbor類目標,YOLOv5s網絡存在漏檢情況;后兩幅圖中,YOLOv5s網絡將非ship類目標檢測為ship類目標,出現誤檢情況。改進YOLOv5s網絡模型緩解原網絡漏檢、誤檢問題,提高網絡檢測性能。

圖7 實際檢測效果對比

4 結束語

本文選用單階段網絡YOLOv5s作為遙感目標檢測模型,在原網絡基礎上,對主干網絡采用新設計CSP-D模塊替代原網絡中CSP模塊,提高主干網絡對目標信息提取能力;借鑒BiFPN結構改進頸部網絡,使特征信息能夠進行更高效的多尺度特征融合,提高網絡對不同目標檢測精度。在遙感目標數據集DIOR進行實驗后表明,改進YOLOv5s相比于原網絡平均準確率均值(mAP)有所提高,總損失低于原網絡模型,提升各個類目標檢測精度,緩解YOLOv5s網絡漏檢誤檢問題;雖然增加網絡推理時間以及模型復雜度,仍能滿足實時性要求,并且相比于通過加深加寬網絡以提升檢測精度方法,相對降低網絡模型復雜度。改進YOLOv5s相比于原網絡整體性能有所提升,但對于實際中包含各種復雜因素的遙感目標檢測,還具有一定局限性,后續將進一步研究以提升深度學習領域對遙感目標檢測性能。

猜你喜歡
網絡結構精度特征
如何表達“特征”
不忠誠的四個特征
基于DSPIC33F微處理器的采集精度的提高
抓住特征巧觀察
GPS/GLONASS/BDS組合PPP精度分析
基于互信息的貝葉斯網絡結構學習
知識網絡結構維對于創新績效的作用機制——遠程創新搜尋的中介作用
滬港通下A+ H股票網絡結構演化的實證分析
復雜網絡結構比對算法研究進展
改進的Goldschmidt雙精度浮點除法器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合