?

基于改進YOLO v7的農田復雜環境下害蟲識別算法研究

2023-11-23 05:00王紅君岳有軍
農業機械學報 2023年10期
關鍵詞:害蟲精度特征

趙 輝 黃 鏢 王紅君 岳有軍

(1.天津理工大學電氣工程與自動化學院, 天津 300384; 2.天津市復雜系統控制理論與應用重點實驗室, 天津 300384)

0 引言

農作物的健康生長決定著農業生產的產量及品質,作物健康監測是精準農業的一個重要組成部分。由于害蟲種類繁多且為害特點復雜,人工識別效率低下,無法及時對農田蟲害進行全面有效防控[1-2]。農田巡檢機器人可實現害蟲的自動監測[3-4],在降低人工成本的情況下實現全天候的實時監測,其中巡檢機器人的視覺系統是高效、準確識別害蟲的關鍵。因此,研究一種能夠在復雜農田環境下快速準確識別害蟲的方法,對提高農業生產效率和質量具有重要意義。

隨著人工智能技術的發展,機器學習和深度學習的方法已經被大量應用于農作物的病蟲害檢測。DENG等[5]研究了一種基于SIFT-HMAX和局部配置模型(Local configuration pattern)提取不變特征的方法,并利用支持向量機(Support vector machine,SVM)對害蟲進行識別,缺點是檢測圖像的時間較長,實時性差;KASINATHAN等[6]利用GrabCut算法對圖像進行前景與背景的分割,并利用直方圖均衡化對圖像的對比度進行增強來提取害蟲特征,對害蟲具有較好的檢測性能,但無法對數量較多的害蟲進行檢測。傳統檢測方法需要人工提取作物害蟲特征,然而害蟲的顏色和紋理與田間背景的顏色和紋理相似,通過傳統機器學習方法對農田復雜環境下的害蟲進行檢測,易受復雜環境影響造成檢測精度差,難以滿足巡檢機器人的實際工作需求。

深度學習方法能夠通過數據集訓練的方式提取目標多尺度特征,提高了模型精度及泛化能力,在害蟲檢測方面得到廣泛應用[7-10]。主流的目標檢測網絡主要有SSD[11]、YOLO(You only look once)系列[12-14]和Faster R-CNN(Faster region with CNN)系列[15-17]等。在害蟲檢測方面,DONG等[18]提出一種具有信道重新校準特征金字塔網絡 (CRFPN) 和自適應錨 (AA) 模塊的CRA-Net,提高了小目標害蟲檢測的準確性;JIAO等[19]設計了自適應特征融合金字塔網絡(AFFP-Net),可提取害蟲最優多尺度特征,改善了病害檢測性能;NANNI等[20]利用顯著圖方法突出圖像中與目標最相關的像素,并與CNN相結合的方式對害蟲進行識別,但是對小目標的識別效果差;姚青等[21]基于改進的CornerNet,利用重疊滑動窗和檢測框抑制的方法,實現了對不同密度下稻飛虱的檢測;郭慶文等[22]提出一種基于顯著圖分析技術的深度網絡害蟲檢測模型,有效提高了誘蟲板圖像害蟲檢測精度,mAP達到86.40%;肖德琴等[23]提出一種改進的Faster R-CNN算法,對不同天氣下不同密度的害蟲進行檢測,采用ResNet101作為特征提取網絡時,mAP達87.14%;彭紅星等[24]利用改進后的YOLOF模型,對田間害蟲進行檢測,平均精度均值達到93.7%。上述方法能夠從訓練數據中有效學習到目標特征,彌補了傳統機器學習人工提取特征的不足,并且在準確率和檢測效率上也有一定程度的提高,但還存在以下問題尚待解決:①當前害蟲檢測算法是在實驗室環境下進行檢測的,當在農田復雜環境下對害蟲進行檢測時,害蟲圖像不僅受背景因素影響,而且害蟲形態、尺度多變,很容易造成害蟲目標誤檢和漏檢。②已有算法主要針對特定群體的害蟲進行目標檢測,農田復雜環境下害蟲體積小、數量多、分布不均且會存在作物遮擋的情況,從而影響識別準確率。

