?

基于上下文信息與特征細化的無人機小目標檢測算法

2024-03-12 08:58彭晏飛陳炎康袁曉龍
計算機工程與應用 2024年5期
關鍵詞:卷積特征模塊

彭晏飛,趙 濤,陳炎康,袁曉龍

遼寧工程技術大學電子與信息工程學院,遼寧 葫蘆島 125105

隨著科學技術的進步,無人機在軍事和民用方面的應用越來越普遍,無人機(unmanned aerial vehicle,UAV)由于具有體積小、成本低、使用方便等優點,在無人機跟蹤[1]、農業[2]等領域得到了廣泛的應用。由于無人機飛行高度不穩定,圖像場廣闊,無人機航拍圖像中的物體呈現尺度各異,小物體多,密度大,物體之間存在遮擋現象,難以準確捕捉[3]。以上問題給無人機航拍目標檢測帶來了挑戰,因此準確處理無人機目標檢測的各種復雜場景,具有重要的理論意義和應用價值。

目前,基于深度學習的目標檢測技術主要分為兩種[4]:第一種是基于候選區域的兩階段方法,以Fast R-CNN[5]、Faster R-CNN[6]為代表。第二種是單階段方法,以SSD[7]和YOLO 系列算法YOLOv1[8]、YOLOv2[9]、YOLOv3[10]和YOLOv4[11]為代表。

當前的目標檢測算法通常專注于一般場景下的檢測,無人機航拍圖像中存在大量分布密集的小目標,由于小目標像素信息少,特征紋理模糊,復雜多樣的背景環境使檢測更加困難,難以達到最佳檢測效果。因此直接將普通檢測器應用于無人機航拍圖像效果較差。對此,宋譜怡等人[12]將壓縮-激勵模塊引入YOLOv5s中,提高特征提取能力,并使用雙錐臺特征融合提高小目標檢測精度,最后使用CⅠoU損失函數提高邊界框回歸精度,該算法使用雙錐臺的方式可以提取出較多的有效信息,減少無關信息的干擾,并保持較快的速度。Zhu 等人[13]提出了TPH-YOLOv5,通過在YOLOv5中添加了一個預測頭,并在頭部應用了Transformer 編碼器塊以形成Transformer檢測頭,提高了無人機圖像中高密度遮擋物體的檢測。賈天豪等人[14]提出了一種引入殘差學習與多尺度特征增強的目標檢測器,通過在骨干網絡中引入基于殘差學習的增強特征映射塊,使模型更加專注于對象區域,并通過特征映射增大感受野,最后使用雙重注意力模塊抑制背景噪音,在小目標數據集上檢測效果較好。鄧姍姍等人[15]提出了一種多層頻域特征融合的目標檢測算法,通過對輸入圖像進行高頻增強和對比度增強,提高樣本質量,并利用多尺度卷積特征融合的方法,解決了小目標在深層特征圖中丟失特征信息的問題,提高了小目標的檢測精度。

無人機航拍圖像中的物體通常因為分辨率低、遮擋現象等原因導致特征不明顯,直接從細粒度局部區域獲得的信息非常有限,而如果利用圖像中的上下文信息捕獲小目標與背景或其他目標的潛在聯系,就可以幫助網絡進行推斷,因此圖像中的上下文信息在無人機圖像檢測中非常重要。但大多數算法使用自注意力獲取全局上下文信息,由于計算量較大,無法滿足無人機的實際部署應用。李晨等人[16]設計了自監督二階融合模塊,生成密集空間像素相關性矩陣,獲取連續的全局上下文特征信息,提高對全局信息的利用率,但由于其特征圖展開之后的矩陣較大導致計算量較大,不能滿足實時檢測要求。Nie 等人[17]設計了一個上下文信息增強模塊,該模塊主要由兩個卷積分支組成,兩個分支分別使用不同大小的卷積核,然后對兩個分支的特征圖融合從而得到包含上下文信息的增強特征。此模塊的優點是通過使用不同大小的卷積核在多個尺度提取特征獲得全局上下文信息,避免了因特征圖展開做矩陣乘法導致計算量過大問題。徐堅等人[18]在骨干網絡中引入可變形卷積,在不同的感受野提取多尺度特征信息,利用上下文信息提高無人機航拍圖像中小目標的檢測精度。但是其直接使用相加或拼接的方式進行融合,會帶入冗余信息與噪聲信息,影響特征圖的表達能力,對上下文信息的獲取產生干擾。

