趙德安,吳任迪,劉曉洋,趙宇艷
?
基于YOLO深度卷積神經網絡的復雜背景下機器人采摘蘋果定位
趙德安1,吳任迪1,劉曉洋1,趙宇艷2
(1. 江蘇大學電氣信息工程學院,鎮江 212013;2. 常州信息職業技術學院電子與電氣工程學院,常州 213164)
為提高蘋果采摘機器人的工作效率和環境適應性,使其能全天候的在不同光線環境下對遮擋、粘連和套袋等多種情況下的果實進行識別定位,該文提出了基于YOLOv3(you only look once)深度卷積神經網絡的蘋果定位方法。該方法通過單個卷積神經網絡(one-stage)遍歷整個圖像,回歸目標的類別和位置,實現了直接端到端的目標檢測,在保證效率與準確率兼顧的情況下實現了復雜環境下蘋果的檢測。經過訓練的模型在驗證集下的mAP(mean average precision)為87.71%,準確率為97%,召回率為90%,IOU(intersection over union)為83.61%。通過比較YOLOv3與Faster RCNN算法在不同數目、不同拍攝時間、不同生長階段、不同光線下對蘋果的實際檢測效果,并以1為評估值對比分析了4種算法的差異,試驗結果表明YOLOv3在密集蘋果的1高于YOLOv2算法4.45個百分點,在其他環境下高于Faster RCNN將近5個百分點,高于HOG+SVM(histogram of oriented gradient + support vector machine)將近10個百分點。并且在不同硬件環境驗證了該算法的可行性,一幅圖像在GPU下的檢測時間為16.69 ms,在CPU下的檢測時間為105.21 ms,實際檢測視頻的幀率達到了60幀/s和15幀/s。該研究可為機器人快速長時間高效率在復雜環境下識別蘋果提供理論基礎。
收獲機;機器視覺;圖像識別;深度學習;采摘機器人;蘋果識別;YOLO
果樹果實采摘機器人的研究隨著科技的發展日臻完善,視覺識別系統作為采摘機器人的一部分,其目標檢測的速度、準確率以及對周邊環境的適應能力對機器人的工作效率和工作時長有較大影響。穩定的目標識別可以讓機器人長時間地工作,壓縮勞動成本,提高生產效率。一個能夠在不同環境下進行采摘作業的機器人對提升農業生產力有較大的應用價值和現實意義。
目前國內外在水果檢測方面的研究已經取得了一定的進展。Kapach等[1]簡述了關于水果采摘機器人視覺部分,全面闡述了當前領域各種方法的優點和局限性,其中大部分工作的研究都涉及到目標的顏色,但是關于套袋蘋果或者是未成熟蘋果這類顏色不明顯的目標檢測與識別的研究工作較少且起步較晚。呂繼東等[2]利用基于-顏色特征的OTSU動態閾值分割的方法進行圖像分割,找出蘋果的位置。但是對于光照非常敏感,在逆光環境下會丟失目標。趙德安等[3]為了解決夜間蘋果的識別問題,通過2個白熾燈作為照明光源從不同角度照明削弱圖像中的陰影,采用二次分割的方法提取出蘋果表面的高亮反光區并對此進行修補,得到完整的分割結果。但由于遮擋、光照不均等原因,光照無法保證,因此無法保證蘋果的全部識別。Ji等[4]利用SVM(support vector machine)分類器進行蘋果的分類識別,對套袋蘋果的識別率達到89%。但是識別一幅圖像需要352 ms,識別效率不高,無法達到實時性的要求。Stajnko等[5]通過熱相儀測量蘋果與背景之間的溫度梯度來識別不同成熟度的蘋果并且計算出蘋果的直徑和數量。Wachs等[6]利用彩色圖像和熱圖像相結合的方式來識別蘋果,但是利用熱像儀的方法只能在陽光直射的下午使用,無法滿足采摘機器人全天候工作的要求。Rakun等[7]通過紋理和顏色相結合的方法來識別蘋果,但是蘋果上的果袋會消去紋理特征,難以識別。同樣的還有其他利用顏色、紋理、形狀等多種特征組合來實現蘋果的目標檢測,但是這類方法都是針對某些特定情景下進行的研究,魯棒性差,無法滿足采摘機器人各種復雜情景下的工作需求[8-17]。
相比于常規方法,近幾年深度卷積神經網絡在目標檢測領域顯現出巨大的優越性,深度神經網絡由于其對目標高維特征的高度提取,使得對復雜情況下蘋果的識別變成可能。其主要分為2種方法,一種是基于區域建議的方法,標志性的算法有RCNN[18]、Fast RCNN[19]和Faster RCNN[20],核心思想是先獲得建議區域然后在當前區域內進行分類,稱為two-stage目標檢測。熊俊濤等[21]利用Faster RCNN方法進行不同光照和不同尺寸的綠色柑橘識別,其模型的精度很高,泛化能力強,但是由于區域建議步驟消耗大量的計算資源,檢測時間較長,不滿足實時性的要求。另一種方法是無區域建議的方法,標志性的算法有SSD[22]、YOLO[23],核心思想是用單一的卷積網絡直接基于整幅圖像來預測目標的位置及其屬性,也稱為one-stage目標檢測。薛月菊等[24]采用YOLOv2網絡進行未成熟芒果的識別,在保持著精度和泛化能力的同時,提高了檢測速率。但是其對于密集蘋果的檢測召回率明顯下降,容易將一簇蘋果只識別為一個蘋果,而且其試驗平臺為12 GB的 GTX Titan X顯卡,其功率和可靠性都無法安置在采摘機器人之中,沒有驗證在只有CPU的工控機中的運行效率。
本文提出用YOLOv3神經網絡來實現復雜環境下蘋果的識別,在不影響精度的情況下壓縮網絡規模來加快檢測速度,在不同拍攝時間、不同生長階段、不同光線等干擾場景下分別進行網絡的識別試驗,以期檢測網絡效果,并且在CPU和GPU配置下進行試驗以驗證能否達到實時的要求。
蘋果圖像的采集地點在江蘇省徐州市豐縣大沙河鎮蘋果示范基地和山東省煙臺市蓬萊縣蘋果示范基地,采集時間分為白天和夜晚(圖1),白天是在自然光下采集,夜晚是在LED下采集,蘋果的品種是紅富士,有裸露和套袋2種(給蘋果套上果袋之后能夠提高蘋果的品質)。

