王宇博 馬廷淮 陳光明
摘要:隨著智慧農(nóng)業(yè)技術(shù)和大田種植技術(shù)的不斷發(fā)展,自動除草具有廣闊的市場前景。關(guān)于除草劑自動噴灑的有效性,農(nóng)田雜草的精準、快速地識別和定位是關(guān)鍵技術(shù)之一。基于此提出一種改進的YOLOv5算法實現(xiàn)農(nóng)田雜草檢測,該方法通過改進數(shù)據(jù)增強方式,提高模型泛化性;通過添加注意力機制,增強主干網(wǎng)絡(luò)的特征提取能力;通過改進框回歸損失函數(shù),提升預(yù)測框的準確率。試驗表明,在芝麻作物和多種雜草的復(fù)雜環(huán)境下,本文方法的檢測平均精度均值mAP為90.6%,雜草的檢測平均精度AP為90.2%,比YOLOv5s模型分別提高4.7%和2%。在本文試驗環(huán)境下,單張圖像檢測時間為2.8 ms,可實現(xiàn)實時檢測。該研究內(nèi)容可以為農(nóng)田智能除草設(shè)備提供參考。
關(guān)鍵詞:雜草檢測;YOLOv5;數(shù)據(jù)增強;注意力機制;回歸損失函數(shù)
中圖分類號:S451: TP391.4
文獻標識碼:A
文章編號:2095-5553 (2023) 04-0167-07
Abstract: With the continuous development of intelligent agricultural technology and field planting technology, automatic weeding has a broad market prospect. Regarding the effectiveness of automatic herbicide spraying, the precise and rapid identification and positioning of farmland weeds is one of the key technologies. An improved YOLOv5 algorithm to realize weed detection can improve the model generalization of the backbone network, and improve the accuracy of the prediction box by improving the box regression loss function. The experiment shows that under the complex environment of sesame crops and multiple weeds, the mean average detection accuracy of this method is 90.6%, and the average detection accuracy of weed is 90.2%, which were? higher than the YOLOv5s model by 4.7% and 2%, respectively. In the test environment of this paper, a single image detection time is 2.8 ms, enabling real-time detection. The research content can provide a reference for intelligent weeding equipment in farmland.
Keywords:? weeds detection; YOLOv5; data augmentation; attention mechanism; regression loss function
0 引言
農(nóng)田雜草是影響農(nóng)作物產(chǎn)量和質(zhì)量的重要因素之一。雜草與農(nóng)作物爭奪陽光、生長空間,土壤中營養(yǎng)和水分。此外,將雜草作為宿主的病蟲害也會影響農(nóng)作物的生長[1]。常見除草方式的缺點如下:人工除草法,耗費大量人力且效率較低;機械除草法,容易造成農(nóng)作物的人為損害;鋪設(shè)地膜法[2],經(jīng)濟成本較高,適用于大蒜等高收益農(nóng)作物;全覆蓋式噴灑除草劑法[3],雖然可以防控雜草,但殘留藥物會造成土壤肥力下降和環(huán)境污染,降低農(nóng)作物品質(zhì)。隨著勞動力成本的不斷增加,以及對食品安全和環(huán)境保護關(guān)注度的增強,靶向噴射除草劑法[4]成為農(nóng)業(yè)除草技術(shù)研究的熱點方向。
近年來,基于深度學(xué)習(xí)的目標檢測不斷發(fā)展。姜紅花等[5]針對田間復(fù)雜環(huán)境中雜草分割精度低的問題,提出了基于Mask R-CNN[6]的雜草檢測方法。該方法在玉米和雜草數(shù)據(jù)集上測試,mAP為85.3%,單樣本檢測時間為280 ms。樊湘鵬等[7]為解決棉花苗期雜草種類多、分布狀態(tài)復(fù)雜的問題,選定VGG16[8]作為特征提取網(wǎng)絡(luò),提出了一種基于改進的Faster R-CNN[9]雜草識別與定位方法。該模型在棉花幼苗和雜草數(shù)據(jù)集上試驗,mAP為94.2%,單幅圖像檢測時間為261 ms。權(quán)龍哲等[10]為了精準識別玉米秧苗與農(nóng)田雜草,提出了一種基于YOLOv4[11]的雜草檢測模型。該方法在玉米苗和雜草數(shù)據(jù)集上試驗,F(xiàn)1值為0.828,檢測時間為287 ms。相較于傳統(tǒng)的機器學(xué)習(xí)方法,上述工作取得了一定進展,但與實際場景所需的精度高、速度快及成本低等需求仍有差距。
為推動雜草檢測在智慧農(nóng)業(yè)中的應(yīng)用,本文提出一種改進YOLOv5的雜草檢測方法。
1 目標檢測的相關(guān)工作
1) 主流目標檢測算法。目標檢測可分為兩階段檢測和一階段檢測方法。兩階段檢測方法先推薦目標邊界框,再對目標進行識別分類。其主流模型有Mask R-CNN、Faster R-CNN等,檢測精度相對較高,但是檢測速度較慢。一階段檢測方法為端到端地生成目標邊界框和分類。其主流模型包括SSD[12]和YOLO[13]系列等,檢測速度較快,但是檢測精度較低。目前YOLOv5在業(yè)界應(yīng)用廣泛,它能實現(xiàn)檢測速度和精度兩者的平衡。
2) 目標檢測改進的相關(guān)工作。數(shù)據(jù)增強可以擴大訓(xùn)練集規(guī)模,增加訓(xùn)練樣本的多樣性,從數(shù)據(jù)層面解決過擬合問題,提高模型的泛化性。常見的數(shù)據(jù)增強方式通過變化拍攝中光線、角度、時間,或者對訓(xùn)練圖片進行裁剪、翻轉(zhuǎn)、平移、色域調(diào)整等。mosaic數(shù)據(jù)增強有較好的效果,它先從訓(xùn)練集隨機讀取4張圖片,再將4張圖片和標注框拼接成1張圖片。注意力機制對輸入圖片的各個部分,設(shè)置不同的權(quán)重,能從大量信息中篩選出重要的信息。
目標檢測的主干網(wǎng)絡(luò)可引入多種注意力機制方法:SE[14]、CBAM[15]、ECA[16]。框回歸損失函數(shù)是目標檢測精度計算的重要因素,檢測模型大多使用IoU函數(shù)。此外,常見框回歸損失函數(shù)有以下幾種方法:GIoU[17]、DIoU[18]、CIoU[18]。
2 改進的YOLOv5算法
改進網(wǎng)絡(luò)如圖1所示。
本文方法主要有三個模塊:數(shù)據(jù)增強模塊,將訓(xùn)練集按比例分別進行mosaic和mixup[19]數(shù)據(jù)增強,然后通過主干網(wǎng)絡(luò)(Backbone)提取特征;注意力模塊,在主干網(wǎng)絡(luò)中添加協(xié)同注意力機制(Coordinate Attention[20],CA),關(guān)注位置信息對于特征圖的影響;框回歸損失函數(shù)模塊,將α-IoU[21]和CIoU組合成α-CIoU,替換YOLOv5的GIoU。當α=3時,能更有效降低噪聲標注框?qū)貧w損失函數(shù)的影響,提高定位精度和增強魯棒性。
2.1 數(shù)據(jù)增強模塊
mosaic雖然可以豐富訓(xùn)練集圖像背景,但為了解決農(nóng)作物與雜草之間的遮擋問題,引入mixup數(shù)據(jù)增強方式。圖2和圖3分別為mosaic和mixup訓(xùn)練效果圖。
3 試驗結(jié)果與分析
3.1 數(shù)據(jù)集和試驗環(huán)境
本文的數(shù)據(jù)集來源于網(wǎng)上公開數(shù)據(jù)集(crop and weed detection data with bounding boxes),有農(nóng)作物和雜草兩個類別,農(nóng)作物為芝麻,雜草包含多個種類。圖像分辨率為512像素×512像素,一共有1 300張圖片。按照PASCAL VOC 2007格式標注數(shù)據(jù)集,采用8∶1∶1比例劃分訓(xùn)練集、驗證集和測試集,訓(xùn)練集為1 040張圖片,驗證集為130張圖片,測試集為130張圖片。本文的試驗環(huán)境:i7-11700K @ 3.06GHz,內(nèi)存32GB,顯卡為NVIDIA GeForce RTX 3070 Ti,操作系統(tǒng)為Windows 10,在Pytorch 1.10.0下實現(xiàn)模型的搭建及試驗。
模型訓(xùn)練參數(shù)設(shè)置:輸入圖像大小為640像素×640像素,用YOLOv5s的預(yù)訓(xùn)練權(quán)重作為初始權(quán)重,批大?。˙atch Size)為32,訓(xùn)練周期(Epochs)為150,訓(xùn)練動量為0.9,初始學(xué)習(xí)率為0.01,權(quán)重衰減率為5×10-4,采用隨機梯度下降法(SGD)作為優(yōu)化函數(shù)。
3.2 評價指標
本文使用mAP 0.5,mAP和F1對雜草檢測模型的性能進行評估。mAP 0.5表示當IoU為0.5時的mAP值,mAP表示當IoU取值在0.5~0.95區(qū)間時mAP值,IoU的間隔值為0.05。
3.3 不同數(shù)據(jù)增強的對比試驗
從表1可看出,當訓(xùn)練集全用mosaic數(shù)據(jù)增強,mAP 0.5 值為85.9%,mAP值為51.1%,F(xiàn)1值為0.824。當YOLOv5全部使用mixup數(shù)據(jù)增強,mAP 0.5值為86.4%,mAP值為53.1%,F(xiàn)1值為0.823。由此可見,單獨使用mosaic或mixup數(shù)據(jù)增強,模型精度值均不高。因此,將訓(xùn)練集劃分一定比例進行mosaic和mixup數(shù)據(jù)增強,這樣既可以提高模型的泛化性,又能解決雜草和農(nóng)作物相互遮擋問題,提高模型的精度。設(shè)置mosaic的比例分別為0.9、0.7、0.5、0.3、0.1,同時設(shè)置mixup的比例分別為0.1、0.3、0.5、0.7、0.9,兩者相對應(yīng)的比例之和為1。經(jīng)過對比試驗得出,當設(shè)置mosaic和mixup比例為0.7和0.3時,mAP 0.5提升了3.8%,mAP提升了4.9%,F(xiàn)1提升了0.028。該配置下模型取得了最優(yōu)值。
3.4 不同注意力機制的對比試驗
考慮到模型檢測精度和計算代價,本文引入了輕量級的CA注意力機制,與當前較先進的注意力機制作對比試驗。由表2可知,在YOLOv5上添加SE注意力機制,mAP 0.5不變,mAP卻下降了1.9%;在YOLOv5上添加CBAM注意力機制,mAP 0.5增加了0.6%,mAP和F1值都下降;在YOLOv5上添加ECA注意力機制,mAP 0.5和mAP均下降。
從以上四組試驗結(jié)果分析,在YOLOv5網(wǎng)絡(luò)上分別添加了不同注意力機制,模型的精度沒有明顯提高,反而下降。但是在YOLOv5上添加CA注意力機制,mAP 0.5增加了1.2%,mAP增加了1.3%,F(xiàn)1值增加了0.012。
3.5 不同回歸損失函數(shù)的對比試驗
YOLOv5模型的框回歸損失函數(shù)為GIoU,為驗證α-CIoU的性能,本文設(shè)計了4組對比試驗,如表3所示。第一組試驗,框回歸損失函數(shù)分別設(shè)置為GIoU、DIoU和CIoU,試驗結(jié)果表明CIoU的性能較優(yōu);同時本文引入了α-IoU,將它與常用的框回歸損失函數(shù)相結(jié)合,分別為α-GIoU,α-DIoU和α-CIoU。α值作為冪指數(shù),通常取值在1~9之間,將α分別取值為2、3和4后進行三組對比試驗。經(jīng)過以上四組對比試驗得到最優(yōu)設(shè)置,即框回歸損失函數(shù)改進為α-CIoU(α=3),此時mAP 0.5比YOLOv5s提升了2.9%,mAP提升了3.9%。
3.6 消融試驗
為了分析本文提出的改進方法對YOLOv5性能的影響,進行了消融試驗。每組試驗使用相同的訓(xùn)練參數(shù),不同改進方法的檢測結(jié)果如表4所示,“√”代表在模型中使用了相對應(yīng)的改進策略,“×”代表在模型中未使用相對應(yīng)的改進策略。
YOLOv5s-A使用α-CIoU 改進了框回歸損失函數(shù),mAP 0.5提升了2.2%;YOLOv5s-B在YOLOv5s-A的基礎(chǔ)上,將70%的訓(xùn)練集進行mosaic數(shù)據(jù)增強,將剩余30%的訓(xùn)練集進行mixup數(shù)據(jù)增強,mAP 0.5提升了1.3%;YOLOv5s-C即本文方法,在YOLOv5s-B的基礎(chǔ)上添加了CA注意力機制,mAP 0.5為90.6%,提升了1.2%。
3.7 不同模型的對比試驗
為驗證本文方法的性能,與YOLOv3、YOLOv5s+Mobilenet v3和YOLOv5s模型進行對比試驗,試驗結(jié)果如表5所示。YOLOv5s+Mobilenet v3模型是將主干網(wǎng)絡(luò)替換為移動輕量化網(wǎng)絡(luò)Mobilenet v3,這樣可以縮減模型大小,單張圖像推理時間是2.2 ms,但是mAP 0.5比本文方法降低了11.5%。本文方法與YOLOv5s模型相比,mAP 0.5提高了4.7%,雜草AP 0.5提高了2%,芝麻作物AP 0.5提高了7.2%,單張圖像推理時間是2.8 ms。圖6為本文方法和YOLOv5s檢測結(jié)果的對比圖。
4 結(jié)論
本文提出了一種基于改進YOLOv5的農(nóng)田雜草檢測算法,分別在數(shù)據(jù)增強、注意力機制和回歸損失函數(shù)這三個方面做了改進工作。該方法在Nvidia GeForce RTX 3070Ti環(huán)境下,對于芝麻作物和多種雜草的數(shù)據(jù)集,mAP 0.5為90.6%,檢測時間為2.8 ms。試驗表明該方法檢測精度高,推理速度快,有助于農(nóng)田智能除草設(shè)備能準確、實時地檢測目標。
1) 本文將YOLOv5s模型應(yīng)用于農(nóng)田雜草檢測,并做了以下幾個改進工作:引入mixup數(shù)據(jù)增強方式來提高模型泛化能力;添加輕量級CA注意力機制來增強主干網(wǎng)絡(luò)的特征提取能力;使用α-CIoU來優(yōu)化框回歸損失函數(shù)。通過與目前較為先進的優(yōu)化方法作對比試驗,以及消融試驗,驗證了本文方法的性能。
2) 將本文方法與YOLOv3、YOLOv5s+Mobilenet v3和YOLOv5s模型進行對比試驗。本文方法相較于YOLOv5s,mAP 0.5提高了4.7%,雜草AP 0.5提高了2%,芝麻作物AP 0.5提高了7.2%。
3) 今后將該方法應(yīng)用到農(nóng)田智能除草設(shè)備上,考慮在不降低模型檢測精度的情況下,研究如何進一步減小模型規(guī)模和降低計算代價。
參 考 文 獻
[1] Hasan A S M M, Sohel F, Diepeveen D, et al. A survey of deep learning techniques for weed detection from images [J]. Computers and Electronics in Agriculture, 2021, 184(3): 1680-1699.
[2] 姜延軍, 岳德成, 李青梅, 等. 全膜雙壟溝播玉米田選用除草地膜的適宜田間雜草密度研究[J]. 植物保護, 2018, 44(1): 110-115.
Jiang Yanjun, Yue Decheng, Li Qingmei, et al. Effects of covering weeding film on the suitable weed density in double-ridge maize fields with whole plastic-film mulching [J]. Plant Protection, 2018, 44(1): 110-115.
[3] 李香菊. 近年我國農(nóng)田雜草防控中的突出問題與治理對策[J]. 植物保護, 2018, 44(5): 77-84.
Li Xiangju. Main problems and management strategies of weeds in agricultural fields in China in recent years [J]. Plant Protection, 2018, 44(5): 77-84.
[4] 王璨, 武新慧, 張燕青, 等. 基于雙注意力語義分割網(wǎng)絡(luò)的田間苗期玉米識別與分割[J]. 農(nóng)業(yè)工程學(xué)報, 2021, 37(9): 211-221.
Wang Can, Wu Xinhui, Zhang Yanqing, et al. Recognition and segmentation of maize seedlings in field based on dual attention semantic segmentation network [J]. Transactions of the Chinese Society of Agricultural Engineering, 2021, 37(9): 211-221.
[5] 姜紅花, 張傳銀, 張昭, 等. 基于Mask R-CNN的玉米田間雜草檢測方法[J]. 農(nóng)業(yè)機械學(xué)報, 2020, 51(6): 220-228, 247.
Jiang Honghua, Zhang Chuanyin, Zhang Zhao, et al. Detection method of corn weed based on Mask R-CNN [J]. Transactions of the Chinese Society for Agricultural Machinery, 2020, 51(6): 220-228, 247.
[6] He Kaiming, Gkioxari G, Dollar P, et al. Mask R-CNN [C]. Proceedings of the IEEE International Conference on Computer Vision (ICCV), 2017: 2961-2969.
[7] 樊湘鵬, 周建平, 許燕, 等. 基于優(yōu)化Faster R-CNN的棉花苗期雜草識別與定位[J]. 農(nóng)業(yè)機械學(xué)報, 2021, 52(5): 26-34.
Fan Xiangpeng, Zhou Jianping, Xu Yan, et al.Identification and localization of weeds based on optimized Faster R-CNN in cotton seedling stage [J]. Transactions of the Chinese Society for Agricultural Machinery, 2021, 52(5): 26-34.
[8] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition [C]. In ICLR, 2015.
[9] Ren Shaoqing, He Kaiming, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks [C]. In NIPS, 2015.
[10] 權(quán)龍哲, 夏福霖, 姜偉, 等. 基于YOLOv4卷積神經(jīng)網(wǎng)絡(luò)的農(nóng)田苗草識別研究[J]. 東北農(nóng)業(yè)大學(xué)學(xué)報, 2021, 51(7): 89-98.
Quan Longzhe, Xia Fulin, Jiang Wei, et al. Research on recognition of maize seedlings and weeds in maize mield based on YOLOv4 convolutional neural network [J]. Journal of Northeast Agricultural University, 2021, 51(7): 89-98.
[11] Bochkovskiy A, Wan C Y g, Liao H. YOLOv4: Optimal speed and accuracy of object detection [C]. 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2020.
[12] Liu Wei, Anguelov D, Erhan D, et al. SSD: Single shot multibox detector [C]. 2016 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2016.
[13] Redmon J, Farhadi A. YOLOV3: An incremental improvement [C]. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2018.
[14] Hu Jie, Shen Li, Sun Gang. Squeeze-and-excitation networks [C]. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2018.
[15] Woo S, Park J, Lee J Y, et al. CBAM: Convolutional block attention module [C]. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2018.
[16] Wang Qilong, Wu Banggu, Zhu Pengfei, et al. ECA-Net: Efficient channel attention for deep convolutional neural networks [C]. 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2020.
[17] Rezatofighi H, Tsoi N, Gwak J Y, et al. Generalized intersection over union: A metric and a loss for bounding box regression [C]. 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2019.
[18] Zheng Zhaohui, Wang Ping, Liu Wei, et al. Distance-IoU loss: Faster and better learning for bounding box regression [C]. In AAAI, 2020.
[19] Zhang Hongyi, Cisse M, Dauphin Y N, et al. mixup: Beyond empirical risk minimization [C]. In ICLR, 2018.
[20] Hou Qibin, Zhou Daquan, Feng Jiashi. Coordinate attention for efficient mobile network design [C]. 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2021.
[21] He Jiabo, Erfani S, Ma Xingjun, et al. Alpha-IoU: A family of power intersection over union losses for bounding box regression [C]. 35th Conference on Neural Information Processing Systems (NeurIPS), 2021.