針對上述問題,本文通過融合注意力模塊、改進多尺度特征融合模塊和優化損失函數,提出一種基于改進YOLO v7的農田復雜環境下害蟲識別方法,以提高模型在農田復雜環境下對密集小目標害蟲的檢測效果。

1 實驗數據集

實驗樣本數據集共包含2部分:采用公開害蟲圖像數據集IP102[25]和在佐治亞大學等機構設立的網址(https:∥www.insectimages.org/index.cfm)下載的數據集,包括螻蛄、白星花金龜、麥長管蚜、紅蜘蛛、蝗蟲、玉米螟、飛蛾、薊馬和麥葉蜂9種常見農田害蟲圖像。為了符合巡檢機器人在復雜場景下的實際工作需求,共篩選出包含農田復雜環境的3 824幅圖像作為實驗數據集,并按照比例8∶1∶1創建訓練集、驗證集和測試集。然后將標簽格式保存為 PASCAL VOC 數據集格式,并將圖像統一裁剪為640像素×640像素,調整后的部分害蟲數據集圖像如圖1所示,訓練集、驗證集和測試集各類害蟲詳細信息如表1所示。

表1 害蟲數據集信息明細Tab.1 Pest dataset information details

圖1 復雜場景下的害蟲圖像Fig.1 Image of pest in complex scenes

2 作物害蟲檢測方法

2.1 YOLO v7網絡結構

YOLO v7[26]是YOLO系列最新推出的結構,是目前在MSCOCO數據集上推理速度和識別效果最優的YOLO模型,該模型兼顧了檢測速度與精度,滿足復雜環境下巡檢機器人識別快速、精準的要求,因此,本文以YOLO v7 為基礎檢測模型并對其進行改進。YOLO v7 由骨干網絡(Backbone network)、頸部網絡(Neck network)和預測網絡(Prediction network)3部分組成。Backbone部分由集成卷積單元(CBS)、E-ELAN 架構以及MPConv模塊組成,實現對特征的下采樣,生成目標的語義信息;E-ELAN模塊通過利用CBS以不同方式的殘差連接來增強網絡對目標的特征提取能力;MPConv模塊通過利用Maxpooling與CBS并行連接的方式分別對輸入特征圖進行2倍下采樣并進行信息融合,可以得到更多的特征信息,提升算法的檢測精度。Neck部分利用CBS、Cat-ELAN模塊和MPConv將不同特征層之間的特征信息相互融合,輸出到Prediction部分以生成檢測不同尺度的檢測框并預測出含有置信度的目標類別。

2.2 改進的YOLO v7害蟲檢測模型

2.2.1害蟲檢測模型構建

雖然YOLO v7網絡模型能夠很好地權衡速度與精度,但是在農田復雜環境中,由于作物枝葉遮擋等環境因素造成許多目標特征提取困難,特征信息容易丟失,不利于對作物害蟲的檢測。為了提高檢測精度與檢測效率,提出改進的YOLO v7害蟲檢測模型,其網絡結構如圖2所示。Backbone部分提取的特征B1與經過3次上采樣的特征進行特征融合后得到N4,最后經過Rep卷積模塊后得到P1,用于檢測極小目標;進行特征提取后的特征圖B2與經過2次上采樣的特征圖進行特征融合后得到N3,再將N3與N4進行級聯操作后,經過Rep卷積模塊后得到P2,用于檢測小目標;同理可得到特征圖P3和P4分別用于對中目標和大目標的檢測。

圖2 改進的YOLO v7網絡結構圖Fig.2 Improved YOLO v7 network structure diagram

2.2.2基于Swin Transformer的特征提取模塊