圖1 復雜的實際蘋果圖像
圖1中分別列舉蘋果分別在白天、夜晚、重疊、遮擋、帶套、逆光、密集等各種環境下實際畫面,蘋果在裸露條件下能夠保持基本顏色特征不變,帶上果袋之后因為薄膜對光的反射使得顏色通道被割裂和腐蝕,并且由于果袋的不完全覆蓋,使得蘋果形狀特征變得不規則。同時蘋果如果在重疊和遮擋環境下會使得形狀特征不完整,在夜晚會讓蘋果顏色強度發生改變。
如果使用色差分割的方法難以將完整的蘋果分離出來,用橢圓擬合的方法難以對不規則的蘋果進行擬合。如果使用SVM支持向量機對多個特征進行精確整合創建詞袋(Word of Bag)并進行分類來識別蘋果,可能會因為正負樣本的局限性無法適應所有環境下蘋果的識別。
因此本文考慮用深度卷積神經網絡來提取蘋果特征,采用端到端的整體訓練讓神經網絡自適應地學習不同環境下的蘋果所需要的特征,實現復雜環境下蘋果的定位。
YOLO是目前為止最先進的目標檢測方案之一[23],它能夠在一幅圖像中同時檢測和分類對象。
1.2.1 基于YOLO的蘋果識別
本文提出的基于深度學習YOLO的蘋果識別方法能夠定位視頻中的蘋果并返回其坐標。不同于基于區域預測的目標檢測算法(Faster RCNN)[20],YOLO通過單個卷積神經網絡檢測整個圖像回歸目標的類別和位置,為了讓卷積遍歷整幅圖像之后能夠得到固定格式的預測大小,首先將圖像調整為固定大小的尺寸416×416,再分成13×13的非重疊的網格單元,然后每個單元負責檢測出該單元可能擁有的個邊界框及其置信度,具體包含5個預測參數:和置信度。()代表目標的坐標,()代表目標外包矩形的寬度和高度,置信度用來通過閾值對預測結果進行取舍。
在YOLOv2[25]中引用錨點(anchor)來提升模型的表現,在YOLOv3中使用多尺寸錨點和殘差網絡來進一步提高模型的表現。
1.2.2 神經網絡改進設計
YOLOv3原文中運用殘差網絡(ResNet)[26]模型搭建出53層的神經網絡,考慮到使用過深的網絡模型會增加檢測時間,文中只需要檢測蘋果這一類目標,并不需要深層神經網絡提取特征,所以本文運用類似于VGG的網絡模型搭建出13層網絡。同時YOLOv3原文中設置3種不同尺寸的錨點,預測這3種不同尺寸錨點的網格大小分別是13、26、52,其中最小預測框的大小則是8×8(圖像尺寸除以網格大小即416/52),但是實際檢測密集蘋果的時候只需要檢測出大于分辨率16×16的蘋果,過小的蘋果距離太遠,無法作為采摘機器人的目標,同時使用52×52個預測網格使得預測張量過于龐大增加檢測時間,所以本文使用2種不同尺度的錨點(13×13,26×26),提高對小物體的檢測能力的同時不會增加檢測時間。
本文設計的神經網絡使用3×3的卷積層來提取圖像信息,用2×2的池化層來降低數據維度,當輸入矩陣到達52×52×64大小時并行出另一條神經網絡,其第一條神經網絡最后輸出13×13×18的預測張量,第二條神經網絡的開始經過3×3×256的卷積層得到26×26×256矩陣與第一條神經網絡的26×26×128矩陣進行特征融合,最后輸出26×26×18的預測張量,最后對2個輸出結果做并集處理,獲得蘋果的預測信息,其具體結構如圖2所示。

