陳雨陽
(珠??萍紝W院,廣東深圳,519041)
隨著全球農業(yè)的發(fā)展,雜草的生長和繁殖已成為影響農業(yè)生產的主要因素之一。雜草的存在不僅會占用作物的養(yǎng)分和水分,還會對作物的生長和產量造成嚴重的影響。因此,如何快速、準確地檢測和識別田間的雜草已成為防治有害雜草領域的重要研究方向之一。
在國外,1996 年Yonekawa 提出了雜草形狀特征模型,利用雜草植物的葉片展開角度、橢圓程度、邊沿鋸齒形狀、粗糙度這五個特征參數,在玉米雜草數據集的檢測準確率達到 了82.22%[1]。Edmund J.Sadgrove 等使用HSV、YUV、RGB 三種顏色分類標準在玉米雜草數據集上進行了訓練測試[2],結果表明,基于YUV 的顏色標準表現最佳,雜草檢測精度達到了84%。
盡管我國在雜草識別領域的起步相對較晚,但隨著農業(yè)的現代化進程,我國的研究水平逐漸與國外接軌。袁海波等人于2008 年以玉米為研究對象,成功地利用過綠特征參數(R-B-2G)和像素位置直方圖來識別雜草的類別、位置和生長面積[3]。陳麗君等人于2010 年提出了一種穴間區(qū)塊雜草識別的算法[4],該方法實時檢測準確率超過87.7%。
通過采用目標檢測模型對雜草的圖像信息進行采集與處理,可以快速精準檢測玉米作物行間的雜草,實現玉米田間雜草的精準防治,有助于農民及時發(fā)現和防治田間的有害雜草,提高玉米產量和農業(yè)生產效率。YOLO 是目標檢測的一種,YOLOv5 迭代發(fā)展出較高的基準精度,且其為輕量級的網絡模型,具有優(yōu)異的對象識別速度?;诖?,本文提出基于YOLOv5s 的雜草檢測方法,實現雜草種類檢測來解決上述問題。
目前存在玉米田間雜草的公開數據集較少,為展開研究需要創(chuàng)建自己的圖像數據集。株藍草,株西蒿,莎草,藜藜四類玉米田間雜草采用數據網站公開數據集。狗尾巴草,打碗花,鴨跖草,花糖芥,鱧腸,野西瓜苗,采用爬蟲代碼合法爬取圖像數據,因存在部分爬取的圖像存在較大偏離,則進行手動篩選剔除。最后收集到來自玉米田間11 類常見雜草數據集共計8778 張圖像樣本,收集后的樣本圖像分為11 類標簽,圖1 給出了數據集中每種雜草樣本。
圖1 玉米田間數據集每種雜草樣本
本文通過數據增強的方式來獲取足夠的訓練樣本來對卷積神經網絡進行訓練以達到最優(yōu)的效果。對原始圖像進行擴增共4901 張。為了更好地訓練及驗證卷積神經網絡的性能,將擴增后的數據集按 8:2的比例劃分為訓練集和測試集。本文的玉米田間雜草檢測數據集統計信息如表1 所示。
表1 玉米田間雜草檢測數據集統計信息
為實現雜草檢測網絡模型的訓練,本文使用LabelImg軟件對采集到的所有雜草圖像進行標注。具體標注過程如圖2 所示。雜草標注框的位置信息標注為 xml 標準格式,所有標注之后的圖片數據按照VOC2007 格式的存儲標準進行存儲。
圖2 圖像標注示意圖
圖3 YOLOv5s 網絡結構圖
YOLOv5 是深度學習網絡中的一種,YOLOv5 官方代碼給出了四個網絡模型:YOLOv5x、YOLOv5l、YOLOv5m 和YOLOv5s。其中 YOLOv5s 網絡是整個YOLOv5 系列中特征圖、特征寬度和卷積深度最小的網絡,其他三種不同模型都是在YOLOv5s 的基礎上不斷卷積加深和特征圖加寬[5]。最終本文選擇YOLOv5 系列的 YOLOv5s 作為本文研究玉米田間雜草檢測任務的基礎模型。
YOLOv5s 的網絡結構主要 由Input(輸入端)、BackBone(骨干網絡端)、Neck(頸部端)和 Prediction(檢測端)四個模塊部分組成。圖像輸入部分,YOLOv5s 網絡輸入端對圖像進行預處理和歸一化操作,并使用Mosaic(馬賽克)數據增強技術,縮小圖中大目標尺度,豐富數據集的同時極大地提升了網絡訓練速度和小目標檢測精度。
YOLOv5s 的BackBone 網絡中增加Focus 和CSP(Cross Stage Partial)結構,Focus 結構對圖像進行4個Slice 分片操作再重新拼接卷積,進一步提取雜草目標特征[6];CSP 結構將基礎層的特征映射劃分為兩部分,通過跨層連接將它們合并[7],使模型輕量化,加快收斂速度。
Neck 網絡包 括SPP 結 構,FPN+PAN 結 構,新 增FPN優(yōu)化了特征融合過程,能進一步提升特征的多樣性及魯棒性。SPP 結構以3 種不同尺度的最大池化層代替卷積層后的常規(guī)池化層,充分融合圖像特征,獲取多尺度特征。PAN結構對不同層次的特征進行融合,保留更多的淺層位置特征,進一步提升整體特征提取能力。
Prediction 網絡中將邊界錨框的損失函數改進為GIoU(Generalized IoU,GIoU)損失,進一步優(yōu)化候選框的選取和目標定位[8],采用 CIOU-Loss 作為 Bounding box回歸的損失函數,從而進一步提升算法檢測精度。YOLOv5s的網絡結構如圖 3 所示。
本文選取準確率AP((Average precision),平均準確率 mAP(Mean average precision)這兩項指標作為模型檢測效果評價標準。精確率Precision 表示某一種類預測目標正確占總真實標簽個數的比例,召回率Recall 表示預測目標正確的數量占目標預測總數的比例,AP 指的是精確率和召回率構成的 Precision-Recall(P-R)曲線與x,y 軸所圍成的面積計算得到。AP 是表示單一類別的識別器性能,mAP 從多類別維度平均AP[9]。本文采用的數據集共11 個樣本種類,mAP 為11 種類別的 AP 值取平均,數值在[0,1]內,mAP 值越高表明雜草檢測效果越好。計算公式為:
在上式中,TP表示正樣本進行正確預測的樣本量,FN表示正樣本進行錯誤預測的樣本量,FN表示負樣本進行錯誤預測的樣本量,APi表示某種雜草的單類精度,i表示研究的某種雜草,本文共研究11 種雜草。
為了在訓練時可以方便標注各種雜草,實驗標注和訓練以其英文名稱或拼音代替其中文學名。其中YOLOv5s 的分類P-R 曲線的測試結果如圖4 所示。對玉米田間11 類雜草的數據集測試結果如表2 所示。YOLOv5s 模型對這11 種雜草的檢測結果整體來看,雜草的整體識別率都不錯,前9 類雜草的mAP 都達到了96%以上,其中株藍草和鴨跖草的mAP 達到了99.5%,總的mAP 達到了94.1%。
表2 11類雜草的mAP測試結果
圖4 分類P-R 實驗結果曲線
其中,野田瓜苗幼苗和澧腸的檢測效果相對較低,一開始認為這兩種草檢測結果的不理想,可能是由于數據量不夠的問題,實驗將照片擴充再次進行測試,結果準確率提升不是特別的明顯,于是在查看數據集圖像后,對這兩類草檢測結果不理想的情況進行分析。可能是在數據標注過程中通常需要將整張雜草圖像進行標注,而在雜草圖像中不可避免地有其他雜草的存在,這樣導致模型無法充分學習雜草的特征;圖像中的雜草之間的距離較近,可能會導致檢測框誤檢,目標雜草較小,像素占比較小,不易被識別出來。
綜上所述,整體來看本文采用的YOLOv5s 模型保證了較高的準確率,易于檢測玉米田間雜草。
本次實驗也驗證了YOLOv5s 模型對雜草的實際檢測效果,部分檢測結果效果展示如圖5 所示。
圖5 YOLOv5s部分檢測結果效果展示
為了解決雜草在玉米田種類多,人工識別效率低、確率不高、識別困難的問題,本研究提出采用YOLOv5s 目標檢測模型檢測雜草種類,主要總結如下:
(1)首先,基于部分公開的數據集和合法爬取圖像數據構建玉米田間常見的11 類雜草圖像數據集,并對雜草數據集進行數據增強處理與數據標記,用作卷積神經網絡的輸入。
(2)采用YOLOv5s 目標檢測模型開展研究,實現了雜草目標檢測模型的訓練,在自制的雜草數據集上平均精準率mAP 達到了94.1%,實現了在一定程度上玉米田間雜草的準確快速檢測,對支持精準除草技術的發(fā)展有一定意義。