胡慶勝 符亞云 牛金星
摘 要:為了解決農(nóng)業(yè)采摘中因各種不利因素造成的采摘機器人無法準確識別和提取目標的問題,本文提出了一種基于深度學習Mask R-CNN神經(jīng)網(wǎng)絡框架的自適應識別提取目標的算法,應用于采摘機器人視覺系統(tǒng)的目標識別提取。經(jīng)過實踐檢驗可知,該算法不僅較好地解決了采摘機器人由于復雜的周圍環(huán)境對果蔬不能很好地識別提取的問題,而且在一定程度上還能對成熟和未成熟的果蔬進行篩選。
關鍵詞:深度學習;Mask R-CNN;目標識別提取;采摘機器人
中圖分類號:TP274文獻標識碼:A文章編號:1003-5168(2020)25-0005-04
Abstract: In order to solve the problem that the picking robot can't recognize and extract the target accurately due to various adverse factors in agricultural picking, this paper proposed an adaptive recognition and extraction algorithm based on deep learning Mask R-CNN neural network framework, which was applied to the target recognition and extraction of picking robot vision system. The practical test shows that the algorithm not only solves the problem that the picking robot can not recognize and extract fruits and vegetables well due to the complex surrounding environment, but also can screen the mature and immature fruits and vegetables to a certain extent.
Keywords: deep learning;Mask R-CNN;target recognition extraction;picking robot
機器視覺系統(tǒng)作為有效獲取和處理周圍場景目標信息的重要手段,是采摘機器人能實現(xiàn)實時、準確采摘目標的首要條件。而在采摘機器人視覺系統(tǒng)中,實現(xiàn)對目標圖像實時、準確地識別和提取的關鍵技術是圖像分割技術。大部分到了成熟期待采摘的農(nóng)作物,如蘋果、橘子、草莓、番茄等,在采摘過程中可能會出現(xiàn)待采摘的目標部分被周圍的葉片、枝干遮擋,同種目標之間或者目標與葉片之間顏色相近,目標的形狀和大小各異等現(xiàn)象,這給采摘機器人視覺系統(tǒng)實時、準確地識別提取目標帶來了巨大困難。為了解決各種不利因素造成的采摘機器人無法準確識別和提取目標的問題,本文提出了一種基于深度學習Mask R-CNN神經(jīng)網(wǎng)絡框架的自適應識別提取目標的算法,應用于采摘機器人視覺系統(tǒng)的目標識別提取。
1 研究概述
1.1 研究的整體框架
采摘機器人的視覺系統(tǒng)主要包括以下三部分:攝像頭獲取場景圖像、視覺系統(tǒng)處理場景圖像、保存并返回處理結果。整個流程如圖1所示。
1.2 Mask R-CNN神經(jīng)網(wǎng)絡框架
Mask R-CNN是由He Kaiming等人[1]在2017年提出的針對單張圖像完成物體分割與識別的神經(jīng)網(wǎng)絡框架,它采用了Ross Girshick等人[2]提出的R-CNN系列網(wǎng)絡采用的Anchor技術,并結合圖像金字塔網(wǎng)絡(Features Pyramid Network,F(xiàn)PN)對不同尺度物體的識別效果進行優(yōu)化,還通過引入全卷積網(wǎng)絡(Fully Convolutional Networks,F(xiàn)CN),實現(xiàn)了精確的物體分割。Mask R-CNN神經(jīng)網(wǎng)絡框架主要包含7個部分,分別是特征提取卷積網(wǎng)絡、興趣區(qū)域?qū)R層(ROIAlign Layer)、區(qū)域提議網(wǎng)絡(Region Proposal Network,RPN)、Mask分支(Mask Branch)、全連接層(Fully Connected Layers)、邊界框預測和類別預測[3],其整體實現(xiàn)流程如圖2所示。
1.3 制作和訓練數(shù)據(jù)集
本研究主要對采摘機器人在采摘橘子和草莓的過程中其視覺系統(tǒng)獲取到的圖像進行搜集,其中橘子圖像145張,草莓圖像152張。選取橘子圖像120張和草莓圖像130張作為訓練集,剩余的圖像作為驗證集。使用VGG圖像標注器對這些圖像中的目標進行標注,標注完成后,導出一個含標注坐標點信息的JSON文件,到此就制作好了一個完整的數(shù)據(jù)集。
為了減小訓練集的規(guī)模,使用遷移學習的方法來訓練一個新的模型數(shù)據(jù)集。本研究是在COCO數(shù)據(jù)集的基礎上,使用遷移學習,對制作好的數(shù)據(jù)集進行訓練[4]。本文訓練數(shù)據(jù)集使用的筆記本電腦參數(shù)為:CPU為Intel Core i7-8300K,GPU 為GeForce GTX 1080,16 G內(nèi)存,安裝系統(tǒng)為Windows 10。此外,設置訓練的學習率為0.001,訓練次數(shù)為60次,訓練步數(shù)為100步,訓練中損失函數(shù)變化如圖3所示。
1.4 目標識別提取實驗
為了確定訓練生成的模型數(shù)據(jù)集能較好地對圖像中的橘子和草莓進行識別提取,需要在電腦上將訓練生成的橘子和草莓圖像模型數(shù)據(jù)集加載到Mask R-CNN神經(jīng)網(wǎng)絡框架中,進行初步的驗證實驗。首先通過Mask R-CNN神經(jīng)網(wǎng)絡框架加載訓練生成的.h5類型的數(shù)據(jù)集文件,然后對剩余的25張橘子圖像和22張草莓圖像進行測試實驗,最后觀察每一張圖像中橘子和草莓的識別提取效果。經(jīng)過實驗觀察,訓練的數(shù)據(jù)集能夠較好地識別提取出測試中每一張圖片中的橘子和草莓。
2 實驗結果與對比分析
2.1 實驗結果
將訓練好的數(shù)據(jù)集和Mask R-CNN神經(jīng)網(wǎng)絡框架移植到采摘機器人的視覺系統(tǒng)中,對訓練的數(shù)據(jù)集進行實驗和驗證。收集了60次實驗過程中,采摘機器人機械臂以不同的速度從起始點A運動到目標抓取點B時,機械臂上攝像機傳回的圖像序列的目標識別和提取結果。對實驗結果進行分析可知,隨著采摘機器人機械臂運動速度的加快,識別提取率有所下降。當采摘機器人的機械臂以1 cm/s的速度緩慢移動時,視覺系統(tǒng)對攝像頭上傳過來的場景圖像序列中橘子的識別提取率約為98.1%、草莓的識別提取率約為98.4%;當采摘機器人的機械臂以2 cm/s的速度移動時,對橘子的識別提取率約為96.1%、草莓的識別提取率約為96.8%;當采摘機器人的機械臂以3 cm/s的速度移動時,對橘子的識別提取率約為93.1%、草莓的識別提取率約為93.4%,具體實驗結果分析如表1所示。
另外,通過對實驗結果中草莓識別圖片的分析,發(fā)現(xiàn)該神經(jīng)網(wǎng)絡對成熟與未成熟的草莓有一定的篩選作用,而對于橘子的識別則沒有顯示出該作用。圖片場景圖與識別后的圖如圖4所示。
2.2 對比實驗分析
為了驗證Mask R-CNN神經(jīng)網(wǎng)絡框架相比于之前的神經(jīng)網(wǎng)絡框架應用于采摘機器人視覺系統(tǒng)上的識別提取率及識別的實時性是否更優(yōu)異,本研究做了Mask R-CNN神經(jīng)網(wǎng)絡框架與Faster R-CNN神經(jīng)網(wǎng)絡框架的對比實驗。以采摘草莓的過程為研究對象,分別用兩種神經(jīng)網(wǎng)絡框架訓練出數(shù)據(jù)集,然后將訓練好的數(shù)據(jù)集和神經(jīng)網(wǎng)絡框架導入采摘機器人的視覺系統(tǒng)上進行驗證實驗。讓采摘機器人的機械臂仍然以不同的速度從起始點A運動到目標抓取點B,搜集采摘過程中圖片的識別數(shù)據(jù)進行分析,并對不同采摘過程中,Mask R-CNN與Faster R-CNN處理的圖片數(shù)據(jù)進行分析。通過分析可知,當速度增加時,Mask R-CNN的識別率比Faster R-CNN的識別率下降得更加明顯,但Faster R-CNN識別率比Mask R-CNN低;Faster R-CNN不像Mask R-CNN一樣對草莓的成熟與未成熟有一定的篩選作用。對比實驗結果如表2所示。
目標 實驗采摘次數(shù) 場景圖片數(shù)/張 目標識別圖片數(shù)/張 完成采摘次數(shù) 識別提取率/% Mask R-CNN 1 草莓 10 315 310 10 98.4 2 10 248 240 10 96.8 3 10 198 185 10 93.4 Faster R-CNN 1 草莓 10 315 284 10 90.2 2 10 248 222 10 89.5 3 10 198 176 9 88.9 ]
得出上述結果的原因主要是Mask R-CNN神經(jīng)網(wǎng)絡框架中添加了Mask分支層,可以實現(xiàn)像素級別的分類,所以比Faster R-CNN的目標識別率更高;但同時,也降低了Mask R-CNN的目標識別處理速度,因此,隨著采摘機器人機械臂速度的增加,Mask R-CNN的識別率下降得更快。圖5為Mask R-CNN與Faster R-CNN識別的對比圖。
3 結論
本研究將深度學習Mask R-CNN神經(jīng)網(wǎng)絡框架應用于采摘機器人的視覺系統(tǒng)上,以實現(xiàn)自適應識別提取目標,解決采摘機器人由于復雜的周圍環(huán)境對果蔬不能很好地識別提取的問題。實驗結果表明,基于深度學習Mask R-CNN神經(jīng)網(wǎng)絡框架的自適應識別提取目標的算法能較好地解決復雜環(huán)境中目標的識別提取問題;當采摘機器人機械臂緩慢運動時,對橘子和草莓的識別提取率約為98.1%和98.4%,但隨著運動速度的增加會有所下降;比Faster R-CNN對橘子和草莓的識別提取率更高;對草莓識別提取時,對成熟與未成熟的草莓具有一定的篩選作用。
本研究還存在著些許不足有待以后解決和研究。例如,本文在訓練數(shù)據(jù)集上使用了遷移學習的方法,訓練的數(shù)據(jù)集較少,使得訓練出來的神經(jīng)網(wǎng)絡學習的環(huán)境場景較少,目標識別的種類也較少,會在一定程度上降低采摘機器人的識別提取率;本研究只針對橘子和草莓的采摘過程進行了實驗和研究,并未對其他果蔬的識別提取進行實驗研究,因此在今后的研究中還需要加入對其他種類果蔬的實驗和研究,建立一個專門應用于采摘機器人的訓練數(shù)據(jù)集,使其能應用于對各種果蔬的采摘。
參考文獻:
[1] He K,Gkioxari G,Dollar P,et al. Mask R-CNN[C]// 2017 IEEE International Conference on Computer Vision (ICCV). IEEE Computer Society,2017.
[2]Girshick R,Donahue J,Darrelland T,et al. Rich feature hierarchies for object detection and semantic segmentation[C]// 2014 IEEE Conference on Computer Vision and Pattern Recognition. IEEE,2014.
[3] Girshick R . Fast R-CNN[C]// 2015 IEEE International Conference on Computer Vision (ICCV). IEEE,2016.
[4]彭秋辰,宋亦旭.基于MaskR-CNN的物體識別和定位[J].清華大學學報(自然科學版),2019(2):53-59.