


















doi:10.15889/j.issn.1002-1302.2024.20.010
摘要:針對缺鈣草莓葉片病害特征較小、病害尺度特征變換較大、傳統的卷積神經網絡模型對小目標的檢測效果不佳等問題,提出一種基于YOLO v5模型的缺鈣草莓葉片識別方法。該方法首先以YOLO v5模型為基礎從其Backbone、Neck、損失函數等方面進行優化,提高其對缺鈣草莓葉片病害特征的檢測能力,并將優化后的網絡模型命名為YOLO v5-Smix,再采用多種數據增強手段對已有數據集進行擴充,以保障后續卷積神經網絡模型的訓練。該方法將原有Backbone骨骼中的CSPDarknet53主干網絡替換為以C2F模塊為核心的Darknet-53網絡,保留缺鈣草莓葉片的小目標特征;在Neck特征融合層添加BiFPN結構,有效解決缺鈣草莓葉片圖像尺度特征變換較大的問題,同時增強網絡多尺度特征融合能力;更換原本的損失函數CIoU為WIoU,進一步提高模型的檢測效率及檢測能力。依據模型評價指標,通過試驗將YOLO v5-Smix網絡與經典的Faster-RCNN、YOLO v3、YOLO v4、YOLO v5等4種卷積神經網絡進行對比。結果表明,YOLO v5-Smix的識別精確度達89.1%,召回率達81.0%,平均精確度達78.8%,與Faster RCNN、YOLO v3、YOLO v4、YOLO v5相比,識別精確度均有提高,能夠較精確地識別缺鈣草莓葉片病害特征,完成小目標病害特征的檢測任務。
關鍵詞:YOLO v5;小目標;目標檢測;輕量化模型;缺鈣;草莓
中圖分類號:TP391.41" 文獻標志碼:A
文章編號:1002-1302(2024)20-0074-09
收稿日期:2023-10-10
基金項目:河北省科技計劃(編號:22370701D)。
作者簡介:李炳鑫(1999—),男,河北唐山人,碩士研究生,主要從事人工智能與機器學習研究。E-mail:291750154@qq.com。
通信作者:宋" 濤,博士,高級實驗師,碩士生導師,主要從事智能傳感器與物聯網技術研究。E-mail:songtao@hebut.edu.cn。
作為我國農業溫室培育水果中的典型代表,能否受到良好培育的前提在于草莓的生長狀態是否正常。草莓在生長的過程中生長狀態大多表現在葉片上,且極易受到鈣元素的影響,所以如何根據草莓葉片特征對生長狀態進行判斷具有著十分重要的研究價值。對草莓葉片狀態的監測和判別,目前農業上采用依靠機電化設備檢測環境參數與人工檢測草莓葉片相互配合的方法來實現,這種方法雖然能從宏觀上對草莓的狀態進行判別,但效率極低且花費大量人力物力,只適合小面積的溫室培育,無法滿足大面積的農作物種植需求[1]。
近年來,隨著機器學習技術的快速發展,部分學者已經開始將計算機視覺技術運用到農作物生長狀態上。例如,孫圓龍等通過設計高效運算網絡實現對黃瓜葉部病害的判別[2],劉慶飛等通過設計基于深度可分離卷積的網絡實現了田間自然環境下雜草和甜菜的識別[3],丁常宏等通過基于SSD-MobileNet v1的網絡實現了藥用植物的識別[4]。這些方法雖然可在一定程度上促進機器學習在農業智能化領域的研究發展,擺脫機電化設備限制,并通過計算機視覺技術實現農作物生長狀態的監測,但它們目前都還聚焦于整體目標或者大目標的監測上,對小目標物體的監測效果還無法達到非常好的水準。對于小目標物體的界定,Hariri等通過提出一個針對小目標的數據集,對小目標進行界定,在同一類別中,所有目標實例的相對面積,即邊界框面積與圖像面積之比的中位數在0.08%~0.58%之間則視為小目標,如在640像素×480像素的圖像中,16像素×16像素到42像素×42像素的目標應考慮為小目標[5-6]。草莓缺鈣時,葉片會產生邊緣焦枯現象,該特征在整幅圖片中非常微小且尺度不固定,在檢測過程中很難達到非常好的識別效果。在缺鈣草莓葉片檢測研究中,多數學者采用單階段目標檢測算法YOLO來實現,YOLO算法具有檢測速度快、效果好等特點,可以完成多種復雜背景下的檢測任務。YOLO算法因具有獨特的算法模塊化結構,便于研究人員進行優化發展,在YOLO系列中,YOLO v5因算法的穩定性和兼容性好而受到研究人員的青睞,與YOLO v8等高版本相比,YOLO v5更加適合作為改進的基礎算法。
為解決在實際農作物培育中的小目標物體識別難點,以YOLO v5網絡為基礎研究一種更加適合小目標物體的卷積神經網絡模型YOLO v5-Smix,該模型使用以C2F模塊為核心的Darknet-53網絡進行小目標物體識別,并使用BiFPN特征融合網絡來增強模型對小目標物體的泛化能力,同時通過更換上采樣方式、損失函數來增強模型的檢測能力與檢測速度。
1" 研究方法
1.1" 基本的YOLO v5算法
在目標檢測算法中,YOLO v5網絡因具有檢測速度快、檢測效果好等優點,應用范圍十分廣泛。YOLO v5的網絡組成包括特征提取網絡、特征融合和檢測頭等3個部分,具體結構如圖1所示。
首先,將輸入進網絡的圖像數據調整為網絡適應的分辨率,本研究采用640像素×640像素,然后通過多層卷積和跨階段局部(CSP)殘差模塊進入到特征金字塔(SPPF)模塊,將底層信息輸入至neck層進行融合,Backbone部分主要包含完全邊界分離(CBS)卷積結構和CSP殘差結構,其中CBS結構主要由卷積層、批量歸一化(BN)層、激活函數組成,在卷起層中主要使用1×1卷積和3×3卷積完成圖像特征的提取;再由殘差模塊得到2個分支,即通過對子特征圖進行加和得到新的特征輸出,隨著網絡深度的加深,模型的優化難度增大,而殘差模塊的引入能讓深層次的網絡模型達到更好的訓練效果,本研究在殘差網絡中提出殘差映射,替換以往的基礎映射殘差模塊結構,如圖2所示[7-8]。
最后,在SPPF模塊中將經過CBS的輸入、1次池化后的結果、2次池化后的結果和3次池化后的結果進行拼接,然后再通過CBS進行特征提取。仔細觀察不難發現,雖然SPPF對特征圖進行了多次池化,但特征圖尺寸并未發生變化,通道數更不會變化,所以后續的4個輸出能夠在channel維度進行融合。這一模塊的主要作用是對高層特征進行提取并融合,在融合過程中筆者多次運用最大池化盡可能多地提取高層次的語義特征[9]。SPPF模塊結構如圖3所示。
在Neck層中,YOLO v5使用不同尺度來預測并用特征金字塔結合像素聚合網絡結構對特征進行多尺度融合。YOLO v5 Neck層原本使用的是PANet網絡,是一種包含了自頂向下傳遞特征信息和自底向上傳遞位置信息的特征融合網絡,該網絡雖然可以減輕網絡層次加深帶來的位置信息不明確問題,但得到的模型過于復雜且檢測效果依然不佳[10]。PANet網絡結構如圖4所示。
Head層中Bounding box的損失函數為CIoU,它在以往損失函數的基礎上將長寬比考慮進去,使得模型的檢測更加穩定,不容易發散。
YOLO v5原本的損失函數為完全交并比(CIoU),其公式如下:
CIoU=IoU-ρ2(b,bgt)c2-αv。
式中:ρ2(b,bgt)代表預測框和真實框的中心點歐氏距離;c代表能夠同時包含預測框和真實框的最小閉包區域的對角線距離。邊界框的準確度一般用IoU表示,IoU等于計算的2個邊界框的交集和并集比;一般閾值設為0.5,所以一般約定,在檢測中,IoUgt;0.5,則認為檢測正確。權重因子α和寬高比懲罰項v的公式如下:
α=v1-IoU+v;
v=4π2arctanwgthgt-arctanwh2。
式中:w、wgt分別為預測框、真實框寬度;h、hgt分別為預測框、真實框高度。
基礎的YOLO v5模型更適合完成中、大型目標的檢測任務,但是在農業復雜環境中,尤其是在小目標物體形態發生較大變化的情況下,檢測效果尚未達到預期水平。為在復雜的背景中正確識別小目標物體,需要對YOLO v5進行進一步改進,本研究設計一個名為YOLO v5-Smix的新型模型,它采用最新的Darknet-53網絡替代YOLO v5原本的CSPDarknet53主干網絡,以解決CSPDarknet53網絡在提取小目標特征方面的不足。同時,對Neck層中的特征融合部分進行修改,引入具有雙向融合特征的網絡BiFPN,以實現目標的多尺度特征融合。最后,對損失函數進行更換,將原本的CIoU損失函數換成WIoU損失函數。通過以上改進解決現有YOLO v5模型對復雜背景下的小目標檢測能力不足的問題[11]。
1.2" 改進后的YOLO v5-Simx算法
1.2.1" Backbone部分改進
草莓在缺鈣時葉片表現出的癥狀屬于小目標,在進行特征提取時,YOLO v5 原本網絡的下采樣方式會丟失掉部分小目標信息。為解決小目標物體特征信息訓練不全面的問題,本研究改進模型 YOLO v5-Smix 采用最新的Darknet-53網絡(圖5)。
Darknet-53與CSPDarknet53的主要區別在于前者用更為先進的C2F模塊更換了C3(跨階段殘差瓶頸)模塊即圖5中的CBS模塊。C2F模塊的優勢在于它是整合了C3模塊以及ELAN思想進行的設計,可以讓網絡在保證輕量化的同時,獲得更加豐富的梯度流信息,C2F模塊中的卷積核參數數量比C3模塊少,因此,C2F模塊所需要的計算資源更少,會有更快的計算速度,且C2F模塊可以適應不
同大小的輸入,這使得C2F模塊在處理不同大小的圖像時更加靈活,對小目標也更加敏感。C2F模塊結構如圖6所示。
1.2.2" Neck部分改進
在網絡的訓練過程中,隨著網絡層次的加深,獲得的特征信息越來越高級,而層次的加深讓網絡無法獲得明確的位置信息,以至于使小目標物體的位置信息損失增大。因此,在提取到缺鈣草莓葉片的特征信息后,需要對從特征提取層輸送過來的目標特征信息進行特征融合,以提高檢測頭Head對缺鈣葉片位置和特征信息預測的準確度[12-14]。
本研究中的YOLO v5-Smix采用BiFPN網絡結構,刪除原本的PANet網絡中只有1條輸入邊的節點,這些節點的刪除不僅不會對網絡產生影響,同時還能將雙向網絡簡化。為了能夠在不增加過多成本的情況下融合更多的目標信息,BiFPN網絡在原始輸入節點和輸出節點之間添加1條額外的邊,與原本的PANet網絡不同,BiFPN網絡在處理每個雙向路徑時都作為一個特征網絡層,并重復同一層多次,以實現更高層次的特征融合[15]。BiFPN網絡結構示意如圖7所示,在網絡中的結構如圖8所示。
BiFPN結構使網絡學習不同分辨率特征圖在特征融合中的重要程度,并反復進行多尺度特征融合。BiFPN帶權融合公式為
O=∑iwie+∑jwj·Ii。
式中:Ii表示輸入特征;wi、wj為權值,用于度量不同分辨率特征在特征融合中的貢獻值;e表示數值極小的學習率,用來約束數值的振蕩;O為輸出加權特征融合的值。
BiFPN網絡在融合不同尺度的特征圖時,因其獨有的雙向交叉尺度融合連接結構,使得模型在訓練時的特征融合效率有了極大的提高,可高效地融合多分辨率下缺鈣草莓葉片的目標特征;同時運用加權融合的方式得到處于不同尺度時輸入特征與輸出特征的貢獻情況,從而解決缺鈣草莓葉片尺度變換過大的問題,提高模型的檢測能力。
1.2.3" Head部分改進
通過以上對YOLO v5網絡模型特征提取層Backbone骨骼模塊的更換、特征融合Neck層的優化,理論上提高了模型對小目標特征信息的運用能力,再對模型損失函數進行一系列優化和比較試驗,可得出優化后的小目標檢測模型,進一步提高模型在小目標物體上的檢測能力。
對于目標檢測模型,都會有3個主要的檢測任務,首先需要檢測出圖像中若干目標的位置、目標的大小,然后再對檢測到的目標進行分類。在訓練時模型檢測效果的不斷優化需要損失函數來發揮作用[16-18]。
損失函數的發展經歷了很長一段時間,在這段時間有無數優秀的損失函數被學者所提出,其中包括擴展交并比/焦點擴展交并比(EIoU/Focal EIoU)、平滑交并比(SIoU)、廣義交并比(GIoU)等,本研究采用WIoU損失函數來更換CIoU函數,加權交并比(WIoU)函數因具有動態非單調聚焦機制,獲得優越的性能[19]。WIoU函數定義如下:
LWIoUv1=RWIoULIoU;
RWIoU=exp(x-xgt)2+(y-ygt)2(W2g+H2g)*
式中:Wg、Hg分別表示最小包圍框的寬和高;x、y代表中心坐標值;gt代表真實值。為防止Rwiou產生,阻礙收斂的梯度,將Wg和Hg從計算圖中分離出來(上標*表示此操作)。WIoU有效地消除了阻礙收斂的因素,沒有引入新的度量,例如縱橫比[20-21]。
將更換WIoU損失函數的YOLO v5算法分別與更換EIoU、SIoU、CIoU的算法進行試驗比較,結果如圖9所示。
由圖9可見,WIoU在效果上不輸CIoU等損失函數,同時還具有非常可觀的收斂速度,這對模型檢測效果的提升意義巨大。
2" 圖像數據集與預處理
2.1" 試驗數據
本研究使用的試驗數據集來源于Mendeley數據網站,并從國外開源網站Kaggle上下載壓縮圖像數據包。數據包中包括健康的草莓葉片和出現缺鈣癥狀的草莓葉片圖像總計1 431張,其中出現缺鈣癥狀的圖像為891張,正常狀態的圖像為540張,本研究只使用出現缺鈣癥狀的草莓葉片圖像作為數據集,數據集樣例如圖10所示。
2.2" 數據增強
為提高試驗數據集的豐富性和網絡識別的準確性,同時防止訓練過程中產生過擬合現象,采用多種數據增強方式對數據樣本進行擴充,以保障網絡模型的訓練。具體方式為使用亮度線性變換、隨機旋轉、水平垂直翻轉、隨機裁剪等方式對原始圖像進行數據增強,原始圖像如圖11所示,數據增強后的對比結果如圖12所示。圖12中按照九宮格排序依次為原圖、線性亮度降低25%、線性亮度上升25%、隨機左旋轉、隨機右旋轉、隨機中心點縮放、上下翻轉、左右翻轉、隨機裁剪。最終得到缺鈣草莓葉片圖像8 000張,將8 000張圖像按照訓練集(6 400張)、驗證集(800張)、測試集(800張)的順序分成8 ∶1 ∶1 3個部分。
2.3" 數據標注
為使網絡模型能更好地學習草莓缺鈣時葉片的特征信息,對圖像中出現鈣元素缺失的草莓葉片
部位進行標注。本研究使用標注軟件LabelImg對圖像中的缺鈣草莓葉片進行標記,標記時盡可能使邊界框最小,以減少背景對模型識別的影響。標注效果如圖13所示。
標注完成后,得到記錄草莓缺鈣葉片位置信息和特征信息的Label文件,將其放入標簽文件夾中保障后續模型訓練,Label文件記錄目標檢測框的位
置、類別等信息。
2.4" 試驗環境
試驗時間為2022年6月,地點位于河北工業大學北辰校區電子信息學院樓,模型的訓練在服務器主機上進行,服務器的硬件環境配置:CPU采用英特爾處理器,具體型號為i7-11700KF,GPU采用NVIDIA GeForce RTX 3090。軟件環境使用3.8版本下Python實現,深度學習框架使用Pytroch 1.8.0,數據集尺寸為1 024像素×768像素,試驗相關參數設置如表1所示。
2.5" 評估指標
為了客觀評估模型性能,本研究采用精確度、召回率、平均精度和0.5比率下的平均精度均值來評價模型的識別效果。各指標計算公式如下:
P=TPTP+FP×100%;
R=TPTP+FN×100%;
AP=∫10PdR;
mAP=1N∑Ni=1APi。
式中:TP為正樣本被正確識別為正樣本的數量;FP為負樣本被錯誤識別為正樣本的數量;FN為正樣本被錯誤識別為負樣本的數量;N為目標的類別數;P為精確度;R為召回率;AP為平均精度;mAP為0.5比率下的平均精度均值。本研究的檢測目標只有缺鈣草莓葉片這一個目標類別,所以mAP數值和AP數值完全一致,mAP數值越大,網絡效果越好[22]。
3" 試驗結果
3.1" YOLO v5-Smix模型訓練結果
采用本研究中的YOLO v5-Smix對缺鈣草莓葉片進行檢測和識別,由訓練結果(圖14)可觀察到,YOLO v5-Smix網絡訓練時的收斂速度和損失回歸曲線都比較平穩,且沒有出現過多的過擬合現象。
3.2" 不同網絡模型對缺鈣葉片檢測性能指標比較
將Faster-RCNN、YOLO v3、YOLO v4、YOLO v5和本研究中改進模型YOLO v5-Smix的精確率、召回率、0.5比率下的平均精度均值進行對比,結果如表2所示。
由表2可見,在對草莓缺鈣部位進行識別時,YOLO v3、YOLO v4的檢測效果相比Faster RCNN有了極大的改善,但還是略低于YOLO v5。YOLO v5-Smix 的檢測效果在YOLO v5的基礎上得到進一步提高,其精確度、召回率、0.5比率下的平均精度均值和綜合評價指標均有所提升。其中,精確度比Faster RCNN高17.2百分點,比YOLO v3高10.7百分點,比YOLO v4高12.4百分點,比YOLO v5高6.9百分點。YOLO v5和YOLO v5-Smix的識別精度對比曲線對比圖如圖15所示。
3.3" YOLO v5-Simx消融試驗
為驗證改進試驗的有效性,采取消融試驗的方式來進行模型效果的對比分析,結果如表3所示。
模型1是YOLO v5網絡模型,模型2是更換了Darknet-53后得到的網絡模型,模型3是將 YOLO v5 的特征融合網絡替換為BiFPN得到的網絡模型,模型4是只更換WIoU損失函數的網絡模型,模型5是本研究改進網絡模型YOLO v5-Smix。試驗時,各網絡模型訓練輪次、學習率等參數均相同。
由表3可見,模型2、模型3、模型4、模型5的0.5比率下的平均精度均值相較于模型1均有不同程度的提高,這說明Darknet-53網絡和BiFPN網絡的替換均可提升模型的檢測效果。損失函數的更換雖然在精確度上的提高效果不佳,但其召回率
卻得到增強;而模型5的提高效果最明顯,其中精確度比模型1提高6.9百分點, 召回率提升5.2百分點,平均精度均值提高7.7百分點。
4" 結論
針對缺鈣草莓葉片目標特征過小且存在尺度大小不一以及目標易受環境背景影響等識別難題,提出一種適用于缺鈣草莓葉片的小目標物體檢測識別模型YOLO v5-Smix,通過多種數據增強方式擴充數據集,使用以C2F模塊為核心的Darknet-53網絡提取特征,結合BiFPN結構進行特征融合,更換WIoU損失函數,構建復雜環境背景下的缺鈣草莓葉片檢測模型,并采用對比試驗和消融試驗對模型的性能進行評估與分析。
在缺鈣草莓葉片的檢測中,本研究構建的YOLO v5-Smix模型識別準確度為89.1%,召回率為81.0%,0.5比率下的平均精度均值為78.8%,與其他目標檢測網絡模型相比,本研究優化的YOLO v5-Smix模型具有更好的小目標檢測效果,結果可為精準農業、智慧農業的發展提供技術支持。
參考文獻:
[1]成玉波,包成友,成玉富. 草莓缺素癥及其防治方法[J]. 現代農業科技,2007(3):34.
[2]孫圓龍,徐曉輝,宋" 濤,等. 高效運算網絡在作物葉部病害識別中的研究[J]. 中國農機化學報,2021,42(7):156-161.
[3]劉慶飛,張宏立,王艷玲. 基于深度可分離卷積的實時農業圖像逐像素分類研究[J]. 中國農業科學,2018,51(19):3673-3682.
[4]丁常宏,王守宇,高" 鵬. 基于SSD-MobileNet v1深度學習算法的藥用植物葉片識別方法[J]. 江蘇農業科學,2020,48(22):222-228.
[5]Hariri M,Avar E. Tipburn disorder detection in strawberry leaves using convolutional neural networks and particle swarm optimization[J]. Multimedia Tools and Applications,2022,81(8):11795-11822.
[6]林銘捷. 基于深度學習的春石斛生長狀態識別的研究[D]. 廣州:華南理工大學,2021.
[7]袁" 磊,唐" 海,陳彥蓉,等. 改進YOLO v5的復雜環境道路目標檢測方法[J]. 計算機工程與應用,2023,59(16):212-222.
[8]許璧麒,馬志強,寶財吉拉呼,等. 基于YOLO v5的高速公路小目標車輛逆行檢測模型[J]. 國外電子測量技術,2022,41(11):146-153.
[9]王寅凱,曹" 磊,錢佳晨,等. 一種改進YOLO v5的多尺度像素林火識別算法[J]. 林業工程學報,2023,8(2):159-165.
[10]張利紅,蔡敬菊. 基于輕量化YOLO v5算法的目標檢測系統[J]. 計算機技術與發展,2022,32(11):134-139.
[11]楊文姬,胡文超,趙應丁,等. 基于改進YOLO v5植物病害檢測算法研究[J]. 中國農機化學報,2023,44(1):108-115.
[12]朱香元,聶" 轟,周" 旭. 基于TPH-YOLO v5和小樣本學習的害蟲識別方法[J]. 計算機科學,2022,49(12):257-263.
[13]劉思誠,李嘉琛,鄧" 皓,等. 基于YOLO v5改進的小目標檢測算法[J]. 兵工自動化,2022,41(12):78-82,94.
[14]馬宏興,張" 淼,董凱兵,等. 基于改進YOLO v5的寧夏草原蝗蟲識別模型研究[J]. 農業機械學報,2022,53(11):270-279.
[15]Zhu P C,Chen B L,Liu B S,et al. Object detection for hazardous material vehicles based on improved YOLO v5 algorithm[J]. Electronics,2023,12(5):1257.
[16]Li J F,Lian X Q. Research on forest fire detection algorithm based on improved YOLO v5[J]. Machine Learning and Knowledge Extraction,2023,5(3):725-745.
[17]Jiang T Y,Li C,Yang M,et al. An improved YOLO v5s algorithm for object detection with an attention mechanism[J]. Electronics,2022,11(16):2494.
[18]周紹發,肖小玲,劉忠意,等. 改進的基于YOLO v5s蘋果樹葉病害檢測[J]. 江蘇農業科學,2023,51(13):212-220.
[19]Sun C,Zhang S W,Qu P Q,et al. MCA-YOLO v5-light:a faster,stronger and lighter algorithm for helmet-wearing detection[J]. Applied Sciences,2022,12(19):9697.
[20]Guo G G,Zhang Z Y. Road damage detection algorithm for improved YOLO v5[J]. Scientific Reports,2022,12(1):15523.
[21]Sun Z J,Yang H,Zhang Z F,et al. An improved YOLO v5-based tapping trajectory detection method for natural rubber trees[J]. Agriculture,2022,12(9):1309.
[22]豐玉華,魏" 怡,劉力手,等. 面向跌倒行人的MP-YOLO v5檢測模型[J]. 重慶郵電大學學報(自然科學版),2023,35(5):960-970.