由于在農田復雜環境下的害蟲呈現密集且分布不均現象,容易造成模型無法準確定位害蟲目標位置,出現漏檢問題。YOLO v7網絡模型為CNN網絡,具有局部相關性和平移不變性,缺乏全局建模的能力。為進一步提高模型對密集目標的特征提取能力,在YOLO v7網絡模型的骨干網絡頂層引入Swin Transformer特征提取模塊(SwinCSPX),通過Swin Transformer自注意力機制[27],有效地融合局部特征和全局特征,獲取全局上下文信息,從而指導模型更好地完成對密集目標的檢測。因此,本研究將Swin Transformer Block與CSP Bottleneck結合,構成SwinCSPX模塊,其結構如圖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)相結合的方式,指導模型建立害蟲特征圖通道與害蟲目標位置信息的關系,利用全局上下文信息進行特征通道與害蟲目標的信息交互,提高模型對密集型目標位置信息的識別能力,即W-MSA將輸入特征圖分割成4個尺寸相同的窗口,在W-MSA之后使用移位窗口自注意力(SW-MSA) 將4個不同窗口間的信息融合。其具體實現方法是將W-MSA的4個窗口利用滑動窗口得到的編碼為A~I的9個窗口,通過循環移位的方法對9個窗口進行信息重組,保證了移位后窗口的尺寸與原W-MSA窗口一致,最后進行窗口內Transformer自注意力[28]計算,不僅減少了計算量,而且實現了全局建模。

SW-MSA移動窗口的重組示意圖如圖4所示。圖4上方矩形框內執行的操作為W-MSA,將圖像劃分為4個窗口;圖4下方矩形框內執行操作為SW-MSA,利用滑動窗口將得到的4個窗口劃分為尺寸不一的9個窗口(A~I),通過循環移位操作將(F,D)、(H,B)及(I,G,C,A)構成的小窗口重新組合成4個同樣尺寸的窗口,從而完成不同窗口間的信息交流。Swin Transformer Block可以表示為

(1)

式中 W-MSA——窗口多頭自注意力

SW-MSA——移位窗口多頭自注意力

ml-1——輸入

ml、ml+1——W-MSA和SW-MSA的輸出

MLP()——多層感知機

LN()——層標準化操作

2.2.3多尺度路徑聚合模塊

為了更好地利用底層特征,從而提升模型對小目標檢測性能,在原YOLO v7網絡模型的基礎上,構建4種不同尺度的檢測頭來識別害蟲多尺度目標。淺層特征圖中包含更豐富的顏色、紋理等信息。隨著網絡層數的加深,深層網絡感受野變大,得到的特征圖更具全局性,可以得到表達能力更強的語義信息,但是小目標的一些細粒度的特征信息容易丟失[28]。通過在路徑聚合部分增加第4檢測支路,將淺層網絡中的底層信息特征與深層網絡的高語義特征進行信息融合,從而提升模型在實際農田環境下對小目標害蟲的檢測精度。

2.2.4注意力機制模塊

CBAM利用通道注意力和空間注意力對輸入特征圖進行自適應特征優化,其模型結構如圖5所示。在通道注意力機制中,其輸入的特征圖F在分別經過平均池化和最大池化進行映射后,將得到的特征傳遞到多層感知機(MLP)中,獲得每個通道的權重,將權重進行Add操作后,通過 Sigmoid 激活函數得到系數矩陣Mc,原始特征圖F與系數矩陣Mc相乘得到優化后的特征圖F′。Mc計算公式為

Mc=σ(MLP(Avgpool(F)))+
σ(MLP(Maxpool(F)))

(2)

式中σ——Sigmoid激活函數

Avgpool——平均池化操作

Maxpool——最大池化操作

經過通道注意力機制優化的特征圖F′在空間注意力機制中,經過全局平均池化和最大池化得到權重映射并對其進行堆疊形成特征圖空間權重。經過一個7×7卷積層并利用Sigmoid進行激活后得到系數矩陣Ms。最后將特征圖F′ 和系數矩陣Ms相乘,對特征圖上的特征進行重要程度的重分配,得到優化后的特征圖F″,將F″與原始特征圖F進行特征融合得到自適應特征圖F*,從而使網絡能夠從更多的維度關注到感興趣的目標區域。

2.2.5損失函數

由于農田復雜環境下拍攝的害蟲圖像背景復雜,前景與背景容易出現類失衡,訓練過程中高質量的錨框遠少于誤差大的錨框,質量差的樣本會產生較大梯度從而影響模型優化方向。