注:x、y為x軸、y軸預測坐標,w為預測寬度,h為預測高度,Pr為預測置信度。
1.2.3 YOLO損失函數
本文YOLO在訓練神經網絡時優化的是損失函數,通過BP(back propagation)不斷更新模型,使得Loss不斷減少。




訓練模型所使用的數據集一共515張,包含有3 725個各種情況下的蘋果。其中400張用來訓練模型,115張用來驗證模型,比例約為4∶1。
本文中所有的訓練和測試均在同一臺筆記本電腦進行,電腦的主要配置為PC Intel Core(TM) i7-7700HQ CPU@2.80 GHz、6 GB的GPU GeForce GTX 1060和16 GB的運行內存。所有的程序均是由C++語言編寫并調用CUDA、Cudnn、OPENCV庫并在Windows10系統下運行,訓練和測試模型時有分別單獨使用CPU和GPU。
訓練時采用64個樣本作為一個處理單元,每次更新權值時用BN(batch normalization)[27]進行正則化,并且在每一層中加入丟棄層(dropout),以保持每層提取特征的相互獨立,其丟棄比例為0.5,動量(Momentum)設置為0.9,權值衰減(decay)設置為0.000 5,起始學習率(learning rate)設為0.001,并在每迭代5 000次后衰減10倍,并且在一開始為了穩定模型設置了一個burn_in參數,其值為1 000,實際計算如下:
學習率 = 學習率× (迭代次數/burn_in)4(2)
在圖像中均勻選取不同情況下的蘋果,并用矩形框對圖像中的蘋果進行人工標注用于YOLO的訓練和測試。標注信息采用PASCAL VOC數據集的格式進行保存,其中包含目標蘋果的類別和外包邊框。然后進行歸一化處理,將目標的實際數據除以圖像的寬度和高度,這樣得到的數據都在0~1的范圍之內,使得在訓練的時候能夠更快地讀取數據,并且能夠訓練不同尺寸的圖像,其具體格式為5個參數作一組數據,分別包含index(類別的序列),(目標中心的坐標),(目標中心的坐標),(目標的寬),(目標的高)。如式3所示,其中max、max為邊框右下角坐標,min、min為邊框左上角坐標,width、height為圖像寬和高。

實際上深度學習需要大量的數據,實際情況下500幅圖像遠遠不夠使用。于是本文在訓練之前對數據集進行數據增強來增加訓練數據[28-29],其中色調的變化范圍從1到1.5倍,曝光的變化范圍從1到1.5倍,色量的變化范圍從0.9到1.1倍,以此最終生成了51 500幅圖像以供訓練使用。
在訓練時還需要用K-means聚類計算出當前數據集錨點的預訓練數值,其中K-means使用的是歐氏距離,13層網絡使用的6個錨點為(50×66)、(74×99)、(91×125)、(113×154)、(140×190)、(220×284),在第一條網絡上使用前3個錨點,第二條網絡上使用后3個錨點。
最終模型一共訓練12 000次,耗時4 h,一共訓練使用了768 000幅圖像(在51 500幅圖像中隨機抽取并重復使用),其Loss變化圖如圖3所示。

圖3 Loss值隨著迭代次數的變化曲線
可以看出模型在前1 000次迭代中迅速擬合,Loss快速變小,然后到4 000次迭代之后漸漸穩定,只有稍許的振蕩。
在訓練模型中,平均每隔100次迭代輸出一次權值(weights),模型的好壞并不是迭代的次數越多越好,過多的訓練可能會導致過擬合,所以需要對訓練出來的模型進行測試和評估。
在本文中采用客觀的評判標準來評估蘋果識別系統,本文使用準確率(precision),召回率(recall),mAP(mean average precision)還有IOU(intersection over union)來評估本文訓練出來的模型。并且為模型找出合適的閾值(threshold),通過模型預測的置信度來選擇合適的目標。