提高小目標檢測精度的另一種有效方法是多尺度特征融合。Lin等人[19]提出的經典FPN網絡使用自上向下的結構和橫向連接,可以使不同層級的特征信息交互,將淺層特征傳遞到高層特征,達到增強小目標特征的目的。

雖然上述結構提高了網絡的多尺度表達能力,但是其在融合不同層級特征圖時沒有考慮不同特征圖之間的密度不同,不同尺度的特征之間具有較大的語義差異,并且不同層級特征圖對小目標的貢獻不同,直接融合會使模型的多尺度表達能力降低。針對上述問題,為了獲得更充分的特征圖表示,利用不同層級特征圖聚合豐富的上下文信息更好的檢測小目標,考慮無人機目標檢測的特點,提出了一種基于YOLOv5s 的無人機小目標檢測算法。

本文主要工作如下:

(1)提出一種自適應上下文特征增強模塊,通過空洞卷積與自適應融合方式獲取上下文信息進行特征增強,豐富檢測所需信息,提高小目標識別能力。

(2)提出一種特征細化模塊,其中包括設計的一種空間通道注意力模塊,來抑制特征融合引入的沖突與干擾信息,提高多尺度表達能力。

(3)構造淺層特征融合網絡,將深層特征圖與淺層特征圖融合,保留更多小目標的特征信息,提高小目標檢測精度。

(4)提出一種帶權重的損失函數,提高邊界框回歸精度,增強網絡對小目標的學習能力。

1 本文方法

在兼顧檢測精度與檢測速度前提下,對YOLOv5s進行改進。首先,為了保留更多小目標的特征信息,構造了淺層融合網絡,去掉檢測大目標的P5 層,并將N2送入特征融合網絡,使用分辨率更高的特征圖檢測小目標,減少小目標漏檢和錯檢;其次,使用上下文特征增強模塊,通過補充上下文信息,幫助模型進行檢測;最后,通過特征細化模塊,減小特征融合時引入的沖突信息對小目標的干擾,防止小目標淹沒在沖突信息中。本文方法的總體架構如圖1所示。

圖1 模型總體結構圖Fig.1 Structure diagram of proposed model

其中CFEM 為上下文特征增強模塊,FRM 為特征細化模塊,Head 為檢測頭,負責進行最后的分類與檢測。N1~N5為骨干網絡所提取的特征圖,P2~P4為送入CFEM 以及FRM 的特征圖,最后在Head 中使用本文優化的損失函數進行訓練。

1.1 上下文特征增強模塊

卷積神經網絡中每層特征的感受野是固定的,無法捕獲不同尺度的特征信息,并且在航拍圖像中小目標邊緣模糊,特征不明顯,紋理信息不足,導致能夠提取的特征信息少,模型很難分辨圖中物體。但如果為模型提供了上下文信息,比如,周圍的環境、道路、車輪,可以有助于模型推斷出很有可能是汽車,因此圖像中的上下文信息在無人機圖像檢測中非常重要。為此,本文提出一種上下文特征增強模塊(context feature enhanced module,CFEM),該模塊通過將輸入的特征圖使用不同擴張率的空洞卷積進行處理,然后使用自適應特征融合方式對得到不同的感受野特征進行處理生成自適應權值,充分挖掘了不同深度特征層的多維特征,捕獲小目標與背景或其他目標的潛在聯系,為網絡補充上下文信息,幫助網絡進行推斷,從而實現不同感受野特征的高效融合和增強表示,有效利用了不同尺度下淺層和深層的特征,進而豐富特征信息,提高模型對小目標的檢測能力。

