劉玉雯,劉文逸,唐云龍,彭 沛,何維真,韓星燁
(西北機(jī)電工程研究所, 陜西 咸陽 712099)
目前,無人機(jī)相關(guān)技術(shù)發(fā)展迅速,無人機(jī)以其小巧靈活、高效可控、續(xù)航能力不斷加強(qiáng)的顯著特點(diǎn)廣泛應(yīng)用于民用航拍、軍事偵察、農(nóng)業(yè)監(jiān)測等領(lǐng)域[1]。在航拍視角的目標(biāo)檢測中,其飛行高度越高,高分辨率成像畫面中的目標(biāo)占比越小,而且成像過程中的光照變化、遮擋、背景復(fù)雜等因素都會增加目標(biāo)檢測的難度。相比于常規(guī)尺寸的目標(biāo),小目標(biāo)及微小目標(biāo)相對于整幅圖像占比較小,特征不明顯且易受環(huán)境變化的干擾,存在漏檢、誤檢的現(xiàn)象,使得小目標(biāo)的檢測精度僅為大目標(biāo)的一半[2]。因此,通過增加多種小特征提取方法及模型優(yōu)化策略從而提升小目標(biāo)識別準(zhǔn)確率,是當(dāng)前目標(biāo)檢測領(lǐng)域的一大研究熱點(diǎn)。
目前的小目標(biāo)檢測算法主要從多尺度學(xué)習(xí)、數(shù)據(jù)增強(qiáng)、訓(xùn)練策略、注意力機(jī)制、基于上下文檢測的角度進(jìn)行算法改進(jìn)[3]。2020年,針對小目標(biāo)的數(shù)據(jù)預(yù)處理技術(shù)中Mosaic增強(qiáng)將4幅不同圖像拼接成原圖像尺寸輸入識別網(wǎng)絡(luò),在不改變輸入圖像尺寸的情況下,增加了圖像中的目標(biāo)數(shù)量,Copy-Paste增強(qiáng)通過復(fù)制粘貼的形式,將復(fù)制后的目標(biāo)分布于圖像任意位置,Mixup增強(qiáng)將多幅圖像進(jìn)行直接融合,增強(qiáng)后的圖像是多幅圖像相嵌的結(jié)果[4],這些預(yù)處理技術(shù)都是通過增加樣本數(shù)量來提升網(wǎng)絡(luò)學(xué)習(xí)效果,并未提升對小目標(biāo)的特征提取能力。2020年,鄭晨斌等為增強(qiáng)小目標(biāo)與周圍像素的交互學(xué)習(xí),提出一種增強(qiáng)低層網(wǎng)絡(luò)特征輸出,獲取更多上下文信息的強(qiáng)化模型,提升了小目標(biāo)特征的提取效果[5]。2021年,趙亮等針對小目標(biāo)所占像素較少,可能隨網(wǎng)絡(luò)層加深特征減少甚至缺失的問題,提出一種全局與局部圖像特征自適應(yīng)融合的小目標(biāo)檢測算法,利用特征選擇模塊對圖像的不同輸出進(jìn)行融合,提高了小目標(biāo)檢出率[6]。2023年,謝椿輝等通過對特征提取模塊設(shè)計(jì)注意通道機(jī)制及優(yōu)化損失函數(shù)的方式對YOLOv5算法進(jìn)行改進(jìn),能夠有效適配航拍小目標(biāo)檢測需求[7]。
本文中針對航拍視角下小目標(biāo)所占像素較少,在高分辨率成像中識別精度較低且易漏檢誤檢的問題,結(jié)合小目標(biāo)的先驗(yàn)框尺寸及成像特點(diǎn),對YOLOv5進(jìn)行改進(jìn)并添加輔助預(yù)測機(jī)制。使用基于上下文增強(qiáng)算法,增加有效特征層對局部特征的學(xué)習(xí),減少小目標(biāo)的特征缺失;使用優(yōu)化后的邊界框損失函數(shù),使網(wǎng)絡(luò)更加關(guān)注有效目標(biāo),提高小目標(biāo)的定位精度;使用切片輔助推理算法,增加檢測網(wǎng)絡(luò)感受野,減少局部小目標(biāo)的漏檢率。本文中提出的基于切片推理的改進(jìn)YOLOv5算法,從特征網(wǎng)絡(luò)提取和目標(biāo)檢出2個(gè)角度對網(wǎng)絡(luò)模型進(jìn)行優(yōu)化,是一種高效識別小目標(biāo)的算法模型。
小目標(biāo)通常是指在成像畫面中占比較少、特征不顯著且難與背景有效區(qū)分的目標(biāo)。當(dāng)前的目標(biāo)檢測領(lǐng)域并未對小目標(biāo)進(jìn)行明確劃分,定義標(biāo)準(zhǔn)分為絕對尺度和相對尺度。因目標(biāo)識別網(wǎng)絡(luò)需要構(gòu)建有效特征層,通常是以原圖像尺寸為標(biāo)準(zhǔn)進(jìn)行縮放,其中最大縮放比為32倍下采樣,故絕對尺度定義目標(biāo)所占像素小于32×32區(qū)域即為小目標(biāo)。國際光學(xué)學(xué)會認(rèn)為,應(yīng)按照目標(biāo)的實(shí)際成像比例進(jìn)行劃分,即絕對尺寸定義目標(biāo)像素面積占比小于0.12%確定為小目標(biāo)。上述是2種常規(guī)定義,還有根據(jù)面積中位數(shù)占比、目標(biāo)先驗(yàn)框占比進(jìn)行小目標(biāo)劃分[8]。小目標(biāo)在航拍成像中的分布情況如圖1所示。圖中的航拍圖像源于Visdrone2019數(shù)據(jù)集,圖中的矩形框代表小目標(biāo)在圖像中的定位結(jié)果,矩形框左上角的數(shù)字代表預(yù)測類別,該數(shù)據(jù)集共有10個(gè)類別,分別對應(yīng)0~9的數(shù)字。圖中識別結(jié)果主要是數(shù)字0和3,分別代表預(yù)測類別結(jié)果為行人和汽車。
圖1 航拍小目標(biāo)實(shí)際分布情況
根據(jù)圖1的分布結(jié)果,小目標(biāo)在航拍成像中是真實(shí)存在且大量分布的,圖中也出現(xiàn)了小目標(biāo)集中分布、遮擋、與背景區(qū)分度低、環(huán)境光照變差等外在變化的情況,這些影響因素都會增加小目標(biāo)標(biāo)注及特征提取的難度。隨深度神經(jīng)網(wǎng)絡(luò)層數(shù)的加深,有效特征層中包含小目標(biāo)的信息隨之減少,網(wǎng)絡(luò)學(xué)習(xí)小目標(biāo)的能力逐漸減弱,從而導(dǎo)致檢測網(wǎng)絡(luò)對小目標(biāo)的識別精度變差。
以Visdrone2019航拍數(shù)據(jù)集為例,將代表目標(biāo)尺寸的先驗(yàn)框與原圖像在寬、高方向分別進(jìn)行比例分布統(tǒng)計(jì),目標(biāo)尺寸在原圖的占比結(jié)果如圖2所示。
圖2 Visdrone2019數(shù)據(jù)集先驗(yàn)框分布
由圖2結(jié)果可知,Visdrone2019數(shù)據(jù)集中的多數(shù)目標(biāo)所占像素較少,尺寸分布大多小于原圖的0.1%。該數(shù)據(jù)集是航拍圖像的典型代表,其中小目標(biāo)分布較為集中,存在背景復(fù)雜難與目標(biāo)有效區(qū)分的現(xiàn)象,故不適用于常規(guī)檢測網(wǎng)絡(luò),需要針對小目標(biāo)進(jìn)行算法優(yōu)化,提升模型訓(xùn)練時(shí)對小目標(biāo)的關(guān)注度及模型驗(yàn)證時(shí)對小目標(biāo)的檢出率。
綜上所述,為解決航拍視角中小目標(biāo)尺寸較小、特征信息不明顯、環(huán)境適應(yīng)性差的問題,應(yīng)在模型設(shè)計(jì)中增加對小目標(biāo)的特征學(xué)習(xí),關(guān)注代表小目標(biāo)的淺層網(wǎng)絡(luò),通過輔助推理等方式提升小目標(biāo)的識別效果。
基于深度學(xué)習(xí)的目標(biāo)識別算法根據(jù)檢測流程設(shè)計(jì)的不同可分為一階段和兩階段網(wǎng)絡(luò)模型,由于檢測任務(wù)對識別算法實(shí)時(shí)性的要求,使算法優(yōu)化工作更加偏向于對端到端學(xué)習(xí)的一階段算法進(jìn)行設(shè)計(jì)改進(jìn)[9-13]。針對小目標(biāo)檢測識別的算法,對同屬于一階段算法的SSD網(wǎng)絡(luò)和YOLO網(wǎng)絡(luò)的優(yōu)化改進(jìn)研究較多,其中SSD算法的模型設(shè)計(jì)較為復(fù)雜,涉及多重卷積嵌套疊加,而YOLO網(wǎng)絡(luò)的模型設(shè)計(jì)較為簡明,只需在主干網(wǎng)絡(luò)中提取3個(gè)尺度的有效特征層進(jìn)行預(yù)測,并在有效特征層之間進(jìn)行信息融合,使每個(gè)特征層都包含多層圖像信息,有利于網(wǎng)絡(luò)整體適應(yīng)于高分辨率圖像及多尺度目標(biāo)的學(xué)習(xí),從而提升檢測網(wǎng)絡(luò)的識別精度。YOLOv5是目前YOLO系列算法較先進(jìn)且穩(wěn)定的算法,網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
圖3 YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)圖
如圖3所示,YOLOv5主干網(wǎng)絡(luò)為CSPDarknet,其中包含卷積層、歸一化層、SiLU激活層及CSPLayer的Resblock大殘差模塊。CSPLayer內(nèi)部使用1×1、3×3大小的卷積核,構(gòu)成殘差邊,用于構(gòu)建深層網(wǎng)絡(luò)。主干網(wǎng)絡(luò)中使用多組卷積與CSPLayer結(jié)合,再通過殘差減少因網(wǎng)絡(luò)層數(shù)增多帶來的過擬合問題。YOLOv5是在YOLOv4的基礎(chǔ)上進(jìn)行改進(jìn),其不同之處在于YOLOv5將SPP結(jié)構(gòu)放在主干網(wǎng)絡(luò)的底部,將多尺度卷積核應(yīng)用于構(gòu)建有效特征層中。在特征金字塔構(gòu)建時(shí),先使用CSPLayer進(jìn)行特征融合再進(jìn)行上采樣、下采用操作,最大限度保留本層特征并傳入檢測網(wǎng)絡(luò)。
2.2.1使用CAM模塊增強(qiáng)上下文交互
因YOLOv5中3個(gè)特征圖尺度為80×80、40×40、20×20,分別代表小目標(biāo)、中目標(biāo)和大目標(biāo),所以淺層網(wǎng)絡(luò)中包含更多的小目標(biāo)信息,通過提高淺層網(wǎng)絡(luò)特征提取或增加淺層網(wǎng)絡(luò)特征融合是針對小目標(biāo)特征提取的有效手段[14-15]。文中提出將基于上下文增強(qiáng)的CAM模塊添加到Y(jié)OLOv5特征融合網(wǎng)絡(luò)中,可有效解決小目標(biāo)特征分散、特征層間語義信息差異較大的問題。CAM模塊結(jié)果如圖4所示。
圖4 CAM模塊結(jié)構(gòu)
如圖4可知,CAM模塊中的擴(kuò)張卷積以其特有的擴(kuò)張倍率,將標(biāo)準(zhǔn)卷積進(jìn)行擴(kuò)張放大,在不改變特征圖尺度的前提下,擴(kuò)張共享卷積核尺度,增大卷積核的感受野。為保證對特征圖的全局掃描,使用擴(kuò)張倍率為1、3、5的3個(gè)3×3大小卷積核將特征圖進(jìn)行多尺度提取,再通過不同的融合策略將特征提取結(jié)果進(jìn)行合并。CAM模塊包含3種融合機(jī)制,分別是相加(Weighted)、拼接(Concatenation)和自適應(yīng)融合(Adaptive),3種融合結(jié)構(gòu)如圖5所示。
如圖5所示,相加和拼接2種融合機(jī)制先通過3個(gè)1×1卷積調(diào)整特征圖的通道數(shù),再在維數(shù)或通道數(shù)方面進(jìn)行特征融合,自適應(yīng)機(jī)制通過卷積、拼接和Softmax函數(shù)獲得自適應(yīng)權(quán)重,再以跳接的方式進(jìn)行融合。
圖5 CAM模塊融合機(jī)制
2.2.2優(yōu)化邊界框定位損失函數(shù)
邊界框定位損失是預(yù)測框與真實(shí)框差異的回歸計(jì)算結(jié)果,代表模型對目標(biāo)識別輸出結(jié)果的定位精度,通常使用交并比(IOU)作為2個(gè)矩形框差異的衡量標(biāo)準(zhǔn)。常見的IOU、GIOU、DIOU函數(shù)針對矩形框間面積或中心點(diǎn)歐式距離進(jìn)行改進(jìn),訓(xùn)練結(jié)果存在回歸收斂慢、訓(xùn)練結(jié)果不均衡等問題。YOLOv5的邊界框損失函數(shù)為CIOU,該函數(shù)在DIOU基礎(chǔ)上增加了兩矩形框間的長寬一致性對比,如式(1)所示:
(1)
式(1)中:v判斷預(yù)測框與真實(shí)框的長寬比是否一致,若一致結(jié)果為0;α表示為權(quán)重系數(shù)。
小目標(biāo)尺寸較小,對預(yù)測框的定位精度要求更高,故文中使用Focal_EIOU損失函數(shù)對小目標(biāo)的邊界框定位損失進(jìn)行改進(jìn)。EIOU函數(shù)是將預(yù)測框與真實(shí)框的寬高差異最小化,將長寬比的影響因子拆開計(jì)算,從而產(chǎn)生更好的收斂速度和定位結(jié)果。Focal函數(shù)是解決訓(xùn)練樣本不平衡的問題,利用長尾數(shù)據(jù)分布規(guī)律,把高質(zhì)量的先驗(yàn)框和低質(zhì)量的先驗(yàn)框分開,增加回歸誤差較小的預(yù)測框?qū)Y(jié)果的占比。將二者結(jié)合后,Focal_EIOU函數(shù)如式(2)所示:
(2)
式(2)中:LIOU為IOU損失;Ldis為距離損失;Lasp為方位損失;γ為控制異常值抑制程度的參數(shù)。
2.2.3檢測網(wǎng)絡(luò)添加切片輔助推理
小目標(biāo)是由少量像素構(gòu)成,缺乏足夠的細(xì)節(jié)特征,傳統(tǒng)檢測網(wǎng)絡(luò)易忽視局部小目標(biāo),故提出使用切片輔助推理檢測網(wǎng)絡(luò),提高小目標(biāo)檢出效果。切片輔助推理(slicing aided hyper inference and fine-tuning for small object detection,SAHI),是一種通過切片輔助推理和管道微調(diào)的高效檢測網(wǎng)絡(luò),通過對圖像進(jìn)行重疊切分,使得小目標(biāo)相對于原輸入圖像產(chǎn)生較大的像素區(qū)域,有利于提升對局部小目標(biāo)的關(guān)注從而減少小目標(biāo)的漏檢率。SAHI輔助切分原理,如圖6所示[16]。
由圖6可知SAHI的切片推理過程,先將原圖進(jìn)行切片劃分并限制切片步長即切片區(qū)域在原圖中的滑動設(shè)置,再將切片結(jié)果進(jìn)行相同寬高比例的區(qū)域分割,分割后的切片結(jié)果相互獨(dú)立,最后根據(jù)分割結(jié)果分別進(jìn)行預(yù)測,因滑動切片處理會使預(yù)測結(jié)果出現(xiàn)重復(fù),所以需要使用非極大值抑制算法對重復(fù)預(yù)測區(qū)域進(jìn)行篩選合并,再還原至原圖尺寸得到最終的推理預(yù)測結(jié)果。
SAHI使檢測網(wǎng)絡(luò)對圖像特征掃描更加細(xì)致,增強(qiáng)了局部區(qū)域中小目標(biāo)的特征檢出能力,是一種高效的基于局部信息增強(qiáng)的小目標(biāo)檢測算法。
2.2.4改進(jìn)的YOLOv5結(jié)構(gòu)
YOLOv5的網(wǎng)絡(luò)結(jié)構(gòu)主要考慮常規(guī)目標(biāo)的檢測精度及模型泛化性應(yīng)用,并未過多關(guān)注目標(biāo)尺度的極限情況,所以模型訓(xùn)練的收斂方向更傾向于中大尺度目標(biāo),小目標(biāo)會因其特征提取不充分、訓(xùn)練數(shù)據(jù)不平衡等因素在識別結(jié)果中表現(xiàn)較差。改進(jìn)后的YOLOv5模型如圖7所示。
圖6 切片輔助推理原理圖
圖7 改進(jìn)的YOLOv5模型
圖7中,YOLOv5主干網(wǎng)絡(luò)輸出80×80、40×40、20×20大小的3個(gè)尺度特征層,根據(jù)上、下采樣等特征融合方式輸出YOLOHead1,YOLOHead2,YOLOHead3,即代表小、中、大尺度的包含淺層特征和語義信息的有效特征圖,將代表稀疏特征提取的CAM模塊添加至特征融合的前端,使小目標(biāo)特征提取更具泛化效果。Detect表示模型的預(yù)測階段,包含真實(shí)標(biāo)注結(jié)果與模型預(yù)測的差值、預(yù)測類別置信度等輸出結(jié)果的計(jì)算和表示。在預(yù)測階段添加SAHI的切片推理,通過放大局部特征的像素占比,提升小目標(biāo)的檢出率;在預(yù)測結(jié)果評估階段,添加改進(jìn)的Focal_EIOU函數(shù),在模型參數(shù)迭代更新中提高預(yù)測框的定位精度。
1) AP(average precision)、mAP(mean average precision)
AP、mAP均代表目標(biāo)識別準(zhǔn)確率,AP是相對單類目標(biāo)的識別精度,mAP是多類目標(biāo)的識別精度取均值。在模型訓(xùn)練時(shí)可能存在正負(fù)樣本不均衡或某類目標(biāo)分布較多的情況,導(dǎo)致識別結(jié)果出現(xiàn)某類目標(biāo)AP較高而整體mAP較低的情況,故在分析網(wǎng)絡(luò)模型性能時(shí)應(yīng)根據(jù)數(shù)據(jù)分布情況選擇合適的識別精度評價(jià)指標(biāo)進(jìn)行結(jié)果的總和分析。
2) 準(zhǔn)確率(precision)和召回率(Recall)
準(zhǔn)確率是真正的正樣本數(shù)除以檢測的總數(shù),如式(3):
(3)
召回率是預(yù)測為正例的樣本中預(yù)測正確的數(shù)量除以真正的正樣本數(shù)量,如式(4):
(4)
本次網(wǎng)絡(luò)構(gòu)建基于Python 3.8.1和Pytorch 1.13.1框架搭建,在Tesla T4顯卡和NVIDIA GeForce GTX 3090Ti GPU的配置環(huán)境下完成訓(xùn)練和測試。文中的對比實(shí)驗(yàn)采用公開數(shù)據(jù)集Visdrone2019進(jìn)行訓(xùn)練,網(wǎng)絡(luò)抓取UAV-ROAD數(shù)據(jù)進(jìn)行算法驗(yàn)證測試。
在數(shù)據(jù)集預(yù)處理階段,對Visdrone2019訓(xùn)練集的先驗(yàn)框大小進(jìn)行聚類,其中不同顏色區(qū)域代表不同的聚類結(jié)果,顏色區(qū)域分布越廣,代表數(shù)據(jù)在該聚類中心的結(jié)果越集中,聚類中心即聚類結(jié)果根據(jù)數(shù)據(jù)分布進(jìn)行更新,如圖8所示。得到3種不同比例和尺寸的9個(gè)結(jié)果(3,5)、(4,9)、(9,8)、(6,14)、(10,19)、(16,12)、(20,23)、(34,16)、(47,37)。
根據(jù)聚類結(jié)果可知,小目標(biāo)先驗(yàn)框尺寸較小,與YOLOv5中默認(rèn)設(shè)置的先驗(yàn)框相差較大,為使預(yù)測結(jié)果更加符合小目標(biāo)真實(shí)尺寸,在模型訓(xùn)練前將先驗(yàn)框聚類結(jié)果進(jìn)行替換,使模型在訓(xùn)練學(xué)習(xí)中更傾向于小目標(biāo)分布。
圖8 Visdrone2019數(shù)據(jù)集先驗(yàn)框聚類結(jié)果
為驗(yàn)證CAM模塊中多尺度擴(kuò)張卷積對小目標(biāo)局部特征的提取效果,從特征提取和特征融合2個(gè)角度分別進(jìn)行基于CAM的改進(jìn)對比實(shí)驗(yàn)。對比實(shí)驗(yàn)?zāi)P蛥?shù)如表1所示。
表1 模型參數(shù)對比
表1記錄了實(shí)驗(yàn)中各模型參數(shù)變化情況,使用模塊參數(shù)和算法參數(shù)對比各改進(jìn)模塊對YOLOv5模型運(yùn)算的影響,其中Layers表示神經(jīng)網(wǎng)絡(luò)層數(shù),GFLOPs表示模型計(jì)算復(fù)雜度。在主干網(wǎng)絡(luò)中,將CAM替換SPPF,對比2種模塊實(shí)驗(yàn)參數(shù)可知,CAM的參數(shù)量較大,算法復(fù)雜度較高;對比CAM的3種融合方式,weight和concat都是在維數(shù)或通道進(jìn)行拼接,參數(shù)量和模型結(jié)構(gòu)一致,adaptive包含殘差結(jié)構(gòu),模型參數(shù)量大,算法層數(shù)較多。
根據(jù)參數(shù)數(shù)據(jù)及算法計(jì)算復(fù)雜度對比可知,在主干網(wǎng)絡(luò)中使用殘差結(jié)構(gòu)進(jìn)行多層特征提取,將改進(jìn)模塊放置于融合網(wǎng)絡(luò)的處理方式能夠增強(qiáng)目標(biāo)特征表達(dá),且改進(jìn)后的融合網(wǎng)絡(luò)與原算法相比,模型參數(shù)差異較小,是一種參數(shù)量變化較少的改進(jìn)分支結(jié)構(gòu)。
邊界框回歸結(jié)果是衡量目標(biāo)定位精度的關(guān)鍵,基于YOLO算法的損失值包含置信度損失、分類損失和定位損失如式(5)所示:
L(o,c,O,C,l,g)=λ1Lconf(o,c)+λ2Lcla(O,C)+
λ3Lloc(l,g)
(5)
式(5)中:λ1、λ2、λ3為平衡系數(shù);Lconf、Lcla、Lloc分別為置信度損失、分類損失和定位損失。置信度損失用于模型判別目標(biāo)與背景;分類損失用于判別目標(biāo)是否屬于該類型;定位損失用于判別模型預(yù)測結(jié)果是否準(zhǔn)確。
采用批梯度下降的方式,對CAM在主干網(wǎng)絡(luò)和融合網(wǎng)絡(luò)改進(jìn)的多種結(jié)構(gòu)分別進(jìn)行訓(xùn)練。對Visdrone2019中的訓(xùn)練集和驗(yàn)證集進(jìn)行隨機(jī)組合,隨機(jī)選取80%作為訓(xùn)練集,每次訓(xùn)練進(jìn)行100次迭代,批量大小設(shè)置為16,初始學(xué)習(xí)率為0.01,權(quán)重衰減為0.000 5,不進(jìn)行額外數(shù)據(jù)增強(qiáng)處理。使用YOLOv5默認(rèn)損失函數(shù),以50個(gè)epoch為例進(jìn)行對比,3種損失函數(shù)對比結(jié)果如圖9所示。
圖9 邊界框損失函數(shù)對比
圖9中“head-cam-weight”為本文中的改進(jìn)框架,可見幾組改進(jìn)結(jié)構(gòu)對于目標(biāo)分類較為準(zhǔn)確,邊界框損失基本在20個(gè)epoch趨于穩(wěn)定,而本文中提出的改進(jìn)方式收斂速度最快,在12個(gè)epoch趨于穩(wěn)定;置信度損失函數(shù)中,前10個(gè)epoch的數(shù)值變化劇烈,本文中的改進(jìn)算法在5個(gè)epoch時(shí)存在小幅波動后趨于穩(wěn)定;邊界框定位損失中,各改進(jìn)方式的變化趨勢較為相似,基本在0.11左右收斂結(jié)束。因此,將CAM模塊添加至YOLOv5特征融合網(wǎng)絡(luò)并使用“weight”融合方式在檢測網(wǎng)絡(luò)的損失函數(shù)中收斂最快,數(shù)據(jù)波動較小。
另外,針對小目標(biāo)進(jìn)行了邊界框定位損失函數(shù)優(yōu)化,采用Focal_EIOU替代CIOU函數(shù),分別對比CIOU、EIOU及Focal_EIOU在CAM改進(jìn)框架中的損失值收斂效果,如圖10所示。
圖10 改進(jìn)算法邊界框定位損失函數(shù)對比
由圖10可知,邊界框定位損失函數(shù)為CIOU或EIOU,函數(shù)收斂變化差異較小,而Focal_EIOU在訓(xùn)練初始階段的損失值明顯下降,且隨迭代次數(shù)的增加趨于穩(wěn)定。綜上,Focal_EIOU適用于改進(jìn)后的網(wǎng)絡(luò)結(jié)構(gòu),且提升了數(shù)據(jù)集中小目標(biāo)的定位精度。
3.4.1數(shù)據(jù)集識別結(jié)果分析
因Visdrone2019數(shù)據(jù)集包含10個(gè)類別,且各類樣本分布不均,選取數(shù)據(jù)集中目標(biāo)分布較多的4個(gè)類別進(jìn)行識別效果對比,將IOU閾值均設(shè)置為0.5,選取20%的數(shù)據(jù)進(jìn)行驗(yàn)證,使用目標(biāo)識別評價(jià)指標(biāo)對改進(jìn)結(jié)構(gòu)的目標(biāo)識別效果進(jìn)行對比,各類目標(biāo)識別結(jié)果如表2所示。
表2 目標(biāo)識別結(jié)果對比
從表2可知,改進(jìn)算法(FPN-cam-weight-Focal_EIOU)的識別準(zhǔn)確率最高,在檢測小車(car)、行人(pedestrian)、卡車(truck)、摩托車(motor)等小目標(biāo)的效果上提升明顯,對比原YOLOv5模型,分別提升了4.4%、2.1%、1.5%、2.4%。對比數(shù)據(jù)集全類別的PR曲線變化,可以看到小車的準(zhǔn)確率和召回率結(jié)果最優(yōu),對改進(jìn)算法的應(yīng)用效果最好,如圖11所示。
圖11 改進(jìn)算法在Visdrone2019數(shù)據(jù)集的PR曲線
綜上,可見改進(jìn)算法相比于原YOLOv5識別準(zhǔn)確率明顯提升,尤其是小車這種目標(biāo)分布較多且特征顯著的類別,改進(jìn)算法的特征提取能力較強(qiáng)且訓(xùn)練效果最好。
3.4.2小目標(biāo)檢出結(jié)果分析
為了驗(yàn)證本文中提出的在檢測網(wǎng)絡(luò)中添加SAHI切片輔助推理算法,在高分辨率圖像中小目標(biāo)的檢出率方面的提升效果,在網(wǎng)絡(luò)中抓取1080P分辨率的UAV-ROAD視頻數(shù)據(jù)。將切片重疊率設(shè)置為0.2,切片步長為512,切片寬高比一致,并使用NMS篩選重疊率高的檢測框。將原YOLOv5檢測網(wǎng)絡(luò)及本文中改進(jìn)檢測算法進(jìn)行對比,識別結(jié)果如圖12所示,圖中矩形框及標(biāo)號代表了算法預(yù)測結(jié)果,依據(jù)數(shù)據(jù)集的數(shù)字-類別對應(yīng)關(guān)系,在圖中直接進(jìn)行類別顯示和置信度標(biāo)注,如“car 0.71”代表算法預(yù)測圖中的小目標(biāo)類別為汽車,且該目標(biāo)為汽車的置信度概率為0.71。
圖12 檢測網(wǎng)絡(luò)識別結(jié)果對比
由圖12可知,在同幀圖像中原YOLOv5檢測網(wǎng)絡(luò)識別出12輛小車,未識別出行人;改進(jìn)檢測網(wǎng)絡(luò)識別出26輛小車和8個(gè)行人。可見,改進(jìn)的檢測網(wǎng)絡(luò)對于高分辨率中的小目標(biāo)檢出效果較好,使圖中右上角容易被忽視的行人及左上角遠(yuǎn)處的車輛,通過切片的方式,使網(wǎng)絡(luò)能夠檢測識別局部區(qū)域內(nèi)的有效目標(biāo),提升了整幅圖像中小目標(biāo)的檢出率,且在同一位置的目標(biāo)識別精度有所提高,證明了本文中改進(jìn)算法能夠有效提升小目標(biāo)檢測效率。
本文中的改進(jìn)算法從模型特征融合、目標(biāo)矩形框定位及目標(biāo)檢出率3個(gè)方面進(jìn)行優(yōu)化,使用公開數(shù)據(jù)集進(jìn)行算法對比驗(yàn)證,實(shí)驗(yàn)結(jié)果證明了本文中的改進(jìn)算法在小目標(biāo)檢測精度及檢出率方面均優(yōu)于原YOLOv5算法,是一種針對小目標(biāo)的高效識別檢測網(wǎng)絡(luò)。
1) 根據(jù)高分辨率圖像中小目標(biāo)先驗(yàn)框?qū)捀哒急?驗(yàn)證了小目標(biāo)是大量分布且像素占比僅為0.1%左右,通過對目標(biāo)數(shù)據(jù)集先驗(yàn)框尺寸聚類,得到符合該數(shù)據(jù)集的9個(gè)聚類結(jié)果,并將其應(yīng)用于模型訓(xùn)練中。
2) 本文中改進(jìn)算法在特征融合中使用CAM模塊,提升了局部特征感受野,增強(qiáng)了小目標(biāo)與其周圍像素的交互式學(xué)習(xí);在目標(biāo)矩形框定位中使用Focal_EIOU損失函數(shù),增加了有效識別結(jié)果的關(guān)注度,顯著提升了圖像中小目標(biāo)的定位精度,使得單類別識別精度提升4.4%。
3) 將SAHI輔助推理算法應(yīng)用于檢測網(wǎng)絡(luò)中,通過切片的方式增加局部區(qū)域中小目標(biāo)的檢測效果,通過與原YOLOv5檢測網(wǎng)絡(luò)的對比,小目標(biāo)檢出率提升為原來的2倍。