式中TP為真實的正樣本數量,FP為虛假的正樣本數量,FN為虛假的負樣本數量,為類別的數量,為引用閾值的數量,為閾值,()為準確率,()為召回率。
首先找到mAP值最高的權值文件,這樣就先篩選出整體性能足夠高的模型。然后在單獨找出的模型中不斷地調整閾值,衡量準確率、召回率和IOU的值,使之能夠按照自身的需求去檢測當前環境下的蘋果。對于準確率和召回率,在本文的系統中,由于需要找出圖中主要的蘋果,忽略那些特別小的蘋果,所以在準確率和召回率之間優先選擇準確率。對于IOU,因為蘋果屬于小型目標,本文只需要它的中心點,所以對IOU要求也不高。
如果在閾值選擇不合適的情況下,就會出現如圖4的結果,當閾值過低時誤將遠處的小蘋果檢測出來,當閾值過高的時候漏掉了后面被部分遮擋的第3個蘋果。

圖4 閾值對檢測的影響
模型訓練好后需要對其性能進行評估以找到最優模型,本節用mAP值評估模型的整體性能,然后在mAP值最高的模型中通過比較不同閾值下準確率、召回率和IOU的變化選擇模型的最優閾值。之后對實際不同環境下的蘋果的檢測效果進行試驗,并與其他算法進行比較。
在本文的試驗中,訓練一共迭代了12 000次,每100次迭代輸出一個模型,所以一共得到120個模型,需要在這120個模型中找出一個mAP值最高的模型。
計算出來的試驗結果如圖5所示,縱坐標為mAP值,其范圍從0到100%,橫坐標為迭代次數,每100次迭代即一個模型為一個單位。
從圖5中可以看出,當迭代次數達到4 000次時mAP已經穩定,不再發生變化,其中mAP最大值為87.71%,這就是本文選用的模型。
將穩定后的模型選出后,畫出其P-R曲線如圖6所示,由于mAP很大,所以PR曲線將近覆蓋了整個坐標系。

圖5 平均精度均值隨迭代次數的變化

圖6 P-R曲線
接下來需要找出本文在實際使用模型時的閾值,算法預測出目標的置信度之后需要使用預設的閾值對其進行篩選。同一個模型下不同的閾值,它所能檢測到目標時的準確率、召回率和IOU都是不同的,在蘋果識別系統中,本文的優先級為準確率>召回率>IOU。同時本文在判斷中參照用于輔助的評估值1[30],1能同時兼顧準確率和召回率:

試驗結果如圖7所示,其縱坐標的范圍從0到1,橫坐標為閾值從0到1的變化。
由圖7知,閾值選用0.5,此時的準確率和召回率都達到97%和90%,1值為0.93,IOU達到83.61%,模型的表現最好。
為了進一步驗證模型的有效性,需要在各種實際條件下檢測算法的檢測效率,本節試驗以果實數目、光照角度、果實階段、采摘時間為控制變量,對比YOLOv3、YOLOv2、Faster RCNN和HOG+SVM[31]4種算法在上述條件下的檢測效果,并用1進行算法性能的評估。
3.3.1 不同果實數目的對比試驗
在機器人實際采摘過程中,隨著攝像頭距離果樹距離的變化,蘋果的數目和大小也會隨之改變。當蘋果數目較少、尺寸較大時,作為識別對象較為清晰完整,識別難度低。但在多目標圖像中,由于尺寸的減少和數目的增多,會出現粘連和遮擋的情況,識別難度較大。因此設置不同數目下蘋果檢測的對比試驗,分別分1個蘋果、多個蘋果和密集蘋果,對比4種算法在不同數目蘋果下的檢測性能,檢測效果如圖8所示。

圖8 4種算法對不同數量蘋果的檢測效果
試驗測試集一共336張圖像包含1 410個蘋果,按照果實數量分為3類,其中1個蘋果75幅圖像包含75個蘋果,多個蘋果203幅圖像包含576個蘋果,密集蘋果58幅圖像包含759個蘋果,其中密集蘋果中最小蘋果的分辨率不低于15×15,尺寸過小忽略不計。每類隨機抽取30幅圖像作為試驗測試集,用4種不同的算法檢測出正樣本數,綜合總樣本數,未被檢測樣本數和誤檢測的樣本數,計算出準確率和召回率得出1的值。重復以上步驟3次,取平均值,最后再將3類結果平均得到綜合效果,其最終結果如表1所示。
從表1可以看出,YOLOv3算法檢測效果均高于其余3個算法,蘋果數目越少,1值越高,數目由1增到10個以下時,1值也沒有降低太多。但是遇到密集蘋果的時候,1值降低了將近20個百分點。因為密集蘋果的圖像里攝像頭距離蘋果的距離過遠,導致蘋果尺寸不一,同時有粘連和遮擋的情況,導致有一些蘋果沒有被識別,同時因為卷積神經網絡本身固有的特性,不斷的卷積會在深層網絡丟失高分辨率時小目標的特征,而Faster RCNN是基于區域推薦的算法,在RPN網絡輸出矩形候選區域時就已經丟失了小目標的區域,之后進行分類并輸出預測結果自然不會出現小蘋果。但是YOLOv3在淺層網絡提前提取出特征用于第二條神經網絡的檢測,并且輸出尺寸更小的柵格預測結果,降低了深層卷積對小目標的影響,因此在密集蘋果上高出YOLOv2算法4.45個百分點。從綜合結果來看,YOLOv3算法能夠勝任不同數目蘋果的檢測。