如圖2為CFEM模塊結構圖,對輸入的特征圖分別進行擴張率為1、3、5的空洞卷積操作,使用3×3的卷積的卷積來獲得更多的特征細節。經過空洞卷積后可以獲得不同的感受野,有利于獲得多尺度的特征信息,最后對三個分支的輸出進行自適應融合。圖2 中虛線部分為自適應特征融合,該融合方式通過建立輸入目標尺度和特征融合之間的聯系,依據輸入目標的大小去學習融合權重,為多尺度特征分配不同的融合權重。具體過程為首先將輸入的特征圖拼接后通過1×1 卷積進行降維,然后利用3×3 的卷積和Softmax 激活函數將經過降維的特征映射到F1、F2、F3三個分支對應的權重,最后,將輸入特征與空間權重通過特征加權融合得到具有豐富上下文信息的輸出特征。通過利用上述自適應特征融合的方式,從不同感受野的特征層中聚合了更多的上下文信息,使網絡關注更具有判別力的小目標特征信息,并且此融合方式可以在幾乎不增加計算量的前提下豐富檢測所需信息,從而提高小目標的檢測效果。

圖2 上下文特征增強模塊Fig.2 Context feature enhanced module

此外,融合的方式還可以選擇加權融合與拼接融合,如圖3 所示。圖3(a)為加權融合,即分別在空間和通道維度進行相加;圖3(b)為拼接融合,即分別在空間和通道維度直接拼接。本文通過實驗選擇自適應特征融合方式,消融實驗結果見2.4節。

圖3 融合方式Fig.3 Fusion method

1.2 特征細化模塊

在特征融合過程中,因為不同層的特征密度不同,而且不同尺度的特征之間具有較大的語義差異,直接進行多尺度融合會帶入大量的沖突信息與冗余信息,從而使模型的多尺度表達能力降低。為了讓模型可以更快的定位到目標本身,不被噪聲等冗余信息影響,防止小目標特征被淹沒在沖突信息中,本文構造了一個特征細化模塊FRM(feature refinement module)抑制沖突信息,其結構如圖4所示。

圖4 FRM模塊結構Fig.4 Structure of FRM module

FRM模塊在僅增加少量參數量與計算量的前提下進行設計,其主要包括一個針對關注小目標空間維度特征的空間通道注意力模塊(spatial-channel attention,SCA),通過結合空間與通道注意力,提高模型提取有用特征的能力。

通道注意力重點對輸入分析每個通道的特征,更關注特征的語義信息。通道注意力對輸入的特征圖O使用平均池化和最大池化操作分別在空間維度上整合全局空間信息,收集更豐富的特征信息。同時使用平均池化與最大池化操作可以提高模型的表達能力,并減少特征圖的大小和計算量。將經過池化后的兩個一維向量送入全連接層運算,通過大小為1×1的卷積來實現特征向量間的權值共享。最后,將向量相加后經過sigmoid激活函數生成通道注意力權重Yc:

空間注意力會更關注物體的位置信息,聚焦于特征圖中有效信息多的區域,與通道注意力形成互補??臻g注意力使用平均池化與最大池化在通道維度上對輸入特征圖O進行壓縮操作,得到兩個二維特征圖,將其沿著通道維度拼接得到通道數為2的特征圖。然后,使用1×1 卷積對拼接后特征圖調整通道數,為了保證最后得到的特征在空間維度上與輸入的一致。最后,經過sigmoid激活函數生成空間注意力權重Ys:

將空間注意力與通道注意力組合得到SCA 模塊,如圖4 虛線框所示。SCA 模塊首先通過通道注意力得到通道權重Yc,然后將Yc與初始特征圖O相乘得到Zc,如公式(3)所示:

將Zc通過空間注意力,得到融合了通道和空間的注意力權重Ys,其包含了一部分通道注意力的先驗知識,因此Ys與Yc相比,能更好地關注特征圖中的有效特征。在無人機航拍圖像中,小目標眾多,由于Zc比O具有更豐富的語義信息,為了避免模型對某一類別目標過于敏感及感受野變小,可能會出現誤檢現象,將Ys與干凈的初始特征圖O相乘得到Zs,避免語義信息可能會帶來的影響,如公式(4)所示:

