摘" 要: 針對(duì)無(wú)人機(jī)航拍圖像目標(biāo)密集、尺度小、特征信息易丟失、漏檢和誤檢嚴(yán)重,提出一種基于YOLOv8n改進(jìn)的航拍小目標(biāo)檢測(cè)算法GI?YOLOv8n。GI?YOLOv8n重新設(shè)計(jì)網(wǎng)絡(luò)結(jié)構(gòu),改進(jìn)特征融合網(wǎng)絡(luò),加入跨層連接,最大化保留小目標(biāo)位置細(xì)節(jié)信息和語(yǔ)義信息,新增極小目標(biāo)檢測(cè)層,提高檢測(cè)精度;引入基于注意力機(jī)制的動(dòng)態(tài)檢測(cè)頭,并用輕量化卷積模塊GSConv進(jìn)行改進(jìn),在尺度感知、空間感知、任務(wù)感知方面加強(qiáng)小目標(biāo)的定位性能;最后引入Inner?CIoU損失函數(shù),使用輔助邊界框計(jì)算損失,加快模型回歸速度,提高檢測(cè)性能。實(shí)驗(yàn)結(jié)果表明,在VisDrone2019數(shù)據(jù)集上,GI?YOLOv8n的精確率、召回率、平均檢測(cè)精度分別為50.7%、39.8%、41.5%,相較于YOLOv8n分別提高了7.1%、7.4%、8.7%,檢測(cè)速度為81 f/s,滿足航拍目標(biāo)檢測(cè)實(shí)時(shí)性要求。對(duì)比其他航拍目標(biāo)檢測(cè)算法,檢測(cè)精度和速度均有提升。
關(guān)鍵詞: 無(wú)人機(jī)航拍; 特征融合; 小目標(biāo)檢測(cè)層; 注意力機(jī)制; 動(dòng)態(tài)檢測(cè)頭; 損失函數(shù)
中圖分類號(hào): TN911.73?34; TP391.4" " " " " " " " "文獻(xiàn)標(biāo)識(shí)碼: A" " " " " " " " " 文章編號(hào): 1004?373X(2025)03?0026?09
Improved small object detection algorithm based on YOLOv8n
for UAV aerial photography
LEI Bangjun1, 2, 3, YU Ao1, 2, 3, WU Zhengping1, 2, 3, YU Kuai1, 2
(1. Hubei Key Laboratory of Intelligent Visual Monitoring for Hydropower Engineering, Yichang 443002, China;
2. College of Computer and Information Technology, China Three Gorges University, Yichang 443002, China;
3. Yichang Key Laboratory of Hydropower Engineering Vision Supervision, Yichang 443002, China)
Abstract: The UAV aerial photography image objects are dense, their scales are small, their feature information is prone to being lost, and the algorithm leakage and misdetection occur frequently, so an improved aerial photography small object detection algorithm GI?YOLOv8n based on YOLOv8n is proposed. In the GI?YOLOv8n, the network structure are redesigned, the feature fusion network is improved, the cross?layer connection is joined, the location detail information and semantic information of the small objects are preserved at a maximized level, and a new very small object detection layer is added to improve the detection accuracy. A dynamic detection head based on the attention mechanism is introduced and then improved with the lightweight convolutional module GSConv, so as to enhance the small object localization performance in terms of scale?awareness, spatial?awareness and task?awareness. The Inner?CIoU loss function is introduced and the auxiliary bounding box is used to compute the loss, which accelerate model regression and improve the detection performance. Experimental results show that, on the VisDrone2019 dataset, the precision rate, recall rate and mean average precision of the GI?YOLOv8n are 50.7%, 39.8% and 41.5%, which are improved by 7.1%, 7.4% and 8.7%, respectively, in comparison with those of the YOLOv8n, and the detection speed of the GI?YOLOv8n is 81 f/s, which meets the real?time requirements for aerial object detection. In comparison with the other aerial photography object detection algorithms, both the detection accuracy and speed of the GI?YOLOv8n are improved.
Keywords: UAV aerial photography; feature fusion; small object detection layer; attention mechanism; dynamic detection head; loss function
0" 引" 言
隨著科學(xué)技術(shù)的快速發(fā)展,無(wú)人機(jī)航拍在農(nóng)業(yè)監(jiān)測(cè)、城市規(guī)劃與建筑、電力巡檢、軍事情報(bào)采集等領(lǐng)域發(fā)揮了重要的作用。但是由于無(wú)人機(jī)飛行高度高、視野廣,拍攝目標(biāo)密集、尺度小、相互遮擋、背景復(fù)雜,給檢測(cè)帶來(lái)了較大的困難,提高無(wú)人機(jī)檢測(cè)精度成為了一個(gè)亟待解決的熱點(diǎn)問(wèn)題。
伴隨人工智能的進(jìn)步,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法性能得到了極大改善。目前,基于深度學(xué)習(xí)的航拍目標(biāo)檢測(cè)算法可以分為兩類:一類是以Mask R?CNN[1]、Faster R?CNN[2]為代表的兩階段目標(biāo)檢測(cè)算法,首先生成候選目標(biāo)區(qū)域,然后對(duì)這些區(qū)域進(jìn)行分類和定位。該類算法的優(yōu)點(diǎn)是精度高、漏檢和誤檢率低,但也存在計(jì)算復(fù)雜、推理速度慢等缺點(diǎn);另一類是以SSD[3]、YOLO[4?9]系列為代表的一階段目標(biāo)檢測(cè)算法,利用回歸的方式完成分類和定位,兼顧精度的同時(shí)實(shí)時(shí)性較高。文獻(xiàn)[10]提出一種基于加權(quán)感受野和跨層融合的遙感小目標(biāo)檢測(cè)算法,解決遙感圖像中小目標(biāo)特征易丟失等問(wèn)題。文獻(xiàn)[11]提出一種基于YOLOv5的輕量化無(wú)人機(jī)航拍目標(biāo)檢測(cè)算法,降低模型復(fù)雜度。文獻(xiàn)[12]針對(duì)無(wú)人機(jī)拍攝對(duì)象種類繁雜等問(wèn)題,在YOLOv5s中加入CA注意力機(jī)制和雙向加權(quán)金字塔網(wǎng)絡(luò)(BiFPN),改善模型對(duì)小目標(biāo)檢測(cè)的準(zhǔn)確性。文獻(xiàn)[13]針對(duì)遙感圖像目標(biāo)檢測(cè)精度低等問(wèn)題,在YOLOX基礎(chǔ)上構(gòu)建CBSPNet,并引入跳躍連接優(yōu)化的特征融合網(wǎng)絡(luò),增強(qiáng)特征的提取能力和優(yōu)化對(duì)目標(biāo)的邊緣檢測(cè)。盡管上述方法在小目標(biāo)檢測(cè)任務(wù)上取得了不錯(cuò)的表現(xiàn),但也存在計(jì)算復(fù)雜度高、實(shí)行性不夠、復(fù)雜場(chǎng)景下目標(biāo)難以定位等問(wèn)題。當(dāng)前航拍小目標(biāo)檢測(cè)仍然存在以下難點(diǎn):
1) 小目標(biāo)尺度小,在特征提取過(guò)程中信息易丟失;
2) 相較于中、大目標(biāo),小目標(biāo)定位困難;
3) 航拍場(chǎng)景復(fù)雜、目標(biāo)密集。
對(duì)于上面航拍檢測(cè)任務(wù)存在的難點(diǎn)問(wèn)題,本文提出了一種基于YOLOv8n的改進(jìn)算法GI?YOLOv8n。GI?YOLOv8n改進(jìn)特征融合網(wǎng)絡(luò),加入跨層連接,保留小目標(biāo)位置細(xì)節(jié)信息和語(yǔ)義信息,針對(duì)航拍圖像分辨率低、小目標(biāo)尺度不敏感,合理增加極小目標(biāo)檢測(cè)層,提高檢測(cè)精度;引入基于注意力機(jī)制的動(dòng)態(tài)檢測(cè)頭,并用GSConv[14]輕量化卷積模塊進(jìn)行改進(jìn),加強(qiáng)復(fù)雜背景下小目標(biāo)的定位能力;使用輔助邊界框損失函數(shù)Inner?CIoU[15]加速模型收斂速度。
1" 改進(jìn)算法GI?YOLOv8n
由于無(wú)人機(jī)飛行的高度較高與目標(biāo)距離較遠(yuǎn),被拍攝的目標(biāo)尺度差異較大,部分互相遮擋,給檢測(cè)帶來(lái)了較大的困難。原始YOLOv8n算法在無(wú)人機(jī)航拍檢測(cè)任務(wù)上,精度低、誤檢和漏檢嚴(yán)重?;诖?,本文提出了一種YOLOv8n的改進(jìn)算法GI?YOLOv8n。如圖1所示,GI?YOLOv8n網(wǎng)絡(luò)由Backbone、Neck、Head三部分構(gòu)成。Backbone主干網(wǎng)絡(luò)主要負(fù)責(zé)提取輸入圖像的特征信息;Neck采用FPN?PAN結(jié)構(gòu)[16?17]對(duì)來(lái)自主干網(wǎng)絡(luò)的語(yǔ)義信息進(jìn)行特征融合;Head則生成最終的目標(biāo)檢測(cè)結(jié)果。
1) Backbone:GI?YOLOv8n主干網(wǎng)絡(luò)主要包括CBS、C2f、SPPF模塊。CBS提取輸入圖像的局部特征信息。C2f通過(guò)split操作和跳層連接來(lái)加強(qiáng)特征信息流動(dòng)減少計(jì)算量,增強(qiáng)網(wǎng)絡(luò)的學(xué)習(xí)能力。SPPF采用3個(gè)5×5的池化核在不同尺度上對(duì)特征圖進(jìn)行池化,捕捉多尺度信息,提升模型的魯棒性。
2) Neck:采用FPN?PAN結(jié)構(gòu)進(jìn)行特征融合,其中FPN(Feature Pyramid Network)對(duì)來(lái)自主干網(wǎng)絡(luò)提取的深層語(yǔ)義信息進(jìn)行自深到淺的傳遞,PAN(Path Aggregation Network)對(duì)來(lái)自FPN的信息進(jìn)行自淺到深的傳遞。GI?YOLOv8n改進(jìn)FPN?PAN,加入跨層連接,充分利用主干網(wǎng)絡(luò)中豐富的目標(biāo)位置信息,提高模型的表達(dá)能力。
3) Head:在20×20、40×40、80×80三個(gè)特征層上進(jìn)行檢測(cè)。GI?YOLOv8n設(shè)計(jì)GSDynamic Head在尺度感知、空間感知、任務(wù)感知方面加強(qiáng)復(fù)雜場(chǎng)景下小目標(biāo)的定位能力,新增160×160極小目標(biāo)檢測(cè)層,提高檢測(cè)精度。
1.1" 網(wǎng)絡(luò)重設(shè)計(jì)
1.1.1" 改進(jìn)FPN?PAN網(wǎng)絡(luò)
在卷積神經(jīng)網(wǎng)絡(luò)中,淺層特征圖感受野較小,往往包含目標(biāo)更加豐富的位置信息和細(xì)節(jié)紋理特征。深層特征圖由于經(jīng)過(guò)多次卷積操作提取特征,含有更加豐富的語(yǔ)義信息,但是目標(biāo)細(xì)節(jié)信息丟失嚴(yán)重。YOLOv8n采用FPN?PAN結(jié)構(gòu)在不同層次上融合多尺度特征信息,提高模型的適應(yīng)性。但是頻繁的上下采樣操作會(huì)導(dǎo)致特征圖的尺寸在多次采樣過(guò)程中急劇增加或減少,從而造成細(xì)節(jié)信息的丟失。為了充分利用主干網(wǎng)絡(luò)原始特征圖而不經(jīng)過(guò)FPN?PAN處理后的信息,GI?YOLOv8n改進(jìn)FPN?PAN,增加跨層連接,強(qiáng)化小目標(biāo)細(xì)節(jié)信息的保留。如圖2所示,將Backbone主干網(wǎng)絡(luò)輸出的80×80、40×40的特征圖額外與PAN網(wǎng)絡(luò)中相同尺寸特征圖進(jìn)行跨層連接。改進(jìn)后的特征融合網(wǎng)絡(luò)在保留深層語(yǔ)義信息的同時(shí),攜帶更多小目標(biāo)的位置和細(xì)節(jié)信息,進(jìn)一步提高了檢測(cè)性能。
1.1.2" 增加極小目標(biāo)檢測(cè)層
小目標(biāo)檢測(cè)精度不高一直是無(wú)人機(jī)航拍檢測(cè)任務(wù)的一個(gè)難點(diǎn)。尺寸大小為640×640的圖像輸入網(wǎng)絡(luò)后,依次經(jīng)過(guò)Backbone、Neck,最后在Head進(jìn)行檢測(cè)。Head一共有三個(gè)檢測(cè)頭,對(duì)應(yīng)特征圖空間大小分別為80×80、40×40、20×20,代表著檢測(cè)大、中、小目標(biāo)。原始YOLOv8n小目標(biāo)檢測(cè)頭最小能夠檢測(cè)像素在8 pixel×8 pixel以上的目標(biāo),但是實(shí)際上很多航拍目標(biāo)尺寸比8 pixel×8 pixel更小,導(dǎo)致小目標(biāo)檢測(cè)效果不好。基于此,GI?YOLOv8n新增160×160極小目標(biāo)檢測(cè)頭,提高檢測(cè)精度。如圖3虛線框所示,在FPN網(wǎng)絡(luò)中80×80尺寸大小的特征圖后面增加一個(gè)上采樣操作,突破感受野極限,將特征圖尺寸轉(zhuǎn)換為160×160后,與Backbone相同尺度的特征圖進(jìn)行融合。PAN網(wǎng)絡(luò)新增一個(gè)下采樣操作與之匹配,隨后將160×160特征圖信息傳遞到檢測(cè)頭中。經(jīng)過(guò)改進(jìn)后的網(wǎng)絡(luò)4種不同尺度的檢測(cè)頭更加適應(yīng)無(wú)人機(jī)航拍圖像復(fù)雜尺度的劇烈變化。
1.2" 改進(jìn)動(dòng)態(tài)檢測(cè)頭
1.2.1" 引入GSConv
深度可分離卷積(Depthwise Separable Convolution, DSC)是一種輕量級(jí)的卷積模塊,被廣泛應(yīng)用于移動(dòng)端,可以有效降低模型的參數(shù)量和計(jì)算量,但是在一定程度上割裂了通道之間的聯(lián)系,帶來(lái)通道信息的丟失,無(wú)法捕捉全局信息。為了解決這個(gè)問(wèn)題,引入鬼影混洗卷積GSConv有效提取特征信息,減少冗余信息的干擾,使得網(wǎng)絡(luò)更加輕量化。如圖4所示,GSConv由標(biāo)準(zhǔn)卷積、DSC、shuffle三部分組成。輸入通道數(shù)為[C1]的特征圖首先經(jīng)過(guò)標(biāo)準(zhǔn)卷積作用,輸出通道數(shù)變?yōu)閇C2 2],接著經(jīng)過(guò)深度可分離卷積,提取特征信息的同時(shí)降低計(jì)算的復(fù)雜度。將深度可分離卷積輸出的特征圖與第一次卷積輸出的特征圖在通道維度上進(jìn)行拼接,最后經(jīng)過(guò)混洗將標(biāo)準(zhǔn)卷積提取的特征信息均勻地滲透到DSC的每一個(gè)部分,提供更加豐富的上下文信息。
1.2.2" 使用GSConv改進(jìn)動(dòng)態(tài)檢測(cè)頭
檢測(cè)頭起到分類和定位的作用。無(wú)人機(jī)航拍圖像目標(biāo)密集、遮擋嚴(yán)重,高效的檢測(cè)頭可以加強(qiáng)小目標(biāo)的邊界定位能力,提升檢測(cè)的性能。受動(dòng)態(tài)檢測(cè)頭(Dynamic Head,DyHead)[18]啟發(fā),GI?YOLOv8n使用GSConv改進(jìn)DyHead,充分利用全局上下文信息,更加精確地捕獲小目標(biāo)。如圖5所示,改進(jìn)后的動(dòng)態(tài)檢測(cè)頭在尺度感知、空間感知、任務(wù)感知三個(gè)方面運(yùn)用注意力機(jī)制,其中,尺度感知注意力模塊學(xué)習(xí)各種語(yǔ)義級(jí)別的相對(duì)重要性,空間感知注意力模塊學(xué)習(xí)特征的一致性表達(dá),任務(wù)感知注意力模塊指導(dǎo)不同的特征通道分別支持不同的任務(wù),例如分類、框回歸、關(guān)鍵點(diǎn)學(xué)習(xí)等任務(wù),三個(gè)注意力模塊構(gòu)成了高效的檢測(cè)頭。
給定特征輸入張量[F∈RL×S×C],改進(jìn)后的動(dòng)態(tài)檢測(cè)頭數(shù)學(xué)表達(dá)過(guò)程如下:
[WF=πCπSπLF?F?F] (1)
式中:[πC?]表示任務(wù)感知注意力;[πS?]表示空間感知注意力;[πL?]表示尺度感知注意力。
1) 尺度感知注意力[πL?]的定義為:
[πLF?F=σf1SCS,CF?F] (2)
[σx=max0,min1,x+12] (3)
式中:[f(?)]是1×1卷積層近似的線性變換函數(shù);[σ(x)]是Hard?Sigmoid激活函數(shù)。
2) 空間感知注意力[πS?]的定義為:
[πSF?F=1Ll=1Lk=1Kωl,k?Fl;pk+Δpk;c?Δmk] (4)
式中:[K]表示稀疏采樣的數(shù)目;[pk+Δpk]為自主學(xué)習(xí)的空間偏移量[Δpk]移動(dòng)的位置,以聚焦判別區(qū)域;[Δmk]表示位置[pk]上自主學(xué)習(xí)的重要標(biāo)量。
3) 任務(wù)感知注意力[πC?]的定義為:
[πCF?F=maxα1F?FC+β1F,α2F?FC+β2F] (5)
[θ?=α1,α2, β1, β2T] (6)
式中:[FC]表示[C]通道的特征切片;[θ?]表示控制激活閾值的可學(xué)習(xí)超函數(shù)。
1.3" 改進(jìn)損失函數(shù)
YOLOv8回歸損失采用DFL Loss和CIoU Loss。CIoU損失函數(shù)綜合考慮了回歸框的寬高、縱橫比以及真實(shí)框和預(yù)測(cè)框之間的中心距離,在一定程度上加快了預(yù)測(cè)框的回歸收斂速度,但是也存在縱橫比修正復(fù)雜、正負(fù)樣本分配不均衡、魯棒性不足的缺點(diǎn)。CIoU計(jì)算公式如下:
[LCIoU=1-IoU+ρ2b,bgtc2+αv] (7)
式中:IoU為預(yù)測(cè)框與真實(shí)框的交并比,范圍為[0, 1];[b]、[bgt]分別為預(yù)測(cè)框和真實(shí)框的中心點(diǎn);[c]為包含預(yù)測(cè)框與真實(shí)框的最小矩形對(duì)角線;[α]為權(quán)衡參數(shù);[v]為評(píng)估寬、高比例一致性的參數(shù);[ρ?]表示兩個(gè)中心點(diǎn)之間的歐幾里得距離。
針對(duì)上述情況,使用輔助邊界框損失函數(shù)Inner?CIoU改進(jìn)CIoU。通過(guò)對(duì)邊界框損失函數(shù)進(jìn)行分析,發(fā)現(xiàn)區(qū)分不同的回歸樣本,使用不同尺度的輔助邊界框來(lái)計(jì)算損失,可以加快邊界框的回歸速度,提高檢測(cè)性能。Inner?CIoU引入比例因子比率(ratio)控制計(jì)算損失的輔助邊界框的比例大小。對(duì)于高質(zhì)量IoU樣本使用較小的ratio計(jì)算損失,對(duì)于低質(zhì)量IoU樣本使用較大的ratio計(jì)算損失。航拍圖像分辨率低,模型對(duì)小目標(biāo)尺度不敏感,邊界框回歸誤差大,ratio應(yīng)該設(shè)置的較大。Inner?CIoU的計(jì)算公式如下:
[LInner?CIoU=LCIoU+IoU-IoUinner] (8)
[IoUinner]的計(jì)算公式如下:
[bgtl=xgtc-wgt?ratio2," " "bgtr=xgtc+wgt?ratio2] (9)
[bgtt=ygtc-hgt?ratio2," " "bgtb=ygtc+hgt?ratio2] (10)
[bl=xc-w?ratio2," " "br=xc+w?ratio2] (11)
[bt=yc-h?ratio2," " "bb=yc+h?ratio2] (12)
[inter=minbgtr,br-maxbgtl,bl?minbgtb,bb-maxbgtt,bt] (13)
[union=wgt?hgt?ratio2+w?h? ratio2 -inter] (14)
[IoUinner=interunion] (15)
式中:[xgtc]、[xc]分別表示真實(shí)框和預(yù)測(cè)框中心點(diǎn)橫坐標(biāo);[ygtc]、[yc]分別表示真實(shí)框和預(yù)測(cè)框中心點(diǎn)縱坐標(biāo);[wgtc]、[wc]分別表示真實(shí)框和預(yù)測(cè)框的寬;[hgtc]、[hc]分別表示真實(shí)框和預(yù)測(cè)框的高。
2" 實(shí)驗(yàn)結(jié)果與分析
2.1" 實(shí)驗(yàn)環(huán)境
本文實(shí)驗(yàn)環(huán)境為:NVIDIA GeForce RTX 3090,顯存24 GB,Ubuntu 20.04操作系統(tǒng),Python 3.8,CUDA 11.3,PyTorch 1.12.1,YOLOv8依賴庫(kù)ultralytics,版本為8.0.202。訓(xùn)練詳細(xì)參數(shù)如表1所示。
2.2" 數(shù)據(jù)集
為了驗(yàn)證改進(jìn)算法GI?YOLOv8n的有效性,選取公開(kāi)無(wú)人機(jī)航拍數(shù)據(jù)集VisDrone2019進(jìn)行實(shí)驗(yàn)驗(yàn)證。VisDrone2019數(shù)據(jù)集由天津大學(xué)機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘?qū)嶒?yàn)室發(fā)布,由無(wú)人機(jī)拍攝于中國(guó)14座不同的城市,涵蓋了城市和農(nóng)村多種多樣的環(huán)境,目標(biāo)密集、尺度小,遮擋嚴(yán)重,給檢測(cè)帶來(lái)了較大的困難。數(shù)據(jù)集一共8 629張圖片,其中訓(xùn)練集6 471張,驗(yàn)證集548張,測(cè)試集1 610張,包含10個(gè)目標(biāo)類別,分別為pedestrian、people、bicycle、car、van、truck、tricycle、awning?tricycle、bus、motor。
2.3" 評(píng)價(jià)指標(biāo)
本文使用精確率[P](Precision)、召回率[R](Recall)、平均檢測(cè)精度(mean Average Precision, mAP)、每秒幀數(shù)(Frames Per Second, FPS)作為評(píng)估模型性能的指標(biāo)。精確率、召回率、平均檢測(cè)精度的計(jì)算如下:
[P=TPTP+FP×100%] (16)
[R=TPTP+FN×100%] (17)
[AP=01PRdR] (18)
[mAP=i=1kAPik] (19)
式中:TP表示模型正確檢測(cè)出目標(biāo)類別的正樣本數(shù)量;FP表示模型錯(cuò)誤將背景檢測(cè)為目標(biāo)類別的負(fù)樣本數(shù)量;FN表示模型錯(cuò)誤將目標(biāo)類別檢測(cè)為背景的正樣本數(shù)量。
2.4" 改進(jìn)模塊消融實(shí)驗(yàn)分析
為了驗(yàn)證本文提出的三個(gè)改進(jìn)模塊的先進(jìn)性,在VisDrone2019數(shù)據(jù)集上設(shè)計(jì)了幾組橫向消融實(shí)驗(yàn),進(jìn)行對(duì)比分析。
2.4.1" 網(wǎng)絡(luò)重設(shè)計(jì)實(shí)驗(yàn)分析
為了驗(yàn)證重新設(shè)計(jì)網(wǎng)絡(luò)的優(yōu)越性,與YOLOv8n以及YOLOv8n?p6進(jìn)行實(shí)驗(yàn)對(duì)比分析,其中YOLOv8n?p6表示在原始YOLOv8n網(wǎng)絡(luò)的三個(gè)檢測(cè)頭上新增一個(gè)10×10尺度的檢測(cè)頭,實(shí)驗(yàn)結(jié)果如表2所示。
從表2可以看出:經(jīng)過(guò)重新設(shè)計(jì)的網(wǎng)絡(luò)在[P]、[R]、mAP上相較于YOLOv8n分別提高了2.8%、3.8%、3.9%;對(duì)比YOLOv8n?p6,在[P]、[R]、mAP上分別提高了2.6%、3.4%、3.7%。說(shuō)明GI?YOLOv8n算法改進(jìn)了FPN?PAN特征融合網(wǎng)絡(luò),在保留深層特征圖豐富語(yǔ)義信息的同時(shí),充分利用了淺層特征圖的細(xì)節(jié)信息,新增160×160極小目標(biāo)檢測(cè)層,顯著提高對(duì)小目標(biāo)尺度的敏感性,提升檢測(cè)的效果。
2.4.2" 改進(jìn)動(dòng)態(tài)檢測(cè)頭實(shí)驗(yàn)分析
將引入動(dòng)態(tài)檢測(cè)頭的模型記為YOLOv8n?DyHead,使用GSConv改進(jìn)動(dòng)態(tài)檢測(cè)頭的模型記為YOLOv8n?GSDyHead,改進(jìn)動(dòng)態(tài)檢測(cè)頭橫向?qū)嶒?yàn)結(jié)果如表3所示。
從表3可以看出:YOLOv8n?GSDyHead相較于YOLOv8n在[P]、[R]、mAP上分別提高了2.4%、1.9%、2.1%;對(duì)比YOLOv8n?DyHead在[P]、[R]、mAP上分別提高了0.1%、0.5%、0.5%。說(shuō)明改進(jìn)后的動(dòng)態(tài)檢測(cè)頭可以加強(qiáng)低分辨率圖像中小目標(biāo)的定位能力,從而提高檢測(cè)性能。
2.4.3" 改進(jìn)損失函數(shù)實(shí)驗(yàn)分析
為了驗(yàn)證改進(jìn)后的損失函數(shù)更加適合小目標(biāo)的尺度,與CIoU、MPDIoU[19]損失函數(shù)進(jìn)行對(duì)比實(shí)驗(yàn)分析,實(shí)驗(yàn)結(jié)果如表4所示。
從表4可以看出:使用Inner?CIoU損失函數(shù)改進(jìn)后的模型相較于YOLOv8n在[P]、[R]、mAP上分別提高了0.4%、0.2%、0.3%;對(duì)比加入MPDIoU損失函數(shù)的模型在[P]、[R]、mAP上分別提高了1%、0.1%、0.4%。說(shuō)明加入輔助邊界框來(lái)計(jì)算損失,更加符合小目標(biāo)的特性,回歸更加高效。
2.5" 綜合消融實(shí)驗(yàn)分析
以YOLOv8n為基線網(wǎng)絡(luò),在VisDrone2019數(shù)據(jù)集上對(duì)三個(gè)改進(jìn)模塊進(jìn)行單獨(dú)添加和組合添加的綜合消融實(shí)驗(yàn)分析,實(shí)驗(yàn)結(jié)果如表5所示。其中“√”表示添加改進(jìn)模塊,表中第一行表示原始YOLOv8n的實(shí)驗(yàn)結(jié)果。
從表5可以看出,重新設(shè)計(jì)的網(wǎng)絡(luò)結(jié)構(gòu)在[P]、[R]、mAP上相較于YOLOv8n分別提高了2.8%、3.8%、3.9%。說(shuō)明改進(jìn)FPN?PAN特征融合網(wǎng)絡(luò),加入跨層連接,攜帶了更多小目標(biāo)語(yǔ)義信息和位置信息,增加了極小目標(biāo)檢測(cè)頭,提高了對(duì)小目標(biāo)的捕獲能力。在此基礎(chǔ)上,加入GSConv改進(jìn)的動(dòng)態(tài)檢測(cè)頭,減少冗余信息,豐富全局上下文信息,增強(qiáng)復(fù)雜場(chǎng)景下小目標(biāo)的定位能力,[P]、[R]、mAP分別提高了4.9%、2.7%、4.4%。最后使用Inner?CIoU損失函數(shù)改進(jìn)CIoU,在不添加新?lián)p失項(xiàng)的情況下,加快模型回歸速度,[R]、mAP分別提高了0.9%、0.4%。綜合來(lái)看,改進(jìn)的算法GI?YOLOv8n在[P]、[R]、mAP上相較于YOLOv8n提升了7.1%、7.4%、8.7%,顯著提高了航拍小目標(biāo)檢測(cè)的精度,F(xiàn)PS為81 f/s,滿足實(shí)時(shí)性30 f/s的要求。改進(jìn)后的算法與原始算法指標(biāo)對(duì)比曲線圖如圖6所示。
分析圖6可得,改進(jìn)后的算法在精確率、召回率、平均檢測(cè)精度指標(biāo)方面明顯優(yōu)于原始算法,魯棒性更好。
2.6" 對(duì)比實(shí)驗(yàn)分析
為了驗(yàn)證改進(jìn)算法在無(wú)人機(jī)航拍任務(wù)上的優(yōu)越性,將GI?YOLOv8n與其他主流算法在VisDrone2019數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)對(duì)比,實(shí)驗(yàn)環(huán)境和參數(shù)設(shè)置均保持一致。對(duì)比實(shí)驗(yàn)主要從各類別AP值和[P]、FPS等綜合指標(biāo)進(jìn)行全面的對(duì)比驗(yàn)證。VisDrone2019數(shù)據(jù)集各類別AP值對(duì)比如表6所示。
從表6可以看出,GI?YOLOv8n在pedestrian、people、bicycle、car、van、awn?tricycle、bus、motor這八個(gè)類別上取得了最佳的檢測(cè)效果,AP值分別為46.9%、39.0%、15.9%、82.7%、46.8%、17.5%、56.1%、49.7%。相較于YOLOv8n,在小目標(biāo)類別pedestrian、bicycle、tricycle、awn?tricycle上AP值分別提升了12.6%、8.1%、6.0%、5.6%。對(duì)比次優(yōu)的YOLOX,mAP高出1.2%。相較于Faster R?CNN、RetinaNet經(jīng)典目標(biāo)檢測(cè)算法,mAP分別提高了19.8%、27.6%。實(shí)驗(yàn)結(jié)果充分表明改進(jìn)算法在面對(duì)復(fù)雜多樣的航拍環(huán)境時(shí),能夠有效保留小目標(biāo)的細(xì)節(jié)特征信息,精準(zhǔn)定位目標(biāo)邊界,有效提升檢測(cè)性能。
為了更進(jìn)一步驗(yàn)證改進(jìn)算法的優(yōu)勢(shì),在VisDrone2019數(shù)據(jù)集上將改進(jìn)算法與YOLOv5m、YOLOX等主流算法在[P]、mAP、FPS指標(biāo)上進(jìn)行全面實(shí)驗(yàn)對(duì)比,實(shí)驗(yàn)結(jié)果如表7所示。對(duì)比分析表7中數(shù)據(jù)可知,GI?YOLOv8n平均檢測(cè)精度最高,為41.5%,相較于Faster R?CNN、RetinaNet、YOLOX、YOLOv5s、YOLOv5m、YOLOv7?tiny、YOLOv8n分別提升了19.8%、27.6%、1.2%、8.5%、4.2%、6.0%、8.7%。相較于Anchor?free的YOLOX,P、FPS分別提升了2.1%、39.6%;對(duì)比Anchor?based的YOLOv5m,P、FPS分別提升了4.2%、47.3%。
綜合表6和表7的實(shí)驗(yàn)結(jié)果來(lái)看,GI?YOLOv8n在無(wú)人機(jī)航拍檢測(cè)任務(wù)上優(yōu)勢(shì)明顯、檢測(cè)精度高、漏檢率低,F(xiàn)PS滿足實(shí)時(shí)性要求。
為了更進(jìn)一步驗(yàn)證改進(jìn)算法GI?YOLOv8n在無(wú)人機(jī)航拍場(chǎng)景中的檢測(cè)效果,選取VisDrone2019數(shù)據(jù)集中難度較大的圖片進(jìn)行可視化檢測(cè)結(jié)果分析。如圖7所示,在高空小目標(biāo)、遠(yuǎn)距離密集小目標(biāo)、夜間光照復(fù)雜背景、多尺度目標(biāo)4個(gè)場(chǎng)景下,改進(jìn)算法GI?YOLOv8n能夠檢測(cè)出更多更遠(yuǎn)的車輛、行人、摩托車,誤檢和漏檢的目標(biāo)大大減少,顯著提高了小目標(biāo)檢測(cè)的精度,在無(wú)人機(jī)航拍檢測(cè)任務(wù)上具有較大優(yōu)勢(shì)。
2.7" 模型泛化性實(shí)驗(yàn)驗(yàn)證
為了驗(yàn)證改進(jìn)算法在其他數(shù)據(jù)集上面依然適用,泛化性好,在公開(kāi)數(shù)據(jù)集VOC2007上進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表8所示。
從表8可得,改進(jìn)算法在召回率、平均檢測(cè)精度上相較于YOLOv8n分別提高了1.3%、0.4%,F(xiàn)PS為230 f/s,實(shí)時(shí)性較高。綜合以上實(shí)驗(yàn)說(shuō)明,改進(jìn)算法不僅對(duì)航拍目標(biāo)檢測(cè)效果好、精度高,在其他公開(kāi)數(shù)據(jù)集上效果依舊優(yōu)異,泛化能力強(qiáng)。
3" 結(jié)" 語(yǔ)
本文提出一種改進(jìn)YOLOv8n的無(wú)人機(jī)航拍視角下小目標(biāo)檢測(cè)算法。首先優(yōu)化特征融合網(wǎng)絡(luò),新增極小目標(biāo)檢測(cè)層,加強(qiáng)小目標(biāo)細(xì)節(jié)信息和語(yǔ)義信息的保留,提高檢測(cè)精度。其次,使用輕量化卷積GSConv改進(jìn)動(dòng)態(tài)檢測(cè)頭,從尺度、空間、多任務(wù)三方面加強(qiáng)目標(biāo)的定位性能。最后使用Inner?CIoU損失函數(shù),加快模型收斂速度。實(shí)驗(yàn)表明改進(jìn)后的算法在VisDrone2019數(shù)據(jù)集上精確率、平均檢測(cè)精度為50.7%、41.5%,相較于原始算法分別提高了7.1%、8.7%。顯著提高了航拍小目標(biāo)的檢測(cè)精度。與其他先進(jìn)目標(biāo)檢測(cè)算法相比,綜合性能較好,能夠滿足航拍檢測(cè)任務(wù)精度和實(shí)時(shí)性的要求。但是改進(jìn)算法對(duì)無(wú)人機(jī)小目標(biāo)檢測(cè)仍有提升空間,下一步將探索知識(shí)蒸餾技術(shù),更進(jìn)一步提高檢測(cè)精度。
注:本文通訊作者為吳正平。
參考文獻(xiàn)
[1] HE K M, GKIOXARI G, DOLLáR P, et al. Mask R?CNN [C]// Proceedings of the IEEE International Conference on Computer Vision. New York: IEEE, 2017: 2980?2988.
[2] REN S Q, HE K M, GIRSHICK R, et al. Faster R?CNN: Towards real?time object detection with region proposal networks [J]. IEEE transactions on pattern analysis amp; machine intelligence, 2017, 39(6): 1137?1149.
[3] LIU W, ANGUELOV D, ERHAN D, et al. SSD: Single shot multibox detector [C]// Proceedings of 14th European Conference on Computer Vision. Heideberg: Springer, 2016: 21?37.
[4] REDMON J, FARHADI A. YOLO9000: Better, faster, stronger [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2017: 6517?6525.
[5] REDMON J, FARHADI A. YOLOv3: An incremental improvement [EB/OL]. [2018?04?08]. https://arxiv.org/abs/1804.02767?context=cs.LG.html.
[6] BOCHKOVSKIY A, WANG C Y, LIAO H Y M. YOLOv4: Optimal speed and accuracy of object detection [EB/OL]. [2020?04?23]. https://arxiv.org/abs/2004.10934.
[7] 聶晶鑫.基于改進(jìn)YOLOv5的鐵路接觸網(wǎng)絕緣子檢測(cè)方法[J].現(xiàn)代電子技術(shù),2024,47(2):31?36.
[8] 韓曉冰,胡其勝,趙小飛,等.改進(jìn)YOLOv7?tiny的手語(yǔ)識(shí)別算法研究[J].現(xiàn)代電子技術(shù),2024,47(1):55?61.
[9] LOU H T, DUAN X H, GUO J M, et al. DC?YOLOv8: Small?size object detection algorithm based on camera sensor [J]. Electronics, 2023, 12(10): 2323.
[10] 張紹文,史衛(wèi)亞,張世強(qiáng),等.基于加權(quán)感受野和跨層融合的遙感小目標(biāo)檢測(cè)[J].電子測(cè)量技術(shù),2023,46(18):129?138.
[11] 王恒濤,張上,陳想,等.輕量化無(wú)人機(jī)航拍目標(biāo)檢測(cè)算法[J].電子測(cè)量技術(shù),2022,45(19):167?174.
[12] 劉展威,陳慈發(fā),董方敏.基于YOLOv5s的航拍小目標(biāo)檢測(cè)改進(jìn)算法研究[J].無(wú)線電工程,2023,53(10):2286?2294.
[13] 王子健,王云艷,武華軒.基于改進(jìn)YOLOX的遙感圖像目標(biāo)檢測(cè)[J].揚(yáng)州大學(xué)學(xué)報(bào)(自然科學(xué)版),2023,26(5):64?71.
[14] LI H L, LI J, WEI H B, et al. Slim?neck by GSConv: A better design paradigm of detector architectures for autonomous vehicles [EB/OL]. [2024?10?06]. https://doi.org/10.48550/arXiv.2206.02424.
[15] ZHANG H, XU C, ZHANG S J. Inner?IoU: More effective intersection over union loss with auxiliary bounding box [EB/OL]. [2023?11?08]. https://doi.org/10.48550/arXiv.2311.02877.
[16] LIN T Y, DOLLáR P, GIRSHICK R, et al. Feature pyramid networks for object detection [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2017: 936?944.
[17] LIU S, QI L, QIN H F, et al. Path aggregation network for instance segmentation [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2018: 8759?8768.
[18] DAI X Y, CHEN Y P, XIAO B, et al. Dynamic head: Unifying object detection heads with attentions [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2021: 7373?7382.
[19] MA S L, XU Y. MPDIoU: A loss for efficient and accurate bounding box regression [EB/OL]. [2023?07?25]. https://doi.org/10.48550/arXiv.2307.07662.
[20] YU W P, YANG T, CHEN C. Towards resolving the challenge of long?tail distribution in UAV images for object detection [C]// Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision. New York: IEEE, 2021: 3257?3266.
[21] GE Z, LIU S T, WANG F, et al. YOLOX: Exceeding YOLO series in 2021 [EB/OL]. [2022?04?05]. https://arxiv.org/abs/2107.08430.