表1 4種算法對不同數量蘋果圖像的試驗結果
3.3.2 不同光照角度的對比試驗
本節試驗將拍攝時蘋果的光照角度作為控制變量,分別有側光、逆光和順光,其中側光的蘋果124幅圖像357個蘋果,逆光67幅圖像149個蘋果,順光87幅圖像145個蘋果,由于密集蘋果的樣本影響較大,所以這里選取圖像時不會考慮密集蘋果樣本,其具體效果如圖9所示,統計結果如表2所示。
從圖9可以看出,蘋果在側光下紋理清楚,表面光照強度均勻,檢測難度較小。逆光時,蘋果和枝葉的亮度明顯降低,并且兩者之間分界線也不明顯。順光時,蘋果表面一部分亮度增強,脫離蘋果本身顏色呈現亮白色,幾乎沒有紋理特征。后2種情況下蘋果的檢測難度明顯增加。

圖9 4種算法對不同光照下蘋果的檢測效果

表2 4種算法對不同光照下蘋果的試驗結果
從表2可以看出,YOLOv3和YOLOv2算法1值普遍較高,這3種情況下1的值沒有明顯差別,Faster RCNN算法的1值總體比YOLOv3低大概5個百分點,2種算法在3種情況1值梯度一致,這是因為同是深度神經網絡強大的泛化能力,能夠在顏色特征不一樣的情況下依然檢測到蘋果。逆光時模型表現最差,原因是逆光時缺少亮度,直接消去了部分蘋果,使得模型1值降低。
3.3.3 不同果實生長階段的對比試驗
本節試驗將拍攝時蘋果的成長階段作為控制變量,分別有成熟、未成熟和套袋,其中成熟的蘋果95幅圖像249個蘋果,未成熟的蘋果84幅圖像167個蘋果,套袋的蘋果99幅圖像235個蘋果,同樣不考慮密集蘋果樣本,其具體效果如圖10所示,統計結果如表3所示。

注:從左至右圖中分別為未成熟、成熟、套袋蘋果。
從圖10可以看出,成熟的蘋果紋理清晰,顏色與背景明顯分離。未成熟的蘋果顏色較淡,其顏色與背景相近。套袋的蘋果外面都包裹了一層透明薄膜,在光線照射下生成了一個個亮斑,腐蝕了蘋果表明的顏色特征和紋理特征,同時塑料薄膜空余的部分多出來讓目標整體不再呈現圓形,形狀特征也變得模糊。
從表3可以看出,YOLOv3算法的1值比Faster RCNN高出3點百分點,后3種算法在3種情況下的1值差異不大,只有成熟蘋果比其他2種情況下高了2~3個百分點。甚至套袋情況下的蘋果1值沒有發生下降,經分析雖然塑料薄膜讓蘋果的特征變得模糊,但是薄膜本身的特征也很明顯,其與背景相比有很大的差異,這使得套袋蘋果實際變得容易識別。猜想算法在同時分辨套袋的蘋果和其他水果的時候,才會發生誤檢測的情況。

表3 4種算法對不同生長階段蘋果的試驗結果
3.3.4 不同采摘時間的對比試驗
本節試驗將拍攝時蘋果的拍攝時間作為控制變量,分別有白天、傍晚和夜晚,其中白天的蘋果131幅圖像306個蘋果,傍晚的蘋果71幅圖像193個蘋果,夜晚的蘋果76幅圖像152個蘋果,同樣不考慮密集蘋果樣本,試驗方法與上節相同,其具體效果如圖11所示,統計結果如表4所示。
從圖11可以看出,蘋果在白天表現正常,其顏色和紋理特征都表現完好。傍晚時蘋果特征與逆光時相似,這里就不再贅述。夜晚時,由于光源的缺少,不同于白天逆光時還有漫反射光對蘋果的照射,蘋果大部分部位都呈現黑色,這種情況下蘋果無論顏色、性質、或者紋理特征都已近乎沒有,僅僅有殘缺的被照到一部分的蘋果。
從表4可以看出,后3種算法在不同時間的檢測效果差不多,并且都在白天時效果最佳,同時光線越暗,1值越小。但是在夜晚下相比白天下降了10個百分點,有了大幅下降,經分析,因為亮度偏低,不僅蘋果表面變暗,背景及其枝葉也變得很暗,這讓蘋果一部分幾乎融入背景,沒有區別。而且輔助用的人工光源的探照范圍有限,被照射的部分與沒有被照射的部分相比亮度差異更大,使沒有被照射的蘋果更加難以被識別。
綜上所述,HOG+SVM算法雖然在各種環境下都能檢測到蘋果,但是1值普遍較低,本文改進的YOLOv3在各種情況下均優于Faster RCNN,與YOLOv2相比雖然相差不大(但也高出1~2個百分點),但是密集蘋果情況下明顯優于YOLOv2。4組對比試驗證明文本的算法能夠適應絕大多數情況下蘋果的目標檢測,使得搭載此視覺算法的果樹采摘機器人的全天候工作變得可能。

