張磊,劉琪芳,聶紅玫,王晨,牛帆
(1. 山西農(nóng)業(yè)大學(xué)信息科學(xué)與工程學(xué)院,山西太谷,030801; 2. 山西農(nóng)業(yè)大學(xué)園藝學(xué)院,山西太谷,030801)
近年來隨著人工智能技術(shù)的發(fā)展,果實采摘機(jī)器人的應(yīng)用研究已日新月異,機(jī)器視覺作為采摘機(jī)器人中的重要核心內(nèi)容,對目標(biāo)檢測的準(zhǔn)確率及果實定位都有重要的影響。
目前,國內(nèi)外研究學(xué)者對番茄果實識別檢測開展了初步研究。趙杰文等[1]提出利用成熟番茄、未成熟番茄和葉子HIS圖像顏色灰度分布,采用閾值分割法實現(xiàn)田間成熟番茄之間相互分離。王玉飛等[2]通過提取番茄和枯葉等干擾物子圖像形狀和紋理特征參數(shù),實現(xiàn)生長狀態(tài)相互分離的成熟番茄快速識別。Chen等[3]利用YUV顏色空間的V分量從背景中分離出成熟番茄的ROI,提取一定半徑范圍內(nèi)的弧形邊緣計算出每個成熟番茄的中心點和重疊面積以確定兩個重疊成熟番茄的深度排序,為溫室中成熟的番茄采摘提供了實用的機(jī)器人視覺方案。Iwasaki等[4]提出一種基于色相信息和曲率的魯棒迷你番茄遮擋識別方法,該方法根據(jù)源圖像色相信息檢測紅色區(qū)域,在區(qū)域中利用輪廓跟蹤法實現(xiàn)番茄輪廓和曲率的識別檢測。馬翠花等[5-6]提出基于密集和稀疏重構(gòu)的番茄顯著性檢測方法,番茄DSR灰度圖經(jīng)過OTSU算法進(jìn)行分割和去噪處理,最終使用改進(jìn)隨機(jī)Hough變換(Randomized Hough Transform,RHT)圓檢測方法識別番茄果簇中的單果。方政等提出了以HSI模型中的色調(diào)分量為基礎(chǔ),采用最大方差自動取閾值法和Hough變換法進(jìn)行圖像分割、輪廓提取,實現(xiàn)成熟番茄果實不同遮掩度下的識別。孫建桐等[7]提出先對采集圖像進(jìn)行Canny邊緣檢測操作獲得果實邊緣輪廓點并采用基于幾何形態(tài)學(xué)的處理獲得果實輪廓點,然后對果實輪廓點分組處理和進(jìn)行迭代隨機(jī)圓的處理得到果實識別結(jié)果。現(xiàn)有的研究方法主要利用色調(diào)分量、邊緣輪廓進(jìn)行番茄檢測,相對于在復(fù)雜環(huán)境下的番茄采摘檢測研究較少。本文提出一種基于改進(jìn)YOLOv4網(wǎng)絡(luò)模型與遷移學(xué)習(xí)相結(jié)合的檢測方法,實現(xiàn)復(fù)雜背景下番茄果實采摘識別應(yīng)用研究。
番茄圖像數(shù)據(jù)采集于山西省晉中市太谷縣陽邑鄉(xiāng)農(nóng)業(yè)蔬菜溫室大棚,采集設(shè)備為100°無畸變HBV-1780便攜式雙目攝像頭和Carkoci-Capture2云臺,視頻圖像分辨率為2 560像素×720像素。為避免網(wǎng)絡(luò)模型過擬合情況,采集圖像樣本時分別從遠(yuǎn)景與近景多角度拍攝,且因番茄不同生長周期的因素,導(dǎo)致樣本中數(shù)據(jù)的成熟度各不相同,增加了樣本的復(fù)雜性。
本文采用均值濾波與高斯濾波對圖像進(jìn)行處理,以減少采摘光線對模型識別精度影響。從圖1可以看出,經(jīng)過高斯濾波處理后的圖像有效抑制了高斯噪聲與椒鹽噪聲,實現(xiàn)對樣本圖像的增強(qiáng)。
圖1 空域處理
利用labelImg標(biāo)注工具對處理圖像標(biāo)注分類,并注釋為PASCAL VOC格式的XML文件[8]。經(jīng)過上述處理后,共得到標(biāo)注圖像2 500張,按照數(shù)據(jù)集劃分策略,將標(biāo)注完成的數(shù)據(jù)樣本集圖像分為訓(xùn)練集1 750張(有7 234個帶邊界標(biāo)記的樣本),驗證集250張(有1 238個帶邊界標(biāo)記的樣本),測試集500張(有2 045個帶邊界標(biāo)記的樣本),且按番茄果實不同生長狀態(tài)分類,測試集還被分為A、B、C、D、E、F六個部分,分別包含標(biāo)注樣本308個、324個、471個、402個、501個、725個。數(shù)據(jù)集樣本個數(shù)對照表如表1所示。
表1 數(shù)據(jù)集樣本分類Tab. 1 Data sets and size
YOLO網(wǎng)絡(luò)模型是基于回歸問題檢測算法的模型,它主要由CSPDarknet53骨干網(wǎng)絡(luò),空間金字塔池化模塊(Spatial Pyramid Pooling,SPP)與路徑聚合網(wǎng)絡(luò)(Path Aggregation Network,PAN)和YOLO Head構(gòu)成模型整體架構(gòu)[9-11]。其中,CSP模塊主要通過跨階段層次結(jié)構(gòu)將其合并,保證了準(zhǔn)確率的同時減少了計算量,由5個CSP模塊組成,共包括72層卷積核,用于提取特征;SSP是將特征圖經(jīng)過13×13、9×9、5×5三層最大池化得到不同維度的特征;PAN網(wǎng)絡(luò)模型在特征金字塔網(wǎng)絡(luò)(Feature Pyramid Network,F(xiàn)PN)下采樣模塊后添加了上采樣模塊,增強(qiáng)了由底向上的信息獲取,改善網(wǎng)絡(luò)感受域大小,使池化得到的特征圖拼接后獲得更多的局部信息與語義特征;YOLO head模塊主要存放目標(biāo)類別標(biāo)簽和網(wǎng)絡(luò)訓(xùn)練權(quán)重,以保證網(wǎng)絡(luò)模型的訓(xùn)練精確度[12-14]。
本文在數(shù)據(jù)處理方面采用YOLOv4網(wǎng)絡(luò)的Mosaic數(shù)據(jù)增強(qiáng)方法,利用兩張圖片進(jìn)行拼接,對4張圖片進(jìn)行翻轉(zhuǎn)、縮放、色域變化等操作,結(jié)果如圖2所示。
圖2 Mosaic數(shù)據(jù)增強(qiáng)圖
改進(jìn)模型主要分為兩部分:預(yù)訓(xùn)練網(wǎng)絡(luò)和遷移網(wǎng)絡(luò)。預(yù)訓(xùn)練模型利用VGG網(wǎng)絡(luò)訓(xùn)練ImageNet數(shù)據(jù)集,獲得模型初始化參數(shù);遷移網(wǎng)絡(luò)基于YOLOv4改進(jìn)模型實現(xiàn)番茄果實識別。采用遷移學(xué)習(xí)的方法可以減少番茄果實網(wǎng)絡(luò)模型的訓(xùn)練結(jié)果泛化現(xiàn)象,提高模型的訓(xùn)練速度和性能[15-16]。而VGG網(wǎng)絡(luò)通過使用較小的濾波器達(dá)到了增加網(wǎng)絡(luò)深度的目的,同時避免了參數(shù)過度膨脹的問題,VGG網(wǎng)絡(luò)模型結(jié)構(gòu)其中共有16個卷積層,5個池化層位于第2、4、8、12和16卷積層后面;3個連接層神經(jīng)元,分別為4 096、4 096和1 000 個。如圖3所示,本試驗中的改進(jìn)模型首先將ImageNet數(shù)據(jù)集在去除全連接層以及softmax層的VGG19網(wǎng)絡(luò)上進(jìn)行模型初始化參數(shù)預(yù)訓(xùn)練,然后將訓(xùn)練好的模型參數(shù)遷移至以VGG19網(wǎng)絡(luò)卷積層作為主干網(wǎng)絡(luò)的改進(jìn)網(wǎng)絡(luò)模型中作為初始值,經(jīng)全連接層和分類層進(jìn)行番茄圖像識別分類。
圖3 改進(jìn)模型框架示意圖
圖4、圖5為改進(jìn)前后的網(wǎng)絡(luò)結(jié)構(gòu)圖與主干層次對比圖,可以看到改進(jìn)前后的模型結(jié)構(gòu)中輸入大小均為416像素×416像素×3通道的番茄果實圖像。
圖4 改進(jìn)前后網(wǎng)絡(luò)結(jié)構(gòu)對比圖
(a) 改進(jìn)前主干網(wǎng)絡(luò)層次圖
(b) 改進(jìn)后主干網(wǎng)絡(luò)層次圖
在神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中Conv為卷積層,BN為批標(biāo)準(zhǔn)化操作,Pool表示池化層,maxPool表示最大池化層,Concat用于融合網(wǎng)絡(luò)模型特征。改進(jìn)后的網(wǎng)絡(luò)模型的主干網(wǎng)絡(luò)模型,從下到上的特征向量提取架構(gòu)具體表現(xiàn)為:每個階段的輸入均為前一階段的特征映射。注意到改進(jìn)模型主干網(wǎng)絡(luò)中包括block1_conv、block2_conv、block3_conv、block4_conv、block5_conv共5個卷積塊,卷積塊中卷積層的數(shù)目分別為2、2、4、4、4,每個卷積塊后連接一層池化層,即共包含16層卷積層與5層池化層,原始圖片大小為416像素×416像素×3通道,在網(wǎng)絡(luò)中一共經(jīng)過5次特征向量提取,特征圖分辨率依次下降:416×416×3→416×416×64→208×208×128→104×104×256→52×52×512→26×26×512→13×13×512,可以看到特征圖分辨率下降會導(dǎo)致通道數(shù)翻倍增長,進(jìn)而逐漸將圖像紋理特征組合成類別特征。特征圖分辨率降為13×13×512后開始進(jìn)入特征池化SSP模塊,SSP模塊主要用于收集特征層上的候選區(qū)域,以避免隨機(jī)分配并恢復(fù)候選區(qū)域和所有特征層之間的受損信息路徑,其中包含3個最大池化層max_pooling2d、max_pooling2d_1、max_pooling2d_2;通過SSP模塊后經(jīng)過3層卷積進(jìn)入PANet模塊,當(dāng)特征圖分辨率分別降為52×52×512、26×26×512時也進(jìn)入PANet模塊,PANet模塊具有對特征提取強(qiáng)化的作用,對模型識別的優(yōu)良性;最后進(jìn)入YOLO Head模塊,YOLO Head模塊用于存放預(yù)測分類和目標(biāo)的邊界框的,且不會降低準(zhǔn)確度。
本文中所有訓(xùn)練和測試均在配置為AMD Ryzen 5 3600X 6-Core Processor 3.80 GHz、32 GB運行內(nèi)存及NVIDIA RTX 2700 GPU顯卡的電腦上完成。程序編譯環(huán)境為:Ubuntu16.04系統(tǒng)、python 3.7、CUDA 10.1、Cudnn庫7.6.2、OpenCV庫3.4。模型訓(xùn)練參數(shù)設(shè)定為:批訓(xùn)練樣本數(shù)為64,圖像大小為416×416,動量為0.949,權(quán)值衰減為5×10-4,初始學(xué)習(xí)率為0.001,最大迭代次數(shù)為6 000,衰減次數(shù)設(shè)置為最大迭代數(shù)的80%和90%。
本文引入精確率—召回率(Precision-Recall,P-R)曲線、綜合評價指標(biāo)F1分?jǐn)?shù)以及平均檢測精度(mean Average Precision,mAP)作為評價指標(biāo)衡量模型對番茄目標(biāo)識別的檢測性能[17-18]。
(1)
(2)
(3)
式中:C——類別數(shù)量;
N——閾值數(shù)量;
k——閾值;
P(k)——第k個圖片的識別準(zhǔn)確率;
ΔR(k)——從k-1變化到k時的召回率變化情況。
本文以單個、一簇、順光、逆光、重疊、遮擋6種不同生長狀態(tài)的番茄果實試驗數(shù)據(jù)為處理對象,設(shè)置相同的模型訓(xùn)練參數(shù),對比分析改進(jìn)模型與YOLOv4、YOLOv4-Tiny、Faster RCNN網(wǎng)絡(luò)模型的檢測結(jié)果[19],結(jié)果如圖6、圖7、表2所示。
(a) 單個
(b) 一簇
(c) 順光
(d) 逆光
(e) 重疊
(f) 遮擋
(a) 成熟期番茄檢測精度
(b) 半成熟期番茄檢測精度
(c) 未成熟期番茄檢測精度
(d) 平均番茄檢測精度
表2 不同網(wǎng)絡(luò)模型檢測精度比較Tab. 2 Comparison of detection accuracy between different network models
從圖6、圖7可知,在番茄果實數(shù)量為單個時,由于番茄果實圖像中果實大小的尺寸與遠(yuǎn)景近景的區(qū)別,導(dǎo)致番茄果實數(shù)量在單個時識別度高,且改進(jìn)模型比YOLOv4網(wǎng)絡(luò)、YOLOv4-Tiny網(wǎng)絡(luò)、Faster RCNN網(wǎng)絡(luò)的平均檢測精度分別高8.87%、10.13%、9.57%;在番茄果實數(shù)量為一簇時識別度低,改進(jìn)模型比YOLOv4網(wǎng)絡(luò)與YOLOv4-Tiny網(wǎng)絡(luò)、Faster RCNN網(wǎng)絡(luò)的平均檢測精度分別高6.03%、6.32%、7.6%;當(dāng)番茄果實表面出現(xiàn)由順光照射產(chǎn)生的白色曝光,會使得番茄果實的識別難度提高,且改進(jìn)模型比YOLOv4網(wǎng)絡(luò)、YOLOv4-Tiny網(wǎng)絡(luò)、Faster RCNN網(wǎng)絡(luò)的平均檢測精度分別高6.07%、11.94%、18.72%;表面出現(xiàn)由逆光產(chǎn)生的陰影時,雖難以區(qū)分未成熟果實與果葉,但成熟果實尤為突出,且改進(jìn)模型比YOLOv4網(wǎng)絡(luò)與YOLOv4-Tiny網(wǎng)絡(luò)、Faster RCNN網(wǎng)絡(luò)的平均檢測精度分別高1.25%、3.83%、13.66%;當(dāng)番茄果實重疊時會出現(xiàn)幾乎完全重疊、半重疊與少量重疊的狀況,導(dǎo)致不能很好地識別出被檢測類別,增加番茄果實識別的難度,這時改進(jìn)模型比YOLOv4網(wǎng)絡(luò)與YOLOv4-Tiny網(wǎng)絡(luò)、Faster RCNN網(wǎng)絡(luò)的平均檢測精度分別高7.02%、5.88%、11.73%;當(dāng)番茄果實發(fā)生遮擋的狀況時,會導(dǎo)致成熟果實容易被遮蓋,而未成熟番茄被果葉遮蓋容易導(dǎo)致其因顏色一致出現(xiàn)錯檢,使識別難度明顯提高,且改進(jìn)模型比YOLOv4網(wǎng)絡(luò)、YOLOv4-Tiny網(wǎng)絡(luò)、Faster RCNN網(wǎng)絡(luò)的平均檢測精度分別高4.44%、11.1%、14.84%。
由表2與圖8可知,不同成熟度的番茄果實在多種復(fù)雜環(huán)境下的AP值均在60%以上,且模型的P-R曲線覆蓋整個坐標(biāo)系。其中,改進(jìn)模型的P-R曲線在最上方,優(yōu)于其他三種檢測網(wǎng)絡(luò)模型。
(a) 成熟期番茄
(b) 半成熟期番茄
(c) 未成熟期番茄
結(jié)合圖9和表3可以看出,對于綜合評價指標(biāo)F1分?jǐn)?shù)值而言,如果將Score_Threhold調(diào)至0.5,在番茄果實成熟度為成熟時,改進(jìn)模型與YOLOv4-Tiny網(wǎng)絡(luò)的評價檢測結(jié)果一樣,但高于YOLOv4網(wǎng)絡(luò)3%,高于Faster RCNN網(wǎng)絡(luò)1%;在番茄果實成熟度為半成熟時,改進(jìn)模型高于YOLOv4-Tiny網(wǎng)絡(luò)1%,高于YOLOv4網(wǎng)絡(luò)4%,高于Faster RCNN網(wǎng)絡(luò)5%;在番茄果實成熟度為未成熟時,改進(jìn)模型高于YOLOv4-Tiny網(wǎng)絡(luò)3%,高于YOLOv4網(wǎng)絡(luò)5%,高于Faster RCNN網(wǎng)絡(luò)21%。
(a) 成熟期番茄
(b) 半成熟期番茄
(c) 未成熟期番茄
從表4中可以看出,本文采用的4種番茄果實檢測網(wǎng)絡(luò)的速率結(jié)果為YOLOv4-Tiny網(wǎng)絡(luò)的FPS是最高的,YOLOv4與改進(jìn)模型的FPS為中等偏上,F(xiàn)aster RCNN網(wǎng)絡(luò)的FPS為最低。
表3 綜合評價F1分?jǐn)?shù)值Tab. 3 Comprehensive evaluation of F1 score values
表4 不同網(wǎng)絡(luò)模型速率結(jié)果Tab. 4 Different network model rate results
綜上所述,本文提出的改進(jìn)模型在保持FPS優(yōu)良的情況下,對比分析評價指標(biāo)mAP、P-R曲線與綜合評價指標(biāo)F1分?jǐn)?shù),明顯優(yōu)于其他3種網(wǎng)絡(luò)模型。
1) 本文提出一種基于改進(jìn)YOLOv4網(wǎng)絡(luò)模型與遷移學(xué)習(xí)相結(jié)合的番茄果實識別方法,先利用ImageNet數(shù)據(jù)集在VGG網(wǎng)絡(luò)模型卷積層進(jìn)行模型參數(shù)預(yù)訓(xùn)練,然后將訓(xùn)練的模型參數(shù)遷移至改進(jìn)網(wǎng)絡(luò)模型中作為初始值,獲得最優(yōu)權(quán)重實現(xiàn)對復(fù)雜環(huán)境下的番茄果實進(jìn)行檢測。結(jié)果表明這種方法的檢測精度和綜合評價比優(yōu)良,并能夠?qū)崟r有效地檢測出番茄果實,且效果明顯優(yōu)于未改進(jìn)的同類型YOLOv4網(wǎng)絡(luò)和YOLOv4-Tiny網(wǎng)絡(luò)模型以及主流檢測模型Faster RCNN。
2) 針對測試集數(shù)據(jù)中不同成熟度番茄在不同閾值下的綜合評價F1分?jǐn)?shù)值分析顯示,番茄果實成熟時本文改進(jìn)模型高于YOLOv4網(wǎng)絡(luò)3%,與YOLOv4-Tiny網(wǎng)絡(luò)相同,高于Faster RCNN網(wǎng)絡(luò)1%;番茄果實半成熟時分別高于其他3種模型4%、1%、5%;番茄果實未成熟時,分別高于其他3種模型5%、3%、21%,表明模型實用性較強(qiáng)。
3) 通過應(yīng)用本文的番茄識別網(wǎng)絡(luò)模型,能夠解決傳統(tǒng)圖像檢測方法在處理環(huán)境光暗、葉枝遮擋、果實重疊圖像定位檢測精度低的問題,可為之后的研究過程提供更好的技術(shù)支撐。
中國農(nóng)機(jī)化學(xué)報2022年12期