為了解決以上問題,本文引入Focal EIoU Loss(Focal and efficient IoU loss)替換原損失函數中的CIoU Loss,其計算公式為

LFocal-EIoU=IoUγLEIoU

(3)

式中γ——控制異常值抑制程度的參數

LEIoU——有效交并比損失

相當于對高質量的回歸目標進行加權,提高錨框的回歸精度。

EIoU計算公式為

(4)

式中b、bgt——預測框和真實框的中心點

ω、ωgt——預測框和真實框的寬

h、hgt——預測框和真實框的高

cω、ch——包含預測框和真實框最小外接框的寬度和高度

c——預測框與真實框最小外接矩形的對角線距離

ρ——歐幾里得距離

EIoU Loss將損失函數分為預測框和真實框的重疊損失、位置損失以及寬高損失。

Focal EIoU Loss在CIoU Loss的基礎上,不僅優化了邊界框回歸,挖掘了高質量樣本,還對寬高損失進行改進,直接計算預測框與真實框寬高的差值作為邊長損失函數,提升了邊界框收斂速度,優化了模型檢測性能。

3 結果與分析

3.1 實驗運行平臺及模型測試指標

本實驗在基于Ubuntu 18.04、Python 3.8與PyTorch 1.7搭建的深度學習環境中完成,在GTX1080Ti×2的服務器上進行實驗,同時使用CUDA v11.0、cuDNN v7.6.5對運算進行加速。

模型對螻蛄、白星花金龜、麥長管蚜、紅蜘蛛、蝗蟲、玉米螟、飛蛾、薊馬和麥葉蜂9種常見農田害蟲識別結果進行分析,用精確率(Precision,P)、召回率(Recall,R)、平均精度均值(mAP)及檢測速度評價模型性能。

3.2 結果評估

3.2.1不同識別模型結果對比

基于制作的害蟲數據集,將改進算法與其他6種目標檢測網絡算法在同一計算平臺進行對比實驗,檢測結果如表2所示。

表2 不同模型實驗結果Tab.2 Experiment results of different models

改進算法的精確率為91.6%,召回率為82.9%,平均精度均值為88.2%,在保證精確率與其它模型基本一致的情況下,召回率和平均精度均值均高于其他6種模型,比YOLO v5模型的召回率和平均精度均值分別高了4.4、4.6個百分點,比YOLO v7模型的召回率和平均精度均值分別高了1.2、3個百分點。改進算法的平均檢測速度為27.3 f/s,雖然略低于檢測速度最快的YOLO v7模型,但是檢測算法的其他性能指標均優于該模型。因此,綜合模型整體的檢測性能指標,本文算法在識別精度與速度方面均具有較大優勢。

圖6為改進算法的檢測效果圖,改進算法能夠在不同光照、多尺度以及不同程度遮擋的復雜環境下很好地檢測出不同種類害蟲,且漏檢和誤檢情況較少,模型的魯棒性強。

圖6 改進算法檢測效果Fig.6 Detection effects of improved algorithm

模型能夠精準檢測出害蟲的種類及位置,表明模型具有較強的特征提取及推理能力。本文將7種算法對9種害蟲的識別結果(平均精確率和召回率)進行對比,如表3所示。改進的YOLO v7模型對麥長管蚜和紅蜘蛛這兩種類別的小目標樣本的識別精確率分別為88.9%和76.2%,比YOLO v7模型分別提升0.4、9.4個百分點,表明改進后的模型能夠提取到更底層的特征,使模型學習到了更多的細節特征,從而提高了模型對小目標的識別能力。改進的YOLO v7模型對全類別害蟲的召回率較原模型提升1.2個百分點,對體型小且分布較為密集的麥長管蚜、紅蜘蛛這兩類害蟲的召回率比原YOLO v7模型分別提高1.0、5.7個百分點,說明改進的模型對密集情況下的害蟲也有很好的檢測效果。

表3 不同種類害蟲識別的平均精確率與召回率對比Tab.3 Comparison of average precision rate and recall rate for different kinds of pests identification %

