沈 超,夏秀波,楊 瑋,張煥春,李民贊
(1.山東省煙臺(tái)市農(nóng)業(yè)科學(xué)研究院,山東煙臺(tái) 265500;2.中國(guó)農(nóng)業(yè)大學(xué)智慧農(nóng)業(yè)系統(tǒng)集成研究教育部重點(diǎn)實(shí)驗(yàn)室,北京 100083;3.煙臺(tái)市智慧農(nóng)業(yè)研究中心,山東煙臺(tái) 265500)
櫻桃番茄,又名圣女果,既是蔬菜,又是水果,其果實(shí)酸甜可口、柔軟多汁、營(yíng)養(yǎng)豐富,富含VA、VC和礦質(zhì)元素,具有一定的保健作用,深受消費(fèi)者喜愛,是聯(lián)合國(guó)糧農(nóng)組織優(yōu)先推廣的四大果蔬之一[1]。隨著鄉(xiāng)村振興、科技扶貧以及農(nóng)業(yè)農(nóng)村現(xiàn)代化建設(shè)的推進(jìn),設(shè)施果蔬成為重要方向,櫻桃番茄是設(shè)施栽培中的主要品種之一[2]。但是櫻桃番茄人工采摘效率低、成本高,成為制約產(chǎn)業(yè)發(fā)展的重要因素[3]。隨著信息技術(shù)的飛速發(fā)展,使用人工智能設(shè)備代替或部分代替人工成為可能[4]。智能設(shè)備工作的第一步是物體的檢測(cè)與識(shí)別。近年來,基于數(shù)字圖像的識(shí)別檢測(cè)技術(shù)成為專家、學(xué)者研究的熱點(diǎn)[5-9]。深度學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)模型與傳統(tǒng)的機(jī)器學(xué)習(xí)相比,能利用卷積操作自主學(xué)習(xí)圖像特征,且特征學(xué)習(xí)較為全面[10],可抽取到的特征比傳統(tǒng)方法具有更強(qiáng)的表征能力和魯棒性,這一優(yōu)勢(shì)使深度學(xué)習(xí)在計(jì)算機(jī)視覺領(lǐng)域的研究和應(yīng)用中表現(xiàn)出不可替代的地位[11]。本試驗(yàn)通過智能終端采集自然條件下櫻桃番茄果實(shí)的圖像信息,利用深度學(xué)習(xí)方法進(jìn)行算法模型訓(xùn)練,進(jìn)而實(shí)現(xiàn)對(duì)果實(shí)圖像目標(biāo)的準(zhǔn)確識(shí)別,以期為后續(xù)的智能采摘和產(chǎn)量預(yù)估提供技術(shù)支持。
2020 年11—12 月和2021 年1—3 月在山東省煙臺(tái)市農(nóng)業(yè)科學(xué)研究院玻璃溫室對(duì)秋延遲和越冬兩個(gè)茬口的櫻桃番茄進(jìn)行圖像采集。品種為金陽(yáng)蜜珠(由山東省煙臺(tái)市農(nóng)業(yè)科學(xué)研究院提供),果實(shí)為橘黃色。在溫室自然條件下,采用Redmi K30 Pro智能終端,從不同拍攝角度采集圖像,共采集圖像600 張,圖像的分辨率為3 472 px×4 624 px,圖像的格式為jpg 格式。
基于深度卷積神經(jīng)網(wǎng)絡(luò),采用開源圖像標(biāo)注工具Labelimg 對(duì)櫻桃番茄圖像進(jìn)行人工標(biāo)記[12](圖1)。針對(duì)目標(biāo)檢測(cè)模型構(gòu)建了相應(yīng)的數(shù)據(jù)集。其中,90%樣本用于訓(xùn)練、10%樣本用于測(cè)試。訓(xùn)練集共486 張圖片,驗(yàn)證集共54 張圖片,測(cè)試集共60 張圖片。
圖1 部分圖像人工標(biāo)記Figure 1 Part of images manually labeled
試驗(yàn)采用運(yùn)算速度與精度結(jié)合的YOLOv4 和YOLOv4-Tiny 算法[13]進(jìn)行模型訓(xùn)練,并對(duì)模型進(jìn)行定量分析和定性分析。其主干特征提取網(wǎng)絡(luò)由DarkNet53 改用為CSP DarkNet53,同時(shí)使用Mish激活函數(shù)[14]。具體主干提取網(wǎng)絡(luò)見圖2:在特征金字塔部分,YOLOv4 進(jìn)行了改進(jìn),使用了SPP 結(jié)構(gòu)和PANet 結(jié)構(gòu),除去CSP DarkNet53 和YOLO Head 的結(jié)構(gòu)外,都是特征金字塔的結(jié)構(gòu)。
圖2 優(yōu)化后主干特征提取網(wǎng)絡(luò)Figure 2 Optimized backbone feature extraction network
試驗(yàn)在極鏈AI 云平臺(tái)的高性能服務(wù)器中進(jìn)行訓(xùn)練和檢測(cè)識(shí)別。設(shè)備參數(shù)CPU 型號(hào)為Intel(R)Xeon(R)Gold 6129、內(nèi)存為125G、內(nèi)核為64 核、GPU 為GeForce RTX 2080 Ti、顯存為11G。軟件環(huán)境Ubuntu18.04 操作系統(tǒng)、Pyhton3.7 編程語(yǔ)言、TensorFlow 2.0 深度學(xué)習(xí)框架、CUDA 10.1。試驗(yàn)使用構(gòu)建的櫻桃番茄果實(shí)數(shù)據(jù)集,網(wǎng)絡(luò)結(jié)構(gòu)均為默認(rèn)設(shè)置,采用COCO 數(shù)據(jù)集的預(yù)訓(xùn)練模型,優(yōu)化器均使用Adam,使用固定步長(zhǎng)學(xué)習(xí)率衰減方法,并且使用凍結(jié)訓(xùn)練方法,設(shè)置總訓(xùn)練代數(shù)為100、凍結(jié)代數(shù)為50 進(jìn)行模型的訓(xùn)練。
對(duì)于櫻桃番茄果實(shí)圖像檢測(cè)的真實(shí)值和檢測(cè)結(jié)果使用混淆矩陣來判斷[15](表1)。目標(biāo)檢測(cè)任務(wù)通常采用精確率、召回率、平均精確率和綜合評(píng)價(jià)指標(biāo)F1 來定量評(píng)估算法的檢測(cè)性能。其中,TP 表示與預(yù)測(cè)框和真實(shí)框相匹配的數(shù)量、FP 表示預(yù)測(cè)背景為目標(biāo)的數(shù)、FN 表示屬于待識(shí)別目標(biāo)但未被模型識(shí)別的數(shù)量、TN 表示本身為背景且未被模型識(shí)別為目標(biāo)的數(shù)量。此外,還可以推出公式
表1 混淆矩陣Table 1 Confusion matrix
由圖3a 和圖3c 可知,YOLOv4、YOLOv4-Tiny算法的訓(xùn)練損失值在前5 個(gè)epoch 內(nèi)均出現(xiàn)了大幅度下降,之后下降速度放緩;在10 個(gè)epoch 后,YOLOv4 的訓(xùn)練損失值曲線十分平緩,而YOLOv4-Tiny訓(xùn)練的損失值仍有較明顯的下降趨勢(shì),在第30 個(gè)epoch 的時(shí)候開始緩慢下降,之后趨于平緩,損失值終值為0.652;YOLOv4-Tiny 在20 個(gè)epoch 后,訓(xùn)練損失值曲線十分平緩,在第50 個(gè)epoch 的時(shí)候開始緩慢下降,之后趨于平緩,損失值終值為6.723。由圖3b 和圖3d 可知,YOLOv4 的驗(yàn)證損失在前5 個(gè)epoch 出現(xiàn)大幅度下降,在第10 個(gè)epoch 左右出現(xiàn)回升,然后變?yōu)樾》炔▌?dòng),之后趨于平緩,損失值終值為0.818,最小值為0.592;YOLOv4-Tiny 的驗(yàn)證損失值在訓(xùn)練前期出現(xiàn)大幅度下降,在第4 個(gè)epoch 左右出現(xiàn)回升,每隔2 個(gè)epoch,驗(yàn)證損失值會(huì)出現(xiàn)輕微下降,終值為7.803。根據(jù)這兩個(gè)算法的驗(yàn)證損失值,可以看出YOLOv4 算法模型比YOLOv4-Tiny 更加穩(wěn)定。
圖3 訓(xùn)練集和驗(yàn)證集的損失值變化圖Figure 3 Changes in loss values of training and validation sets
YOLOv4 和YOLOv4-Tiny 算法模型具體定量結(jié)果見圖4~圖7。由圖4 可知,在YOLOv4 算法模型下深度學(xué)習(xí)后櫻桃番茄果實(shí)的預(yù)測(cè)精確率為100%,YOLOv4-Tiny 算法模型的預(yù)測(cè)精確率為96.84%;由圖5 可知,在YOLOv4 算法模型下深度學(xué)習(xí)后櫻桃番茄果實(shí)的召回率為91.12%,YOLOv4-Tiny 算法模型的召回率為90.53%;由圖6 可知,在YOLOv4 算法模型下深度學(xué)習(xí)后櫻桃番茄果實(shí)的平均精確率為96.32%,YOLOv4-Tiny 算法模型的平均精確率為94.18%;由圖7 可知,在YOLOv4 算法模型下深度學(xué)習(xí)后櫻桃番茄果實(shí)的綜合評(píng)價(jià)指標(biāo)F1 為0.95,YOLOv4-Tiny 算法模型的綜合評(píng)價(jià)指標(biāo)F1 為0.94。這表明在YOLOv4 和YOLOv4-Tiny 模型下深度學(xué)習(xí)對(duì)櫻桃番茄果實(shí)不同成熟度果實(shí)具有較高的識(shí)別率。而YOLOv4 算法模型的精確度、召回率、平均精確率和綜合評(píng)價(jià)指標(biāo)F1 值明顯高于YOLOv4-Tiny 模型,這說明YOLOv4 算法模型明顯優(yōu)于YOLOv4-Tiny 模型。
圖4 兩種算法模型的準(zhǔn)確率曲線Figure 4 Precision rate curves of two algorithm models
圖5 兩種算法模型的召回率曲線Figure 5 Recall rate curves of two algorithm models
圖6 兩種算法模型的精確率-召回率曲線Figure 6 Precision-Recall curve of two algorithm models
圖7 兩種算法模型的綜合評(píng)價(jià)指標(biāo)F1 值曲線Figure 7 F1 value curve of comprehensive evaluation index for two algorithm models
試驗(yàn)選取了溫室自然場(chǎng)景下不同成熟度的櫻桃番茄果實(shí)進(jìn)行定性分析,訓(xùn)練得到的YOLOv4 和YOLOv4-Tiny 模型識(shí)別效果見圖8。由圖8 可知,兩種算法模型對(duì)不同成熟度果實(shí)的檢測(cè)識(shí)別效果整體較好。對(duì)于采集的圖像中櫻桃番茄果實(shí)較大且個(gè)數(shù)較少的圖像,檢測(cè)結(jié)果良好;而對(duì)于圖像中櫻桃番茄果實(shí)小、個(gè)數(shù)較多且比較密集、有遮擋的、背景復(fù)雜的圖像,出現(xiàn)了錯(cuò)檢、漏檢,檢測(cè)結(jié)果稍差,但YOLOv4 算法模型明顯優(yōu)于YOLOv4-Tiny 模型。
圖8 不同成熟度果實(shí)識(shí)別效果Figure 8 Recognition effect of fruits with different maturity
深度學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)模型主要通過模擬人類的視覺功能來對(duì)獲取的圖像信息進(jìn)行處理,具有自主全面學(xué)習(xí)圖像特征的特點(diǎn)[16]。張靖祺[17]將Grab cut首次運(yùn)用到溫室番茄圖像的識(shí)別中,通過K-means與SVM 二者結(jié)合的方式對(duì)溫室番茄成熟度進(jìn)行檢測(cè);李國(guó)進(jìn)等[18]針對(duì)YOLOv3 算法做了一些改進(jìn),通過模型的訓(xùn)練,對(duì)芒果成功識(shí)別率更高,該訓(xùn)練得到的模型在測(cè)試集上的平均精確率可以達(dá)到94%以上,為芒果的自動(dòng)采摘提供了相應(yīng)的技術(shù)支持。朱旭等[19]通過構(gòu)建數(shù)據(jù)集,使用改進(jìn)的Faster R-CNN 進(jìn)行訓(xùn)練得到的模型對(duì)成熟、半成熟和未成熟藍(lán)莓的平均識(shí)別精確率達(dá)94%以上,可為藍(lán)莓自動(dòng)采摘以及估產(chǎn)等提供一定的技術(shù)支持;WAN 等[20]根據(jù)番茄的顏色特征,并結(jié)合BP 神經(jīng)網(wǎng)絡(luò)算法對(duì)羅曼番茄和梨形番茄這兩個(gè)品種的成熟度進(jìn)行檢測(cè),精確率可以達(dá)到99.31%,且標(biāo)準(zhǔn)差僅為1.2%;ZHAO 等[21]提出了一種基于多個(gè)特征圖和圖像融合技術(shù)的番茄識(shí)別算法,分別從顏色空間和亮度、同相、正交相位(YIQ)顏色空間中提取新的特征圖像,結(jié)合小波變換圖像融合特征,對(duì)成熟番茄進(jìn)行識(shí)別,通過對(duì)試驗(yàn)進(jìn)行測(cè)試,93%的成熟番茄可以被正確識(shí)別;AREFI等[22]設(shè)計(jì)了一種基于形態(tài)學(xué)特征和RGB、HIS、YIQ空間的采摘機(jī)器人識(shí)別和定位成熟番茄的算法,精確率可以達(dá)到96.36%,但是該機(jī)器人不能識(shí)別和定位有遮擋的番茄;LIU 等[23]為了減少番茄檢測(cè)中光照和遮擋的影響,提出了一種基于普通彩色圖像自動(dòng)檢測(cè)番茄的算法,該方法可以達(dá)到90.00%的精確度,94.41%的精度,F(xiàn)1-score 為92.15%,但是當(dāng)超過一半的區(qū)域被遮擋或者重疊時(shí),該方法是無法識(shí)別的。針對(duì)不同光照、重疊和遮擋條件下番茄果實(shí)識(shí)別的問題,許多研究人員嘗試使用各種傳感器,并應(yīng)用機(jī)器學(xué)習(xí)或深度學(xué)習(xí)技術(shù)來克服[24-27]。
本試驗(yàn)主要開展了櫻桃番茄果實(shí)圖像識(shí)別的圖像采集、標(biāo)注、數(shù)據(jù)集的構(gòu)建,YOLOv4 和YOLOv4-Tiny算法模型的訓(xùn)練,并將其用于自然條件下櫻桃番茄果實(shí)圖像的檢測(cè)識(shí)別中。結(jié)果表明,使用訓(xùn)練好的YOLOv4 和YOLOv4-Tiny 算法的深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)模型,對(duì)櫻桃番茄果實(shí)的目標(biāo)檢測(cè)效果良好,預(yù)測(cè)平均精確率分別為96.32%和94.18%;綜合評(píng)價(jià)指標(biāo)F1 值分別為0.95 和0.94,說明該方法能夠?qū)崿F(xiàn)對(duì)櫻桃番茄果實(shí)目標(biāo)的準(zhǔn)確識(shí)別。但對(duì)于果實(shí)小、個(gè)數(shù)較多且比較密集、有遮擋的圖像,檢測(cè)效果略差,后期將增加圖像,進(jìn)行模型再學(xué)習(xí)訓(xùn)練,以提高識(shí)別的效果。同時(shí)可以看出YOLOv4 模型明顯優(yōu)于YOLOv4-Tiny。因此,YOLOv4 模型可為后續(xù)溫室櫻桃番茄的產(chǎn)量預(yù)估、果實(shí)成熟度檢測(cè)、采摘和分級(jí)提供一定的技術(shù)支持。而YOLOv4-Tiny 作為輕量級(jí)的算法模型雖然精確率會(huì)略低一些,但仍能滿足多數(shù)使用場(chǎng)景,適合后續(xù)在嵌入式設(shè)備上的部署。
北方農(nóng)業(yè)學(xué)報(bào)2023年5期