郝佳杰 ,方賽銀 ,肖 灑 ,李 明
(1.西南林業(yè)大學(xué)機(jī)械與交通學(xué)院,云南 昆明 650224;2.安徽工程大學(xué)高端裝備先進(jìn)感知與智能控制教育部重點實驗室,安徽 蕪湖 241000;3.安徽工程大學(xué)電氣工程學(xué)院,安徽 蕪湖 241000)
葉片黑斑病是指植物葉片上出現(xiàn)黑斑,多露、多雨、多霧等潮濕條件極易引發(fā)黑斑病,嚴(yán)重影響植株的產(chǎn)量和觀賞性[1]。在病蟲害預(yù)防和治理的過程中,首要任務(wù)就是要快速、精準(zhǔn)地識別植株的病斑種類及其所在位置,從而更好地采取有效治理措施[2]。由于現(xiàn)有的目標(biāo)檢測算法效率低下,應(yīng)用性不強(qiáng),黑斑病的識別往往依靠工作人員的肉眼,人力和時間成本較高,且受工作人員的主觀影響較大[3]。因此,一種準(zhǔn)確的黑斑病檢測算法至關(guān)重要。
近年來,由于大數(shù)據(jù)分析技術(shù)和GPU的蓬勃發(fā)展,機(jī)器的計算能力得以提高,深度學(xué)習(xí)技術(shù)也得到了迅速的發(fā)展,并且在農(nóng)業(yè)病蟲害等方面也有了不少應(yīng)用[4]。蔣豐千等[5]將卷積神經(jīng)網(wǎng)絡(luò)及輪廓分割等預(yù)處理方法結(jié)合起來,以生姜的病蟲害圖片為基礎(chǔ),對姜瘟病、根結(jié)線蟲病、白星病、炭疽病進(jìn)行分類研究,正確率高達(dá)96%。李就好等[6]以Fatester R-CNN為基礎(chǔ)網(wǎng)絡(luò)模型,對自然環(huán)境下的苦瓜葉片進(jìn)行研究,采用ResNet50網(wǎng)絡(luò)進(jìn)行特征提取,檢測到苦瓜健康葉片、灰斑病、白粉病、斑點病和蔓枯病的平均精度均值分別為89.24%、83.31%、81.48%、89.28%和88.62%。李子茂等[7]結(jié)合YOLOv3模型和Inception模塊構(gòu)建月季病蟲害檢測模型,然后通過K-means聚類算法確定檢測所需的Anchor box,最終月季病蟲害的平均檢測精度達(dá)到82.26%。現(xiàn)有的基于深度學(xué)習(xí)的檢測方法在植物病蟲害檢測方面有很多較好的成果,但黑斑病作為世界性病害之一,針對性的研究算法較少。并且現(xiàn)有算法對于葉片中小尺度且分布密集的黑斑仍有較高的漏檢率和錯檢率,有待進(jìn)一步提高。
針對以上問題,本文提出了一種以YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)為基礎(chǔ)的改進(jìn)算法。YOLOv5是目前最流行的檢測算法之一,該算法在YOLOv4的基礎(chǔ)上進(jìn)行了一些改進(jìn),使其在運(yùn)算時間和檢測精度上都有大幅度改善[8]。由于YOLOv5算法對小尺度目標(biāo)檢測效果不佳,通過增加小尺度檢測層提高網(wǎng)絡(luò)的多尺度學(xué)習(xí)能力;接著通過引入注意力機(jī)制,更好地學(xué)習(xí)小尺度的特征;最后將加權(quán)NMS改為DIoU_NMS,解決標(biāo)準(zhǔn)YOLOv5算法對重疊目標(biāo)檢測正確率低的問題。實驗結(jié)果表明,改進(jìn)后的YOLOv5算法不僅提高了對一般葉片黑斑病的檢測效果,也改善了網(wǎng)絡(luò)對葉片中小尺度且分布密集黑斑病的檢測性能。
傳統(tǒng)YOLOv5算法由輸入端Input、主干網(wǎng)絡(luò)Backbone、頸部網(wǎng)絡(luò)Neck和預(yù)測端Prediction四部分構(gòu)成[9]。
Input模塊通過Mosaic數(shù)據(jù)增強(qiáng)和自適應(yīng)錨框計算兩種方法對輸入圖像進(jìn)行預(yù)處理操作。Backbone模塊主要引進(jìn)Foucs、CSP和SPP三個結(jié)構(gòu)。Neck模塊采用了特征金字塔網(wǎng)絡(luò)(Feature Pyramid Networks, FPN)結(jié)構(gòu)+路徑聚合網(wǎng)絡(luò)(Path Aggregation Network, PAN)結(jié)構(gòu)。Prediction模塊的Bounding box的損失函數(shù)為GIoU_Loss,它解決了IoU_Loss無法對兩個沒有交集的物體進(jìn)行優(yōu)化的問題,具有尺度不變性的優(yōu)點。
針對YOLOv5檢測葉片黑斑病時所存在的不足,本文對算法進(jìn)行以下三個部分改進(jìn)來提高對葉片黑斑病的檢測效果:1)在原結(jié)構(gòu)三個檢測層的基礎(chǔ)上,增加小尺度檢測層,豐富網(wǎng)絡(luò)的多尺度檢測能力,從而提高對小尺度葉片黑斑病的檢測性能。2)在主干網(wǎng)絡(luò)中加入注意力機(jī)制,采用輕量的注意力模塊,在節(jié)約參數(shù)和注意力的同時提高網(wǎng)絡(luò)對葉片黑斑病的特征提取能力。3)在目標(biāo)檢測的后續(xù)處理中,將NMS修改為DIoU_NMS,改善對重疊目標(biāo)的檢測性能,應(yīng)對實際生活中分布密集的葉片黑斑病檢測。
YOLOv5采用三個不同尺度的檢測層對目標(biāo)進(jìn)行檢測,三個不同的尺度分別檢測8×8以上、20×20以上、40×40以上的目標(biāo),但對于本實驗中體積較小的葉片黑斑病,經(jīng)過多次卷積后會丟失一些目標(biāo)領(lǐng)域信息,從而導(dǎo)致檢測效率不理想[10]。
為此,本文提出增加一個小尺度檢測層來解決上述問題,在之前三尺度檢測層的基礎(chǔ)上,增加一個160×160的檢測尺度,變?yōu)樗某叨葯z測[11]。增加小尺度檢測層的主要過程如下:將80×80的特征圖進(jìn)行上采樣處理,使特征圖擴(kuò)大到160×160,與骨干網(wǎng)絡(luò)中第二層的特征圖進(jìn)行Concat融合,并通過K均值聚類算法(K-means)增加一組Anchor,以此在更大的特征圖進(jìn)行小尺度檢測。雖然增加了計算量,但葉片黑斑病檢測的精確度確實有改善。
添加注意力機(jī)制的目的是告訴模型重點關(guān)注目標(biāo)的哪些位置與內(nèi)容,通過注意力權(quán)重施加的方式和位置的差異,可將注意力機(jī)制分為空間域注意力、通道域注意力和混合域注意力三種[12]。
本實驗采用混合域注意力方法中的輕量的注意力模塊(Convolutional Block Attention Module, CBAM)方法[10]。CBAM結(jié)構(gòu)包括通道注意力模塊和空間注意力模塊兩個獨立部分。這樣既節(jié)約了參數(shù)和計算力,也可以保證無縫集成到任何CNN架構(gòu)上,可以與基本CNN一起進(jìn)行端到端的訓(xùn)練。
在目標(biāo)檢測的預(yù)測階段,會產(chǎn)生多個預(yù)測框,其中會有多個預(yù)測框發(fā)生明顯重疊,并且多個重疊可能都圍繞同一個目標(biāo),這時候就需要NMS函數(shù)合并同一個目標(biāo)的類似預(yù)測框,抑制的過程也是迭代—遍歷—消除的過程[13]。而DIoU_Loss將NMS運(yùn)算過程中的IoU改為DIoU。DIoU_Losss既考慮了兩個預(yù)測框中心點位置的距離,也考慮了預(yù)測框之間的面積,效果更佳。其公式如下:
堅持服務(wù)強(qiáng)軍、服務(wù)打贏的創(chuàng)作方向。為兵服務(wù)、為鞏固提高軍隊?wèi)?zhàn)斗力服務(wù),歷來是我軍文藝工作的優(yōu)良傳統(tǒng),是軍事文藝的價值所在。軍事文藝創(chuàng)作要把打牢官兵聽黨指揮的思想情感基礎(chǔ)作為首要職責(zé),把謳歌黨、謳歌祖國、謳歌人民、謳歌英雄作為軍事文藝創(chuàng)作的永恒主題,用心用功用情書寫我軍政治建軍、改革強(qiáng)軍、科技興軍、依法治軍的新史詩,塑造我軍有血性、能擔(dān)當(dāng)、敢亮劍的英雄形象,引導(dǎo)官兵積極投身強(qiáng)軍興軍、備戰(zhàn)打仗的偉大實踐。
實驗中樣本數(shù)據(jù)集來源主要有兩個部分,一部分采集于西南林業(yè)大學(xué),采集對象是生長在自然環(huán)境下患有葉片黑斑病的植株。為了減少不同時間點下光照角度對目標(biāo)檢測正確率的影響,數(shù)據(jù)采集時間分別為9:00—10:00、12:00—13:00以及18:00—19:00,共采集圖像700張;另一部分圖像來源于網(wǎng)絡(luò),共計200張。將這900張數(shù)據(jù)集采用翻轉(zhuǎn)、旋轉(zhuǎn)、縮放、模糊等數(shù)據(jù)增強(qiáng)的方法將數(shù)據(jù)集擴(kuò)充到3 600張,并按照7∶2∶1隨機(jī)分配成訓(xùn)練集、測試集和驗證集。
本次實驗的環(huán)境如表1所示,選取YOLOv5中模型最小的YOLOv5s進(jìn)行訓(xùn)練,并進(jìn)行大量的實驗選出最合適的超參數(shù),本實驗的超參數(shù)設(shè)置如下:Epoch設(shè)為100,batch-size設(shè)為2,學(xué)習(xí)率設(shè)為0.000 1。
表1 實驗環(huán)境
為了驗證本實驗所用模型對葉片黑斑病的檢測性能,選取精準(zhǔn)率、召回率和平均精度均值作為模型的評價指標(biāo)[15]。
精準(zhǔn)率定義為:
召回率定義為:
平均精度均值定義為:
其中,TP表示檢測正確的葉片黑斑病數(shù)目,F(xiàn)P表示虛警的葉片黑斑病數(shù)目,F(xiàn)N表示漏檢的葉片黑斑病數(shù)目。
表2 不同改進(jìn)模塊對算法的提升
算法的邊界框損失函數(shù)如圖1所示,縱坐標(biāo)為預(yù)測框的Loss損失值,橫坐標(biāo)為Epoch訓(xùn)練次數(shù),虛線代表標(biāo)準(zhǔn)YOLOv5算法,實線代表本實驗算法,即改進(jìn)后的算法。通過觀察可知,前80輪訓(xùn)練兩種模型都迅速收斂,后20輪逐漸平穩(wěn),通過比較兩條曲線,可以看出改進(jìn)后的YOLOv5算法的損失函數(shù)收斂性更好,且改進(jìn)后的算法的邊界框損失值均小于標(biāo)準(zhǔn)YOLOv5算法。
圖1 Loss值曲線
圖2為改進(jìn)前后的葉片黑斑病檢測結(jié)果對比,通過對比五組圖片,可以觀察到改進(jìn)后的算法在小尺度檢測方面有很大的提高,與傳統(tǒng)的YOLOv5算法檢測結(jié)果相比,改進(jìn)后算法的檢測精度有所提高。通過對比第三組圖片可知,改進(jìn)后的算法對葉片黑斑病細(xì)節(jié)更加明確,改善了對背景的誤檢問題。通過對比第五組圖片可知,改進(jìn)后的算法在密集黑斑病檢測方面有相應(yīng)的改善。綜上所述,改進(jìn)后的YOLOv5算法可以更準(zhǔn)確地檢測出相應(yīng)的葉片黑斑病,通過增加小尺度檢測層并通過K-means算法聚類得到錨框進(jìn)行線性縮放操作,降低了對葉片小尺度黑斑的漏檢率,對小尺度黑斑病有較好的檢測效果;在主干網(wǎng)絡(luò)中增加注意力機(jī)制使算法更加準(zhǔn)確地定位和識別葉片黑斑病,降低背景對黑斑病檢測影響,以此降低網(wǎng)絡(luò)模型對葉片黑斑病的誤檢率;最后修改非極大值抑制函數(shù),改善了網(wǎng)絡(luò)模型對葉片密集黑斑的識別效果,使得改進(jìn)后的YOLOv5算法在密集黑斑病檢測方面也非常適用。
圖2 改進(jìn)前后結(jié)果對比
葉片黑斑病面積較小、分布密集,因此不利于檢測。現(xiàn)有算法對葉片黑斑病的檢測效率低下,為了提高對葉片黑斑病的檢測正確率,課題組提出了一種改進(jìn)的YOLOv5算法。對比不同改進(jìn)模塊對葉片黑斑病的檢測結(jié)果,選取最優(yōu)的葉片黑斑病檢測算法。
實驗結(jié)果表明,改進(jìn)后的YOLOv5算法的收斂性優(yōu)于原算法,且在小尺度黑斑病檢測方面有很大的改進(jìn),提高了對葉片黑斑病的檢測正確率。不同背景對改進(jìn)的YOLOv5算法的檢測效果沒有影響,模型對背景的復(fù)雜度要求不高。目前,對植物微小病蟲害的研究相對較少,檢測算法識別效果不佳,改進(jìn)后的YOLOv5算法可以改善小尺度病斑和復(fù)雜背景帶來的病斑目標(biāo)難以精確定位和識別的問題,可為病斑的早期干預(yù)和治療提供科學(xué)依據(jù)。未來可以將遷移學(xué)習(xí)應(yīng)用到Y(jié)OLOv5算法檢測,探索一種可以識別所有病蟲害的檢測算法,提高研究算法的便捷性和實用性,并進(jìn)一步實現(xiàn)遠(yuǎn)程實時檢測植物病蟲害。