杜寶俠,唐 友*,辛 鵬,楊 牧
(1.吉林化工學院,吉林 吉林 132022;2.吉林農業(yè)科技學院,吉林 吉林 132101;3.一汽東機工減振器有限公司,吉林 長春 130001)
我國是農業(yè)大國,水果生產和消費數量在世界上位居前列,在眾多水果中,蘋果的種植面積和產量均超過世界總量的50%,均居世界首位[1]。蘋果生產是我國農業(yè)經濟發(fā)展的重要支柱,但我國的大部分蘋果生產還處于傳統(tǒng)的農業(yè)模式階段,在蘋果生產管理過程中需要耗費大量的人力物力,這也導致了生產效率的低下和農民收入水平的不穩(wěn)定。因此,推動蘋果生產過程的自動化、智能化發(fā)展具有重要意義。
近年來,現代農業(yè)結合計算機視覺技術的各種智能設備在農業(yè)生產中的應用日益普及,并且成為農業(yè)領域的研究熱點。這些智能設備的應用極大地提高了農業(yè)生產效率和精度,減少了對勞動力和資源的依賴,并降低了農業(yè)生產成本,促進了農業(yè)的可持續(xù)發(fā)展。具體到蘋果的生產方面,計算機視覺技術可以通過拍攝的圖片或視頻進行產量預測、病蟲害識別,也可以通過圖像信息對蘋果果實進行優(yōu)劣分級等,這些技術極大地推動了蘋果生產管理的智能化發(fā)展。其中,利用目標檢測技術對蘋果果實進行識別和定位,從而幫助智能機器人實現自動采摘是一個重要的研究方向。
在對蘋果的檢測方面,可以分為傳統(tǒng)算法和基于深度學習的算法兩類。傳統(tǒng)算法大多依賴于目標的顏色、形狀等外部特征來區(qū)分目標和背景[2],存在特征提取困難、模型泛化能力差、在環(huán)境變化時性能下降嚴重等問題。近年來,基于卷積神經網絡的深度學習技術在目標檢測領域取得了顯著的成功,相較于傳統(tǒng)的機器學習方法,基于深度學習的目標檢測技術場景適應性強,精度更高。牟其松[3]簡化了YOLOv3的主干網絡,并通過改進損失函數,提高了蘋果檢測的精度;張中華等[4]提出了一種基于優(yōu)化FCOS網絡的綠色蘋果檢測模型,通過改進特征融合FPN提高了對綠色蘋果的檢測精度;Meili等[5]針對復雜環(huán)境下的小蘋果提出了一種平衡特征金字塔網絡BFP Net。上述研究通過對先進目標檢測算法進行改進,增強其檢測蘋果的能力,但仍存在模型較復雜、檢測速度慢、不容易部署等問題。
在實際的果園場景中,要實現蘋果的實時檢測,不僅需要較好的檢測精度,對檢測的速度也有較高的要求。因此,本文以單階段目標檢測算法中最先進的YOLOv8模型為基礎并加以改進,來實現蘋果果實的自動檢測。
YOLOv8是YOLO系列最新的模型,具有非常優(yōu)秀的檢測精度和速度。根據網絡的深度與特征圖的寬度大小,YOLOv8算法分為:YOLOv8-n、YOLOv8-s、YOLOv8-m、YOLOv8-l、和YOLOv8-x 5個版本。按照網絡結構圖,YOLOv8可分為:Input、Backbone、Neck和Head 4部分。其中,Input輸入端負責將輸入圖片縮放到訓練需要的尺寸,并包含縮放、改變圖片色調和Mosaic數據增強等數據增強操作;Backbone主干網絡用來進行目標特征的提取,由卷積模塊 Conv、C2f結構和YOLOv5中使用的SPPF模塊構成;Neck用來將不同維度的特征進行加強融合,其結構遵循特征金字塔(Feature Pyramid Network,FPN)和路徑聚合結構(Path Aggregation Network,PAN),并刪除了YOLOv5上采樣階段的卷積操作;Head部分將加強后的特征進行計算,最終得到不同目標的置信度和位置??紤]到模型檢測的速度和精度,本次實驗以檢測速度最快的YOLOv8-n為基線模型,并在此基礎上加以改進。
數據增強是在不改變圖像重要信息的前提下,基于有限的數據生成更多同樣有效的數據的方法。可以極大地豐富訓練數據的多樣性,從而使得訓練后的模型具有更強的泛化能力。改變圖片的顏色和形狀是最基礎和常見的數據增強方式,在本研究中,使用隨機改變圖片的色調、飽和度、明亮度,同時對圖片進行隨機縮放和平移這些傳統(tǒng)的數據增強方式。除了這些基礎的數據增強方式外,有些研究還提出了更高效的數據增強方式,如Mosaic等[6]。Mosaic數據增強方法的主要思想是將4張圖片隨機裁剪縮放,再拼接到一張圖上作為訓練數據。在本次實驗中使用傳統(tǒng)數據增強和Mosaic方法相結合的數據增強方式。
注意力機制可以賦予空間中不同通道或區(qū)域以不同的權重,從而幫助模型專注于更重要信息的提取。全局注意力機制(Global Attention Mechanism,GAM)[7],可以通過減少信息縮減和放大全局交互表示來提高深度神經網絡的性能。該機制使用了通道-空間注意機制,在通道層面,GAM首先將輸入特征圖進行維度轉換,接著輸入到MLP恢復原來的維度,最后通過Sigmoid輸出。在空間層面,GAM通過一系列的卷積處理再送入Sigmoid輸出,最終實現兩個層面注意力作用的疊加。GAM的整體模塊如圖1所示。
在YOLOv8模型的改進方面,將GAM注意力添加在Neck和Head的連接部分,引入的GAM注意力模塊可以對通道和空間維度中的特征圖信息進行自適應學習,并對特征進行重新擬合和分配,幫助模型更聚焦于蘋果目標,提高了特征圖中小目標的權重占比,從而加強了模型對其特征的訓練。最終改進的YOLOv8網絡模型如圖2所示。
本實驗使用的數據集來源為https://aistudio.baidu.com/aistudio/datasetdetail/93304,圖像數量為287張。其中,訓練集、驗證集和測試集的圖像數量分別為273張、14張和10張。如圖3所示為數據集示例。
圖3 數據集示例
本文實驗平臺使用Ubuntu 20.02操作系統(tǒng),CPU處理器為2個 Intel(R) Xeon(R) Silver 4110,GPU為GeForce RTX 3090,顯存為24 GB。模型訓練框架為Pytorch 1.12.0,具體訓練參數設置如表1所示。
表1 訓練參數
為驗證改進方法的有效性,使用P(Precision:精度)、R(Recall:召回率)、mAP0.5(MeanAveragePrecision:各類別在IOU=0.5下的AP平均值)和mAP0.5∶0.95(MeanAveragePrecision:各類別在不同IOU下的AP平均值)作為模型評價指標。另外,TP(TruePositive)表示將正類預測為正類數,FN(FalseNegative)表示將正類預測為負類數,FP(FalsePositive)表示將負類預測為正類數,TN(TrueNegative)表示將負類預測為負類數。對應的評價指標計算方法如下。
精度是衡量模型識別出的真實陽性樣本數占所有被模型識別為陽性樣本數的比例。精度越高,說明模型識別出的陽性樣本更準確,具有更好的準確性。
計算公式如下:
(1)
召回率是衡量模型識別出的真實陽性樣本數占所有真實樣本數的比例。召回率越高,說明模型能夠更準確地識別出真實陽性樣本,具有更好的鑒別能力。計算公式如下:
(2)
AP的定義為P-R曲線下面的面積,AP值越高,模型的性能越好,mAP為各類別AP的平均值,可以通過下列公式得到:
(3)
(4)
為驗證本文所用改進方法的有效性,通過使用相同的訓練參數設置在數據集上進行實驗,改進后的YOLOv8模型檢測精度和召回率明顯提高,具體的數值結果如表2所示,可以看出,通過添加GAM注意力機制,模型的性能得到了有效提高。和原模型相比,改進后的YOLOv8模型mAP0.5提高了1.7%,mAP0.5∶0.95提高了2.2%。結果表明,改進后的YOLOv8模型更能滿足對蘋果果實的檢測要求。
表2 評價指標對比結果
為解決蘋果果實的智能檢測問題,提高智能設備對蘋果的檢測能力,本文使用先進的YOLOv8目標檢測模型并加以改進,通過使用多種數據增強方法,增加了模型的泛化能力。同時引入GAM注意力機制,提升模型聚焦蘋果的能力,并提高模型的檢測性能。最終的實驗結果可知,改進后的YOLOv8算法具有較高的檢測精度,在640×640大小的圖像輸入下,mAP0.5達到了0.958,比原模型提高了1.7%,更加適合部署到設備。未來的工作目標是要豐富蘋果檢測場景,提升模型在復雜環(huán)境下的檢測效果。