趙 輝 黃 鏢 王紅君 岳有軍
(1.天津理工大學(xué)電氣工程與自動(dòng)化學(xué)院, 天津 300384; 2.天津市復(fù)雜系統(tǒng)控制理論與應(yīng)用重點(diǎn)實(shí)驗(yàn)室, 天津 300384)
農(nóng)作物的健康生長(zhǎng)決定著農(nóng)業(yè)生產(chǎn)的產(chǎn)量及品質(zhì),作物健康監(jiān)測(cè)是精準(zhǔn)農(nóng)業(yè)的一個(gè)重要組成部分。由于害蟲(chóng)種類繁多且為害特點(diǎn)復(fù)雜,人工識(shí)別效率低下,無(wú)法及時(shí)對(duì)農(nóng)田蟲(chóng)害進(jìn)行全面有效防控[1-2]。農(nóng)田巡檢機(jī)器人可實(shí)現(xiàn)害蟲(chóng)的自動(dòng)監(jiān)測(cè)[3-4],在降低人工成本的情況下實(shí)現(xiàn)全天候的實(shí)時(shí)監(jiān)測(cè),其中巡檢機(jī)器人的視覺(jué)系統(tǒng)是高效、準(zhǔn)確識(shí)別害蟲(chóng)的關(guān)鍵。因此,研究一種能夠在復(fù)雜農(nóng)田環(huán)境下快速準(zhǔn)確識(shí)別害蟲(chóng)的方法,對(duì)提高農(nóng)業(yè)生產(chǎn)效率和質(zhì)量具有重要意義。
隨著人工智能技術(shù)的發(fā)展,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的方法已經(jīng)被大量應(yīng)用于農(nóng)作物的病蟲(chóng)害檢測(cè)。DENG等[5]研究了一種基于SIFT-HMAX和局部配置模型(Local configuration pattern)提取不變特征的方法,并利用支持向量機(jī)(Support vector machine,SVM)對(duì)害蟲(chóng)進(jìn)行識(shí)別,缺點(diǎn)是檢測(cè)圖像的時(shí)間較長(zhǎng),實(shí)時(shí)性差;KASINATHAN等[6]利用GrabCut算法對(duì)圖像進(jìn)行前景與背景的分割,并利用直方圖均衡化對(duì)圖像的對(duì)比度進(jìn)行增強(qiáng)來(lái)提取害蟲(chóng)特征,對(duì)害蟲(chóng)具有較好的檢測(cè)性能,但無(wú)法對(duì)數(shù)量較多的害蟲(chóng)進(jìn)行檢測(cè)。傳統(tǒng)檢測(cè)方法需要人工提取作物害蟲(chóng)特征,然而害蟲(chóng)的顏色和紋理與田間背景的顏色和紋理相似,通過(guò)傳統(tǒng)機(jī)器學(xué)習(xí)方法對(duì)農(nóng)田復(fù)雜環(huán)境下的害蟲(chóng)進(jìn)行檢測(cè),易受復(fù)雜環(huán)境影響造成檢測(cè)精度差,難以滿足巡檢機(jī)器人的實(shí)際工作需求。
深度學(xué)習(xí)方法能夠通過(guò)數(shù)據(jù)集訓(xùn)練的方式提取目標(biāo)多尺度特征,提高了模型精度及泛化能力,在害蟲(chóng)檢測(cè)方面得到廣泛應(yīng)用[7-10]。主流的目標(biāo)檢測(cè)網(wǎng)絡(luò)主要有SSD[11]、YOLO(You only look once)系列[12-14]和Faster R-CNN(Faster region with CNN)系列[15-17]等。在害蟲(chóng)檢測(cè)方面,DONG等[18]提出一種具有信道重新校準(zhǔn)特征金字塔網(wǎng)絡(luò) (CRFPN) 和自適應(yīng)錨 (AA) 模塊的CRA-Net,提高了小目標(biāo)害蟲(chóng)檢測(cè)的準(zhǔn)確性;JIAO等[19]設(shè)計(jì)了自適應(yīng)特征融合金字塔網(wǎng)絡(luò)(AFFP-Net),可提取害蟲(chóng)最優(yōu)多尺度特征,改善了病害檢測(cè)性能;NANNI等[20]利用顯著圖方法突出圖像中與目標(biāo)最相關(guān)的像素,并與CNN相結(jié)合的方式對(duì)害蟲(chóng)進(jìn)行識(shí)別,但是對(duì)小目標(biāo)的識(shí)別效果差;姚青等[21]基于改進(jìn)的CornerNet,利用重疊滑動(dòng)窗和檢測(cè)框抑制的方法,實(shí)現(xiàn)了對(duì)不同密度下稻飛虱的檢測(cè);郭慶文等[22]提出一種基于顯著圖分析技術(shù)的深度網(wǎng)絡(luò)害蟲(chóng)檢測(cè)模型,有效提高了誘蟲(chóng)板圖像害蟲(chóng)檢測(cè)精度,mAP達(dá)到86.40%;肖德琴等[23]提出一種改進(jìn)的Faster R-CNN算法,對(duì)不同天氣下不同密度的害蟲(chóng)進(jìn)行檢測(cè),采用ResNet101作為特征提取網(wǎng)絡(luò)時(shí),mAP達(dá)87.14%;彭紅星等[24]利用改進(jìn)后的YOLOF模型,對(duì)田間害蟲(chóng)進(jìn)行檢測(cè),平均精度均值達(dá)到93.7%。上述方法能夠從訓(xùn)練數(shù)據(jù)中有效學(xué)習(xí)到目標(biāo)特征,彌補(bǔ)了傳統(tǒng)機(jī)器學(xué)習(xí)人工提取特征的不足,并且在準(zhǔn)確率和檢測(cè)效率上也有一定程度的提高,但還存在以下問(wèn)題尚待解決:①當(dāng)前害蟲(chóng)檢測(cè)算法是在實(shí)驗(yàn)室環(huán)境下進(jìn)行檢測(cè)的,當(dāng)在農(nóng)田復(fù)雜環(huán)境下對(duì)害蟲(chóng)進(jìn)行檢測(cè)時(shí),害蟲(chóng)圖像不僅受背景因素影響,而且害蟲(chóng)形態(tài)、尺度多變,很容易造成害蟲(chóng)目標(biāo)誤檢和漏檢。②已有算法主要針對(duì)特定群體的害蟲(chóng)進(jìn)行目標(biāo)檢測(cè),農(nóng)田復(fù)雜環(huán)境下害蟲(chóng)體積小、數(shù)量多、分布不均且會(huì)存在作物遮擋的情況,從而影響識(shí)別準(zhǔn)確率。
針對(duì)上述問(wèn)題,本文通過(guò)融合注意力模塊、改進(jìn)多尺度特征融合模塊和優(yōu)化損失函數(shù),提出一種基于改進(jìn)YOLO v7的農(nóng)田復(fù)雜環(huán)境下害蟲(chóng)識(shí)別方法,以提高模型在農(nóng)田復(fù)雜環(huán)境下對(duì)密集小目標(biāo)害蟲(chóng)的檢測(cè)效果。
實(shí)驗(yàn)樣本數(shù)據(jù)集共包含2部分:采用公開(kāi)害蟲(chóng)圖像數(shù)據(jù)集IP102[25]和在佐治亞大學(xué)等機(jī)構(gòu)設(shè)立的網(wǎng)址(https:∥www.insectimages.org/index.cfm)下載的數(shù)據(jù)集,包括螻蛄、白星花金龜、麥長(zhǎng)管蚜、紅蜘蛛、蝗蟲(chóng)、玉米螟、飛蛾、薊馬和麥葉蜂9種常見(jiàn)農(nóng)田害蟲(chóng)圖像。為了符合巡檢機(jī)器人在復(fù)雜場(chǎng)景下的實(shí)際工作需求,共篩選出包含農(nóng)田復(fù)雜環(huán)境的3 824幅圖像作為實(shí)驗(yàn)數(shù)據(jù)集,并按照比例8∶1∶1創(chuàng)建訓(xùn)練集、驗(yàn)證集和測(cè)試集。然后將標(biāo)簽格式保存為 PASCAL VOC 數(shù)據(jù)集格式,并將圖像統(tǒng)一裁剪為640像素×640像素,調(diào)整后的部分害蟲(chóng)數(shù)據(jù)集圖像如圖1所示,訓(xùn)練集、驗(yàn)證集和測(cè)試集各類害蟲(chóng)詳細(xì)信息如表1所示。
表1 害蟲(chóng)數(shù)據(jù)集信息明細(xì)Tab.1 Pest dataset information details
圖1 復(fù)雜場(chǎng)景下的害蟲(chóng)圖像Fig.1 Image of pest in complex scenes
YOLO v7[26]是YOLO系列最新推出的結(jié)構(gòu),是目前在MSCOCO數(shù)據(jù)集上推理速度和識(shí)別效果最優(yōu)的YOLO模型,該模型兼顧了檢測(cè)速度與精度,滿足復(fù)雜環(huán)境下巡檢機(jī)器人識(shí)別快速、精準(zhǔn)的要求,因此,本文以YOLO v7 為基礎(chǔ)檢測(cè)模型并對(duì)其進(jìn)行改進(jìn)。YOLO v7 由骨干網(wǎng)絡(luò)(Backbone network)、頸部網(wǎng)絡(luò)(Neck network)和預(yù)測(cè)網(wǎng)絡(luò)(Prediction network)3部分組成。Backbone部分由集成卷積單元(CBS)、E-ELAN 架構(gòu)以及MPConv模塊組成,實(shí)現(xiàn)對(duì)特征的下采樣,生成目標(biāo)的語(yǔ)義信息;E-ELAN模塊通過(guò)利用CBS以不同方式的殘差連接來(lái)增強(qiáng)網(wǎng)絡(luò)對(duì)目標(biāo)的特征提取能力;MPConv模塊通過(guò)利用Maxpooling與CBS并行連接的方式分別對(duì)輸入特征圖進(jìn)行2倍下采樣并進(jìn)行信息融合,可以得到更多的特征信息,提升算法的檢測(cè)精度。Neck部分利用CBS、Cat-ELAN模塊和MPConv將不同特征層之間的特征信息相互融合,輸出到Prediction部分以生成檢測(cè)不同尺度的檢測(cè)框并預(yù)測(cè)出含有置信度的目標(biāo)類別。
2.2.1害蟲(chóng)檢測(cè)模型構(gòu)建
雖然YOLO v7網(wǎng)絡(luò)模型能夠很好地權(quán)衡速度與精度,但是在農(nóng)田復(fù)雜環(huán)境中,由于作物枝葉遮擋等環(huán)境因素造成許多目標(biāo)特征提取困難,特征信息容易丟失,不利于對(duì)作物害蟲(chóng)的檢測(cè)。為了提高檢測(cè)精度與檢測(cè)效率,提出改進(jìn)的YOLO v7害蟲(chóng)檢測(cè)模型,其網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。Backbone部分提取的特征B1與經(jīng)過(guò)3次上采樣的特征進(jìn)行特征融合后得到N4,最后經(jīng)過(guò)Rep卷積模塊后得到P1,用于檢測(cè)極小目標(biāo);進(jìn)行特征提取后的特征圖B2與經(jīng)過(guò)2次上采樣的特征圖進(jìn)行特征融合后得到N3,再將N3與N4進(jìn)行級(jí)聯(lián)操作后,經(jīng)過(guò)Rep卷積模塊后得到P2,用于檢測(cè)小目標(biāo);同理可得到特征圖P3和P4分別用于對(duì)中目標(biāo)和大目標(biāo)的檢測(cè)。
圖2 改進(jìn)的YOLO v7網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.2 Improved YOLO v7 network structure diagram
2.2.2基于Swin Transformer的特征提取模塊
由于在農(nóng)田復(fù)雜環(huán)境下的害蟲(chóng)呈現(xiàn)密集且分布不均現(xiàn)象,容易造成模型無(wú)法準(zhǔn)確定位害蟲(chóng)目標(biāo)位置,出現(xiàn)漏檢問(wèn)題。YOLO v7網(wǎng)絡(luò)模型為CNN網(wǎng)絡(luò),具有局部相關(guān)性和平移不變性,缺乏全局建模的能力。為進(jìn)一步提高模型對(duì)密集目標(biāo)的特征提取能力,在YOLO v7網(wǎng)絡(luò)模型的骨干網(wǎng)絡(luò)頂層引入Swin Transformer特征提取模塊(SwinCSPX),通過(guò)Swin Transformer自注意力機(jī)制[27],有效地融合局部特征和全局特征,獲取全局上下文信息,從而指導(dǎo)模型更好地完成對(duì)密集目標(biāo)的檢測(cè)。因此,本研究將Swin Transformer Block與CSP Bottleneck結(jié)合,構(gòu)成SwinCSPX模塊,其結(jié)構(gòu)如圖3所示。
圖3 SwinCSPX模塊Fig.3 SwinCSPX module
Swin Transformer Block利用基于窗口多頭自注意力(Windows multi-head self-attention,W-MSA)和基于移位窗口多頭自注意力(Shifted windows multi-head self-attention,SW-MSA)相結(jié)合的方式,指導(dǎo)模型建立害蟲(chóng)特征圖通道與害蟲(chóng)目標(biāo)位置信息的關(guān)系,利用全局上下文信息進(jìn)行特征通道與害蟲(chóng)目標(biāo)的信息交互,提高模型對(duì)密集型目標(biāo)位置信息的識(shí)別能力,即W-MSA將輸入特征圖分割成4個(gè)尺寸相同的窗口,在W-MSA之后使用移位窗口自注意力(SW-MSA) 將4個(gè)不同窗口間的信息融合。其具體實(shí)現(xiàn)方法是將W-MSA的4個(gè)窗口利用滑動(dòng)窗口得到的編碼為A~I(xiàn)的9個(gè)窗口,通過(guò)循環(huán)移位的方法對(duì)9個(gè)窗口進(jìn)行信息重組,保證了移位后窗口的尺寸與原W-MSA窗口一致,最后進(jìn)行窗口內(nèi)Transformer自注意力[28]計(jì)算,不僅減少了計(jì)算量,而且實(shí)現(xiàn)了全局建模。
SW-MSA移動(dòng)窗口的重組示意圖如圖4所示。圖4上方矩形框內(nèi)執(zhí)行的操作為W-MSA,將圖像劃分為4個(gè)窗口;圖4下方矩形框內(nèi)執(zhí)行操作為SW-MSA,利用滑動(dòng)窗口將得到的4個(gè)窗口劃分為尺寸不一的9個(gè)窗口(A~I(xiàn)),通過(guò)循環(huán)移位操作將(F,D)、(H,B)及(I,G,C,A)構(gòu)成的小窗口重新組合成4個(gè)同樣尺寸的窗口,從而完成不同窗口間的信息交流。Swin Transformer Block可以表示為
(1)
式中 W-MSA——窗口多頭自注意力
SW-MSA——移位窗口多頭自注意力
ml-1——輸入
ml、ml+1——W-MSA和SW-MSA的輸出
MLP()——多層感知機(jī)
LN()——層標(biāo)準(zhǔn)化操作
2.2.3多尺度路徑聚合模塊
為了更好地利用底層特征,從而提升模型對(duì)小目標(biāo)檢測(cè)性能,在原YOLO v7網(wǎng)絡(luò)模型的基礎(chǔ)上,構(gòu)建4種不同尺度的檢測(cè)頭來(lái)識(shí)別害蟲(chóng)多尺度目標(biāo)。淺層特征圖中包含更豐富的顏色、紋理等信息。隨著網(wǎng)絡(luò)層數(shù)的加深,深層網(wǎng)絡(luò)感受野變大,得到的特征圖更具全局性,可以得到表達(dá)能力更強(qiáng)的語(yǔ)義信息,但是小目標(biāo)的一些細(xì)粒度的特征信息容易丟失[28]。通過(guò)在路徑聚合部分增加第4檢測(cè)支路,將淺層網(wǎng)絡(luò)中的底層信息特征與深層網(wǎng)絡(luò)的高語(yǔ)義特征進(jìn)行信息融合,從而提升模型在實(shí)際農(nóng)田環(huán)境下對(duì)小目標(biāo)害蟲(chóng)的檢測(cè)精度。
2.2.4注意力機(jī)制模塊
CBAM利用通道注意力和空間注意力對(duì)輸入特征圖進(jìn)行自適應(yīng)特征優(yōu)化,其模型結(jié)構(gòu)如圖5所示。在通道注意力機(jī)制中,其輸入的特征圖F在分別經(jīng)過(guò)平均池化和最大池化進(jìn)行映射后,將得到的特征傳遞到多層感知機(jī)(MLP)中,獲得每個(gè)通道的權(quán)重,將權(quán)重進(jìn)行Add操作后,通過(guò) Sigmoid 激活函數(shù)得到系數(shù)矩陣Mc,原始特征圖F與系數(shù)矩陣Mc相乘得到優(yōu)化后的特征圖F′。Mc計(jì)算公式為
Mc=σ(MLP(Avgpool(F)))+
σ(MLP(Maxpool(F)))
(2)
式中σ——Sigmoid激活函數(shù)
Avgpool——平均池化操作
Maxpool——最大池化操作
經(jīng)過(guò)通道注意力機(jī)制優(yōu)化的特征圖F′在空間注意力機(jī)制中,經(jīng)過(guò)全局平均池化和最大池化得到權(quán)重映射并對(duì)其進(jìn)行堆疊形成特征圖空間權(quán)重。經(jīng)過(guò)一個(gè)7×7卷積層并利用Sigmoid進(jìn)行激活后得到系數(shù)矩陣Ms。最后將特征圖F′ 和系數(shù)矩陣Ms相乘,對(duì)特征圖上的特征進(jìn)行重要程度的重分配,得到優(yōu)化后的特征圖F″,將F″與原始特征圖F進(jìn)行特征融合得到自適應(yīng)特征圖F*,從而使網(wǎng)絡(luò)能夠從更多的維度關(guān)注到感興趣的目標(biāo)區(qū)域。
2.2.5損失函數(shù)
由于農(nóng)田復(fù)雜環(huán)境下拍攝的害蟲(chóng)圖像背景復(fù)雜,前景與背景容易出現(xiàn)類失衡,訓(xùn)練過(guò)程中高質(zhì)量的錨框遠(yuǎn)少于誤差大的錨框,質(zhì)量差的樣本會(huì)產(chǎn)生較大梯度從而影響模型優(yōu)化方向。
為了解決以上問(wèn)題,本文引入Focal EIoU Loss(Focal and efficient IoU loss)替換原損失函數(shù)中的CIoU Loss,其計(jì)算公式為
LFocal-EIoU=IoUγLEIoU
(3)
式中γ——控制異常值抑制程度的參數(shù)
LEIoU——有效交并比損失
相當(dāng)于對(duì)高質(zhì)量的回歸目標(biāo)進(jìn)行加權(quán),提高錨框的回歸精度。
EIoU計(jì)算公式為
(4)
式中b、bgt——預(yù)測(cè)框和真實(shí)框的中心點(diǎn)
ω、ωgt——預(yù)測(cè)框和真實(shí)框的寬
h、hgt——預(yù)測(cè)框和真實(shí)框的高
cω、ch——包含預(yù)測(cè)框和真實(shí)框最小外接框的寬度和高度
c——預(yù)測(cè)框與真實(shí)框最小外接矩形的對(duì)角線距離
ρ——?dú)W幾里得距離
EIoU Loss將損失函數(shù)分為預(yù)測(cè)框和真實(shí)框的重疊損失、位置損失以及寬高損失。
Focal EIoU Loss在CIoU Loss的基礎(chǔ)上,不僅優(yōu)化了邊界框回歸,挖掘了高質(zhì)量樣本,還對(duì)寬高損失進(jìn)行改進(jìn),直接計(jì)算預(yù)測(cè)框與真實(shí)框?qū)捀叩牟钪底鳛檫呴L(zhǎng)損失函數(shù),提升了邊界框收斂速度,優(yōu)化了模型檢測(cè)性能。
本實(shí)驗(yàn)在基于Ubuntu 18.04、Python 3.8與PyTorch 1.7搭建的深度學(xué)習(xí)環(huán)境中完成,在GTX1080Ti×2的服務(wù)器上進(jìn)行實(shí)驗(yàn),同時(shí)使用CUDA v11.0、cuDNN v7.6.5對(duì)運(yùn)算進(jìn)行加速。
模型對(duì)螻蛄、白星花金龜、麥長(zhǎng)管蚜、紅蜘蛛、蝗蟲(chóng)、玉米螟、飛蛾、薊馬和麥葉蜂9種常見(jiàn)農(nóng)田害蟲(chóng)識(shí)別結(jié)果進(jìn)行分析,用精確率(Precision,P)、召回率(Recall,R)、平均精度均值(mAP)及檢測(cè)速度評(píng)價(jià)模型性能。
3.2.1不同識(shí)別模型結(jié)果對(duì)比
基于制作的害蟲(chóng)數(shù)據(jù)集,將改進(jìn)算法與其他6種目標(biāo)檢測(cè)網(wǎng)絡(luò)算法在同一計(jì)算平臺(tái)進(jìn)行對(duì)比實(shí)驗(yàn),檢測(cè)結(jié)果如表2所示。
表2 不同模型實(shí)驗(yàn)結(jié)果Tab.2 Experiment results of different models
改進(jìn)算法的精確率為91.6%,召回率為82.9%,平均精度均值為88.2%,在保證精確率與其它模型基本一致的情況下,召回率和平均精度均值均高于其他6種模型,比YOLO v5模型的召回率和平均精度均值分別高了4.4、4.6個(gè)百分點(diǎn),比YOLO v7模型的召回率和平均精度均值分別高了1.2、3個(gè)百分點(diǎn)。改進(jìn)算法的平均檢測(cè)速度為27.3 f/s,雖然略低于檢測(cè)速度最快的YOLO v7模型,但是檢測(cè)算法的其他性能指標(biāo)均優(yōu)于該模型。因此,綜合模型整體的檢測(cè)性能指標(biāo),本文算法在識(shí)別精度與速度方面均具有較大優(yōu)勢(shì)。
圖6為改進(jìn)算法的檢測(cè)效果圖,改進(jìn)算法能夠在不同光照、多尺度以及不同程度遮擋的復(fù)雜環(huán)境下很好地檢測(cè)出不同種類害蟲(chóng),且漏檢和誤檢情況較少,模型的魯棒性強(qiáng)。
圖6 改進(jìn)算法檢測(cè)效果Fig.6 Detection effects of improved algorithm
模型能夠精準(zhǔn)檢測(cè)出害蟲(chóng)的種類及位置,表明模型具有較強(qiáng)的特征提取及推理能力。本文將7種算法對(duì)9種害蟲(chóng)的識(shí)別結(jié)果(平均精確率和召回率)進(jìn)行對(duì)比,如表3所示。改進(jìn)的YOLO v7模型對(duì)麥長(zhǎng)管蚜和紅蜘蛛這兩種類別的小目標(biāo)樣本的識(shí)別精確率分別為88.9%和76.2%,比YOLO v7模型分別提升0.4、9.4個(gè)百分點(diǎn),表明改進(jìn)后的模型能夠提取到更底層的特征,使模型學(xué)習(xí)到了更多的細(xì)節(jié)特征,從而提高了模型對(duì)小目標(biāo)的識(shí)別能力。改進(jìn)的YOLO v7模型對(duì)全類別害蟲(chóng)的召回率較原模型提升1.2個(gè)百分點(diǎn),對(duì)體型小且分布較為密集的麥長(zhǎng)管蚜、紅蜘蛛這兩類害蟲(chóng)的召回率比原YOLO v7模型分別提高1.0、5.7個(gè)百分點(diǎn),說(shuō)明改進(jìn)的模型對(duì)密集情況下的害蟲(chóng)也有很好的檢測(cè)效果。
表3 不同種類害蟲(chóng)識(shí)別的平均精確率與召回率對(duì)比Tab.3 Comparison of average precision rate and recall rate for different kinds of pests identification %
由圖7可知,改進(jìn)的YOLO v7模型不僅漏檢和誤檢極低,而且在白天和夜間環(huán)境下對(duì)密集小目標(biāo)的精確率和召回率更高。在圖像1中,Faster R-CNN模型對(duì)遮擋目標(biāo)的檢測(cè)效果較差,且存在誤檢情況,而YOLO v3模型存在更多的漏檢情況,YOLO v5模型檢測(cè)效果優(yōu)于以上2種模型,但是左上方被遮擋的白星花金龜未檢測(cè)到;圖像2中,YOLO v4模型檢測(cè)與背景相似的多目標(biāo)漏檢程度較高,Faster R-CNN模型作為二階段目標(biāo)檢測(cè)算法,容易將背景識(shí)別成目標(biāo),檢測(cè)精度較差;在對(duì)密集小目標(biāo)的檢測(cè)結(jié)果中,SSD模型在圖像3和圖像4中僅檢測(cè)出一小部分的麥長(zhǎng)管蚜和紅蜘蛛,YOLO v3和YOLO v4模型雖然檢測(cè)效果優(yōu)于SSD,但仍有小部分目標(biāo)未檢測(cè)出。改進(jìn)的YOLO v7模型不僅能夠檢測(cè)出被枝葉遮擋的害蟲(chóng),同樣,該算法也能對(duì)密集且分布不均的小目標(biāo)有較高的檢測(cè)精度。
圖7 不同算法檢測(cè)結(jié)果對(duì)比Fig.7 Comparison of different algorithms results
3.2.2消融實(shí)驗(yàn)
本文共設(shè)計(jì)5組不同模型的消融實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表4所示。
表4 消融實(shí)驗(yàn)結(jié)果Tab.4 Ablation experiment results
由表4可知,在骨干網(wǎng)絡(luò)頂層添加SwinCSPX模塊的網(wǎng)絡(luò)模型比YOLO v7網(wǎng)絡(luò)平均精度均值提升2.2個(gè)百分點(diǎn),對(duì)麥長(zhǎng)管蚜的檢測(cè)結(jié)果提升1.6個(gè)百分點(diǎn),說(shuō)明Swin Transformer模塊使模型能夠更加關(guān)注密集的小目標(biāo),提取到了更多輪廓紋理等細(xì)節(jié)特征,使模型在層數(shù)加深的同時(shí),依舊能夠具有提取全局上下文特征信息的能力,提升了對(duì)小目標(biāo)的檢測(cè)精度。YOLO v7+SwinCSPX+CBAM模型較YOLO v7+SwinCSPX網(wǎng)絡(luò)平均精度均值提高0.2個(gè)百分點(diǎn),對(duì)白星花金龜和玉米螟的檢測(cè)結(jié)果提升1.0、4.6個(gè)百分點(diǎn),說(shuō)明了注意力機(jī)制模塊能夠有效抑制背景等一般特征表達(dá),能明顯提升模型的檢測(cè)性能。在此基礎(chǔ)上將YOLO v7網(wǎng)絡(luò)路徑聚合部分拓展為4種不同尺度的檢測(cè)支路,對(duì)麥長(zhǎng)管蚜和蝗蟲(chóng)的檢測(cè)結(jié)果較YOLO v7+SwinCSPX+CBAM模型提升2.1、1.5個(gè)百分點(diǎn)。由實(shí)驗(yàn)可得出,改進(jìn)的YOLO v7算法比基準(zhǔn)網(wǎng)絡(luò)平均精度均值提升3個(gè)百分點(diǎn),對(duì)螻蛄、紅蜘蛛、飛蛾、麥葉蜂的識(shí)別結(jié)果比YOLO v7模型提升2.9、9.4、4.5、3.3個(gè)百分點(diǎn),檢測(cè)精度顯著提升。
(1)針對(duì)實(shí)際農(nóng)田環(huán)境下存在的遮擋、形態(tài)多變和數(shù)量多且分布不均等問(wèn)題,提出了一種基于改進(jìn)YOLO v7的目標(biāo)檢測(cè)模型,能夠在農(nóng)田復(fù)雜環(huán)境下的害蟲(chóng)圖像中準(zhǔn)確檢測(cè)出害蟲(chóng)種類、位置及分布密度。首先,通過(guò)在YOLO v7骨干網(wǎng)絡(luò)中加入CBAM模塊,使模型更加關(guān)注害蟲(chóng)目標(biāo),抑制背景等一般特征的表達(dá);同時(shí)將YOLO v7的3個(gè)不同尺度的檢測(cè)頭增加為4個(gè),提高了模型對(duì)害蟲(chóng)目標(biāo)的檢測(cè)精度;其次,在骨干網(wǎng)絡(luò)頂層添加SwinCSPX模塊,使模型對(duì)密集且分布不均的害蟲(chóng)定位更加準(zhǔn)確;最后,將原YOLO v7模型的損失函數(shù)替換為Focal EIoU,提高了模型的檢測(cè)性能。
(2)改進(jìn)的YOLO v7模型的平均精度均值為88.2%,較原YOLO v7模型提升3個(gè)百分點(diǎn),在保證檢測(cè)速度的同時(shí),提高了檢測(cè)精度。面對(duì)復(fù)雜的農(nóng)田環(huán)境,改進(jìn)算法具有較高的穩(wěn)定性和魯棒性,為提升害蟲(chóng)視覺(jué)檢測(cè)系統(tǒng)性能提供了有效手段。