齊向明,柴 蕊,高一萌
遼寧工程技術(shù)大學(xué) 軟件學(xué)院,遼寧 葫蘆島 125105
目標(biāo)檢測(cè)是計(jì)算機(jī)視覺領(lǐng)域的一個(gè)重要分支,廣泛應(yīng)用于工業(yè)制造、自動(dòng)駕駛和醫(yī)療影像等領(lǐng)域。其中小目標(biāo)因特征難區(qū)分、分辨率低、背景復(fù)雜和上下文信息有限等特點(diǎn),難以準(zhǔn)確識(shí)別。小目標(biāo)檢測(cè)主要包括通用小目標(biāo)、航空遙感小目標(biāo)、微小人物和小目標(biāo)實(shí)例分割四個(gè)方向[1]。
隨著深度學(xué)習(xí)的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)被廣泛應(yīng)用,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)技術(shù)將目標(biāo)檢測(cè)推向發(fā)展新高潮。以SSD(single shot multibox detector)[2]和YOLO(you only look once)[3-7]系列為代表的單階段目標(biāo)檢測(cè)算法,以端到端的檢測(cè)方式直接輸出預(yù)測(cè)結(jié)果,因檢測(cè)速率優(yōu)異,成為工業(yè)應(yīng)用的熱門框架。
近年來單階段小目標(biāo)檢測(cè)算法研究中,2021 年,王建軍等人[8]在YOLOv3骨干網(wǎng)絡(luò)中擴(kuò)張淺層特征對(duì)應(yīng)卷積層深度,以提取大量小目標(biāo)紋理信息,但計(jì)算量額外增加較多;陳欣等人[9]通過改進(jìn)多尺度特征融合方式和并聯(lián)通道注意力機(jī)制,降低了遙感小目標(biāo)漏檢率,但數(shù)據(jù)目標(biāo)單一,泛化能力不足;Zhu等人[10]結(jié)合Transformer檢測(cè)頭和CBAM 注意力機(jī)制,增加對(duì)密集小目標(biāo)區(qū)域的關(guān)注,但參數(shù)量增幅較大;蔣镕圻等人[11]把scSE 注意力機(jī)制嵌入YOLOv4骨干和頸部網(wǎng)絡(luò),以提高對(duì)小目標(biāo)特征的關(guān)注度,但實(shí)時(shí)性被削弱;GEGe等人[12]提出解耦檢測(cè)頭和無錨框的YOLOX框架,雖定位多尺度小目標(biāo)準(zhǔn)確,但泛化性不足;2022年,Yang等人[13]提出基于級(jí)聯(lián)查詢機(jī)制的QueryDet,通過粗略定位引導(dǎo)高分辨率下小目標(biāo)特征預(yù)測(cè)回歸,顯著提升了推理速度,但檢測(cè)精度提升不明顯;趙鵬飛等人[14]應(yīng)用基于分組殘差的Darknet-53為SSD 主干網(wǎng)絡(luò),擴(kuò)張小目標(biāo)特征感受野,但缺乏復(fù)雜場(chǎng)景處理能力;Zhang等人[15]在YOLOv5中加入BAM增強(qiáng)對(duì)淺層特征圖內(nèi)小目標(biāo)信息的關(guān)注,在小尺寸人物檢測(cè)上表現(xiàn)優(yōu)異,但參數(shù)規(guī)模較大;肖進(jìn)勝等人[16]利用多尺度空洞卷積和特征提純機(jī)制重構(gòu)特征金字塔,雖提升了小目標(biāo)檢測(cè)性能,但網(wǎng)絡(luò)復(fù)雜度和額外參數(shù)開銷方面還有待改進(jìn)。;2023年,李子豪等人[17]通過減少YOLOv5骨干網(wǎng)絡(luò)下采樣倍率,并采用自適應(yīng)協(xié)同注意力機(jī)制,提高檢測(cè)精度和降低參數(shù)規(guī)模,但計(jì)算量大幅增加;宋懷波等人[18]將ECA 注意力機(jī)制嵌入YOLOv7 的重參數(shù)化路徑中,提升復(fù)雜場(chǎng)景下蘋果幼果檢測(cè)精度,但檢測(cè)速率降低;賈天豪等人[19]在SSD中引入殘差學(xué)習(xí)特征映射塊和雙重注意力塊,提高了多尺度小目標(biāo)檢測(cè)性能,但推理速度下降較多;Zhao等人[20]在YOLOv7上集成小目標(biāo)檢測(cè)頭和注意力機(jī)制,增強(qiáng)了對(duì)海面小目標(biāo)的檢測(cè)性能,但未能合理控制計(jì)算量增加;王曉紅等人[21]采用具有全局建模優(yōu)勢(shì)的CoT 模塊和增加最大池化層MaxPool挖掘小目標(biāo)更多紋理信息,雖將參數(shù)增幅控制在合理范圍內(nèi),但基線模型過大,可遷移性較弱。綜上所述,單階段小目標(biāo)檢測(cè)算法在以下方面仍存在提升空間:(1)提高各種場(chǎng)景下小目標(biāo)特征信息捕獲量。(2)減少因提升小目標(biāo)檢測(cè)精度而增加的計(jì)算量和參數(shù)量。(3)在保持高檢測(cè)精度下提升推理速度。(4)提高小目標(biāo)檢測(cè)算法泛化能力。
因小目標(biāo)背景信息復(fù)雜且定位精度要求高,本文選取網(wǎng)絡(luò)模型具備一定深度的YOLOv7作為基線,改進(jìn)小目標(biāo)檢測(cè)算法。主要工作包括以下四點(diǎn):(1)在骨干網(wǎng)絡(luò)中,通過裁剪CBS層、引入SimAM注意力機(jī)制和縮小池化核重構(gòu)SPPCSPC,減少計(jì)算量和參數(shù)量,關(guān)注密集小目標(biāo)樣本區(qū)域,提取更多小目標(biāo)特征。(2)頸部網(wǎng)絡(luò)中,用SPD Conv 替換SConv 改進(jìn)下采樣,減少光線昏暗場(chǎng)景下小目標(biāo)特征丟失。(3)添加四倍下采樣分支,將高分辨率特征圖與原來三個(gè)尺度的特征圖進(jìn)行特征融合,提升小目標(biāo)特征捕獲量,并增加對(duì)應(yīng)尺度的檢測(cè)頭,提高小目標(biāo)檢出率和準(zhǔn)確率。(4)損失函數(shù)由邊框擬合CIoU 替換為動(dòng)態(tài)非單調(diào)聚焦Wise IoU,提升網(wǎng)絡(luò)模型收斂速度。
YOLOv7 集合了RepVGG 重參數(shù)化思想[22]、跨網(wǎng)格搜索標(biāo)簽分配策略和分割梯度路徑層聚合架構(gòu)等先進(jìn)技術(shù),在相同計(jì)算資源下,檢測(cè)精度和推理速度,較以前版本都有明顯提高,其網(wǎng)絡(luò)結(jié)構(gòu)分別由骨干網(wǎng)絡(luò)(Backbone)、頸部網(wǎng)絡(luò)(Neck)和頭部網(wǎng)絡(luò)(Head)三個(gè)部分組成,如圖1所示。工作原理分別介紹如下。
圖1 YOLOv7模型結(jié)構(gòu)圖Fig.1 YOLOv7 model structure diagram
骨干網(wǎng)絡(luò)由CBS、ELAN-1、MP和SPPCSPC四種模塊構(gòu)成。三個(gè)堆疊的CBS模塊提取初始特征;層聚合架構(gòu)ELAN-1 分割梯度流提取首層、底層和中間層特征;下采樣MP提取高級(jí)語義信息;空間金字塔池化SPPCSPC擴(kuò)大不同感受野融合多尺度特征。但SPPCSPC結(jié)構(gòu)內(nèi)存在卷積冗余,并且擴(kuò)大的感受野與小目標(biāo)尺度不匹配,在密集目標(biāo)相互遮擋時(shí)易發(fā)生誤檢。
頸部網(wǎng)絡(luò)沿用YOLOv5 系列的路徑聚合特征金字塔PAFPN架構(gòu),其結(jié)合了層聚合架構(gòu)ELAN-2和最鄰近插值Nearest 進(jìn)行多尺度特征融合。先由FPN[23]自頂向下傳遞深層特征圖語義信息,再由PANet[24]自底向上傳遞低層特征圖紋理和細(xì)節(jié)信息,最終PAFPN 架構(gòu)輸出三個(gè)不同尺度特征圖。但進(jìn)行特征融合的三個(gè)尺度特征圖對(duì)應(yīng)的下采樣倍率都較高,提取到的小目標(biāo)以及微小目標(biāo)特征信息較少。
頭部網(wǎng)絡(luò)主要由重參數(shù)化卷積RepConv 和檢測(cè)頭IDetect 組成,RepConv 把訓(xùn)練過程中得到的三個(gè)特征圖,在推理過程經(jīng)矩陣融合和權(quán)重相加,形成單特征圖;IDetect 結(jié)合隱式知識(shí)在特征圖上預(yù)測(cè)大、中、小型目標(biāo)。由于三個(gè)尺度的檢測(cè)頭對(duì)應(yīng)檢測(cè)的目標(biāo)尺度有限,小目標(biāo)以及微小目標(biāo)易漏檢。
SimAM 為無參數(shù)注意力機(jī)制,不包含任何子網(wǎng)絡(luò)結(jié)構(gòu),可以在不增加原始網(wǎng)絡(luò)參數(shù)的條件下,為特征圖推斷三維注意力權(quán)重。其依據(jù)神經(jīng)學(xué)說空域抑制原理[25],通過能量函數(shù)衡量目標(biāo)像素點(diǎn)(t)和其他像素點(diǎn)(xi)的線性可分性,當(dāng)輸入特征圖為X∈RC×H×W時(shí),像素點(diǎn)線性變換如下:
wt和bt為線性變換權(quán)重和偏置值,帶入能量函數(shù)為:
et為能量函數(shù)值,y為某一像素點(diǎn)的標(biāo)簽值,yt和y0為目標(biāo)像素點(diǎn)(t)和其他像素點(diǎn)(xi)的標(biāo)簽值,i為空間維度上的索引,M為某一通道上像素點(diǎn)個(gè)數(shù):
基于幀循環(huán)超分轉(zhuǎn)換的SPD Conv,可減少信息丟失,其包括一個(gè)從空間到深度的SPD層和一個(gè)非跨步卷積層[26]。圖2 以2 倍為例,展示了跨步卷積(SConv)和SPD Conv下采樣過程。SConv將輸入特征圖經(jīng)步長(zhǎng)為2的3×3卷積核壓縮特征圖為原圖寬度和高度的1/2,直接過濾掉了一部分特征信息,見圖2(a)。SPD Conv將輸入特征圖映射切片,得到4 個(gè)經(jīng)2 倍下采樣的子圖,4個(gè)子圖包含著原圖的全局空間信息,子圖沿通道維度拼接,由非跨步卷積層調(diào)整通道維度,SPD Conv將全局空間特征信息保留在了通道維度,見圖2(b)。
圖2 SConv和SPD Conv的下采樣過程Fig.2 Downsampling process of SConv and SPD Conv
基于動(dòng)態(tài)非單調(diào)聚焦機(jī)制的Wise IoU[27],可以緩解錨框(anchor box)標(biāo)注質(zhì)量對(duì)網(wǎng)絡(luò)模型整體收斂速度和定位精度的影響,公式如下:
LWIoU為損失函數(shù)值,exp 為指數(shù)函數(shù),δ和α為超參數(shù),β為anchor box的離群度因子,x和y為預(yù)測(cè)框中心點(diǎn)坐標(biāo),xgt和ygt為真實(shí)框中心點(diǎn)坐標(biāo),Wg和Hg為預(yù)測(cè)框和真實(shí)框最小包圍盒的寬度和高度,*為計(jì)算分離,LIoU為預(yù)測(cè)框和真實(shí)框重疊面積的交并比值。
改進(jìn)模型結(jié)構(gòu)如圖3所示,其中虛線框部分為改進(jìn)點(diǎn),SPPCSPC-S 為重構(gòu)后的空間金字塔池化模塊,用于提取相互遮擋下更多小目標(biāo)特征;SM 為改進(jìn)后的下采樣模塊,可減少光線昏暗場(chǎng)景下小目標(biāo)特征丟失;紅色虛線框部分為添加的四倍下采樣分支,能夠增加復(fù)雜背景下小目標(biāo)特征捕獲量。
圖3 改進(jìn)模型結(jié)構(gòu)圖Fig.3 Improved model structure diagram
為增強(qiáng)對(duì)密集小目標(biāo)樣本區(qū)域的關(guān)注,進(jìn)一步提高相互遮擋下密集小目標(biāo)定位精度。本文重構(gòu)了SPPCSPC結(jié)構(gòu),重構(gòu)方法是先裁剪CBS,再引入SimAM,然后縮小池化核,重構(gòu)前SPPCSPC 和重構(gòu)后SPPCSPC-S 的結(jié)構(gòu)見圖4(a)和圖4(b)。重構(gòu)過程如下:
圖4 SPPCSPC和SPPCSPC-S網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 SPPCSPC and SPPCSPC-S network structures
(1)裁剪CBS。裁剪掉2個(gè)位于池化層之前的CBS層,以減少卷積層對(duì)小目標(biāo)邊緣信息的過濾,只應(yīng)用一層CBS平滑特征,縮減計(jì)算量和參數(shù)規(guī)模。
(2)引入SimAM。在池化層之前嵌入無參數(shù)注意力機(jī)制SimAM,劃分目標(biāo)像素點(diǎn)和其他像素點(diǎn),并推斷出特征圖的三維注意力權(quán)重,以增強(qiáng)對(duì)密集小目標(biāo)區(qū)域的關(guān)注,減少有效特征損耗,同時(shí)抑制混淆特征表達(dá)。
(3)縮小池化核。將三個(gè)池化核的設(shè)定由(5,9,13)改為(3,5,9),使小尺寸池化核擴(kuò)張的感受野與小目標(biāo)尺度匹配,有利于提取到更多小目標(biāo)特征,以進(jìn)一步提升小目標(biāo)檢測(cè)精度。
通過裁剪CBS層促進(jìn)網(wǎng)絡(luò)加速收斂,再嵌入SimAM注意力機(jī)制聚焦密集小目標(biāo)區(qū)域,縮小池化核對(duì)應(yīng)小目標(biāo)感受野,提取更多更準(zhǔn)確的小目標(biāo)特征,以降低密集小目標(biāo)漏檢率。為驗(yàn)證重構(gòu)SPPCSPC對(duì)小目標(biāo)檢測(cè)精度的影響,通過熱力圖可視化方法對(duì)比了重構(gòu)前后模型對(duì)密集小目標(biāo)區(qū)域的敏感度情況。從圖5中可以看出,應(yīng)用SPPCSPC-S后,模型對(duì)密集小目標(biāo)的關(guān)注度提高,感知區(qū)域更為準(zhǔn)確。
圖5 熱力圖可視化Fig.5 Visualization of heat maps
在光線昏暗和圖像模糊的情況下,頸部網(wǎng)絡(luò)特征圖內(nèi)冗余像素點(diǎn)和小目標(biāo)特征像素點(diǎn)難以準(zhǔn)確區(qū)分,因此,多次應(yīng)用SConv 過濾冗余信息的同時(shí),也會(huì)將大量小目標(biāo)關(guān)鍵特征一同過濾掉。為減少小目標(biāo)特征丟失,本文把頸部網(wǎng)絡(luò)下采樣MP 結(jié)構(gòu)左分支中的SConv 替換為SPD Conv,應(yīng)用其SPD 層的切分子圖原理,將小目標(biāo)全局空間信息映射到通道維度,以達(dá)到保留光線昏暗和模糊場(chǎng)景下更多小目標(biāo)特征信息的目的,在SPD層后添加卷積操作,可調(diào)整通道維度與右分支一致。改進(jìn)后結(jié)構(gòu)為SM見圖6。
圖6 SM網(wǎng)絡(luò)結(jié)構(gòu)Fig.6 SM network structure
小目標(biāo)一個(gè)像素點(diǎn)映射到原圖中感受野會(huì)小于32個(gè)像素點(diǎn),微小目標(biāo)的像素點(diǎn)會(huì)更少,因而深層次預(yù)測(cè)特征層極大可能會(huì)捕獲不到微小目標(biāo)。為增加復(fù)雜背景下小目標(biāo)特征捕獲量,進(jìn)一步提高小目標(biāo)檢測(cè)性能,本文在頸部添加了一個(gè)四倍下采樣分支,見圖3紅色虛線框所示。在頸部網(wǎng)絡(luò)中,輸入分辨率為160×160 的4倍下采樣特征圖C2,與8 倍、16 倍、32 倍下采樣的特征圖C3、C4、C5,由PAFPN 架構(gòu)建立橫向連接,實(shí)現(xiàn)多尺度特征融合。4 倍下采樣特征圖C2 包含著大量小目標(biāo)以及微小目標(biāo)紋理和細(xì)節(jié)信息,其在依次傳遞并融合的過程中,能給深層特征圖提供更充足的小目標(biāo)信息,進(jìn)而提高復(fù)雜背景下小目標(biāo)特征捕獲量。另外,一并增加與4倍下采樣對(duì)應(yīng)尺度的檢測(cè)頭,以提高對(duì)微小目標(biāo)的檢測(cè)能力。
通過將C2 與C3、C4、C5 融合,獲取到豐富的小目標(biāo)紋理和細(xì)節(jié)特征,再結(jié)合新增的小目標(biāo)檢測(cè)頭,能夠高效提升復(fù)雜背景下小目標(biāo)以及微小目標(biāo)的檢出率和準(zhǔn)確率。
邊框損失函數(shù)大多圍繞預(yù)測(cè)框和真實(shí)框的幾何元素定義計(jì)算方法,以不斷優(yōu)化擬合效果,代表方法有GIoU[28]、CIoU[29]和EIoU[30]等。但數(shù)據(jù)集中錨框標(biāo)注質(zhì)量通常會(huì)存在差異性,低質(zhì)量數(shù)據(jù)標(biāo)注在高效擬合損失函數(shù)的加持下,反而會(huì)干擾模型收斂,影響有效特征學(xué)習(xí),為提高模型的泛化能力并加速收斂,本文將網(wǎng)絡(luò)模型的邊框損失函數(shù)由CIoU替換為Wise IoU。
Wise IoU 基于動(dòng)態(tài)非單調(diào)聚焦機(jī)制邊框回歸。其動(dòng)態(tài)機(jī)制為,依照錨框的離群度因子值動(dòng)態(tài)分配梯度增益,其非單調(diào)性為,梯度增益伴隨損失值的增加呈非單調(diào)變化,即減小低質(zhì)量錨框梯度增益的同時(shí)也減小高質(zhì)量錨框梯度增益。離群度計(jì)算公式為:
為驗(yàn)證算法有效性,在公開數(shù)據(jù)集VisDrone2021上做消融實(shí)驗(yàn)和對(duì)比實(shí)驗(yàn),該數(shù)據(jù)集包含8 629張圖像,分辨率大小為2 000×1 500 像素左右,約54 萬個(gè)標(biāo)注信息。實(shí)驗(yàn)數(shù)據(jù)集依照9∶1 比例劃分,訓(xùn)練集為7 766 張圖像,測(cè)試集為863張圖像。
為驗(yàn)證算法泛化性,在公開數(shù)據(jù)集VOC2007+2012上做泛化實(shí)驗(yàn),該數(shù)據(jù)集包含常見生活場(chǎng)景中的20 個(gè)目標(biāo)類別,主要有飛機(jī)、自行車、鳥和船等,訓(xùn)練集有16 551張圖像,測(cè)試集有4 952張圖像。
(1)硬件環(huán)境
訓(xùn)練環(huán)境:RTX3090顯卡,24 GB顯存,Intel?Xeon?Platinum 8358P @2.60 GHz CPU,90 GB內(nèi)存。
測(cè)試環(huán)境:RTX3070顯卡,8 GB顯存,AMD Ryzen 7 5800H with Radeon Graphics 3.20 GHz CPU,16 GB內(nèi)存。
(2)軟件環(huán)境
Windows 10,CUDA 11.3,Pytorch 1.11.0,Python 3.8.0。
(3)參數(shù)設(shè)置
輸入圖像分辨率為640×640,總迭代次數(shù)為300,迭代批量為8,優(yōu)化器為SGD,動(dòng)量為0.937,學(xué)習(xí)率為0.01,權(quán)值衰減系數(shù)為0.000 5,采用余弦退火學(xué)習(xí)算法對(duì)學(xué)習(xí)率進(jìn)行更新。
3.3.1 重置先驗(yàn)框
應(yīng)用K-means 算法在VisDrone2021 數(shù)據(jù)集上生成12種先驗(yàn)框,尺寸大小如表1所示。
表1 先驗(yàn)框尺寸Table 1 Prior box size
聚類過程可視化如圖7所示。先驗(yàn)框的精確選取,可減小其與物體之間的匹配誤差,從而減少誤檢和漏檢。
圖7 K-means聚類可視化Fig.7 K-means clustering visualization
3.3.2 數(shù)據(jù)增強(qiáng)
采用Mosaic-4和Mix up方法進(jìn)行數(shù)據(jù)增強(qiáng)。Mosaic-4每次處理4 張圖片,先依據(jù)隨機(jī)中心點(diǎn)位置裁剪、縮放原始圖片,再隨機(jī)排列拼接;Mix up每次處理2張圖片,先分別將其翻轉(zhuǎn)、縮放和變化色域,再按照一定比例混合。上述兩種方法可以豐富數(shù)據(jù)集,增加小目標(biāo)樣本數(shù)量。
本文選取了目標(biāo)檢測(cè)任務(wù)中常見的六種評(píng)價(jià)指標(biāo):Precision、Recall、mAP、FPS、Params、GFLOPs 衡量改進(jìn)算法的有效性,各指標(biāo)介紹如下。
(1)Precision 為精準(zhǔn)率,指預(yù)測(cè)的正樣本中實(shí)際為正樣本的概率,計(jì)算公式為:
TP為預(yù)測(cè)成正類的正樣本數(shù),F(xiàn)P為預(yù)測(cè)成正類的負(fù)樣本數(shù)。
(2)Recall 為召回率,指預(yù)測(cè)的所有樣本中實(shí)際為正樣本的概率,計(jì)算公式為:
FN為預(yù)測(cè)成負(fù)類的正樣本數(shù)。
(3)mAP為平均精度均值,指所有類別檢測(cè)準(zhǔn)確率的均值,計(jì)算公式為:
c為檢測(cè)類別數(shù),AP 為某一類別P-R曲線下的面積,AP計(jì)算公式為:
(4)FPS為幀率,指圖像刷新幀數(shù),計(jì)算公式為:
FrameNum為檢測(cè)圖片總數(shù),ElapsedTime為耗費(fèi)的總時(shí)間。
(5)Params為網(wǎng)絡(luò)模型的參數(shù)量,單位為MB。
(6)GFLOPs為網(wǎng)絡(luò)模型的浮點(diǎn)運(yùn)算次數(shù)。
3.5.1 消融實(shí)驗(yàn)
(1)數(shù)據(jù)分析
共做N1~N6 六組消融實(shí)驗(yàn),分別驗(yàn)證各改進(jìn)點(diǎn)的有效性,“√”表示某一組實(shí)驗(yàn)應(yīng)用的改進(jìn)點(diǎn),各項(xiàng)評(píng)價(jià)指標(biāo)見表2,實(shí)驗(yàn)結(jié)果分析如下:
表2 消融實(shí)驗(yàn)Table 2 Ablation experiment
①第一組為原算法的實(shí)驗(yàn)結(jié)果,mAP0.5值為45.73%,參數(shù)量為37.24 MB,計(jì)算量為105.26,F(xiàn)PS為42,作為評(píng)價(jià)指標(biāo)基線。
②第二組是把SPPCSPC 重構(gòu)為SPPCSPC-S 后,計(jì)算量和參數(shù)量都小幅減少,推理速度提升為45,mAP0.5值提高1.05個(gè)百分點(diǎn)。
③第三組是添加四倍下采樣分支,雖計(jì)算量從105.26增加到119.69,推理速度也有所降低,但是mAP0.5值提高2.58個(gè)百分點(diǎn),大幅提升了小目標(biāo)檢測(cè)性能。
④第四組是把MP 改進(jìn)為SM 后,計(jì)算量和參數(shù)量均有小幅減少,檢測(cè)精度也有小幅上升,mAP0.5值提高0.61個(gè)百分點(diǎn)。
⑤第五組是把邊框損失函數(shù)CIoU 替換為WiseIoU,在保證沒有增加參數(shù)量和計(jì)算量的條件下,加快網(wǎng)絡(luò)模型收斂,同時(shí)mAP0.5值提升0.87個(gè)百分點(diǎn)。
⑥第六組是集合所有改進(jìn)點(diǎn)后,雖推理速度小幅下降,也額外增加了一部分計(jì)算量,但參數(shù)量從37.24 MB減少為34.74 MB,mAP0.5值提高5.09個(gè)百分點(diǎn),表明本文構(gòu)建的算法能夠顯著提升小目標(biāo)檢測(cè)的平均精度均值。
(2)可視化分析
圖8 中1~3 列分別是光線昏暗、密集小目標(biāo)和微小目標(biāo)三種復(fù)雜樣本,1~3 行分別是原始圖片、N1 組算法檢測(cè)后圖片、N6 組算法檢測(cè)后圖片。使用不同顏色的標(biāo)識(shí)框區(qū)分?jǐn)?shù)據(jù)集內(nèi)目標(biāo)類別,標(biāo)識(shí)框上方標(biāo)注了目標(biāo)置信度分?jǐn)?shù)。從視覺效果可以看出,本文算法檢測(cè)出的小目標(biāo)人物和車輛的數(shù)量明顯增多,并且小目標(biāo)置信度分?jǐn)?shù)明顯提高,表明漏檢率降低,準(zhǔn)確率提高。
圖8 檢測(cè)效果對(duì)比Fig.8 Comparison of detection effect
3.5.2 對(duì)比實(shí)驗(yàn)
YOLO系列的代表算法有YOLOv5L、TPH-YOLOv5、YOLOXL、YOLOv6M、YOLOv8L、ACAM-YOLO 和YOLOv7。在公開數(shù)據(jù)集VisDrone2021上,將本文算法與上述算法做對(duì)比實(shí)驗(yàn),結(jié)果見表3。
表3 算法對(duì)比實(shí)驗(yàn)Table 3 Algorithm comparison experiment
YOLOv5L 算法比本文算法mAP0.5值低11.25 個(gè)百分點(diǎn),參數(shù)量高11.41 MB,表明該算法對(duì)小目標(biāo)檢測(cè)效果一般,且參數(shù)開銷較大;TPH-YOLOv5 算法的mAP0.5值接近YOLOv6M,比原YOLOv5L 算法高3.89 個(gè)百分點(diǎn),但比本文算法低7.36個(gè)百分點(diǎn);YOLOXL算法的計(jì)算量?jī)H次于YOLOv8 算法,比本文算法增加了38.9,mAP0.5值比本文算法低7.72個(gè)百分點(diǎn),表明該算法在此數(shù)據(jù)集上檢測(cè)效果不佳;YOLOv6M算法的計(jì)算量是七組算法中最少的,參數(shù)量和本文算法接近,但mAP0.5值低7.17個(gè)百分點(diǎn);YOLOv8算法是目前YOLO系列的最先進(jìn)算法,mAP0.5值比原YOLOv7算法高出1.16個(gè)百分點(diǎn),但比本文算法低3.93個(gè)百分點(diǎn);ACAM-YOLO算法是基于YOLOv5L 改進(jìn)的,參數(shù)量約為本文算法1/2,mAP0.5值在七組算法中僅次于本文算法達(dá)到49.52%,但計(jì)算量高出10%,比YOLOv5L算法高出21%。
綜合上述分析,本文算法在計(jì)算量小幅增加和參數(shù)量縮減的條件下,實(shí)現(xiàn)了檢測(cè)平均精度均值的顯著提升,因而對(duì)復(fù)雜場(chǎng)景下的小目標(biāo)具有更強(qiáng)的辨識(shí)能力。
3.5.3 泛化實(shí)驗(yàn)
在公開數(shù)據(jù)集VOC2007+2012 上,將本文算法與YOLOv7、YOLOv8和CS-SSD算法做泛化實(shí)驗(yàn),驗(yàn)證本文算法的通用性,結(jié)果見表4。
表4 泛化實(shí)驗(yàn)Table 4 Generalization experiment 單位:%
本文算法與YOLOv7相比,mAP0.5值從81.12%提升為84.47%,精準(zhǔn)率提升5.07 個(gè)百分點(diǎn),召回率提升1.46個(gè)百分點(diǎn);與YOLOv8 相比,mAP0.5值提升1.82 個(gè)百分點(diǎn),精準(zhǔn)率提升3.49 個(gè)百分點(diǎn),召回率提升1.02 個(gè)百分點(diǎn);與CS-SSD相比,mAP0.5值提升0.87個(gè)百分點(diǎn)。
綜合上述分析,本文構(gòu)建的小目標(biāo)檢測(cè)算法不僅能夠提高相互遮擋、背景復(fù)雜和特征點(diǎn)少場(chǎng)景下的小目標(biāo)檢測(cè)效果,而且也能提高常規(guī)場(chǎng)景下大中尺度目標(biāo)檢測(cè)效果,表明具有通用性。
針對(duì)小目標(biāo)圖像檢測(cè)中存在的難點(diǎn),本文基于YOLOv7提出重構(gòu)SPPCSPC 與優(yōu)化下采樣的小目標(biāo)檢測(cè)算法。通過重構(gòu)SPPCSPC 模塊加強(qiáng)小目標(biāo)特征提取,替換頸部下采樣結(jié)構(gòu)中的SConv 為SPD Conv 減少深層特征圖關(guān)鍵小目標(biāo)特征丟失,添加四倍下采樣分支提高小目標(biāo)檢出率和準(zhǔn)確率,把邊框損失函數(shù)由CIoU 替換為Wise IoU 提升收斂速度和定位精度。實(shí)驗(yàn)結(jié)果表明,本文算法對(duì)小目標(biāo)的檢測(cè)效果優(yōu)于參考文獻(xiàn)中最優(yōu)算法,有效提升了小目標(biāo)檢測(cè)精度,且通用性良好。為工業(yè)應(yīng)用提供了一定的參考價(jià)值,在輕量化方面仍有進(jìn)步空間,需繼續(xù)研究探索。