摘" 要: 航拍小目標檢測中,由于圖像背景復雜、目標尺度小、空間尺度變化大,導致無人機航拍出現(xiàn)漏檢、誤檢等一系列問題。為提高無人機航拍檢測準確性、實時性以及實現(xiàn)輕量化,文中基于YOLOv8n提出一種改進的無人機航拍視角小目標檢測方法WS?YOLO。首先,重構(gòu)YOLOv8n網(wǎng)絡結(jié)構(gòu),并增加160×160特征圖對應預測頭,以提高模型對小尺度目標檢測的準確性與魯棒性;然后,主干網(wǎng)絡卷積層后嵌入SPD,防止細粒度信息的丟失并學習不太有效的特征表示,以提高對低分辨率圖像的識別能力;最后,將CIoU損失函數(shù)替換為WIoU(v3)損失函數(shù),以減輕圖片質(zhì)量低下對檢測過程的影響。最終實驗結(jié)果表明,環(huán)境、參數(shù)相同情況下,在VisDrone2019數(shù)據(jù)集與AI?TOD數(shù)據(jù)集上與原算法相比,WS?YOLO精確度能分別提升8.9%與7.7%,其參數(shù)量降低且FPS在合理范圍,由此驗證了提出的WS?YOLO在無人機航拍視角小目標檢測中能夠提高有效性。
關(guān)鍵詞: 無人機航拍; 輕量化; YOLOv8n; SPD; WIoU; VisDrone2019; AI?TOD
中圖分類號: TN911.73?34; TP391.4" " " " " " " " " 文獻標識碼: A" " " " " " " " "文章編號: 1004?373X(2025)05?0068?07
WS?YOLO: Small object detection method for aerial photography viewpoint
WANG Yao1, JIANG Xingguo1, 2, QIN Haiyang1, LI Ming1, DIAO Haojie1
(1. School of Automation and Information Engineering, Sichuan University of Science and Engineering, Yibin 644000, China;
2. Artificial Intelligence Key Laboratory of Sichuan Province, Yibin 644000, China)
Abstract: In the aerial photography small object detection, due to the complexity of the image background, the object scale is small, while the spatial scale varies greatly, which results in a series of problems such as leakage and 1 detection in UAV aerial photography. For this reason, an improved small object detection method WS?YOLO for UAV aerial photography viewpoint is proposed based on YOLOv8n, so as to improve detection accuracy and real?time performance, and realize the lightweight of the UAV aerial photography. Firstly, the YOLOv8n network structure is reconstructed and 160×160 feature maps corresponding to the prediction head are added, so as to improve the accuracy and robustness of the model for small?scale object detection. Then, the SPD is embedded after the convolutional layer of the backbone network, so as to prevent the loss of fine?grained information and learn less effective feature representations, so that its ability to recognize low?resolution images is improved. Finally, the CIoU loss function is replaced with the WIoU (v3) loss function, so as to mitigate the effect of low image quality on the process of detection. The final experimental results show that in the same environment and with the same parameters, the accuracy of the proposed WS?YOLO is improved by 8.9% and 7.7% on the VisDrone2019 dataset and the AI?TOD dataset, respectively, in comparison with that of the original algorithm. In addition, its parameters are reduced and its FPS is within a reasonable range. It is verified that the proposed WS?YOLO can improve the effectiveness in small object detection for the UAV aerial photography viewpoint.
Keywords: UAV aerial photograph; lightweight; YOLOv8n; SPD; WIoU; VisDrone2019; AI?TOD
0" 引" 言
近年來,隨著目標檢測技術(shù)在各個領域取得的飛速發(fā)展,將目標檢測與無人機相結(jié)合的應用方向也隨之日益成熟。在電路巡檢、防火巡查、協(xié)同救災、農(nóng)作物監(jiān)察等民用領域,以及排爆執(zhí)行、海防任務等軍事領域得到了廣泛應用[1?7]。在現(xiàn)實環(huán)境下,由于無人機飛行高度的變化與拍攝目標的不同,背景雜亂、物體密集重疊,以及包含大量小型目標等問題,嚴重影響了對小物體準確快速的識別。
基于深度學習的目標檢測可以分為兩類:一類是Two stage算法,主要包括R?CNN[8]、Faster R?CNN[9]等。該算法先進行物體區(qū)域生成,再通過卷積神經(jīng)網(wǎng)絡進行樣本分類;另一類是One stage算法,主要包括SSD[10]與YOLO[11?13]系列等。直接對輸入圖像提取特征,僅需一次前向傳遞便可進行預測,適用于無人機上邊緣計算移動設備。
隨著深度學習的快速發(fā)展,國內(nèi)外研究者針對無人機航拍視角領域的小目標檢測不斷探究嘗試,提出許多改進方法。針對無人機航拍視角的小目標檢測,文獻[14]提出一種UAV?YOLOv8的目標檢測模型,設計了一個名為Focal FasterNet Block(FFNB)的特征處理模塊,并在此基礎上提出兩種新的檢測尺度,使淺層特征和深層特征完全融合。但繼續(xù)增加檢測層,對模型實時性影響較大。文獻[15]提出一種基于優(yōu)化YOLOv8的微型無人機檢測模型YOLO?Drone,在頸部引入GAM注意力機制,增強模型對目標特征的融合。但該方法給模型增加了大量參數(shù)量,不利于無人機部署。盡管上述方法取得了良好的效果,但難以平衡檢測算法中存在的精度低、誤檢率高、實時性差、模型體積大等問題。
為此,本文基于YOLOv8n提出一種改進YOLOv8n的算法WS?YOLO,在參數(shù)量顯著降低的情況下,能同時兼顧算法的實時性及精確度。
1" YOLOv8模型網(wǎng)絡結(jié)構(gòu)
YOLOv8模型是來自Ultralytics的YOLO對象檢測模型系列,能提供統(tǒng)一框架,以支持物體檢測、實例分割、圖像分類的操作。在N/S/M/L/X五個不同尺度的模型中,YOLOv8n模型具有最快的檢測速度,適宜應用在需要實時快速檢測的無人機領域。
YOLOv8網(wǎng)絡結(jié)構(gòu)主要由主干網(wǎng)絡(Backbone)、特征增強網(wǎng)絡(Neck)、檢測頭(Head)三部分構(gòu)成。YOLOv8主干網(wǎng)絡(Backbone)沿用CSP結(jié)構(gòu),使其在輕量化的同時也能保證檢測的準確性。與YOLOv5不同,YOLOv8保留了SPPF模塊和(CBS)Conv模塊,使用C2f模塊替換C2模塊。因此,在保證輕量化的同時還能夠使網(wǎng)絡獲得更加豐富的梯度流信息。特征增強網(wǎng)絡(Neck)使用PAN?FPN結(jié)構(gòu),構(gòu)建一個自頂向下進行上采樣、自下而上進行下采樣的網(wǎng)絡結(jié)構(gòu),能保證對不同尺寸圖片的準確預測,因而能夠?qū)崿F(xiàn)特征的多樣性和完整性。YOLOv8的檢測頭(Head)使用解耦的頭部結(jié)構(gòu),使兩個頭能分別輸出分類和回歸,以加快模型收斂速度。
2" 改進YOLOv8n模型
對于背景變化大的航拍視角小目標檢測,尤其是檢測目標類別較多時,YOLOv8n精度較低。因此,在參數(shù)量降低的情況下,為提高無人機的實時檢測精度,對YOLOv8n進行改進,改進網(wǎng)絡整體結(jié)構(gòu)如圖1所示。
2.1" 重構(gòu)網(wǎng)絡結(jié)構(gòu)
YOLOv8n原始模型中存在分別對應特征圖大小為80×80、40×40和20×20三個檢測維度預測頭,分別用于檢測大小在8×8、16×16及32×32以上目標。為提高模型小目標檢測的準確性以及降低算法參數(shù)量,避免YOLOv8n算法下采樣倍數(shù)較大導致丟失過多細節(jié)信息,在YOLOv8n原模型基礎上增加第四個預測頭并重構(gòu)網(wǎng)絡,引入雙分支拼接及三分支拼接,提高算法對小尺寸物體語義信息采集及實現(xiàn)網(wǎng)絡輕量化。雙分支拼接降低算法復雜度,三分支拼接幫助模型更好地實現(xiàn)特征融合。新增加預測頭對應160×160大小特征圖,用于檢測4×4大小以上的微小目標。改進后的網(wǎng)絡結(jié)構(gòu)如圖2所示。
2.2" 主干網(wǎng)絡嵌入卷積
當檢測對象為小尺度目標,圖像分辨率較低,冗余信息不再過度時,由于CNN中步長卷積或池化的使用,模型將很難學習圖像特征。因此,WS?YOLO在Backbone添加SPD[16]模塊,防止細粒度信息丟失,并學習不太有效的特征表示,提升小目標與低分辨率圖像識別能力。在卷積后嵌入SPD模塊,使得SPD模塊操作特征圖是卷積后維度得到增加的特征圖,以獲得更豐富的特征表示。SPD模塊架構(gòu)如圖3所示。
假設任意大小為[S×S×C1]的中間特征映射[X],子特征映射序列切片為:
[f0,0=X0:S:scale,0:S:scalef1,0=X1:S:scale,0:S:scale" " " ?fscale-1,0=Xscale-1:S:scale,0:S:scalef0,1=X0:S:scale,1:S:scale" " " ?fscale-1,1=Xscale-1:S:scale,1:S:scale" " " ?f0,scale-1=X0:S:scale,scale-1:S:scale" " " ?]
這些子特征映射沿通道維度連接起來,得到一個特征映射[X],使該特征映射空間維度減少2倍,通道維度增加4倍。
2.3" 替換損失函數(shù)
YOLOv8模型中損失函數(shù)主要由分類損失及回歸損失構(gòu)成。當檢測對象圖像質(zhì)量較高時,如CIoU等一類傳統(tǒng)IoU泛化性能力仍具有較好表現(xiàn)。但當對象小目標含量高、目標背景復雜及圖片質(zhì)量低下時,CIoU一類的傳統(tǒng)損失函數(shù)可能被賦予較低權(quán)重,導致性能不夠理想。因此,使用Wise?IoU[17]替換原版IoU,并選定Wise?IoU(v3)。
當錨框與目標框重合時,優(yōu)秀的損失函數(shù)會削弱幾何因子的懲罰。因此,訓練時對訓練結(jié)果不過多干預,使模型泛化能力更好。基于此,文獻[17]通過結(jié)合距離注意力機制得到了具有兩層注意力機制的Wise?IoU(v1),其表達式如下所示:
[LWIoUv1=RWIoULIoU] (1)
[RWIoU=expx-xgt2+y-ygt2W2g+H2g*] (2)
式中:[x]和[y]是錨框左上角的坐標;[xgt]和[ygt]是目標框左上角的坐標;[Wg]和[Hg]表示最小邊界框的寬和高。將[Wg]與[Hg]從計算圖中分離,防止阻礙收斂的梯度。
為防止低質(zhì)量目標產(chǎn)生較大有害梯度,文獻[17]以前兩個版本為基礎,提出對離群度較大錨框分配更小梯度增益的Wise?IoU(v3),其表達式如下所示:
[LWIoUv3=rLWIoUv1," r=βδαβ-δ] (3)
[β=L*IoULIoU∈0,+∞] (4)
當[β=δ]時,[r=1]。當錨框的離群程度滿足[β=C]([C]為定值)時,錨框?qū)@得最高的梯度增益。
3" 實驗與結(jié)果
3.1" 環(huán)境及參數(shù)設置
實驗基于PyTorch 1.12.1框架,使用單個GPU RTX 6000顯卡,以YOLOv8n原模型為基礎進行訓練。為保證實驗的公平性及可比較性,訓練過程超參數(shù)均相同。實驗硬件配置及超參數(shù)設置如表1所示。
3.2" 數(shù)據(jù)集
VisDrone2019數(shù)據(jù)集是由天津大學等團隊開源的大型無人機視角數(shù)據(jù)集,共有訓練集6 741張,驗證集548張。該數(shù)據(jù)集包括10個類別,分別是行人、人、自行車、汽車、貨車、三輪車、遮陽三輪車、公共汽車、卡車以及轎車。
AI?TOD數(shù)據(jù)集共8個類別。實驗選取訓練集3 365張,驗證集842張。刪除其中數(shù)量過少的4個類別,只保留儲油罐、船、車輛以及人。
如圖4a)、圖4b)所示,通過對VisDrone2019數(shù)據(jù)集及AI?TOD數(shù)據(jù)集分析,可以得到以下特點:
1) 每張圖片每類只存在1個或2個目標的圖像最多,模型更易出現(xiàn)誤檢或漏檢的情況;
2) 小尺寸目標占比最多,大尺寸目標大部分呈現(xiàn)小方形。
3.3" 模型評價指標
為驗證模型的檢測性能,全面綜合評價模型在準確性、速度及資源占用等方面的具體表現(xiàn),選擇mAP(mean of Average Precision)、參數(shù)量(Params)和FPS(Frames Per Second)作為實驗評價指標。
1) mAP作為目前評估目標檢測器性能的一種重要指標,是提供模型在多個類別上平均表現(xiàn)的度量。
[AP=01PRdR] (5)
[mAP=1Ni=1NAPi] (6)
式中:[N]為類別的數(shù)量;AP為每個類別的平均精度。
2) FPS表示系統(tǒng)在處理目標檢測任務時每秒能夠處理的圖像幀數(shù)。
3) 參數(shù)量是指模型訓練中需要訓練的參數(shù)總數(shù),用以衡量模型大小。
3.4" 結(jié)果與分析
3.4.1" 消融實驗
為證明各個改進模塊對WS?YOLO性能提升的有效性,以YOLOv8n為基線模型進行消融實驗,依次添加改進模塊。數(shù)據(jù)集使用VisDrone2019數(shù)據(jù)集,訓練輪數(shù)為200輪。
消融實驗結(jié)果如表2所示。
由表2可知:基線模型嵌入SPD模塊后,雖然參數(shù)量提升了0.26×106,F(xiàn)PS下降了5.76 f/s,但是mAP提升了2.2%,說明SPD?Conv有效防止了目標細粒度信息的丟失;將模型損失函數(shù)替換為WIoU(v3),在不改變參數(shù)量的情況下,使得模型更準確定位小尺度目標,有效提高了模型的實時性及精確性;增加新預測頭,導致FPS下降13.65 f/s,但mAP提高3.1%,證明模型成功加強對小型目標關(guān)注度;添加預測頭后重構(gòu)網(wǎng)絡結(jié)構(gòu),參數(shù)量下降25%,F(xiàn)PS相較只添加檢測頭略微下降,而mAP卻再次提升3.2%,極大優(yōu)化了網(wǎng)絡性能;最后,將所有改進加入基線模型,最終 FPS降低了16.42 f/s,但mAP提高了8.9%,參數(shù)量也顯著下降。因此,改進方法對無人機航拍領域小目標檢測有效。
3.4.2" 改進效果對比實驗
為進一步驗證WS?YOLO的有效性,將YOLO系列算法在AI?TOD數(shù)據(jù)集與VisDrone2019數(shù)據(jù)集上進行對比,實驗結(jié)果如表3所示。
表3表明,WS?YOLO在FPS保持合理范圍情況下,檢測精度及輕量化效果均能大幅度提升,證明了WS?YOLO的通用性及有效性。
YOLOv3?tiny的mAP比WS?YOLO分別低25.6%和31.2%,參數(shù)量比WS?YOLO高3.49倍,模型性能有極大提升空間。YOLOv5n參數(shù)量只有WS?YOLO的71%,但另外三項指標與WS?YOLO相差甚遠。YOLOv5s在精度方面較YOLOv5n有顯著提升,但取而代之的是參數(shù)量大幅度增長,并在兩個數(shù)據(jù)集上的mAP依舊低于WS?YOLO 7.9%與5.1%,性能遠差于WS?YOLO。
將文獻[15]提出的YOLO?Drone改進方法應用于基線模型,可以看出該算法檢測精度較原模型確實有較大提升,并且FPS與參數(shù)量也在合理范圍。但與WS?YOLO相比,檢測精度分別低5.2%和2.5%,在VisDrone2019數(shù)據(jù)集上FPS值低4.35 f/s,參數(shù)量多57%,綜合性能略差WS?YOLO算法。YOLOv8s檢測精度在AI?TOD數(shù)據(jù)集上較本文模型低1.5%,在VisDrone2019數(shù)據(jù)集上低2.7%,參數(shù)量同樣為所有算法中最高,對工程部署很不友好。
綜合以上分析,WS?YOLO算法小幅度犧牲FPS值,在參數(shù)量相較原模型顯著降低的情況下,極大提升了mAP值,是合理的。WS?YOLO算法可以在有效保證航拍小目標領域的實時性及高精度檢測的同時,降低參數(shù)量,也兼顧了該算法在無人機設備的部署。
圖5展示的是模型實驗結(jié)果對比。
由圖5可知,基線模型cls_loss振幅偏大,經(jīng)過改進之后,曲線趨于平滑。
并且通過對比可知,WS?YOLO precision與mAP@0.5明顯更高,收斂速度也更為迅速。
3.5" 可視化結(jié)果與分析
圖6為不同情況下航拍視角小目標比較情況,展現(xiàn)出WS?YOLO面向密集目標、遮擋目標以及昏暗場景時,漏檢率與準確率均優(yōu)于基線模型。
4" 結(jié)" 語
針對無人機航拍小目標檢測難、誤差大的問題,本文基于YOLOv8n算法改進得到WS?YOLO檢測算法。首先通過卷積后嵌入SPD,減少因跨卷積和池化跳過而未被學習的小尺度目標圖像信息,有效提高模型小尺度目標識別能力;其次將損失函數(shù)CIoU替換為WIoU(v3),再對小型目標及復雜環(huán)境目標檢測時賦予較高權(quán)重;最后,加入新預測頭并引入雙分支拼接及三分支拼接,加大小目標感知度及關(guān)注度。在VisDrone2019和AI?TOD兩個數(shù)據(jù)集上的實驗結(jié)果表明,WS?YOLO算法在參數(shù)量顯著降低的情況下,檢測精度分別較基線模型提高了8.9%與7.7%。
因此,本文提出的WS?YOLO算法對無人機航拍小目標檢測有一定的優(yōu)勢,能為無人機領域的實際應用提供參考。
參考文獻
[1] 冷佳旭,莫夢竟成,周應華,等.無人機視角下的目標檢測研究進展[J].中國圖象圖形學報,2023,28(9):2563?2586.
[2] 王博,宋丹,王洪玉.無人機自主巡檢系統(tǒng)的關(guān)鍵技術(shù)研究[J].計算機工程與應用,2021,57(9):255?263.
[3] 黃志濱,陳桪.基于PSO?GA算法的無人機集群森林火災探查方法[J].計算機工程與應用,2023,59(9):289?294.
[4] 路世昌,邵旭倫,李丹.卡車?無人機協(xié)同救災物資避障配送問題研究[J].計算機工程與應用,2023,59(2):289?298.
[5] 蘇宸.基于無人機可見光影像的油菜苗情監(jiān)測[D].武漢:華中農(nóng)業(yè)大學,2023.
[6] 曾俊,盧瑞濤,楊小岡,等.六旋翼無人機空基智能排爆系統(tǒng)設計與實現(xiàn)[J].電光與控制,2023,30(5):61?65.
[7] 王棋.基于強化學習的海場景目標協(xié)同探測規(guī)劃技術(shù)研究[D].武漢:華中科技大學,2022.
[8] GIRSHICK R B, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2014: 580?587.
[9] GIRSHICK R. Fast R?CNN [C]// Proceedings of the IEEE International Conference on Computer Vision. New York: IEEE, 2015: 1440?1448.
[10] Lü Z W, JIN H F, ZHEN T, et al. Small object recognition algorithm of grain pests based on SSD feature fusion [J]. IEEE access, 2021, 9: 43202?43213.
[11] GE Z, LIU S T, WANG F, et al. YOLOX: Exceeding YOLO series in 2021 [EB/OL]. [2021?08?06]. https://arxiv.org/abs/2107.08430?context=cs.CV.
[12] LI C Y, LI L L, JIANG H L, et al. YOLOv6: A single?stage object detection framework for industrial applications [EB/OL]. [2022?09?07]. https://arxiv.org/abs/2209.02976.
[13] WANG C Y, BOCHKOVSKIY A, LIAO H Y M. YOLOv7: Trainable bag?of?freebies sets new state?of?the?art for real?time object detectors [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2023: 7464?7475.
[14] WANG G, CHEN Y, AN P, et al. UAV?YOLOv8: A small?object?detection model based on improved YOLOv8 for UAV aerial photography scenarios [J]. Sensors, 2023, 23(16): 7190.
[15] ZHAI X, HUANG Z, LI T, et al. YOLO?Drone: An optimized YOLOv8 network for tiny UAV object detection [J]. Electronics, 2023, 12(17): 3664.
[16] SUNKARA R, LUO T. No more strided convolutions or pooling: A new CNN building block for low?resolution images and small objects [C]// Joint European Conference on Machine Learning and Knowledge Discovery in Databases. Heidelberg: Springer, 2022: 443?459.
[17] TONG Z J, CHEN Y H, XU Z W, et al. Wise?IoU: Bounding box regression loss with dynamic focusing mechanism [EB/OL]. [2023?01?24]. https://arxiv.org/abs/2301.10051.
基金項目:四川輕化工大學人才引進項目(2019RC12)
作者簡介:王" 峣(1999—),男,四川廣安人,碩士研究生,研究方向為圖形圖像處理與計算機視覺。
蔣行國(1973—),男,重慶榮昌人,博士研究生,副教授,研究方向為信號處理。
秦海洋(1997—),男,重慶豐都人,碩士研究生,研究方向為計算機視覺。
黎" 明(1998—),男,貴州貴陽人,碩士研究生,研究方向為計算機視覺。
刁豪杰(1999—),男,四川達州人,碩士研究生,研究方向為三維人臉重建。