最后將Zc與Zs加和,此操作為了有效結合通道與空間兩個維度的特征。加和后經過sigmoid激活函數得到基于通道和空間注意力的權重,如公式(5)所示:

本文提出的FRM可以讓模型更關注包含小目標特征的區域,過濾噪聲信息,減小沖突信息對檢測的干擾,提高小目標的檢測精度。

如圖5 展示了使用FRM 模塊前后的可視化效果圖。圖中,最左側為原始輸入圖像,中間為未使用FRM,最右側為使用FRM 后,可以看出使用后,模型會更關注細節,能夠注意到包含目標特征的區域并過濾掉沖突、噪聲信息,證明了FRM模塊的有效性。

圖5 可視化分析Fig.5 Visual analysis

1.3 淺層融合網絡

原始的YOLOv5算法由于多次下采樣操作,導致小目標在不斷下采樣的過程中丟失了特征信息,并且較深的特征圖使小目標的特征難以學習,導致小目標檢測不理想?;谏鲜鰡栴},構造一種淺層融合網絡(shallow fusion network,SFN)。

淺層網絡主要提取物體的邊緣及紋理特征,保留了更多的特征細節;深層網絡主要關注物體的語義信息,缺少對小目標的細節特征以及位置信息的感知,導致小目標特征信息丟失,檢測效果差。由于本文主要關注小目標檢測,因此去除檢測大目標的尺寸為20×20 的P5檢測層,并添加一個較淺的尺寸為160×160 的P2 檢測層。通過加入卷積和上采樣操作,擴展特征圖。然后,將得到的特征圖與骨干網絡提取的特征圖進行融合,得到更大的特征圖用于檢測小目標,構成SFN 網絡,使模型對圖像中的小目標更加敏感。新增的小目標檢測層保留了更多小目標豐富的特征信息,提高了小目標的分辨率,有助于模型學習小目標的特征。同時,去除的大目標檢測層,減少了模型參數量的同時還加快了模型的收斂速度。

1.4 Alpha-EIoU損失函數

YOLOv5 采用的損失函數為CⅠoU[20],其計算公式如下:

其中,b和bgt代表預測框與真實框的中心點,ρ代表預測框與真實框中心點之間的歐氏距離,c代表包含預測框和真實框的最小矩陣的對角距離,wgt和hgt為真實框的寬度和高度,w和h為預測框的寬度和高度。從公式可以看出,CⅠoU使用的是寬和高的相對比值,當預測框的寬和高滿足一定線性條件后,其添加的懲罰項便失效,懲罰項v對w和h求導如公式(8)、(9)所示:

雖然EⅠoU 解決了CⅠoU 的問題,但對于航拍圖像,目標不僅小并密集,會出現重疊框的問題,影響收斂速度。因此,本文在EⅠoU 中計算預測框與真實框中心點之間的歐氏距離上引入一個α冪指數,在長度和寬度上引入一個β冪指數,提出Alpha-EⅠoU。計算如公式(12)所示:

cw和ch分別表示預測框和真實框形成的閉合區域的寬度和長度。Alpha-EⅠoU解決了預測框回歸過程中寬和高不能同時增加或減少,并且考慮了難易樣本不平衡的問題。從而改善了具有高ⅠoU目標的損失,使回歸預測更為精準,在模型訓練時加快收斂速度,進一步提高小目標的檢測精度,為小目標數據集提供了更強的魯棒性。

2 實驗與分析

2.1 實驗環境與數據集

本文實驗使用Windows 系統,實驗環境為PyTorch 1.11,Cuda 11.3。所有訓練與測試都在NVⅠDⅠA RTX 3070Ti GPU 進行,優化器為AdamW,所有模型使用相同超參數。本文評價指標使用mAP50、mAP50:95、FPS。其中mAP50表示設置ⅠoU閾值為0.5時全部目標類別的平均檢測精度,mAP50 可以反映模型對不同類別目標的綜合分類能力;mAP50:95表示設置以步長為0.05,計算ⅠoU 閾值從0.5 至0.95 的全部10 個ⅠoU 閾值下的平均檢測精度;FPS用于衡量模型的檢測速度。

