doi:10.15889/j.issn.1002-1302.2024.20.023
摘要:為解決復雜環(huán)境下小尺度蘋果葉片病害識別精度不高、魯棒性不強的問題,在YOLO v5s的基礎上提出一種新的改進方法。該方法首先在模型訓練之前使用KMeans++聚類算法生成更接近真實框的錨框;其次在骨干網(wǎng)絡中加入卷積塊注意幾模塊(convolutional block attention module,CBAM),來提升復雜環(huán)境下小目標特征的提取能力;再次為了增強頸部網(wǎng)絡對不同大小病害多尺度特征的有效識別,選擇ConvNeXtBlock模塊替換C3(CSP bottleneck with 3 convolutions)模塊,并在頸部網(wǎng)絡中融入坐標注意力模塊(coordinate attention,CA),來加強模型對關(guān)鍵空間位置的響應,使得不同尺度的特征都能被更有效地利用;最后使用ECIoU損失函數(shù)替換原始的CIoU損失函數(shù),來提高模型的收斂速度和精度。與Faster R-CNN、SSD、YOLO v5s、YOLO v7、YOLO v8目標檢測模型相比,改進后模型的平均精度均值(mean average precision,mAP0.5)值分別提升0.6、4.6、6.3、1.7、1.3百分點,同時在強光照、模糊、暗光的復雜場景下具有較強的魯棒性。該模型可以為復雜環(huán)境下蘋果葉片病害的識別提供行之有效的方案。
關(guān)鍵詞:蘋果;葉片病害;病害檢測;注意力機制;ConvNeXtBlock;卷積塊注意力模塊(CBAM);CA
中圖分類號:S126;TP391.41" 文獻標志碼:A
文章編號:1002-1302(2024)20-0190-09
收稿日期:2024-07-12
基金項目:國家自然科學基金(編號:62066040);民族教育信息化教育部重點實驗室開放課題(編號:EIN2024B003);智能計算與信息處理教育部重點實驗室開放課題(編號:2023ICIP05);國家留學基金委西部地區(qū)人才培養(yǎng)特別項目(編號:202108525007);銅仁市大數(shù)據(jù)智能計算與應用重點實驗室項目(編號:銅仁市科研[2022]5號);貴州省科技基礎研究計劃(編號:[2022]557)。
作者簡介:黃貽望(1978—),男,湖南溆浦人,博士,教授,碩士生導師,主要從事人工智能、服務計算、軟件形式化方法等研究。E-mail:yjsyhyw@gztrc.edu.cn。
中國蘋果產(chǎn)業(yè)協(xié)會發(fā)布的《2022年度中國蘋果產(chǎn)業(yè)報告》中顯示,中國蘋果產(chǎn)量仍然位居世界第一[1]。中國作為蘋果種植業(yè)大國,在蘋果產(chǎn)業(yè)發(fā)展中依舊存在一些問題。例如,在種植過程中,蘋果的葉片病害嚴重影響著蘋果的產(chǎn)量,包括對蘋果危害較為嚴重的腐爛病、褐斑病、斑點落葉病等。那么,如何快速精準地檢測和識別蘋果葉部病害就是解決這一問題的關(guān)鍵,對于未來蘋果產(chǎn)業(yè)高質(zhì)量發(fā)展至關(guān)重要。
隨著科技的進步,越來越多的技術(shù)運用到農(nóng)業(yè)生產(chǎn)領域,深度學習憑借其強大的模式識別和自適應學習能力被廣泛應用于番茄[2-4]、玉米[5-7]、小麥[8-9]以及茶葉[10]等農(nóng)作物病害的檢測識別任務中,在蘋果葉部病害檢測中也進行了很多研究,例如,曾晏林等在YOLO v5中引入自注意力機制和Transformer模塊,對于蘋果葉部病害進行有效識別[11];Mathew等使用YOLO v3算法來檢測蘋果葉部病害[12-13];Wang等通過改進YOLO v5并輕量化網(wǎng)絡,對多種蘋果葉部病害達到較高的檢測速度[14];趙嘉威等將YOLO v4網(wǎng)絡結(jié)合注意力機制模塊來檢測蘋果多種葉部病害[15];黃煒等基于VGG-16和Swin Transformer網(wǎng)絡提出了一種復雜特征的細粒度特征分離方法,有效提升了檢測精準率[16];李鑫然等通過改進Faster R_CNN模型來提高對于蘋果葉片病害的檢測精度[17];公徐路等使用ShuffleNet v2輕量化網(wǎng)絡對YOLO v5進行改進,來達到對蘋果葉片病害檢測的高精度及輕量化的需求[18];王瑞鵬等利用EfficientNet-B0網(wǎng)絡和DenseNet121網(wǎng)絡作為特征提取網(wǎng)絡,對5類蘋果葉部病害進行檢測[19];孫長蘭等采用非極大值抑制算法將YOLO v5與EffcientDet模型進行集成來提升蘋果葉部病害的檢測精度[20]。
這些研究采用不同的方式改進模型來提升檢測精度,但由于蘋果樹生長的環(huán)境復雜,樹葉繁茂,枝杈交錯,容易造成病害特征的混淆,所以大多數(shù)模型在病害檢測與識別任務中,魯棒性往往較差。除此之外,蘋果葉片病害中銹病、灰斑病、蛙眼葉斑病等病斑由于在整個葉片背景中尺寸較小,缺乏相應的紋理、顏色、形狀等外觀信息[21],多次下采樣后,特征信息減少,導致檢測難度變大。
因此,本研究在YOLO v5s模型的基礎上提出了一種新的改進算法。該算法主要包括以下4點改進:(1) 使用KMeans++聚類算法生成新的錨框,使錨框更接近數(shù)據(jù)集標注的大小,從而提高模型定位的準確性;(2) 在骨干網(wǎng)絡引入卷積塊注意力模塊(convolutional block attention module,CBAM),增強骨干網(wǎng)絡對復雜環(huán)境下小尺度蘋果葉片病害特征的提取能力;(3) 在頸部網(wǎng)絡使用ConvNeXtBlock模塊替換原有的C3(CSP bottleneck with 3 convolutions)模塊,增強模型對特征的表達能力,并在頸部網(wǎng)絡中加入坐標注意力(coordinate attention,CA)模塊,進一步強化模型對于關(guān)鍵空間位置的響應速度;(4) 為了使模型收斂速度更快,用ECIoU損失函數(shù)替換原始的CIoU損失函數(shù)。通過以上改進以滿足對于復雜環(huán)境下小尺度蘋果葉片病害識別任務的可用性。
1" 材料與方法
1.1" 試驗數(shù)據(jù)集與處理
蘋果葉片病害試驗數(shù)據(jù)集來自于公開數(shù)據(jù)集AppleLeaf9[22],此數(shù)據(jù)集包含PlantVillage、ATLDSD、PPCD2020、PPCD2021數(shù)據(jù)集中的8種蘋果葉部病害[23-26],本試驗選擇對蘋果產(chǎn)量影響較為嚴重的鏈格孢葉斑病、蛙眼葉斑病、灰斑病及銹病4種病害圖片,共計1 514張。為提升模型的魯棒性和泛化性能,試驗數(shù)據(jù)集選擇的病害圖片包括復雜場景以及小目標病害圖片,4種病害圖片如圖1所示。
試驗使用Labelme標注軟件對圖片上的每一處病害進行標注,標注類別和標注框的坐標信息存儲在對應的JSON文件中。試驗將數(shù)據(jù)集按照8 ∶2的比例劃分訓練集和驗證集,具體劃分如表1。
1.2" YOLO v5整體改進
首先,本改進模型使用KMeans++聚類算法生成新的錨框,其目的在于使生成的錨框更接近數(shù)據(jù)集中目標的真實大小。數(shù)據(jù)集標注的大小是指數(shù)據(jù)集中所有標注目標框的寬度和高度的統(tǒng)計分布。通過聚類算法,可以有效地生成1組錨框,這些錨
框的尺寸能夠更好地代表數(shù)據(jù)集中目標的實際尺寸分布,從而在訓練過程中使模型更容易學習到目標的特征提高檢測精度。其次,在骨干網(wǎng)絡中引入卷積塊注意力模塊(convolutional block attention module,CBAM),CBAM通過卷積操作在特征圖上計算注意力權(quán)重,這些權(quán)重可以分為通道注意力和空間注意力。重要特征是指那些對目標識別至關(guān)重要的特征,如病害斑點的紋理、形狀、顏色等。在通道注意力機制下,CBAM根據(jù)每個通道的重要性分配權(quán)重,強化對目標識別有幫助的通道特征;在空間注意力機制下,CBAM根據(jù)每個空間位置的重要性分配權(quán)重,強化對目標識別有幫助的空間特征,抑制背景噪聲和無關(guān)區(qū)域的特征。這種處理可以提高模型對重要特征的關(guān)注度,從而增強判別能力。在頸部網(wǎng)絡使用ConvNeXtBlock模塊替換原有的C3模塊,ConvNeXtBlock是一個改進的卷積模塊,它通過更深的卷積操作和更廣的感受野來捕捉多尺度特征。ConvNeXtBlock采用一種新穎的網(wǎng)絡架構(gòu)設計,包括更深層次的卷積、跳躍連接以及歸一化層,這些設計能夠更好地捕捉和融合不同尺度的特征信息。通過這種改進,模型在不同尺度下的特征表達能力得到了顯著提升,使其能夠更準確地識別大小不同的目標,從而提高目標檢測的準確性和魯棒性。模型還在頸部網(wǎng)絡中引入了CA模塊,該模塊是一種基于坐標的注意力機制,它通過將注意力權(quán)重與坐標信息結(jié)合,能夠更精準地定位目標區(qū)域并強化目標特征。CA模塊的核心思想是利用坐標信息引導注意力權(quán)重的計算,從而更好地捕捉目標的空間布局和上下文關(guān)系。這樣模型不僅能夠關(guān)注到目標本身,還能考慮目標周圍的環(huán)境特征,提高目標檢測的魯棒性。最后,為使模型收斂速度更快,使用ECIoU損失函數(shù)替換原始的CIoU損失函數(shù)。本研究改進的YOLO v5s模型網(wǎng)絡結(jié)構(gòu)如圖2所示。
1.2.1" KMeans++聚類算法生成錨框" 在YOLO v5中,錨框是一種預設的矩形框,用在特征圖上預測目標的位置和大小。本方法采用KMeans++聚類算法生成錨框,其目的是使生成的錨框更接近數(shù)據(jù)集中目標的真實大小。YOLO v5s默認使用3個不同的錨框,錨框的大小為[10,13,16,30,33,23]、[30,61,62,45,59,119]、[116,90,156,198,373,326]。其中[10,13,16,30,33,23]等這些數(shù)字表示錨框的寬度和高度。具體來說,[10,13]中的10表示錨框的寬度,13表示錨框的高度。其他錨框的數(shù)字組合也是如此,分別表示不同錨框的寬度和高度。這3個不同大小的錨框?qū)?0×80、40×40、20×20等3個不同尺度的特征圖。但給定的錨框是使用MSCOCO數(shù)據(jù)集聚類得出的結(jié)果[27],MSCOCO數(shù)據(jù)集有80多個類別,試驗中病害類別并不包含在內(nèi)。雖然YOLO v5s引入了自適應錨框算法,但算法依舊存在局限性。自適應錨框算法在模型訓練前需遍歷整個數(shù)據(jù)集的標注信息,根據(jù)這些信息計算標注框的尺寸分布。若計算得到的最優(yōu)召回率大于或等于0.98,則不進行進一步的更新;反之,若最優(yōu)召回率低于0.98,則觸發(fā)錨框尺寸的重新計算和更新流程。
為使在訓練之前得到更符合真實標注框的錨框,本研究選擇使用KMeans++聚類算法生成新的錨框,從而優(yōu)化模型訓練過程。KMeans++聚類生成錨框如算法1所示。
算法1" KMeans++生成錨框:
輸入:數(shù)據(jù)集D,聚類數(shù)量k;
輸出:錨框的中心點集合C。
(1)初始化中心點集合C為空集;
(2)從數(shù)據(jù)集D中隨機選擇1個樣本作為初始聚類中心,并加入到C中;
(3)while |C|lt;k do;
(4)對D中每個樣本x計算最小距離平方d(x)2;
(5)以d(x)2成正比概率選擇新聚類中心,并加入C;
(6)根據(jù)C中k個中心點確定錨框?qū)捀撸?/p>
(7)返回錨框中心點集合C。
通過KMeans++聚類算法生成錨框的具體大小如表2。
表2" KMeans++聚類算生成錨框尺寸
尺寸錨框大小
小15×22、19×32、24×40
中32×34、34×46、41×59
大66×68、59×96、105×121
1.2.2" 引入注意力機制" 注意力機制融入到目標識別領域[28],可以幫助模型更加專注于圖像中的關(guān)鍵部分,從而提高目標檢測的準確性。目前已有多種注意力機制如EMA(exponential moving average)[29]、SA(spatial attention)[30]、CA(coordinate attention)[31]、CBAM等被廣泛應用于目標檢測中[32]。具體到本研究,為使模型在特征提取階段增強對缺乏紋理顏色的小目標病害的提取能力,使得不同尺度的病害特征都能被有效地利用。選擇在骨干網(wǎng)絡中加入CBAM模塊,在頸部網(wǎng)絡加入CA模塊,CBAM模塊由Woo等提出,結(jié)構(gòu)如圖3所示。
CBAM模塊主要包括CAM與SAM兩個部分,模塊首先通過通道注意力機制(channel attention module,CAM)增強網(wǎng)絡對不同通道特征的表達能力,隨后通過空間注意力機制(spatial attention module,SAM)進一步細化每個位置的特征響應。其中通道注意力模塊(CAM)結(jié)構(gòu)如圖4所示。
輸入特征圖F是前置卷積層的輸出,包含多個通道,每個通道編碼了不同的特征信息。CAM首先對特征圖F進行全局最大池化和全局平均池化操作。全局最大池化操作捕獲特征圖中最為顯著的特征,而全局平均池化則提取特征圖中的平均信息。池化后的結(jié)果被送入共享的多層感知器(multilayer perceptron,MLP),MLP具有2層全連接層,并在這2層之間使用ReLU激活函數(shù)。共享的MLP對2種池化信息進行進一步的抽象和重構(gòu),生成具有描述性的特征通道權(quán)重。經(jīng)過MLP處理后的2組特征圖進行逐元素相加,通過Sigmoid激活函數(shù)處理,生成通道注意力圖Mc。得到的通道注意力圖Mc為每個通道指定1個權(quán)重,通過這個權(quán)重對輸入特征圖F中每個通道的響應進行放大或縮減。通道注意力計算公式為式(1):
Mc(F)=σ{MLP[Avg(F)]+MLP[MaxPool(F)]}=σ[W1(W0(Fcavg)]+W1[W0(Fcmax)]。(1)
通道注意力這樣的機制使得網(wǎng)絡能夠強化對重要特征通道的關(guān)注,而抑制不重要的通道,進而更有效地利用特征信息。SAM則關(guān)注于在空間維度上的重要區(qū)域,以強化局部的特征表達。SAM的結(jié)構(gòu)如圖5所示。
在CAM模塊之后,SAM模塊首先對細化后的特征圖F′執(zhí)行最大池化和平均池化操作。池化操作后得到的2個特征圖在通道維度上進行堆疊,形成1個兩通道的特征圖,堆疊后的特征圖通過1個7×7的卷積層進行處理。通過卷積層后,使用Sigmoid函數(shù)激活得到空間注意力圖Ms。最后,空間注意力圖Ms被用來對輸入的通道細化特征圖F′進行加權(quán)。空間注意力權(quán)重矩陣Ms計算公式為式(2)。
Ms(F)=σ(f7×7{[AvgPool(F);MaxPool(F)]})=σ[f7×7([Fsavg;Fsmax])]。(2)
除了在骨干網(wǎng)絡加入CBAM模塊之外,為進一步強化模型對于關(guān)鍵空間位置的響應,使得不同尺度的特征都能被更有效地利用。本研究選擇在頸部網(wǎng)絡融入CA模塊,其網(wǎng)絡結(jié)構(gòu)如圖6所示。
首先輸入的是具有1個C×H×W維度的特征圖,包含C個通道的特征圖分別在x軸和y軸上進行平均池化操作。經(jīng)過池化操作的特征圖被拼接起來,并通過1個二維卷積(Conv2d)操作,拼接完的特征圖經(jīng)過批量歸一化和非線性函數(shù)處理。之后被拆分成兩部分,并分別通過另外的卷積層進行處理,Sigmoid函數(shù)將卷積的結(jié)果映射到(0,1)區(qū)間,生成權(quán)重。再次使用Sigmoid函數(shù)對原始輸入特征圖進行加權(quán),突出重要的通道特征。
1.2.3" ConvNeXtBlock 結(jié)構(gòu)" 當病害特征被骨干網(wǎng)絡提取后,在頸部網(wǎng)絡進行特征融合,但在深層網(wǎng)絡中隨著卷積的增加,特征圖的分辨率逐步降低,這使小目標信息丟失,尤其是在處理蘋果葉片病害識別這種細粒度的任務中,而且因不同階段不同大小的病害可能需要多尺度的特征來進行有效識別,因此本研究選擇使用ConvNeXtBlock模塊替換頸部網(wǎng)絡中的C3模塊,ConvNeXt結(jié)構(gòu)由Liu等提出[33],它是基于Transformer架構(gòu)上的卷積神經(jīng)網(wǎng)絡模塊,ConvNeXt網(wǎng)絡結(jié)構(gòu)如圖7所示。
模塊首先通過1個7×7的深度可分離卷積處理輸入特征圖,緊接著通過層標準化進行歸一化操作,這一步有助于加速整個訓練過程并加快模型的收斂速度。之后使用1×1卷積來聚合深度可分離卷積后的特征,并進行通道上的信息融合。這一步使通道數(shù)量變?yōu)樵瓉淼?倍,增強了網(wǎng)絡對于局部特征的捕捉能力,ReLU激活函數(shù)的加入給予了模型的非線性。接著再次使用1×1卷積來進一步調(diào)整特征。最后輸入的特征圖與最后一次卷積的輸出進行殘差連接輸出結(jié)果。
1.2.4" 損失函數(shù)改進" 損失函數(shù)的改進可以進一步提升模型的收斂速度和精度,YOLO v5s默認將CIoU作為損失函數(shù)。CIoU的設計主要考慮的關(guān)鍵因素包括邊框的重疊面積、中心點距離以及長寬比。CIoU損失通過增加中心點距離,提供了當IoU相同時更有區(qū)分度的梯度。CIoU的計算公式為:
CIoU=IoU-p2(b,bgt)c2αν。(3)
式中:α、ν分別作為權(quán)重函數(shù)和寬高比的度量值,其中α的計算公式為式(4),ν的計算公式為式(5)。
α=ν(1-IoU)+ν;(4)
ν=4πarctanωgthgt-arctanωh2。(5)
式中:ω、h是真實框的寬和高;ωgt、hgt是預測框的寬和高。但α、ν反映的只是邊界框長、寬的差異,并沒有反映出寬、高對于置信度的差異,且當ω=kωgt、h=khgt懲罰項將失去效果。EIoU在此基礎上將橫縱比的影響因子拆分,分別計算真實框和預測框的長、寬,EIoU損失函數(shù)主要包括重疊損失、中心距離損失、寬高損失3個部分[34]。EIoU_Loss的計算公式為:
LossEIoU=LIoU+Ldis+lasp=1-IoU+p2(bgt,b)c2+p2(hgt,h)c2h+p2(ωgt,ω)c2ω。(6)
本研究結(jié)合了2種損失函數(shù)的優(yōu)點選擇使用ECIoU作為損失函數(shù),在此前的研究中,已有研究者將此損失函數(shù)應用到目標識別領域,如曹超等在YOLO v8中使用ECIoU損失函數(shù)來加速模型收斂[35],ECIoU損失函數(shù)計算公式為:
LossECIoU=1-IoU+αν+p2(bgt,b)c2+p2(hgt,h)c2h+p2(ωgt,ω)c2ω。(7)
1.3" 算法流程和分析
改進后的算法具體包括:在訓練前使用KMeans++聚類算法生成新錨框、在骨干網(wǎng)絡中加入CBAM模塊、在頸部網(wǎng)絡使用ConvNeXtBlock模塊替換C3模塊并引入CA模塊、使用ECIoU損失函數(shù)替換CIoU損失函數(shù)。改進后算法的具體訓練流程為算法2所示。
算法2" 改進后的算法流程:
輸入:訓練數(shù)據(jù)集、模型參數(shù);
輸出:目標檢測結(jié)果。
(1)初始化改進后的YOLO v5s模型;
(2)New anchorKMeans++;/*使用KMeans++算法生成新錨框*/;
(3)for i=0 to N-1;
(4)trainNew anchor amp; ECIoU;/*使用改進后的錨框和損失函數(shù)進行訓練*/;
(5)通過正向傳播生成預測框,然后根據(jù)預測和真實標簽計算損失,損失計算公式為式(7);
(6)通過式(7)計算結(jié)果進行反向傳播,優(yōu)化模型權(quán)重;
(7)for end。
首先初始化改進后的模型實例,并加載模型參數(shù),包括加載預訓練的權(quán)重、設置學習率、迭代次數(shù)以及批處理大小。隨后模型使用優(yōu)化后的錨框和改進后的損失函數(shù),在數(shù)據(jù)集上進行多次迭代訓練。在訓練中模型接收輸入圖像并執(zhí)行正向傳播來生成預測框,然后根據(jù)標注框和預測結(jié)果之間的差異,計算損失函數(shù)。計算得出損失之后,使用反向傳播算法來計算梯度,最后使用這些梯度來更新模型權(quán)重。
1.4" 試驗環(huán)境
為了驗證本算法的有效性,于2024年2—4月在銅仁市大數(shù)據(jù)智能計算及應用重點實驗室銅仁學院人工智能服務器上進行試驗。試驗系統(tǒng)為Ubuntu,試驗硬件為浪潮高性能人工智能平臺,配置為:IntelXeonPlatinum 8358 PCPU@2.60 GHz,A40GPU×2,512 GB內(nèi)存,單張加速卡顯存為 45 GB 共90 GB。代碼編譯環(huán)境為Python 3.8.10,加速卡CUDA版本為11.2,深度學習框架選擇Pytroch 2.2.1。
1.5" 模型評價指標
在蘋果葉片病害的識別任務中,選擇使用的評價指標有精準率(precision,P)、召回率(recall,R)以及平均精準率mAP值,精準率計算公式為式(8),召回率計算公式為式(9)。平均精準率mAP值是基于精準率和召回率得出的,可以更全面地反映模型的性能。為進一步測試模型全面的精度性能指標,在本試驗中納入了mAP0.5 ∶0.9的計算,mAP0.5 ∶0.9不僅考慮到了模型在容易的情況(如交并比IoU=0.5)下的性能,還評估了在更困難的情況(如IoU=0.9)下的表現(xiàn)。
P=TPTP+FP;(8)
R=TPTP+FN。(9)
其中:TP代表為真正例,指模型正確地將正類別的樣本識別為正類別;FP為假正例,是指模型錯誤地將負類別的樣本識別為正類別;FN為假負例,是指模型錯誤地將正類別的樣本識別為負類別。
2" 結(jié)果與分析
2.1" 損失函數(shù)對比
通過對損失函數(shù)的改進,使用ECIoU損失函數(shù)替換原始的CIoU損失函數(shù),ECIoU損失函數(shù)結(jié)合了EIoU和CIoU的優(yōu)點,既保證了懲罰項的有效性,又加快了模型的收斂速度,訓練結(jié)果如圖8所示,ECIoU損失函數(shù)在Bounding box的回歸速度上要優(yōu)于CIoU損失函數(shù)。
2.2" 消融試驗結(jié)果
為保證研究算法的4點改進是有效的,在其他參數(shù)不變的條件下進行了4種改進方式的消融試驗,結(jié)果表明每一種改進對模型的精度都有所提升,詳細的試驗結(jié)果如表3所示。
“改進1”是在原始的YOLO v5s模型基礎上使用KMeans++聚類算法生成預測錨框,改進1使得模型的mAP0.5、mAP0.5 ∶0.9分別提升了0.4、0.5百分點?!案倪M2”是在在原始的YOLO v5s模型的基礎上使用ECIoU損失函數(shù)替換原始的CIoU損失函數(shù),改進2使得模型的mAP0.5、mAP0.5 ∶0.9分別提升了0.7、1.4百分點?!案倪M3”在YOLO v5s的骨干網(wǎng)絡SPPF層后加入CBAM模塊,在頸部網(wǎng)絡加入CA模塊。對比原始YOLO v5s網(wǎng)絡,其準確率、召回率分別提升0.1、1.7百分點,mAP0.5、mAP0.5 ∶0.9分別提升0.8、1.6百分點?!案倪M4”使用ConvNeXt模塊替換頸部網(wǎng)絡中的C3模塊,相比較于原始YOLO v5s模型,mAP0.5、mAP0.5 ∶0.9分別提升1.7、2.1百分點。最終改進模型也就是本研究算法,試驗結(jié)果對比原始YOLO v5s模型準確率、召回率分別提升2.3、1.3百分點,mAP0.5、mAP0.5 ∶0.9分別提升6.3、5.2百分點,其各類指標也優(yōu)于其他3種改進方式。
2.3" 對比試驗
為了更進一步證明本算法對其他模型的有效性,試驗將本算法與一階段目標檢測算法SDD、YOLO v7、YOLO v8、兩階段目標檢測算法Faster R-CNN 進行對比,結(jié)果如表4所示。本研究算法mAP0.5值要高于其他一階段目標識別算法和兩階段算法。鏈格孢葉斑病、蛙眼葉斑病、銹病的識別準確率要優(yōu)于其他模型;但在灰斑病的識別中兩階段目標檢測算法Faster R-CNN盡管擁有微弱的優(yōu)勢,但其龐大的參數(shù)量和計算代,價依舊沒有辦法使其與本研究算法相媲美。
2.4" 對比分析
為更加直接觀察模型在復雜環(huán)境下的識別效果,本試驗還通過對比部分病害圖片的檢測結(jié)果來評估模型的有效性。在結(jié)果對比試驗中,將本模型與原始的YOLO v5s模型進行對比測試,結(jié)果如圖9所示。圖9-a為原始的YOLO v5s檢測結(jié)果,可以明顯看出原始YOLO v5s模型對于A種病斑的識別置信度較低,對于R種小尺寸病斑識別效果較差,存在漏檢的情況。而在圖9-b中可以看到,改進后的YOLO v5s模型對于以上病斑識別的置信度遠高
于YOLO v5s模型,在小目標病害識別的場景中沒有出現(xiàn)漏檢的情況。為驗證本算法對復雜場景下的魯棒性,圖10展示了病害在強光照、模糊、暗光3種非正常環(huán)境下的檢測結(jié)果。結(jié)果表明,原始的YOLO v5s模型在強光照、模糊的場景下出現(xiàn)了多處漏檢情況,而改進后的模型未出現(xiàn)漏檢,且檢測置信度要遠高于YOLO v5s模型。圖9和圖10的2組試驗結(jié)果證明了改進后的算法對復雜場景和小目標病斑識別的有效性。
3" 結(jié)論與討論
本研究針對復雜環(huán)境下小尺度蘋果葉片病害進
行識別,通過對原始的YOLO v5s模型的多個網(wǎng)絡部分進行改進,改進后的模型與對比Faster R-CNN、SSD、YOLO v7、YOLO v8和YOLO v5s目標檢測模型,mAP0.5值分別提升0.6、4.6、1.7、1.3、6.3百分點。對于小尺寸病害銹病的檢測準確率提升0.7、2.6、2、1.9、4.1百分點,具有較高的識別精度。并通過在強光照、模糊、暗光3種非正常環(huán)境下與YOLO v5s模型進行對比測試,改進后的模型表現(xiàn)出顯著優(yōu)勢,魯棒性較強。可以應用于復雜場景和小目標病斑的識別場景。
但檢測模型要達到實際的應用水平,只針對這4種病害還遠遠不夠,對于精確識別生長在不同時間階段的蘋果葉片病害也是亟需解決的問題。所以,后續(xù)的試驗將加入不同階段的多種病害和更復雜場景下的病害圖片進行研究,繼續(xù)提高模型的識別精度。
參考文獻:
[1]王" 壹. 中國蘋果產(chǎn)量穩(wěn)居世界第一[N]. 農(nóng)民日報,2023-11-18(7).
[2]Zhang Y K,Huang S J,Zhou G X,et al. Identification of tomato leaf diseases based on multi-channel automatic orientation recurrent attention network[J]. Computers and Electronics in Agriculture,2023,205:107605.
[3]Gadekallu T R,Rajput D S,Reddy M P K,et al. A novel PCA–whale optimization-based deep neural network model for classification of tomato plant diseases using GPU[J]. Journal of Real-Time Image Processing,2021,18(4):1383-1396.
[4]Zhang D Y,Huang Y,Wu C,et al. Detecting tomato disease types and degrees using multi-branch and destruction learning[J]. Computers and Electronics in Agriculture,2023,213:108244.
[5]鮑文霞,黃雪峰,胡根生,等. 基于改進卷積神經(jīng)網(wǎng)絡模型的玉米葉部病害識別[J]. 農(nóng)業(yè)工程學報,2021,37(6):160-167.
[6]Zeng W H,Li H D,Hu G S,et al. Lightweight dense-scale network (LDSNet) for corn leaf disease identification[J]. Computers and Electronics in Agriculture,2022,197:106943.
[7]Qian X F,Zhang C Q,Chen L,et al. Deep learning-based identification of maize leaf diseases is improved by an attention mechanism:self-attention[J]. Frontiers in Plant Science,2022,13:864486.
[8]毛" 銳,張宇晨,王澤璽,等. 利用改進Faster-RCNN識別小麥條銹病和黃矮?。跩]. 農(nóng)業(yè)工程學報,2022,38(17):176-185.
[9]馬超偉,張" 浩,馬新明,等. 基于改進YOLO v8的輕量化小麥病害檢測方法[J]. 農(nóng)業(yè)工程學報,2024,40(5):187-195.
[10]李偉豪,詹" 煒,周" 婉,等. 輕量型Yolov7-TSA網(wǎng)絡在茶葉病害檢測識別中的研究與應用[J]. 河南農(nóng)業(yè)科學,2023,52(5):162-169.
[11]曾晏林,賀壹婷,藺" 瑤,等. 基于BCE-YOLO v5的蘋果葉部病害檢測方法[J]. 江蘇農(nóng)業(yè)科學,2023,51(15):155-163.
[12]Mathew M P,Yamuna Mahesh T. Determining the region of apple leaf affected by disease using YOLO v3[C]//2021 International Conference on Communication,Control and Information Sciences. Idukki:IEEE,2021:1-4.
[13]Liu B,Zhang Y,He D J,et al. Identification of apple leaf diseases based on deep convolutional neural networks[J]. Symmetry,2017,10(1):11.
[14]Wang Y W,Wang Y J,Zhao J B. MGA-YOLO:a lightweight one-stage network for apple leaf disease detection[J]. Frontiers in Plant Science,2022,13:927424.
[15]趙嘉威,田光兆,邱" 暢,等. 基于改進YOLO v4算法的蘋果葉片病害檢測方法[J]. 江蘇農(nóng)業(yè)科學,2023,51(9):193-199.
[16]黃" 煒,王娟娟,殷學麗. 基于特征分離的小樣本蘋果病害葉片檢測[J]. 江蘇農(nóng)業(yè)科學,2023,51(23):195-202.
[17]李鑫然,李書琴,劉" 斌. 基于改進Faster R_CNN的蘋果葉片病害檢測模型[J]. 計算機工程,2021,47(11):298-304.
[18]公徐路,張淑娟. 基于改進YOLO v5s的蘋果葉片小目標病害輕量化檢測方法[J]. 農(nóng)業(yè)工程學報,2023,39(19):175-184.
[19]孫長蘭,林海峰. 一種基于集成學習的蘋果葉片病害檢測方法[J]. 江蘇農(nóng)業(yè)科學,2022,50(20):41-47.
[20]王瑞鵬,陳鋒軍,朱學巖,等. 采用改進的EfficientNet識別蘋果葉片病害[J]. 農(nóng)業(yè)工程學報,2023,39(18):201-210.
[21]李紅光,于若男,丁文銳. 基于深度學習的小目標檢測研究進展[J]. 航空學報,2021,42(7):100-118.
[22]龍" 陽,肖小玲. 基于多注意力機制的蘋果葉部病害檢測方法[J]. 江蘇農(nóng)業(yè)科學,2023,51(23):178-186.
[23]Yang Q,Duan S K,Wang L D. Efficient identification of apple leaf diseases in the wild using convolutional neural networks[J]. Agronomy,2022,12(11):2784.
[24]Hughes D P,Salathe M. An open access repository of images on plant health to enable the development of mobile disease diagnostics throung machine learning and crowdsourcing[EB/OL]. (2016-04-12)[2023-06-10]. https://arxiv.org/abs/1511.08060.
[25]Feng J Z,Chao X F. Apple tree leaf disease segmentation dataset[DS/OL]. (2022-03-31) [2023-06-10]. https://www.scidb.cn/en/detail?dataSetId=0e1f 57004db842f99668d82183afd578.
[26]Thapa R,Zhang K,Snavely N,et al. The Plant Pathology Challenge 2020 data set to classify foliar disease of apples[J]. Applications in Plant Sciences,2020,8(9):e11390.
[27]Chen X L,F(xiàn)ang H,Lin T Y,et al. Microsoft coco captions:data collection and evaluation server[J/OL]. [2024-03-15]. https://arxiv.org/abs/1504.00325.
[28]Loureiro C,F(xiàn)ilipe V,Gonalves L. Attention mechanism for classification of melanomas[C]//International Conference on Optimization,Learning Algorithms and Applications,2022:65-77.
[29]Li X,Zhong Z S,Wu J L,et al. Expectation-Maximization Attention Networks for Semantic Segmentation[C]//International Conference on Computer Vision,2019.
[30]Guo M H,Liu,Z N,Mu T J,et al. Beyond self-attention:external attention using two linear layers for visual tasks[C]//IEEE Transactions on Pattern Analysis and Machine Intelligence. 2021:5436-5447.
[31]Hou Q,Zhou D,F(xiàn)eng J.Coordinate Attention for Efficient Mobile Network Design[C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2021:13708-13717.
[32]Woo S,Park J,Lee J Y,et al. CBAM:convolutional block attentionmodule[C]//European Conference on Computer Vision. Cham:Springer,2018:3-19.
[33]Liu Z,Mao H Z,Wu C Y,et al. A ConvNet for the 2020s[C]//2022 IEEE/CVF Conference on Computer Vision and PatternRecognition. New Orleans,2022:11966-11976.
[34]Zhang Y F,Zhang Z,Jia Z,et al. Focal and efficient IoU loss for accurate bounding box regression[J]. Neurocomputing,2022,506(28):146-157.
[35]曹" 超,顧幸生. 基于改進YOLO v8的行李追蹤技術(shù)[J]. 計算機工程與應用,2024,60(9):151-158.