由圖7可知,改進的YOLO v7模型不僅漏檢和誤檢極低,而且在白天和夜間環境下對密集小目標的精確率和召回率更高。在圖像1中,Faster R-CNN模型對遮擋目標的檢測效果較差,且存在誤檢情況,而YOLO v3模型存在更多的漏檢情況,YOLO v5模型檢測效果優于以上2種模型,但是左上方被遮擋的白星花金龜未檢測到;圖像2中,YOLO v4模型檢測與背景相似的多目標漏檢程度較高,Faster R-CNN模型作為二階段目標檢測算法,容易將背景識別成目標,檢測精度較差;在對密集小目標的檢測結果中,SSD模型在圖像3和圖像4中僅檢測出一小部分的麥長管蚜和紅蜘蛛,YOLO v3和YOLO v4模型雖然檢測效果優于SSD,但仍有小部分目標未檢測出。改進的YOLO v7模型不僅能夠檢測出被枝葉遮擋的害蟲,同樣,該算法也能對密集且分布不均的小目標有較高的檢測精度。

圖7 不同算法檢測結果對比Fig.7 Comparison of different algorithms results

3.2.2消融實驗

本文共設計5組不同模型的消融實驗,實驗結果如表4所示。

表4 消融實驗結果Tab.4 Ablation experiment results

由表4可知,在骨干網絡頂層添加SwinCSPX模塊的網絡模型比YOLO v7網絡平均精度均值提升2.2個百分點,對麥長管蚜的檢測結果提升1.6個百分點,說明Swin Transformer模塊使模型能夠更加關注密集的小目標,提取到了更多輪廓紋理等細節特征,使模型在層數加深的同時,依舊能夠具有提取全局上下文特征信息的能力,提升了對小目標的檢測精度。YOLO v7+SwinCSPX+CBAM模型較YOLO v7+SwinCSPX網絡平均精度均值提高0.2個百分點,對白星花金龜和玉米螟的檢測結果提升1.0、4.6個百分點,說明了注意力機制模塊能夠有效抑制背景等一般特征表達,能明顯提升模型的檢測性能。在此基礎上將YOLO v7網絡路徑聚合部分拓展為4種不同尺度的檢測支路,對麥長管蚜和蝗蟲的檢測結果較YOLO v7+SwinCSPX+CBAM模型提升2.1、1.5個百分點。由實驗可得出,改進的YOLO v7算法比基準網絡平均精度均值提升3個百分點,對螻蛄、紅蜘蛛、飛蛾、麥葉蜂的識別結果比YOLO v7模型提升2.9、9.4、4.5、3.3個百分點,檢測精度顯著提升。

4 結論

(1)針對實際農田環境下存在的遮擋、形態多變和數量多且分布不均等問題,提出了一種基于改進YOLO v7的目標檢測模型,能夠在農田復雜環境下的害蟲圖像中準確檢測出害蟲種類、位置及分布密度。首先,通過在YOLO v7骨干網絡中加入CBAM模塊,使模型更加關注害蟲目標,抑制背景等一般特征的表達;同時將YOLO v7的3個不同尺度的檢測頭增加為4個,提高了模型對害蟲目標的檢測精度;其次,在骨干網絡頂層添加SwinCSPX模塊,使模型對密集且分布不均的害蟲定位更加準確;最后,將原YOLO v7模型的損失函數替換為Focal EIoU,提高了模型的檢測性能。

(2)改進的YOLO v7模型的平均精度均值為88.2%,較原YOLO v7模型提升3個百分點,在保證檢測速度的同時,提高了檢測精度。面對復雜的農田環境,改進算法具有較高的穩定性和魯棒性,為提升害蟲視覺檢測系統性能提供了有效手段。

猜你喜歡
害蟲精度特征
蝸牛一覺能睡多久?
冬季果樹常見蛀干害蟲的防治
如何表達“特征”
不忠誠的四個特征
基于DSPIC33F微處理器的采集精度的提高
棗樹害蟲的無公害防治
抓住特征巧觀察
GPS/GLONASS/BDS組合PPP精度分析
農業害蟲的冬季防治
改進的Goldschmidt雙精度浮點除法器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合