本文使用VisDrone2021[22]數據集,由天津大學機器學習與數據挖掘實驗室的AⅠSKYYE 團隊收集,其中包括6 471 張訓練圖像,548 張驗證圖像和1 610 張測試圖像,共10 個類別,分別為行人、人、自行車、汽車、面包車、卡車、三輪車、遮陽篷三輪車、公共汽車、摩托車。該數據集檢測難點在于:圖像中物體較多并有重疊;因為拍攝角度原因導致標注框小,小目標物體居多;與通用檢測數據集差別較大,使用預訓練權重效果一般。

2.2 模塊消融實驗

為了驗證所設計的上下文特征增強模塊(CFEM)、特征細化模塊(FRM)和損失函數(Alpha-ⅠOU)的有效性,設計消融實驗進行驗證,在VisDrone2021 數據集上使用相同參數進行實驗,實驗結果見表1。

表1 消融實驗Table 1 Ablation experiment

從表1可以看出,實驗B使用SFN網絡后mAP50提高5.8 個百分點,參數量減少1.65×106;在實驗B 基礎上添加CFEM模塊后,mAP50提高2.1個百分點,參數量增加2.31×106,與基準模型參數量持平,證明該模塊可以在增加少量計算量前提下補充上下文信息,并提高了小目標檢測的精度;在實驗C 基礎上添加FRM 模塊后,mAP50 提高0.3 個百分點,證明FRM 可以有效過濾噪聲,減少沖突信息對小目標的干擾,增加小目標特征的識別性;在實驗D 基礎上使用改進的Alpha-EⅠOU 損失函數后,mAP50 提高0.2 個百分點,并且不會帶來額外參數量,證明所改進的損失函數對小目標有效。最終改進的模型較基準模型mAP50 提高8.4 個百分點,mAP50:95 提高5.9 個百分點,參數量僅增加1.11×106,證明了本文所設計的各個模塊的有效性。

2.3 檢測層消融實驗

為了驗證所構造的SFN 網絡的有效性進行實驗驗證,如表2 所示。由表可看出使用了P2+P3+P4 檢測層的SFN 網絡mAP50 為39.1%,參數量減少了1.65×106,證明使用SFN網絡后可以使模型更關注小目標,新增的檢測層保留了更多小目標豐富的特征信息,提高了小目標的分辨率,有利于網絡進行特征提取,減少小目標的漏檢和誤檢。同時SFN網絡不僅檢測精度最優,并減少了模型參數量,去除的檢測層減少了網絡的冗余,加快了模型的收斂速度。

表2 檢測層消融實驗Table 2 Prediction layer ablation experimental

2.4 融合方式消融實驗

以使用淺層融合網絡后的結構為基準模型,對CFEM 模塊中的三種特征融合方式進行消融實驗驗證有效性,實驗結果如表3所示。從表中可以看出使用自適應特征融合效果最佳,mAP50 提高2.1 個百分點,mAP50:95 提高2.2 個百分點,拼接融合介于加權融合與自適應特征融合之間。

表3 融合方式消融實驗Table 3 Fusion mode ablation experiment 單位:%

2.5 損失函數對比實驗

為驗證改進的損失函數的有效性,與目前主流的CⅠoU、DⅠoU和SⅠoU損失函數進行實驗對比,以YOLOv5s為基準模型進行實驗,實驗結果如表4所示。表中可以看出,本文提出的Alpha-EⅠOU 與其他損失函數相比具有更好的精度表現,更適合小目標檢測任務。

表4 損失函數對比實驗Table 4 Loss function comparison experiment單位:%

2.6 對比實驗

本文對比了改進后的的算法與其他主流算法在VisDrone數據集的效果。其中包括雙階段算法、YOLO系列算法與專注于小目標的檢測算法,實驗結果如表5所示。

表5 對比實驗Table 5 Comparison experiment