圖11 4種算法對不同時間蘋果的檢測效果

表4 4種算法對不同時刻蘋果的試驗結果
除了評估算法的準確率,還需要測試算法在實際檢測目標時所用時間,由于YOLOv3算法在做卷積運算前需要對圖像進行縮放到固定尺寸,所以不同分辨率的圖像在本文算法下檢測時間的差異只與縮放過程所用時間有關,其余流程并沒有區別。本文試驗測試用圖像分辨率均為640×480,考慮到蘋果識別系統是搭載在果樹機器人的工控機之中的,有的工控機只有CPU,為了減少硬件成本,需要模型能夠在單CPU的情況下運行,所以本文分別在GPU和CPU下進行了測試,檢測的精度沒有變化,檢測時間上CPU較GPU變長。
模型在GPU下檢測115幅圖像消耗1.92 s,在CPU下檢測115幅圖像消耗12.1 s,即為60幀/s和15幀/s,平均每幅圖像檢測時間為16.69 ms和105.21 ms。由于在采摘流程里只在開始的初始定位,在采摘過程中并不需要頻繁刷新,所以能夠滿足實際要求。
本文提出了基于深度神經網絡YOLOv3算法的蘋果識別方法。試驗表明該模型的檢測精度高、速度快、在復雜環境下魯棒性高,選用的13層網絡在真實環境下進行檢測,平均每幅圖像在GPU和CPU下的檢測時間為16.69和105.21 ms,準確率和召回率分別達到97%和90%以上。
1)針對果園中復雜的識別環境,提出用優化的YOLOv3深度神經網絡定位蘋果,與YOLOv2相比在密集蘋果條件下1值高出4.45個百分點,其余條件下高出1~2個百分點。
2)對比了HOG+SVM、Faster RCNN、YOLOv2和YOLOv3在不同果實數目、光照角度、果實階段、采摘時間下的檢測結果,其1值總體比HOG+SVM高出約10個百分點,比Faster RCNN高出約5個百分點,本文使用算法檢測精度優勢更為顯著。
3)由于深度學習需要大量的計算能力,在實際使用中還需要考慮功耗和穩定問題,因此未來還需要在實際機器上運行試驗,在不損失精度的情況下縮減網絡模型,減少功耗。
[1] Kapach K, Barnea E, Mairon R, et al. Computer vision for fruit harvesting robots–state of the art and challenges ahead[J]. International Journal of Computational Vision and Robotics, 2012, 3(1/2): 4-34.
[2] 呂繼東,趙德安. 蘋果采摘機器人目標果實快速跟蹤識別方法[J]. 農業機械學報,2014,45(1):65-72. Lu Jidong, Zhao De'an. Fast tracking and recognition method for target fruits of apple picking robots[J]. Transactions of the Chinese Society for Agricultural Machinery, 2014, 45(1): 65-72.(in Chinese with English abstract)
[3] 趙德安,劉曉洋,陳玉,等. 蘋果采摘機器人夜間識別方法[J]. 農業機械學報,2015,46(3):15-22. Zhao Dean, Liu Xiaoyang, Chen Yu, et al. Night recognition method of apple picking robot[J]. Transactions of the Chinese Society for Agricultural Machinery, 2015, 46(3): 15-22. (in Chinese with English abstract)
[4] Ji W, Zhao D, Cheng F, et al. Automatic recognition vision system guided for apple harvesting robot[J]. Computers & Electrical Engineering, 2012, 38(5): 1186-1195.
[5] Stajnko D, Lakota M, Ho?evar M. Estimation of number and diameter of apple fruits in an orchard during the growing season by thermal imaging[J]. Computers and Electronics in Agriculture, 2004, 42(1): 31-42.
[6] Wachs J P, Stern H I, Burks T, et al. Low and high-level visual feature-based apple detection from multi-modal images[J]. Precision Agriculture, 2010, 11(6): 717-735.
[7] Rakun J, Stajnko D, Zazula D. Detecting fruits in natural scenes by using spatial-frequency based texture analysis and multiview geometry[J]. Computers and Electronics in Agriculture, 2011, 76(1): 80-88.
[8] Aggelopoulou A D, Bochtis D, Fountas S, et al. Yield prediction in apple orchards based on image processing[J]. Precision Agriculture, 2011, 12(3): 448-456.
[9] 宋懷波,張衛園,張欣欣,等. 基于模糊集理論的蘋果表面陰影去除方法[J]. 農業工程學報,2014,30(3):135-141. Song Huaibo, Zhang Weiyuan, Zhang Xinxin, et al. Apple surface shadow removal method based on fuzzy set theory[J]. Transactions of the Chinese Society of Agricultural Engineering(Transactions of the CSAE), 2014, 30(3): 135-141. (in Chinese with English abstract)
[10] Kurtulmus F, Lee W S, Vardar A. Green citrus detection using ‘eigenfruit’, color and circular Gabor texture features under natural outdoor conditions[J]. Computers and Electronics in Agriculture, 2011, 78(2): 140-149.
[11] Linker R, Cohen O, Naor A. Determination of the number of green apples in RGB images recorded in orchards[J]. Computers and Electronics in Agriculture, 2012, 81: 45-57.
[12] Arivazhagan S, Shebiah R N, Nidhyanandhan S S, et al. Fruit recognition using color and texture features[J]. Journal of Emerging Trends in Computing and Information Sciences, 2010, 1(2): 90-94.
[13] Xu Y, Imou K, Kaizu Y, et al. Two-stage approach for detecting slightly overlapping strawberries using HOG descriptor[J]. Biosystems engineering, 2013, 115(2): 144-153.
[14] 盧軍,桑農. 變化光照下樹上柑橘目標檢測與遮擋輪廓恢復技術[J]. 農業機械學報,2014,45(4):76-81. Lu Jun, Sang Nong. Detection of citrus targets and restoration of concealed contours in trees under changing light[J]. Transactions of the Chinese Society for Agricultural Machinery, 2014, 45(4): 76-81. (in Chinese with English abstract)
[15] Zhao C, Lee W S, He D. Immature green citrus detection based on colour feature and sum of absolute transformed difference (SATD) using colour images in the citrus grove[J]. Computers and Electronics in Agriculture, 2016, 124: 243-253.
[16] 謝忠紅,姬長英,郭小清,等. 基于改進Hough變換的類圓果實目標檢測[J]. 農業工程學報,2010,26(7):157-162. Xie Zhonghong, Ji Changying, Guo Xiaoqing, et al. Target detection of fruit-like fruit based on improved Hough transform[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2010, 26(7): 157-162. (in Chinese with English abstract)
[17] 馬翠花,張學平,李育濤,等. 基于顯著性檢測與改進 Hough 變換方法識別未成熟番茄[J]. 農業工程學報,2016,32(14):219—226.
Ma Cuihua, Zhang Xueping, Li Yutao, et al. Identification of immature tomatoes based on saliency detection and improved Hough transform method [J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2016, 32(14): 219—226. (in Chinese with English abstract)
[18] Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2014: 580-587.
[19] Girshick R. Fast R-CNN[C]//Proceedings of the IEEE international conference on computer vision. 2015: 1440-1448.
[20] Ren S, He K, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[C]// Advances in neural information processing systems. 2015: 91-99.
[21] 熊俊濤,劉振,湯林越,等. 自然環境下綠色柑橘視覺檢測技術研究[J]. 農業機械學報,2018,49(4):45-52. Xiong Juntao, Liu Zhen, Tang Linyue, et al. Research on green citrus vision detection technology in natural environment[J]. Transactions of the Chinese Society for Agricultural Machinery, 2018, 49(4): 45-52. (in Chinese with English abstract)
[22] Liu W, Anguelov D, Erhan D, et al. Ssd: Single shot multibox detector[C]//European conference on computer vision. Springer, Cham, 2016: 21-37.
[23] Redmon J, Divvala S, Girshick R, et al. You only look once: Unified, real-time object detection[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 779-788.
[24] 薛月菊,黃寧,涂淑琴,等. 未成熟芒果的改進 YOLOv2 識別方法[J]. 農業工程學報,2018,34(7):173—179.
Xue Yueju, Huang Ning, Tu Shuqin, et al. Immature mango detection based on improved YOLOv2 [J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(7) :173—179. (in Chinese with English abstract)
[25] Redmon J, Farhadi A. YOLO9000: Better, Faster, Stronger[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2017: 6517-6525.
[26] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 770-778.
[27] Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]//International Conference on Machine Learning. 2015: 448-456.
[28] Bargoti S, Underwood J. Deep fruit detection in orchards[C]// IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2017: 3626-3633.
[29] Ding W, Taylor G. Automatic moth detection from trap images for pest management[J]. Computers and Electronics in Agriculture, 2016, 123: 17-28.
[30] Hripcsak G, Rothschild A S. Agreement, the f-measure, and reliability in information retrieval[J]. Journal of the American Medical Informatics Association, 2005, 12(3): 296-298.
[31] Dalal N, Triggs B. Histograms of oriented gradients for human detection[C]//Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on. IEEE, 2005: 886-893.
Apple positioning based on YOLO deep convolutional neural network for picking robot in complex background
Zhao Dean1, Wu Rendi1, Liu Xiaoyang1, Zhao Yuyan2
(1.212013,;2.213164,)
Automatic recognition of apple is one of the important aspects for apple harvest robots. Fast apple recognition can improve the efficiency of picking robots. In the actual scene of the orchard, the recognition conditions for apple are complex such as daytime, night, overlap apples, occlusion, bagged, backlighting, reflected light and dense apple, considering which a highly robust and fast visual recognition scheme is required. A fast and stable apple recognition scheme was proposed based on improved YOLOv3 in this paper. The entire image was traversed by a single convolutional neural network (one-stage), dividing an image into a plurality of sub-regions with the same size, and predicting the class of the target and its bounding box in each sub-region. Finally, the non-maximum value suppression was merged into the outer frame of the whole target, and the category and position of the target were returned. In order to improve the detection efficiency, the VGG-like network model was used to replace the original residual network of YOLOv3, and the model size was reduced, in which the 53-layer neural network was compressed into a 13-layer neural network without affecting the detection effect. Taking into account the size of the smallest apple in dense apples images, the anchor points of 3 different sizes were reduced to 2, reducing the final predicted tensor and ensuring that the smallest anchor point could still include the minimum target. The steps in this paper were stated as follows: Firstly, the data set was manually marked, including 400 images for the training set and 115 images for the verification set, including a total of 1 158 apple samples. In addition, in order to increase the generalization ability of the model, the data set was enhanced by adjusting the hue, color amount and exposure of the image, and a total of 51 500 images were generated. Then the initial value of the anchor points was calculated through K-means. Secondly, training the data set, output a model every 100 iterations. For the verification set, the mean average precision (mAP) value of each weight in batches was calculated, selecting the model with the highest mAP value, and finding the appropriate threshold to ensure most preferred precision, recall rate and intersection over union (IOU). The trained model had a mAP which reached up to 87.71%, an accuracy rate up to 97%, a recall rate up to 90%, and an IOU up to 83.61%. Thirdly, the specific performance of the model under image conditions for different fruit number, illumination angle, fruit growth stage and shooting time were verified in additional experimental data sets. The experimental data set consisted of 336 pictures containing 1 410 apple samples. The comparison was performed with algorithms of HOG+SVM, Faster RCNN, YOLOv2, and YOLOv3, with the evaluated index of1 value. The experimental results showed that YOLOv3 performed significantly better than YOLOv2 in dense apples image, and better in other environments than Faster RCNN and HOG+SVM. Finally, the detection accuracy of the algorithm was verified in different hardware environments. The detection time of an image under the GPU was 16.69 ms with 60 frame/s for the actual video, and under the CPU was 105.21 ms with 15 frame/s for the actual video.Since it was positioned only at the beginning of the picking process and it did not require frequently refreshing during the picking process, in which the detection time in this paper was qualified. A reference was provided for the rapid, long-term high efficiency of robots to locate apples in complex environments in this research.
harvesters; machine vision; image recognition; deep learning; picking robot; apple recognition; YOLO
趙德安,吳任迪,劉曉洋,趙宇艷. 基于YOLO深度卷積神經網絡的復雜背景下機器人采摘蘋果定位[J]. 農業工程學報,2019,35(3):164-173. doi:10.11975/j.issn.1002-6819.2019.03.021 http://www.tcsae.org
Zhao Dean, Wu Rendi, Liu Xiaoyang, Zhao Yuyan.Apple positioning based on YOLO deep convolutional neural network for picking robot in complex background[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2019, 35(3): 164-173. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2019.03.021 http://www.tcsae.org
2018-10-19
2019-01-21
國家自然科學基金(31571571);江蘇高校優勢學科建設項目(PAPD)
趙德安,博士,教授,博士生導師,主要從事智能控制、智能機器人研究。Email:dazhao@ujs.edu.cn
10.11975/j.issn.1002-6819.2019.03.021
TP391.4
A
1002-6819(2019)-03-0164-10