中圖分類號S126 文獻標識碼A文章編號 0517-6611(2025)12-0193-03
doi:10.3969/j.issn.0517-6611.2025.12.042
開放科學(資源服務)標識碼(OSID):
MaturityDetection of Tomato Based on Improved YOLOv7
TANRong-yig,iang,LJun-etal(ShlfSartAultureEgiingeiVocaalClgeoflureejing 102442)
AbstractTouratelyentifyeatuityoftoatoargtinfcilitviroents,provetectioefecydaltydchve inteligentharvestingAancdLOodelisroposdfotetigtaturitoftgettoatofruis.sproachce model'sfocusonteagetregiosfputdatabyitegatintheCBAatetiomehasm;eploingtheSof-algoritetiely preventsissdetetiosuetigsitepngetsgsuppesdbyaingetiofoacngte originallossfunctioEOUandeplacing iithIOU,eexperientalsultssowtatteimprovedYOLOodelhasdetectioecision of 93.1% ,a recall rate of 90.8% ,and a mean average precision of 94.8% . Compared with the original YOLOv7 and YOLOv5 models,it hasimprovedindetetionprecision,ecallate,andmanaverageprecision,providingtechicalreferecefortmatoharvestingoplex environments.
Key words Tomato; YOLOv7; Maturity detection; Target recognition
番茄收獲過程中,人工采摘成本占據(jù) 33%~50% 。不僅效率低下,而且勞動強度極大[]。番茄采摘機器人是實現(xiàn)智能化作業(yè)、提高工作效率、減少人工成本的重要手段。采摘機器人設計難點是番茄的識別和定位,其準確性關系采摘機器人的工作效率2。自然條件下在設施溫室內,番茄果實生長環(huán)境較為多變,果實之間存在葉片枝干遮擋、重疊、黏連等情況,這些因素給智能化采摘作業(yè)帶來了一定的困難。隨著深度學習、機器視覺等技術的快速發(fā)展,提升設施溫室內自然環(huán)境下番茄果實目標檢測的準確性和效率對于提高采摘效率,實現(xiàn)機器智能采摘具有重要意義。
近年來,國內外學者圍繞深度學習技術對番茄果實目標識別展開了深人研究。劉建航等[3提出基于改進YOLOv4和ICNet的番茄串檢測模型,改進后的模型對番茄及番茄串的平均檢測精度為 99.31% ,參數(shù)量減少了 18% ,平均識別速度為 32f/s ,對番茄串的準確采摘率為 84.8% ,完成1次采摘作業(yè)耗時約6s,為復雜溫室大棚環(huán)境下的農作物采摘提供了技術支撐。楊堅等[4]提出一種基于改進YOLOv4-tiny 的番茄成熟度識別模型,能夠有效解決遮擋和小番茄識別準確率低的問題。何斌等[5]提出一種基于改進YOLOv5的夜間番茄果實的識別方法,結果表明夜間環(huán)境下番茄綠色果實識別精度、紅色果實識別精度和綜合平均識別精度分別為96.2% .97.6% 和 96.8% ,驗證了模型對夜間環(huán)境下番茄果實識別的可靠性與準確性。苗榮慧等提出一種基于改進
YOLOv7的輕量化櫻桃番茄成熟度檢測方法,模型在測試集下的精確率、召回率和平均精度均值(mAP)分別為 98.6% 、98.1% 和 98.2% ,為櫻桃番茄果實的自動化采摘提供了有效探索?;诖耍撗芯刻岢鲆环N改進YOLOv7模型,以期實現(xiàn)設施環(huán)境下準確識別番茄目標果實成熟度,提高檢測效率和質量,推進番茄果實智能采收。
1材料與方法
1.1圖像采集試驗場地選取北京翠湖農業(yè)科技有限公司智慧農業(yè)創(chuàng)新工場,該基地主要種植品種有翠湖1號、翠湖2號、Saopolo和德澳特Juanita等,番茄種植主要采用無土栽培方式,選用椰糠作為無土栽培的種植基質,相鄰兩種植槽寬150cm ,壟高 80cm ,第1株番茄高度約 150cm ,種植環(huán)境如圖1所示。
以產量最高、種植情況最好的Saopolo為研究對象,在2023年4一6月使用榮耀9X采集設施條件下的不同植株的番茄圖像。采集時間包括上午、中午和下午,以獲取不同光照條件下的圖像。共獲取3000像素 ?×5000 像素的番茄有效圖像1611幅。采集圖像類型包括單目標果實、多目標果實、順光環(huán)境、逆光環(huán)境、有枝葉遮擋圖像和無遮擋圖像,如圖2所示。
1.2數(shù)據(jù)集構建為進一步增加樣本多樣性,改善模型訓練效果,提高模型魯棒性和泛化能力,借助數(shù)據(jù)增強的方式進行樣本擴充,內容包隨機角度旋轉、水平翻轉、垂直翻轉、高斯模糊、隨機亮度調整、隨機平移和隨機裁剪等數(shù)據(jù)增強方式隨機組合,對數(shù)據(jù)集進行擴充,通過數(shù)據(jù)增強共獲得4743幅樣本圖像。
數(shù)據(jù)集制作主要包括圖像標注和數(shù)據(jù)集分類兩個過程。采用LabelImg工具對不同成熟度番茄果實進行標注。青色番茄標注unripe,紅色果實標注為ripe,正在進行轉色的果實,雖然未達到成熟期,但是考慮到采摘之后的運輸儲存環(huán)節(jié),已經可以滿足實際采摘需求,因此也將其標注為成熟番茄,同時對果實遮擋嚴重,正常視覺效果下難以辨別其成熟度情況的果實不予標注,標注完成之后生成一系列txt標簽文件。按照比例 7:1:2 將數(shù)據(jù)集劃分為訓練集(3320幅)、驗證集(474幅)和測試集(949幅)。
2模型構建
2.1改進YOLOv7算法YOLOv7網絡架構圖主要由輸入層Input、用于特征取的Backbone以及特征融合和分類定位預測Head部分組成[]。YOLOv7是目前比較先進的算法,與前幾代YOLO算法相比,該算法在主干特征提取網絡中加入了可擴展的高效聚合層網絡(E-ELAN),通過影響深度神經網絡的梯度路徑從而加快模型的收斂,提高檢測精度[8]。針對溫室內串番茄的生長環(huán)境復雜的特點,該研究對YOLOv7模型進行了部分改進,以提高模型特征提取能力,如圖3所示。主要包括引入CBAM注意力機制,改進模型中原有的NMS(非極大值抑制)策略,替換為更為敏感的非極大值抑制Soft-NMS以及進一步優(yōu)化損失函數(shù)以提高整體檢測性能。
2.2添加注意力機制溫室復雜環(huán)境中,由于受到光照,枝葉遮擋以及非結構化背景等因素的影響,導致圖片中出現(xiàn)諸多干擾信息。注意力機制是對圖像輸入關鍵信息的動態(tài)聚焦過程,這個過程是通過特征自適應分配權重實現(xiàn)的,聚焦圖像的重要特征,抑制不必要的區(qū)域響應[9]。CBAM(convo-lutionalblockattentionmodule)是一種專門應用于卷積神經網絡的注意力機制,作為輕量級的卷積注意力模塊,CBAM能夠利用通道和空間之間的關聯(lián)性,從而顯著提高模型的性能,因此將CBAM注意力機制引人YOLOv7以提高模型性能,CBAM的結構示意圖見圖4。
2.3Soft-NMS改進溫室環(huán)境下對串番茄果實識別在某種程度上屬于高密集目標檢測,尤其是大規(guī)模種植的復雜環(huán)境下串番茄果實相互重疊,給目標檢測帶來了較大的困難。傳統(tǒng)的非極大值抑制算法(NMS)主要用來選篩選預測框,而重疊部分會使得篩選存在錯誤抑制造成漏檢等問題,該研究采用柔性非極大值抑制算法(Soft-NMS)替代傳統(tǒng)的NMS,Soft-NMS中對于IOU交并比大于閥值的檢測框并沒有和基本NMS那樣將其得分直接置為0,而是設置衰減函數(shù)降低邊框得分。通過這種方法,可以避免出現(xiàn)某些高度重疊的果實檢測框被徹底剔除的情況,提升模型對于嚴重疊遮擋的目標果實的檢測能力。
2.4優(yōu)化損失函數(shù)YOLOv7算法中,預測框的回歸損失采用CIOU函數(shù),包括定位損失、置信度損失和分類損失,但該損失函數(shù)可能存在方向不匹配問題,即它沒有直接考慮目標框的方向信息。這種不匹配可能導致收斂速度較慢且影響收斂效率,預測框可能在訓練的過程中“四處游蕩\"并最終產生更差的模型[10]。因此,該研究采用SIOU損失函數(shù)替換CIOU損失函數(shù)。SIOU的損失公式如下:
式中,IOU為損失函數(shù), ∧ 為考慮角度, Δ 為距離損失, 為形狀損失, B 為真是邊界框的面積, BGT 為預測邊界框的面積。
3結果與分析
3.1試驗環(huán)境該研究中所采用的操作系統(tǒng)為Windows10,采用CPU型號為 InteI(R)Core(TM)i9-14900HX@2.50GHz GPU型號為NVIDIATITANRTX4080,運行內存為32GB,1TB機械硬盤,編程語言為Python3.9,使用的深度學習框架為PyTorch1.13.0版本。訓練參數(shù)設置為初始學習率設置為0.01,批處理量設為8,選擇迭代次數(shù)Epoch為500次。
3.2評價指標對串番茄成熟度檢測過程中主要考慮模型的檢測精度和檢測速度2個因素,該研究選取以下指標對模型進行評估:精確度(precision,P)召回率(recall,R)、平均精確度(averageprecision,AP)、平均精度均值(meanaverageprecision,mAP)以及每秒幀數(shù)(frames per second,F(xiàn)PS)。
3.3模型對比與驗證
3.3.1不同目標檢測模型對比。為了驗證改進模型的有效性能,該試驗設計了不同模型之間性能測試對比,將改進YOLOv7模型和YOLOv5模型以及原始YOLOv7模型采用相同的數(shù)據(jù)集和參數(shù)設置進行訓練和測試,不同模型的精確度、召回率、平均精度均值見表1。從表1可知,改進后的模型檢測精度為 93.1% ,召回率為 90.8% ,平均精度均值為94.8% ,比原始YOLOv7模型和YOLOv5模型的效果都有明顯提升。與原始YOLOv7模型相比,改進后模型的精度、召回率和平均精度均值分別提升了2.4百分點、1.2百分點和2.5百分點,比YOLOv5模型分別提升了2.0百分點、2.1百分點和3.0百分點。
3.3.2檢測效果驗證。為進一步檢驗改進后YOLOv7模型在實際復雜溫室環(huán)境下的檢測效果,使用改進后的YOLOv7模型對驗證集中的數(shù)據(jù)集進行了檢測驗證,結果如圖5所示。從圖5可以看出,在逆光條件下,改進后YOLOv7模型依然能較好地識別出目標果實。
4結論
針對室內串番茄種植環(huán)境復雜、目標檢測精度較差等問題,該研究提出一種改進YOLOv7模型以提升檢測精度及效率。通過引入注意力機制CBAM,調整模型對輸人數(shù)據(jù)的目標區(qū)域關注度;借助Soft-NMS算法,有效避免高密度重疊目標被一次性抑制導致發(fā)生漏檢現(xiàn)象,從而提高識別效果;優(yōu)化原始損失函數(shù),將EIOU替換為SIOU,從而提高模型對不同生長狀態(tài)的串番茄的檢測精度,并與其他典型算法進行對比。結果表明,改進的YOLOv7模型檢測精度為 93.1% ,召回率為 90.8% ,平均精度均值為 94.8% ,與原始YOLOv7模型和YOLOv5模型相比,檢測精度、召回率和平均精度均值等方面均有提高。因此,該基于改進YOLOv7的番茄成熟度檢測模型可為實現(xiàn)復雜環(huán)境下番茄采摘提供技術參考。
參考文獻
[1]李慧琴,宋趙銘,劉存祥,等.基于YOLOv8n的番茄果實檢測模型改進[J/OL].河南農業(yè)大學學報,2024-05-13[2024-07-31].https://doi.org/10.16445/j.cnki.1000-2340.20240511.002.
[2]劉芳,劉玉坤,林森,等.基于改進型YOLO的復雜環(huán)境下番茄果實快速識別方法[J].農業(yè)機械學報,2020,51(6):229-237.
[3]劉建航,何鑒恒,陳海華,等.基于改進YOLO Δv4 和ICNet的番茄串檢測模型[J].農業(yè)機械學報,2023,54(10):216-224,254.
[4]楊堅,錢振,張燕軍,等.采用改進YOLOv4-tiny的復雜環(huán)境下番茄實時識別[J].農業(yè)工程學報,2022,38(9):215-221.
[5]何斌,張亦博,龔健林,等.基于改進YOLOv5的夜間溫室番茄果實快速識別[J].農業(yè)機械學報,2022,53(5):201-208.
[6]苗榮慧,李志偉,武錦龍.基于改進YOLOv7的輕量化櫻桃番茄成熟度檢測方法[J].農業(yè)機械學報,2023,54(10):225-233.
[7]李紅丹,帥璐宇,徐雪環(huán),等.基于改進YOLOv7的草莓成熟度檢測方法[J].四川農業(yè)大學學報,2024,42(3):561-571.
[8]劉詩怡,胡濱,趙春.基于改進YOLOv7的黃瓜葉片病蟲害檢測與識別[J].農業(yè)工程學報,2023,39(15):163-171.
[9]陳青,殷程凱,郭自良,等.基于改進YOLOv7的蘋果生長狀態(tài)及姿態(tài)識別[J].農業(yè)工程學報,2024,40(6):258-266.
[10]龍燕,楊智優(yōu),何夢菲.基于改進YOLOv7的疏果期蘋果目標檢測方法[J].農業(yè)工程學報,2023,39(14):191-199.