







摘 "要: 為實現無人農機在行駛過程中對田間移動型障礙物的實時檢測,提出一種基于YOLOv5s的目標檢測模型,用于檢測田間行人和其他協同作業的農機設備。該目標檢測模型以YOLOv5s模型為基礎框架,進行了以下三點改進:第一,為了減少模型的參數量和計算復雜度,提高推理速度,將YOLOv5s網絡模型中的卷積模塊和C3模塊替換為Ghost卷積和C3Ghost模塊;第二,為了彌補模型參數量減少所造成的精度下降的損失,提升對目標的檢測能力,在主干網絡輸出的特征層中引入CBAM注意力機制;第三,采用BiFPN特征金字塔結構,實現多尺度特征加權融合。實驗結果表明,YOLOv5s模型的參數量為7.02×106,計算復雜度為15.8 GB,平均檢測精度為94%,生成權重文件大小為13.7 MB,單幅圖像的檢測速度為71.43 f/s;改進后的模型參數量為4.04×106,下降了42.45%,計算復雜度縮減為8.5 GB,平均檢測精度達到了93.2%,僅僅下降了0.8%,權重文件大小為8.1 MB,單幅圖像的檢測速度為77.52 f/s。以上數據證明,改進后的模型能夠滿足對田間移動型障礙物的實時檢測,且更加易于部署到移動端設備。
關鍵詞: 移動型障礙物; YOLOv5s; 無人農機; 目標檢測; CBAM注意力機制; 雙向特征金字塔網絡(BiFPN)
中圖分類號: TN911.73?34; TP391.4; S24 " " " " " " 文獻標識碼: A " " " " " " " 文章編號: 1004?373X(2024)06?0171?08
Detection of improved YOLOv5s based mobile obstacles in field
HOU Yanlin, ARKIN Hamdulla, LI Henan
(College of Mechanical Engineering, Xinjiang University, Urumqi 830017, China)
Abstract: In order to realize the real?time detection of movable obstacles in the field during the operation of unmanned agricultural machinery, an object detection model based on YOLOv5s is proposed, which is used to detect people and other agricultural machineries with collaborative operations in the farmland. In the object detection model, the YOLOv5s is used as the basic framework to conduct three improvements. In order to reduce the number of parameters and computational complexity of the model, and improve inference speed, the convolution module and C3 module in the YOLOv5s network model are replaced with Ghost convolution and C3Ghost modules. In order to compensate for the loss of accuracy caused by the reduction of model parameters and improve the detection ability of targets, CBAM attention mechanism is introduced in the feature layer output by the backbone network. The BiFPN feature pyramid structure is used to achieve multi?scale feature weighted fusion. The experimental results show that the parameter size of the YOLOv5s model is 7.02×106, the computational complexity is 15.8 GB, the average detection accuracy is 94%, the generated weight file size is 13.7 MB, and the detection speed of a single image is 71.43 f/s. The parameter size of the improved model is 4.04×106, with a decrease of 42.45%, the computational complexity is 8.5 GB, the average detection accuracy is 93.2%, with a decrease of 0.8%, the generated weight file size is 8.1 MB, and the detection speed of a single image is 77.52 f/s. The above data proves that the improved model can meet the real?time detection of mobile obstacles in the field and is easier to deploy to mobile devices.
Keywords: mobile obstacles; YOLOv5s; unmanned agricultural machinery; object detection; CBAM attention mechanism; bidirectional feature pyramid network (BiFPN)
0 "引 "言
作為智能農業的重要發展動力,無人駕駛農機技術已經成為農業數字化、智能化的重要標志和發展新潮流[1]。自動導航技術是無人農機自主作業的關鍵,農機在田間作業時會遇到其他協同作業的農機與行人,精確快速識別這些障礙物是實現農機自動導航的前提與基礎。國內許多研究學者針對農機設備如何識別田間障礙物并實現自動導航問題進行了深入研究。袁文濤等針對農田典型障礙物——樹木和拖拉機,提出一種基于激光測距儀的自主導航拖拉機前方障礙物檢測方法,該方法對障礙物數據進行處理,實現了對拖拉機前方障礙物的方位和距離等信息的識別[2]。茍琴等通過對左右場景視差圖進行閾值過濾,完成了試驗田下障礙物的檢測與定位[3]。孫柯等采用雙毫米波雷達協同作業的方法,完成了對障礙物前方和側方距離的檢測[4]。楊洋等利用激光雷達建立拖拉機在行進方向上的動態識別區域,用于感知障礙物,然后利用該方向上的障礙物位置建立雷達坐標系下的避障路徑簇,并從中選取最優路徑,以此實現農機自主避障[5]。郭成洋等利用激光傳感器獲得障礙物相對于農機的距離信息,通過優化人工勢場函數完成了農機的自主避障[6]。深度學習的發展為田間障礙物識別提供了新方向[7]。劉艷平等采用ResNet152作為Mask RCNN檢測模型的主干網絡,實現了對柑橘和障礙物的檢測[8]。薛金林等提出一種基于CNN的農業車輛障礙物檢測方法,實現了田間環境下農機與行人識別[9]。陳斌等為實現自主農機導航,對YOLOv3?tiny檢測模型進行重構,提高了對田間行人和其他農機的檢測精度[10]。蔡舒平等為降低模型參數量,將YOLOv4網絡模型中的卷積替換為深度可分離卷積,同時為提高算法對密集區域下目標的識別能力,采用軟性非極大值抑制算法,更好地實現了對果園障礙物的檢測[11]。王新彥等以YOLOv5s模型為基礎,將SE注意力機制和分層殘差模塊進行融合后,替換Bottleneck中的殘差模塊,以更好地提取目標特征信息;同時為了減少模型參數量,對改進后的模型進行剪枝處理。實驗結果表明,改進后的模型能夠實現割草機器人對于障礙物的實時檢測[12]。為了實現無人農機在自主導航過程中對田間行人和其他農機的實時檢測,本文提出一種基于YOLOv5s的目標檢測算法。為了減少參數量和計算復雜度,提高對田間障礙物的檢測速度,設計一種輕量化網絡,并在網絡結構中融入CBAM注意力機制和BiFPN結構,以提升模型的檢測精度。
1 "YOLOv5s目標檢測模型
YOLOv5s目標檢測模型是Ultralytics公司推出的YOLOv5算法中最小的一個檢測模型,主要用于輕量化研究。YOLOv5s網絡結構主要由主干網絡、Neck網絡和預測輸出層三部分構成,如圖1所示。
圖1中,主干網包括Conv、CSP和SPPF模塊。Focus通過切片處理增加圖像通道,加快運算速度;CSP結構[13]在減少網絡參數的同時,能夠有效提取特征信息;SPPF用于實現局部特征信息與全局特征信息的拼接融合。Neck網絡中采用了FPN[14]和PAN[15]結構,將不同尺度的特征信息融合在一起,有效加強了檢測器的特征提取性能。
預測輸出層包括3個特征輸出層,完成目標的分類和預測。
2 "改進的YOLOv5檢測算法
本文以半封閉農田中行人與農機作為移動障礙物,在YOLOv5s基礎上提出一種輕量化的檢測模型,其模型結構如圖2所示,主要進行3個方面的改進。
2.1 "模型結構輕量化
為了減少YOLOv5s模型的參數量和計算復雜度,本文參照GhostNet[16],將網絡中的Conv替換為Ghost卷積,同時將主干網絡中的C3模塊替換為C3Ghost模塊。Ghost卷積的操作過程如圖3所示,可分為兩個執行步驟:首先,利用傳統卷積對輸入圖像信息進行計算,得到部分原始特征圖,輸出的特征圖具有較好的通道;隨后,對以上輸出的特征圖進行線性變換,得到冗余特征圖,在通道方向上將輸出的冗余特征圖和原始特征圖進行拼接,這樣就得到了最終的輸出特征圖。
假設輸入特征圖的大小為[H?W?C],采用卷積核的大小為[C?K?N?N],輸出特征圖的大小為[H?W?N],利用傳統卷積所得到的計算量為[P=H?W?N?C?K?K];在采用Ghost卷積時,假設存在單個恒等映射,并且線性運算的個數是[M·S-1=NS?S?S-1],線性運算中采用卷積核大小均設定為[D?D],則卷積計算量大小為[Q=NS?H?W?N?C?K?K+S-1?NS?H?W?D?D]。二者參數量之比[Rate]公式如下:
[Rate=PQ≈S?CS+C-1≈S] (1)
通過公式(1)可知,Ghost卷積能夠有效減少模型參數計算量,加快推理速度。因此,可以將Ghost模塊與C3模塊進行融合,獲得新模塊C3Ghost。C3Ghost結構如圖4所示。
2.2 "CBAM注意力機制嵌入
在神經網絡模型中引入注意力機制,可以有效增強模型的檢測性能。為了減緩模型輕量化后造成的檢測精度下降,本文在主干網絡的特征輸出層嵌入CBAM注意力機制[17],其結構如圖5所示。CBAM機制能夠使網絡模型在通道和空間兩個方向上重點關注檢測目標信息,從而提高模型的檢測能力。
CBAM機制包括通道注意力機制和空間注意力機制,圖6和圖7分別為通道注意力機制和空間注意力機制結構。
對于輸入的特征圖[F∈RH×W×C],CBAM機制進行以下兩個部分的操作。
首先在通道注意力機制模塊中將全局平均池化和全局最大池化處理后的特征圖送入多層感知器(MLP);然后將MLP輸出的特征圖進行相加并經過[Sigmoid]函數,這樣得到輸入特征層的每一個通道的權值(0~1之間);之后將獲得的權值乘以原輸入特征層,這樣就得到了通道注意力特征圖[McF],表達式如下:
[McF=σMLPAvgPoolF+MLPMaxPoolF=σW1W0Fcavg+W1W0Fcmax] (2)
式中:[σ]為[Sigmoid]函數;[W0]和[W1]表示多層感知器的參數。
然后,將通道注意力特征圖[McF]與特征圖[F∈RH×W×C]進行直積處理得到[F]。在空間注意力機制模塊,將輸入特征[F]依次進行全局最大池化處理和平均池化處理,生成兩個大小為[H×W×1]的特征圖,在通道方向上對其進行拼接后,再進行[7×7]卷積操作,降維得到一個通道。然后利用非線性函數[Sigmoid]進行激活,得到輸入特征層上每一個特征點的權值(0~1之間)。之后將獲得的權值乘以原輸入特征層,就得到了空間注意力特征圖[MsF],表達式如下:
[MsF=σf7×7AvgPoolF;MaxPoolF=σf7×7F′avg;F′max] (3)
將[F]與空間注意力特征圖[MsF]進行直積處理就得到了最終輸出特征圖[F]。
2.3 "加權特征信息融合
YOLOv5s頸部網絡結構采用了FPN和PAFPN網絡,如圖8a)和8b)所示,二者將骨干網絡輸出的特征信息進行多尺度融合,但是該結構會破壞不同尺度信息的一致性,從而影響對農機設備和行人的檢測精度。采用BiFPN[18]網絡能夠有效實現多尺度特征信息融合,結構如圖8c)所示,該結構采用了跨尺度連接方式,將PAFPN結構中對于特征融合作用較小的節點剔除,并且可以在相同尺度的輸入和輸出節點直接進行連接。
此外,該結構能夠實現加權特征融合,對不同尺度特征圖的貢獻度進行調節。BiFPN加權特征融合計算公式如下:
[O=iWie+jWjIi] (4)
式中:[e]表示學習率,取0.000 1;[Wi]和[Wj]表示特征權重;[Ii]表示輸入特征圖。
3 "實驗與分析
3.1 "數據集采集
通過視頻截取、手機拍攝和網絡爬蟲等多種方法獲取圖像共計8 623張,包括農機和田間行人兩個類別,利用標注工具對其進行目標標注后,按照8∶1∶1的比例進行劃分,最終獲得6 898張訓練集圖像、863張測試集圖像和862張驗證集圖像。
3.2 "實驗環境與參數設置
本文實驗是在Windows 11操作系統上完成,CPU型號為12th Gen Intel i7?12700H,內存為32 GB,GPU為NVIDIA GTX 3070Ti顯卡,顯卡內存為8 GB,編譯語言采用Python 3.10,CUDA版本為12.0,深度學習框架采用Pytorch 1.13.1,編輯器采用Vscode。模型訓練參數設置如表1所示。
3.3 "模型評價指標
本文采用精確率(P)、召回率(R)、F1值以及平均識別準確率(AP)作為模型的檢測精度評估指標。以權重文件(Weight)作為模型大小的評價指標,以浮點數計算量(FLOPs)作為模型復雜度的評價指標,以每秒檢測幀數作為模型檢測速度的評估指標。各指標的計算公式如下:
[P=TPTP+FP] (5)
[R=TPTP+FN] (6)
[AP=TP+TNTP+FP+TN+FN] (7)
[F1=2PR(P+R)] (8)
式中:TP表示樣本被分為正樣本且分類正確;TN表示樣本被分為負樣本且分類正確;FP表示樣本被分為正樣本但分類錯誤;FN表示樣本被分為負樣本但分類錯誤。
3.4 "模型訓練分析
改進后的網絡模型在訓練過程中的各類損失函數曲線以及平均識別精度曲線如圖9所示。
根據圖9a)可以看出,整個訓練過程,模型的各個損失函數曲線呈下降趨勢。其中,邊界框損失函數值下降尤為明顯,而置信度損失函數曲線和分類損失函數曲線在100輪之后較為平緩。
由圖9b)可知,在驗證過程的前75輪左右,模型的三種損失函數曲線處于下降狀態,在之后的125輪中,損失函數值變化幅度很小,表明模型已經到達擬合狀態。
由圖9c)可以看出,在訓練過程中的前75輪,模型的AP值快速增長,這是因為模型在此之前處于高速擬合過程;在此之后的125輪中,由于學習率數值變化極小,AP曲線已經收斂,但是仍然存在輕微振蕩。最終獲得模型的平均識別精度為93.2%,PR曲線如圖9d)所示。
3.5 "消融實驗
為了驗證各個模塊對模型性能的影響,本文設計了5組對比實驗,驗證情況如表2所示。
根據表2可以看出,YOLOv5網絡中引入了C3Ghost模塊和Ghost卷積之后,模型的參數量和計算復雜度分別減少了48.34%和48.1%,模型對于單張圖像的推理速度提升至12 ms,平均識別精度下降了1.5%,生成模型大小為7.4 MB,是原始模型大小的54%。融入CBAM注意力機制后,模型的精度提升至94.2%,表明模型能夠進一步關注于行人及農機目標區域。此外,引入BiFPN模塊后的模型平均識別精度提升了0.7%,表明該結構能夠保證不同目標特征的一致性。改進后的網絡模型在識別精度僅僅下降0.8%的情況下,參數量和計算復雜度卻下降了42.45%和46.2%。檢測單幅圖像的時間為12.9 ms,能夠滿足對田間行人和其他農機障礙物的實時檢測。
3.6 "不同模型對比實驗
為了驗證模型的有效性,本文在同一數據集下對深度學習領域中常見的主流檢測模型進行訓練,并記錄實驗結果,然后同本文模型進行對比,對比結果如表3所示。
根據表3可知:本文所提出的目標檢測模型識別精度達到93.2%,同Retinanet[19]、Faster R?CNN[20]、SSD[21]、YOLOv3[22]、YOLOv4[23]以及YOLOX[24]相比,分別提升了14.1%、13.3%、4%、4.3%、2.4%和2%;同YOLOv5s相比,平均識別精度僅僅下降了0.8%,能夠滿足檢測要求。同時,經過改進后的模型的參數量大小為4.04×106,浮點運算次數為8.5 GB,相對于以上對比的檢測模型均有了大幅度下降;生成的權重文件大小僅為8.1 MB,更加易于實現向移動端部署。此外,改進后的模型在單幅圖像上測試的檢測速度為77.52 f/s,高于其他模型,能夠滿足對行人及其他協作農機設備的實時性檢測。圖10是改進模型檢測效果。
由圖10可知,改進后的模型能夠準確識別田間移動障礙物。
4 "結 "語
為了實現無人農機在田間作業過程中對移動型障礙物的實時檢測,本文提出一種基于YOLOv5s的輕量化目標檢測模型。在YOLOv5s的架構基礎上,通過采用Ghost卷積和C3Ghost模塊來減少模型參數及計算量,同時融入CBAM機制和BiFPN結構來彌補輕量化所造成的精度損失。利用自制數據集對模型進行訓練和驗證,實驗結果表示,經過改進后的模型的參數量約下降了42.45%,計算復雜度由原來的15.8 GB下降至8.5 GB,識別精度僅僅下降了0.8%,達到93.2%,單幅圖像檢測速度為77.52 f/s,更易于向移動端設備移植。
注:本文通訊作者為艾爾肯·亥木都拉。
參考文獻
[1] 南農.國內外無人化農業發展現狀[J].南方農機,2020,51(21):6.
[2] 袁文濤,劉卉,胡書鵬.面向自動導航拖拉機的農田障礙物識別研究[J].農機化研究,2018,40(10):247?251.
[3] 茍琴,耿楠,張志毅.基于視差圖的未知環境下農田障礙物檢測方法[J].計算機工程與設計,2013,34(2):707?710.
[4] 孫柯,吳開華,王亞濤,等.基于毫米波雷達的植保無人機避障系統研究[J].傳感器與微系統,2020,39(6):73?76.
[5] 楊洋,溫興,馬強龍,等.基于貝塞爾曲線的動態識別區農機避障路徑實時規劃[J].農業工程學報,2022,38(6):34?43.
[6] 郭成洋,劉美辰,高澤寧,等.基于改進人工勢場法的農機避障方法研究[J].中國農機化學報,2020,41(3):152?157.
[7] 張陽婷,黃德啟,王東偉,等.基于深度學習的目標檢測算法研究與應用綜述[J].計算機工程與應用,2023,59(18):1?13.
[8] 劉艷平.柑橘采摘機器人障礙物識別與定位方法研究[D].重慶:重慶理工大學,2019.
[9] 薛金林,李雨晴,曹梓建.基于深度學習的模糊農田圖像中障礙物檢測技術[J].農業機械學報,2022,53(3):234?242.
[10] 陳斌,張漫,徐弘禎,等.基于改進YOLO v3?tiny的全景圖像農田障礙物檢測[J].農業機械學報,2021,52(z1):58?65.
[11] 蔡舒平,孫仲鳴,劉慧,等.基于改進型YOLOv4的果園障礙物實時檢測方法[J].農業工程學報,2021,37(2):36?43.
[12] 王新彥,易政洋.基于改進YOLOv5的割草機器人工作環境障礙物檢測方法研究[J].中國農機化學報,2023,44(3):171?176.
[13] WANG C Y, LIAO H Y M, WU Y H, et al. CSPNet: A new backbone that can enhance learning capability of CNN [C]// Proceeding of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW). Seattle: IEEE, 2020: 1571?1580.
[14] LIN T Y, DOLLáR P, GIRSHICK R, et al. Feature pyramid networks for object detection [C]// Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 936?944.
[15] LIU S, QI L, QIN H F, et al. Path aggregation network for instance segmentation [C]// Proceedings of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 8759?8768.
[16] HAN K, WANG Y H, TIAN Q, et al. GhostNet: More features from cheap operations [C]// Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2020: 1577?1586.
[17] WOO S Y, PARK J C, LEE T Y, et al. CBAM: Convolutional block attention module [C]// Proceedings of the 15th European Conference on Computer Vision. Munich: Springer, 2018: 3?19.
[18] TAN M, PANG R, LE Q V. EfficientDet: scalable and efficient object detection [C]// 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle, WA, USA: IEEE. 2020: 10778?10787.
[19] LIN T Y, GOYAL P, GIRSHICK R, et al. Focal loss for dense object detection [J]. IEEE transactions on pattern analysis amp; machine intelligence, 2017(99): 2999?3007.
[20] REN S, HE K, GIRSHICK R, et al. Faster R?CNN: towards real-time object detection with region proposal networks [J]. IEEE transactions on pattern analysis and machine intelligence, 2017, 39(6): 2577031.
[21] LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multi box detector [EB/OL]. [2023?01?14]. https://doc.taixueshu.com/patent/arXiv151202325.html.
[22] REDMON J, FARHADI A. YOLOv3: An incremental improvement [EB/OL]. [2023?04?12]. https://arxiv.org/abs/1804.02767.
[23] BOCHKOVSKIY A, WANG C Y, LIAO H Y M. YOLO v4: optimal speed and accuracy of object detection [EB/OL]. [2022?12?07]. https://arxiv.org/abs/2004.10934.
[24] GE Z, LIU S, WANG F, et al. YOLO X: Exceeding YOLO series in 2021 [EB/OL]. [2023?04?14]. https://arxiv.org/abs/2107.08430.