對表5進行分析,本文方法與以精度為優勢的雙階段算法相比,例如經典的Faster-RCNN,本文方法mAP50 高出8.5 個百分點。與以速度為優勢的YOLO系列算法相比,本文方法在滿足實時性的前提下,mAP50比YOLOv8s 高出3 個百分點。與專注于小目標的檢測算法相比,對于精度次優的小目標算法TPH-YOLOv5,由于其使用了自注意力機制,計算量較大,速度較慢,本文方法在精度與速度上與其他小目標算法相比更有優勢。與基準模型YOLOv5s相比,mAP50提高了8.4個百分點,精度和召回率分別提高了7.0個百分點和5.2個百分點。從實驗結果來看,本文方法mAP50 提升較為明顯,證明本文方法具有較強的定位能力。綜上,本文方法比其他先進算法有一定優勢,可以有效提高小目標檢測精度。

2.7 檢測結果分析

為了驗證所提出的算法在無人機場景中的檢測效果,在VisDrone2021測試集中選取模糊、遮擋、密集場景下具有挑戰性的圖像進行檢測,對本文方法進行可視化評估。檢測結果如圖6所示。

圖6 檢測效果圖Fig.6 Detection effect pictures

圖6(a)為模糊場景的檢測效果圖,在實際拍攝場景中由于無人機或攝像頭云臺轉動過快會導致拍攝圖像出現模糊失真的情況。圖中可以看出模型依舊可以檢測出模糊場景下的汽車、人等目標,并且在夜晚昏暗場景中仍然可以識別出模糊的汽車與行人目標。圖6(b)為遮擋場景的檢測效果圖,實際場景中常存在樹木、物體重疊等遮擋現象。圖中可以看出改進后的算法可以很好檢測出被樹遮擋的汽車與摩托,且遠處騎車的人與自行車也可以區分開來,說明模型能夠檢測出受遮擋和重疊度高的小目標。圖6(c)為密集場景的檢測效果圖,圖中的目標極小,小目標數量豐富,比如對于廣場與操場上密集且重疊的人,改進后的算法依然可以較準確地檢測出,說明本文方法對密集場景中的小目標檢測效果突出。

將基準模型與改進后的算法進行比較,檢測效果如圖7 所示,圖7(a)為基準模型檢測結果,圖7(b)為本文方法檢測結果。圖中可以看出,改進后的算法較YOLOv5 檢測能力提升明顯,YOLOv5 有漏檢、錯檢現象,比如將錐筒識別為人,遠處的車輛、人有漏檢現象。

圖7 檢測結果對比Fig.7 Comparsion of object detection results

綜上,本文方法通過上下文信息捕捉到更充分的小目標特征信息,并通過特征細化模塊從大量特征信息中提取有利于目標分類定位的信息,相比YOLOv5s減少了漏檢、錯檢的情況,在模糊與遮擋的場景下具有較好的魯棒性,能夠應對在無人機中的實際應用。

3 結語

本文提出了一種基于上下文信息與特征細化的無人機小目標檢測算法,以解決小目標密集、特征不明顯導致檢測精度低的問題。首先,為了網絡補充上下文信息,設計了一種上下文特征增強模塊;其次,通過融合空間與通道的特征細化模塊來過濾噪聲,避免沖突信息的干擾;最后,優化損失函數來進一步提高小目標檢測精度。改進后的網絡模型在VisDrone2021 數據集上進行實驗,結果表明,本文方法優于其他先進模型,在一定程度上提高了YOLOv5算法對小目標的檢測效果,能夠有效完成無人機場景下的密集小目標檢測任務。未來將研究方向集中在模型優化,使用剪枝、蒸餾等手段進一步壓縮模型,使其更好地進行部署應用。

猜你喜歡
卷積特征模塊
28通道收發處理模塊設計
“選修3—3”模塊的復習備考
基于3D-Winograd的快速卷積算法設計及FPGA實現
如何表達“特征”
從濾波器理解卷積
不忠誠的四個特征
基于傅里葉域卷積表示的目標跟蹤算法
抓住特征巧觀察
一種基于卷積神經網絡的性別識別方法
線性代數的應用特征
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合