薛月菊,黃 寧,涂淑琴,毛 亮,楊阿慶,朱勛沐,楊曉帆,陳鵬飛
?
未成熟芒果的改進(jìn)YOLOv2識(shí)別方法
薛月菊1,2,3,4,黃 寧1,2,涂淑琴5,毛 亮1,楊阿慶1,朱勛沐1,楊曉帆1,陳鵬飛1
(1. 華南農(nóng)業(yè)大學(xué)電子工程學(xué)院,廣州 510642; 2. 廣東省現(xiàn)代養(yǎng)豬數(shù)據(jù)化工程技術(shù)研究中心,廣州 510642; 3. 廣東省智慧果園科技創(chuàng)新中心,廣州 510642; 4. 廣東省農(nóng)情信息監(jiān)測(cè)工程技術(shù)研究中心,廣州 510642; 5. 華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院,廣州 510642)
在果園場(chǎng)景下,由于光照的多樣性、背景的復(fù)雜性及芒果與樹葉顏色的高度相似性,特別是樹葉和枝干對(duì)果實(shí)遮擋及果實(shí)重疊,給未成熟芒果檢測(cè)帶來(lái)極大的挑戰(zhàn)。本文提出果園場(chǎng)景下未成熟芒果的改進(jìn)YOLOv2檢測(cè)方法。設(shè)計(jì)新的帶密集連接的Tiny-yolo網(wǎng)絡(luò)結(jié)構(gòu),實(shí)現(xiàn)網(wǎng)絡(luò)多層特征的復(fù)用和融合,提高檢測(cè)精度。為克服遮擋重疊果實(shí)檢測(cè)困難,手工標(biāo)注遮擋或重疊芒果的前景區(qū)域,然后用樣本的前景區(qū)域訓(xùn)練YOLOv2網(wǎng)絡(luò),減小邊界框內(nèi)非前景區(qū)域特征的干擾,增強(qiáng)對(duì)目標(biāo)前景區(qū)域卷積特征的學(xué)習(xí)。并以擴(kuò)增的數(shù)據(jù)集,采用增大輸入尺度和多尺度策略訓(xùn)練網(wǎng)絡(luò)。最后,對(duì)本文方法進(jìn)行性能評(píng)價(jià)與對(duì)比試驗(yàn)。試驗(yàn)結(jié)果表明,該方法在測(cè)試集上,芒果目標(biāo)檢測(cè)速度達(dá)83幀/s,準(zhǔn)確率達(dá)97.02%,召回率達(dá)95.1%。對(duì)比Faster RCNN,該方法在雜物遮擋和果實(shí)重疊等復(fù)雜場(chǎng)景下,檢測(cè)性能顯著提升。
神經(jīng)網(wǎng)絡(luò);特征提取;估產(chǎn);芒果;密集連接;YOLOv2網(wǎng)絡(luò)
芒果是常見的熱帶水果,在國(guó)內(nèi)外水果市場(chǎng)中占有較大比重。而傳統(tǒng)的芒果種植、施肥施藥、采摘以及后續(xù)一系列生產(chǎn)加工過(guò)程,都耗費(fèi)著大量的人力、物力和其他資源[1-2]。在芒果精準(zhǔn)種植中,要對(duì)芒果進(jìn)行智能噴施、生長(zhǎng)態(tài)勢(shì)監(jiān)測(cè),盡早地進(jìn)行芒果估產(chǎn)及采摘?jiǎng)趧?dòng)力需求預(yù)測(cè),就必須首先對(duì)未成熟芒果進(jìn)行精確檢測(cè)。計(jì)算機(jī)視覺(jué)為水果自動(dòng)檢測(cè)提供了一種非常有效的手段,但果園場(chǎng)景下遮擋或重疊果實(shí)檢測(cè)一直以來(lái)都是水果檢測(cè)的難題[3-5]。
對(duì)于自然場(chǎng)景下的芒果目標(biāo)檢測(cè)研究,近年來(lái)已取得一定進(jìn)展[3-7]。Hussin等[3]利用顏色特征去除與芒果顏色無(wú)關(guān)的背景,使用圓形Hough變換進(jìn)行目標(biāo)檢測(cè),檢測(cè)精度約為60%。但從不同視角獲得芒果圖像時(shí),果實(shí)形狀并非標(biāo)準(zhǔn)的圓或橢圓,且在芒果重疊情形下,各果實(shí)區(qū)域會(huì)合并而形成連通區(qū)域,極易導(dǎo)致錯(cuò)誤檢測(cè)。Payne等[4-5]利用紋理和顏色特征,對(duì)收獲前3周的淡紅色芒果進(jìn)行識(shí)別;為消除非樹冠區(qū)域?qū)γ⒐麢z測(cè)的影響,利用人工照明在夜間采集芒果圖像,基于顏色匹配和Hessian濾波器對(duì)芒果進(jìn)行檢測(cè)。但獲取夜間圖像需額外的照明設(shè)備,影響了該方法的實(shí)用性。Sa等[6]利用RGB和NIR圖像信息,分別用前期、后期融合的方法訓(xùn)練多模態(tài)Faster RCNN模型并檢測(cè)了芒果,但此方法對(duì)大面積遮擋的情形并無(wú)滿意的檢測(cè)結(jié)果。Stein等[7]用多視點(diǎn)方法解決芒果遮擋問(wèn)題,通過(guò)多個(gè)視點(diǎn)的多個(gè)圖像序列對(duì)果實(shí)進(jìn)行關(guān)聯(lián)和跟蹤,但此方法需要復(fù)雜的輔助設(shè)備,實(shí)時(shí)性能不高。另外,針對(duì)蘋果、桃子、草莓、柑橘等遮擋重疊水果的檢測(cè)方法相繼被提出[8-14]。Xu等[10]利用HOG特征與SVM分類器研究草莓的檢測(cè),將草莓分成5個(gè)感興趣區(qū)域分別訓(xùn)練SVM分類器,并在組合分類器后進(jìn)行草莓檢測(cè),達(dá)到87%的精確率,但此方法只能有效檢測(cè)輕微重疊的草莓。Gong等[11]采用改進(jìn)Freeman 8鄰域鏈碼方法進(jìn)行了簇生重疊水果數(shù)量的計(jì)算。但該方法依賴于分割精度,不準(zhǔn)確的分割將導(dǎo)致果實(shí)邊緣編碼錯(cuò)誤,影響計(jì)數(shù)精度。盧軍等[12]提出輪廓恢復(fù)的方法進(jìn)行遮擋柑橘的檢測(cè),首先使用Canny算子檢測(cè)邊緣,然后用自適應(yīng)直線擬合和邊界跟蹤算法構(gòu)造邊緣片段集,最后應(yīng)用橢圓擬合方法檢測(cè)目標(biāo),輪廓恢復(fù)相對(duì)誤差達(dá)5.34%。但上述研究中,果實(shí)大多接近成熟或已成熟,果實(shí)顏色在果園場(chǎng)景中較為明顯,而本文中未成熟芒果顏色與樹葉顏色高度相似,形狀并非標(biāo)準(zhǔn)的圓或橢圓,甚至果實(shí)被樹葉、枝干遮擋或果實(shí)相互重疊。這些因素均給芒果檢測(cè)帶來(lái)很大困難。
近年來(lái),深度卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)在目標(biāo)檢測(cè)上顯現(xiàn)出巨大的優(yōu)越性,主要包括兩大類。一類為基于區(qū)域生成的檢測(cè)方法,首先生成許多可能包含目標(biāo)的候選區(qū)域,然后用CNN對(duì)每個(gè)候選區(qū)域進(jìn)行分類[15-17]。另一類為基于回歸的方法,利用CNN對(duì)整個(gè)圖像進(jìn)行處理,在實(shí)現(xiàn)目標(biāo)定位的同時(shí)預(yù)測(cè)目標(biāo)類別[18-20],其速度往往快于前類方法。為彌補(bǔ)后類方法檢測(cè)精度上的不足,研究者利用深層CNN,如He等[21]和Szegedy等[22]等網(wǎng)絡(luò)提高精度。但深層CNN往往導(dǎo)致更高的計(jì)算復(fù)雜度,且數(shù)據(jù)信息在多層傳播后很可能會(huì)逐漸消失。DenseNet(densely connected convolutional networks,密集連接卷積網(wǎng)絡(luò)),通過(guò)密集連接,讓網(wǎng)絡(luò)每一層都能接受到它前面所有層的特征圖,并以特征拼接(concatenate)的方式進(jìn)行數(shù)據(jù)聚合,強(qiáng)化了特征傳播,有效解決了梯度消失問(wèn)題,并實(shí)現(xiàn)了特征復(fù)用,顯著提高了網(wǎng)絡(luò)分類精度[23]。
為解決果園場(chǎng)景下未成熟芒果快速、高精度檢測(cè)問(wèn)題,本文選擇基于回歸的方法中檢測(cè)速度快的YOLOv2算法[20],提出密集連接的Tiny-yolo網(wǎng)絡(luò)結(jié)構(gòu),以及用遮擋重疊果實(shí)目標(biāo)前景區(qū)域樣本加強(qiáng)前景區(qū)域特征學(xué)習(xí)的方法,融合數(shù)據(jù)擴(kuò)增[24]和多尺度訓(xùn)練策略[20],并訓(xùn)練了改進(jìn)的YOLOv2芒果目標(biāo)檢測(cè)網(wǎng)絡(luò)。在雜物遮擋與果實(shí)重疊2類干擾場(chǎng)景下,本文方法的檢測(cè)效果顯著提升。
試驗(yàn)果園位于肇慶市蓮塘鎮(zhèn),共有芒果樹80株,芒果品種為四季蜜芒,果實(shí)呈長(zhǎng)橢圓形。未成熟果皮呈綠色,近生理成熟期時(shí)果皮呈灰綠色,成熟后果皮呈鮮黃色。于2016年6月12日、19日和26日及2017年6月22日,分別使用SONY NEX-5T和Kinect2.0設(shè)備,距離每個(gè)樹冠1~2 m、按東南西北4個(gè)不同方向、采集成熟前3至7周青綠色或灰綠色的芒果圖像共960張。圖像采集時(shí)的天氣包括晴天、多云和陰天,采集時(shí)段為8:00-18:00,涵蓋了順光、逆光與側(cè)光等可能的光照情況。從960張芒果圖像中隨機(jī)挑選660張作為原始訓(xùn)練圖像(含3 702個(gè)芒果目標(biāo)),將剩余300張作為測(cè)試圖像(含1 713個(gè)芒果目標(biāo))。
訓(xùn)練樣本圖像增強(qiáng)可提高樣本的質(zhì)量及多樣性,有利于CNN檢測(cè)精度提高[24-26]。如,Stern等[24]用亮度變化擴(kuò)增樣本,Ding等[25]將昆蟲樣本圖像進(jìn)行白平衡處理,來(lái)提高昆蟲檢測(cè)精度。果園自然光照下,特別是光照很強(qiáng)時(shí),由于芒果互遮擋或逆光拍攝導(dǎo)致果實(shí)表面產(chǎn)生陰影,使果實(shí)顏色與正常光照下漫反射區(qū)域的顏色有很大差異,影響了芒果樣本圖像的質(zhì)量。而訓(xùn)練樣本的質(zhì)量則會(huì)影響模型的檢測(cè)效果。本文用自適應(yīng)直方圖均衡化,對(duì)芒果圖像進(jìn)行增強(qiáng),減小光照對(duì)圖像質(zhì)量的影響。且,對(duì)圖像進(jìn)行自適應(yīng)直方圖均衡化,相當(dāng)于調(diào)整了圖像亮度,增加了樣本圖像光照的多樣性。因此,本文用該方法提升樣本圖像質(zhì)量及擴(kuò)增樣本數(shù)量。
為提高YOLOv2芒果檢測(cè)精度,本文在樣本標(biāo)注過(guò)程中充分考慮了目標(biāo)的各種外觀和形態(tài)。首先,對(duì)660張?jiān)加?xùn)練圖像中的3 702個(gè)芒果目標(biāo)進(jìn)行了邊界框標(biāo)注(目標(biāo)被遮擋面積≥50%時(shí)不作標(biāo)注);并對(duì)其中遮擋重疊1 077個(gè)芒果標(biāo)注了目標(biāo)前景區(qū)域,即對(duì)目標(biāo)背景區(qū)域像素值置0(詳見2.2節(jié)),形成原始的訓(xùn)練集,見表1中的A組數(shù)據(jù)。另外,手工標(biāo)注300張測(cè)試圖像中的1 713個(gè)芒果目標(biāo)邊界框(目標(biāo)被遮擋面積≥50%時(shí)不作標(biāo)注),作為測(cè)試集,用于評(píng)價(jià)模型的檢測(cè)精度。測(cè)試集無(wú)須標(biāo)注目標(biāo)前景區(qū)域。
本文采用人工標(biāo)注、交互式標(biāo)注與Matlab編程相結(jié)合的方式進(jìn)行標(biāo)注:1)使用自行開發(fā)的樣本標(biāo)注軟件,標(biāo)注芒果目標(biāo)邊界框;2)利用Photoshop軟件的快速選擇工具對(duì)遮擋重疊目標(biāo)芒果,自動(dòng)生成果實(shí)的邊緣閉合曲線;但對(duì)表面顏色和光照不均勻果實(shí),難以自動(dòng)生成準(zhǔn)確的邊緣,需手工標(biāo)注果實(shí)邊緣輪廓;3)利用Matlab編程,讀取果實(shí)邊界框信息和邊緣信息,并對(duì)目標(biāo)果實(shí)邊界框中的邊緣輪廓曲線外區(qū)域的像素置0。
對(duì)原始訓(xùn)練集3 702個(gè)芒果目標(biāo)的邊界框標(biāo)注約需8.23 h,對(duì)其中1 077個(gè)遮擋重疊果實(shí)的邊緣輪廓標(biāo)注約需2.55 h。在邊界框和邊緣輪廓標(biāo)注完成后,邊界框內(nèi)邊緣輪廓外的區(qū)域置0處理可通過(guò)Matlab編程自動(dòng)完成。
本文擴(kuò)增了訓(xùn)練樣本[24,26]??紤]到樹冠上大部分芒果呈豎直懸掛姿態(tài),而部分芒果因枝干或其他芒果的阻擋呈多角度傾斜懸掛姿態(tài),故本文對(duì)訓(xùn)練樣本進(jìn)行了水平鏡像翻轉(zhuǎn)、以及±10°、±20°旋轉(zhuǎn)操作。并對(duì)旋轉(zhuǎn)后的圖像進(jìn)行居中截取。經(jīng)旋轉(zhuǎn)處理后,圖像中靠近邊緣的目標(biāo)若出現(xiàn)殘缺或完全丟失情況,則放棄標(biāo)注。
通過(guò)對(duì)訓(xùn)練樣本的增強(qiáng)和擴(kuò)增處理,分別獲得3類數(shù)據(jù)集,如表1所示。數(shù)據(jù)集A是原始圖像中的芒果目標(biāo)訓(xùn)練集,數(shù)據(jù)集B是對(duì)原始圖像進(jìn)行自適應(yīng)直方圖均衡化增強(qiáng)后的芒果目標(biāo)樣本集,數(shù)據(jù)集C是對(duì)數(shù)據(jù)集A和B擴(kuò)增的芒果目標(biāo)樣本集(不包含數(shù)據(jù)集A和B)。在數(shù)據(jù)集A和B中,芒果目標(biāo)邊界框的標(biāo)注數(shù)量均為3 702個(gè),并對(duì)遮擋重疊芒果(共1 077個(gè))標(biāo)注目標(biāo)前景區(qū)域。在數(shù)據(jù)集C中,芒果目標(biāo)邊界框的標(biāo)注數(shù)量為31 088個(gè),前景區(qū)域標(biāo)注數(shù)量為10 430個(gè)。
表1 數(shù)據(jù)集及其數(shù)據(jù)量
YOLOv2網(wǎng)絡(luò)的前身是YOLO網(wǎng)絡(luò)[18]。YOLO網(wǎng)絡(luò)無(wú)需區(qū)域生成,直接在整個(gè)輸入圖像中回歸預(yù)測(cè)目標(biāo),極大提高了檢測(cè)速度。如圖1所示,該網(wǎng)絡(luò)將重置尺寸后的輸入圖像劃分成×(= 7)的網(wǎng)格,在每個(gè)網(wǎng)格中預(yù)測(cè)2個(gè)邊界框及其置信度,以及(= 2)種類別的條件概率,最后使用非極大值抑制法過(guò)濾閾值較低的邊界框,得到最終的目標(biāo)預(yù)測(cè)框。
圖1 YOLO檢測(cè)模型
為解決YOLO網(wǎng)絡(luò)檢測(cè)易遺漏、定位不精準(zhǔn)的問(wèn)題,YOLOv2中引入錨點(diǎn)框、錨點(diǎn)框高寬維度聚類、高分辨率分類器及改進(jìn)位置坐標(biāo)預(yù)測(cè)方法等。在YOLOv2訓(xùn)練時(shí),采用了多尺度訓(xùn)練策略[20]。為提高檢測(cè)速度,YOLOv2設(shè)計(jì)了只包含卷積層和池化層的Darknet-19和Tiny-yolo網(wǎng)絡(luò)結(jié)構(gòu)。在VOC2007測(cè)試集上,YOLOv2 416×416[20]的檢測(cè)精度和速度,均優(yōu)于Faster RCNN[17]、SSD[19]和YOLO等主流算法。但YOLOv2對(duì)果園場(chǎng)景下未成熟芒果,特別是遮擋或重疊芒果的檢測(cè)精度有待提高,為此本文提出:1)結(jié)合密集連接的Tiny-yolo網(wǎng)絡(luò)結(jié)構(gòu);2)標(biāo)注訓(xùn)練樣本遮擋重疊芒果目標(biāo)的前景區(qū)域,以加強(qiáng)前景區(qū)域特征的學(xué)習(xí)。
為實(shí)現(xiàn)果實(shí)在線檢測(cè),本文選取結(jié)構(gòu)較為簡(jiǎn)單、運(yùn)算復(fù)雜度較低的Tiny-yolo作為YOLOv2的基礎(chǔ)網(wǎng)絡(luò)。Tiny-yolo由9層卷積層和6層最大池化層交替組成前饋網(wǎng)絡(luò),導(dǎo)致信息在傳遞時(shí)逐層丟失,未能更好地利用多層的特征信息,降低了檢測(cè)精度。為實(shí)現(xiàn)多層特征復(fù)用和融合,且避免新增結(jié)構(gòu)帶來(lái)的計(jì)算復(fù)雜度,本文借鑒Huang等[23]提出的密集連接思想,僅在Tiny-yolo網(wǎng)絡(luò)特征圖分辨率較低的深層嵌入密集模塊,即用密集模塊(見圖2虛線框)替代Tiny-yolo的第7卷積層(分辨率為16′16),構(gòu)建帶密集連接的Tiny-yolo-dense網(wǎng)絡(luò)(見表2),使第8卷積層能接收密集連接塊輸出的多層卷積特征,實(shí)現(xiàn)特征復(fù)用和融合,如圖2所示。在密集模塊中:
x = H( [01……x-1] ) , (= 1,2,3,4) (1)
其中0為模塊輸入特征圖,x表示第層的輸出。[0,1……x1]表示對(duì)0,1……x1的拼接。H(·)為BN(batch normalization,批量歸一化)、ReLU(rectified linear units)及卷積的組合函數(shù),實(shí)現(xiàn)第層非線性變換。本文的H(·)操作為BN-ReLU-Conv(1,1)- BN-ReLU-Conv(3,3)。
例如,在第2層組合中,由特征圖0和第1層輸出特征圖1拼接成的640個(gè)通道特征圖,即[0,1]作為2的輸入;2對(duì)[0,1]進(jìn)行BN操作和激活函數(shù)ReLU非線性映射后,用256個(gè)1×1卷積核卷積生成256個(gè)特征圖,再進(jìn)行BN和ReLU操作后用128個(gè)3×3卷積核進(jìn)行卷積,輸出128個(gè)特征圖2。然后,2與[0,1]拼接為768個(gè)通道特征圖[0,1,2],作為3的輸入。類似地,3也輸出128個(gè)通道特征圖3,以此類推。
圖2 Tiny-yolo-dense網(wǎng)絡(luò)結(jié)構(gòu)
表2 Tiny-yolo-dense網(wǎng)絡(luò)參數(shù)
根據(jù)Hariharan等提出的R-CNN[15]與SDS[27]目標(biāo)檢測(cè)網(wǎng)絡(luò),本文針對(duì)果實(shí)遮擋或重疊給芒果檢測(cè)帶來(lái)的困難,提出用訓(xùn)練樣本目標(biāo)前景區(qū)域標(biāo)注加強(qiáng)芒果前景區(qū)域卷積特征學(xué)習(xí)的方法。首先,通過(guò)手工標(biāo)注方法,對(duì)目標(biāo)背景區(qū)域的像素置零,獲得目標(biāo)前景區(qū)域樣本,并使用目標(biāo)前景區(qū)域樣本對(duì)改進(jìn)YOLOv2網(wǎng)絡(luò)進(jìn)行訓(xùn)練,降低邊界框內(nèi)非前景特征的干擾,以增強(qiáng)網(wǎng)絡(luò)對(duì)前景特征的學(xué)習(xí),得到芒果檢測(cè)網(wǎng)絡(luò)。樣本標(biāo)注時(shí),將標(biāo)注邊界框內(nèi)目標(biāo)背景區(qū)域的像素置0,而前景區(qū)域像素保持不變,如圖3所示。如此,當(dāng)改進(jìn)YOLOv2網(wǎng)絡(luò)進(jìn)行卷積特征提取時(shí),可以降低樹葉、枝干或重疊的非本目標(biāo)果實(shí)等無(wú)關(guān)信息特征對(duì)目標(biāo)特征提取的影響。同時(shí),為了保留芒果目標(biāo)邊緣及其鄰域的顏色、形狀和紋理等信息[28],邊界框內(nèi)目標(biāo)前景區(qū)域包括了目標(biāo)輪廓外圍一定區(qū)域(5~10個(gè)像素),以加強(qiáng)YOLOv2對(duì)包括目標(biāo)邊緣的前景區(qū)域特征的學(xué)習(xí)。
芒果目標(biāo)檢測(cè)網(wǎng)絡(luò)的訓(xùn)練流程如圖4所示。對(duì)訓(xùn)練集中原始圖像進(jìn)行自適應(yīng)直方圖均衡化后,手工標(biāo)注訓(xùn)練樣本,包括邊界框標(biāo)注和前景區(qū)域標(biāo)注;對(duì)標(biāo)注樣本進(jìn)行數(shù)據(jù)擴(kuò)增;以Tiny-yolo-dense為訓(xùn)練網(wǎng)絡(luò),設(shè)計(jì)I-YOLOv2(improved YOLOv2)檢測(cè)模型;采用多尺度訓(xùn)練策略,用訓(xùn)練樣本集的邊界框和前景區(qū)域信息進(jìn)行I-YOLOv2訓(xùn)練。
圖3 目標(biāo)前景區(qū)域標(biāo)注
圖4 芒果檢測(cè)訓(xùn)練流程
1)試驗(yàn)平臺(tái)。本文在Darknet框架上實(shí)現(xiàn)YOLOv2和YOLO算法[29],服務(wù)器平臺(tái)配置為:Intel? Xeon(R) CPU E3-1245 v3@ 3.40GHz處理器,32GB運(yùn)行內(nèi)存,2T硬盤容量,12GB GTX Titan X GPU,系統(tǒng)為Ubuntu 14.04。
2)網(wǎng)絡(luò)訓(xùn)練參數(shù)設(shè)置。訓(xùn)練階段采用動(dòng)量項(xiàng)為 0.9 的異步隨機(jī)梯度下降,權(quán)值的初始學(xué)習(xí)率為0.001,衰減系數(shù)設(shè)為0.0005。
3)網(wǎng)絡(luò)訓(xùn)練策略。針對(duì)復(fù)雜自然場(chǎng)景中芒果尺度存在差異、個(gè)別目標(biāo)尺度較小等特點(diǎn),I-YOLOv2網(wǎng)絡(luò)訓(xùn)練主要采用以下策略:一是增大輸入尺度。在512×512的分辨率下微調(diào)網(wǎng)絡(luò),以適應(yīng)檢測(cè)中更高的輸入分辨率。此策略可提高檢測(cè)精度,但也降低檢測(cè)速度[20]。二是多尺度訓(xùn)練。在訓(xùn)練迭代中,網(wǎng)絡(luò)每隔10個(gè)批量,從設(shè)定的多尺度集{384, 416……672}中重新隨機(jī)更換一個(gè)尺度繼續(xù)訓(xùn)練。此策略使模型在不同的輸入分辨率下均具有較好的檢測(cè)效果,以適應(yīng)多尺度芒果目標(biāo)檢測(cè)。
分別以訓(xùn)練集A、B和A+B+C(見表1)訓(xùn)練YOLOv2芒果檢測(cè)網(wǎng)絡(luò),進(jìn)行與改進(jìn)基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu)、目標(biāo)前景區(qū)域訓(xùn)練樣本的對(duì)比試驗(yàn),重點(diǎn)分析遮擋重疊果實(shí)檢測(cè)的性能,并與Faster RCNN、YOLO、Adaboost等檢測(cè)模型進(jìn)行性能比較。將300張(1 713個(gè)芒果目標(biāo))測(cè)試集圖像輸入訓(xùn)練好的網(wǎng)絡(luò),進(jìn)行芒果目標(biāo)的位置回歸,當(dāng)模型預(yù)測(cè)的目標(biāo)邊界框與手工標(biāo)注的邊界框IOU(交并集比)≥0.7時(shí),則認(rèn)為檢測(cè)正確,否則為錯(cuò)誤,得到試驗(yàn)結(jié)果。選取準(zhǔn)確率(precision,)、召回率(recall,)、1值[30](1-measure,1)和檢測(cè)速度作為評(píng)價(jià)準(zhǔn)則。其中,1值為平衡準(zhǔn)確率與召回率的度量函數(shù),定義為
1= 2×(+)(2)
分別以Tiny-yolo和Tiny-yolo-dense為基礎(chǔ)網(wǎng)絡(luò)的檢測(cè)結(jié)果如表3所示。改進(jìn)后準(zhǔn)確率和召回率相比改進(jìn)前分別提高了0.9%和1.34%。密集連接實(shí)現(xiàn)了多層特征的拼接,進(jìn)行了特征復(fù)用,減少前面層特征信息的流失,因此有利于I-YOLOv2檢測(cè)精度的提高。同時(shí),密集連接模塊對(duì)檢測(cè)速度影響很小,達(dá)83幀/s。Tiny-yolo-dense增加的密集連接模塊中包含8層卷積層,新曾加的8層分別用1×1和3×3的卷積核在空間分辨率很小的16×16的特征圖上進(jìn)行卷積操作,使Tiny-yolo-dense相比Tiny-yolo具有更小的參數(shù)量,因而在提高檢測(cè)精度的同時(shí)保持了很好的實(shí)時(shí)性。
表3 改進(jìn)網(wǎng)絡(luò)的檢測(cè)結(jié)果
注:為準(zhǔn)確率(precision)、為召回率。下同。
Note:is precision rate, %;is recall rate, %. The same bellow.
為驗(yàn)證前景區(qū)域訓(xùn)練樣本對(duì)檢測(cè)精度的作用,進(jìn)行對(duì)比試驗(yàn),結(jié)果見表4。原始圖像中的3 702個(gè)訓(xùn)練樣本,1組訓(xùn)練集僅包含3 702個(gè)樣本的邊界框標(biāo)注,另1組包含1 077個(gè)遮擋重疊樣本的前景區(qū)域標(biāo)注和2 625個(gè)單個(gè)未遮擋樣本的邊界框標(biāo)注,并對(duì)這2組樣本分別進(jìn)行數(shù)據(jù)擴(kuò)增。用這4組訓(xùn)練集分別訓(xùn)練以Tiny-yolo-dense為基礎(chǔ)網(wǎng)絡(luò)的I-YOLOv2,在測(cè)試集上,檢測(cè)效果示例見圖5a~5c??梢钥闯觯ㄟ^(guò)芒果訓(xùn)練樣本目標(biāo)前景區(qū)域標(biāo)注,I-YOLOv2網(wǎng)絡(luò)訓(xùn)練中,由于減小邊界框內(nèi)非前景區(qū)域特征的干擾,明顯提升了檢測(cè)精度,克服了遮擋重疊果實(shí)檢測(cè)的困難。數(shù)據(jù)擴(kuò)增后,使用前景區(qū)域標(biāo)注的訓(xùn)練集獲得的模型,檢測(cè)精度相比未使用前景區(qū)域標(biāo)注的模型有顯著的提升,對(duì)測(cè)試集中所有果實(shí)準(zhǔn)確率和召回率分別提高了1.5%和2.38%,對(duì)雜物遮擋果分別提高了2.19%和4.65%,對(duì)重疊果實(shí)分別提高了9.76%和10.86%。
以Tiny-yolo-dense為基礎(chǔ)網(wǎng)絡(luò),進(jìn)行了擴(kuò)增數(shù)據(jù)前后的對(duì)比試驗(yàn)。由表5可以看出,對(duì)原始圖像數(shù)據(jù)(A)增強(qiáng)處理后(B),訓(xùn)練模型的準(zhǔn)確率和召回率分別提高了0.29%和0.34%。經(jīng)過(guò)數(shù)據(jù)擴(kuò)增后(A+B+C),準(zhǔn)確率和召回率相比擴(kuò)增前(A)分別提高了3.91%和4.17%,檢測(cè)效果如圖5d所示。結(jié)果表明,圖像增強(qiáng)、鏡像、旋轉(zhuǎn)等處理方法可進(jìn)一步提高檢測(cè)精度。
表4 使用前景區(qū)域訓(xùn)練樣本的檢測(cè)結(jié)果
注:1值為平衡準(zhǔn)確率與召回率的度量函數(shù),1= 2×(+)。
Note:1is metric function of precision rate and recall rate,1= 2×(+).
注:Nfg為前景區(qū)域標(biāo)注量,Nt 為標(biāo)注總量。
表5 不同訓(xùn)練集的檢測(cè)結(jié)果
在果實(shí)稀疏完整、樹干或枝葉等雜物遮擋以及果實(shí)重疊密集場(chǎng)景下,用數(shù)據(jù)集A+B+C訓(xùn)練的I-YOLOv2,在測(cè)試集上均有良好的檢測(cè)性能,見圖6和表6。對(duì)重疊果實(shí)的檢測(cè),I-YOLOv2依然達(dá)到90.17%的準(zhǔn)確率和87.63%的召回率,但其檢測(cè)精度明顯低于果實(shí)稀疏完整及受樹枝樹葉遮擋情形下的精度。
圖6 I-YOLOv2模型在不同場(chǎng)景下的檢測(cè)示例
表6 I-YOLOv2與Faster RCNN的檢測(cè)結(jié)果比較
本文用擴(kuò)增訓(xùn)練集(A+B+C)訓(xùn)練了Faster RCNN檢測(cè)模型,并在測(cè)試集上與I-YOLOv2的結(jié)果進(jìn)行了對(duì)比。如表6所示,在果實(shí)稀疏完整的場(chǎng)景下,I-YOLOv2與Faster RCNN在測(cè)試集上(包含順光、逆光、側(cè)光等情形)均有較高檢測(cè)精度,可見基于CNN的檢測(cè)模型對(duì)光照變化具有較強(qiáng)的魯棒性,但果實(shí)的遮擋、重疊卻對(duì)檢測(cè)精度有著顯著影響。在果實(shí)稀疏完整、雜物遮擋和果實(shí)重疊3類場(chǎng)景下,本文方法的準(zhǔn)確率和召回率均高于Faster RCNN方法,分別提高了1.97%和1.14。特別是在果實(shí)重疊場(chǎng)景下,本文I-YOLOv2的準(zhǔn)確率和召回率分別高出3.84%和4.12%。
I-YOLOv2與Faster RCNN模型訓(xùn)練時(shí)間分別是16.37和10.92 h,檢測(cè)速度為用訓(xùn)練好的模型進(jìn)行前向計(jì)算、目標(biāo)位置回歸的速度,分別為83和7幀/s。本文I-YOLOv2的檢測(cè)速度比Faster RCNN提高了約11倍,具有更優(yōu)越的實(shí)時(shí)性。原因在于:1)在Faster RCNN中,首先用區(qū)域生成網(wǎng)絡(luò)生成2 000多個(gè)可能包含目標(biāo)的候選區(qū)域,然后檢測(cè)器Fast RCNN用CNN對(duì)每個(gè)候選區(qū)域進(jìn)行分類,這個(gè)復(fù)雜的框架,增加了網(wǎng)絡(luò)的計(jì)算量。而YOLOv2利用CNN對(duì)整個(gè)圖像進(jìn)行處理,判斷目標(biāo)可能的位置,縮減了可能圖像塊的個(gè)數(shù),大大降低了計(jì)算復(fù)雜度[18,20]。2)Faster RCNN往往以VGG-16為訓(xùn)練網(wǎng)絡(luò),而本文以Tiny-yolo-dense為I-YOLOv2的訓(xùn)練網(wǎng)絡(luò),參數(shù)量遠(yuǎn)遠(yuǎn)小于VGG-16[29]。所以,本文I-YOLOv2相比Faster RCNN檢測(cè)速度大幅度提升。
另外,用訓(xùn)練集A+B+C還訓(xùn)練了YOLO和以HOG為特征的Adaboost模型,圖7為在測(cè)試集上各模型的P-R(Precision-Recall)曲線??梢钥闯觯疚牡腎-YOLOv2檢測(cè)精度遠(yuǎn)遠(yuǎn)高于其他模型。利用CNN進(jìn)行卷積特征提取的I-YOLOv2、Faster R-CNN和YOLO的精度明顯高于Adaboost。由于CNN可同時(shí)提取顏色、紋理和形狀特征,優(yōu)于HOG特征,故用CNN檢測(cè)方法性能更加優(yōu)越。
圖7 P-R曲線
本文提出了基于改進(jìn)的YOLOv2芒果目標(biāo)檢測(cè)方法。試驗(yàn)表明該模型檢測(cè)精度高、速度快、對(duì)遮擋和重疊干擾具有更強(qiáng)魯棒性,準(zhǔn)確率和召回率分別達(dá)到了97.02%和95.1%,且檢測(cè)速度達(dá)83幀/s。
1)提出帶密集連接的Tiny-yolo-dense網(wǎng)絡(luò),相比Tiny-yolo網(wǎng)絡(luò),準(zhǔn)確率和召回率分別提高了0.9%和1.34%。
2)提出用訓(xùn)練樣本目標(biāo)前景區(qū)域標(biāo)注加強(qiáng)芒果前景區(qū)域卷積特征學(xué)習(xí)的方法,避免了非目標(biāo)特征的提取,提高了YOLOv2芒果檢測(cè)模型在重疊遮擋場(chǎng)景下的性能,對(duì)雜物遮擋果實(shí)檢測(cè)的準(zhǔn)確率和召回率分別提高了2.19%和4.65%,對(duì)重疊果實(shí)的準(zhǔn)確率和召回率分別提高了9.76%和10.86%。
3)與Faster RCNN相比,本文的I-YOLOv2芒果檢測(cè)網(wǎng)絡(luò),在雜物遮擋場(chǎng)景下檢測(cè)準(zhǔn)確率與召回率分別高出1.97%和1.14%,在果實(shí)重疊場(chǎng)景下分別高出3.84%和4.12%,檢測(cè)速度提高了約11倍,體現(xiàn)出本文方法的快速性。相比YOLO和Adaboost模型,本文方法檢測(cè)精度優(yōu)勢(shì)更為顯著,這也為其他水果檢測(cè)的研究提供了思路。
YOLOv2作為一種有監(jiān)督深度學(xué)習(xí)方法,對(duì)訓(xùn)練數(shù)據(jù)的質(zhì)量、數(shù)量與多樣性均有較高要求,而樣本標(biāo)注是建立有效數(shù)據(jù)集必要而又耗時(shí)的工作。本文目標(biāo)前景區(qū)域訓(xùn)練樣本的使用,雖然增加了一定的樣本標(biāo)注工作量,但極大地提高了遮擋果實(shí),特別是重疊果實(shí)的檢測(cè)精度,而遮擋重疊的果實(shí)檢測(cè)長(zhǎng)期以來(lái)都是基于計(jì)算機(jī)視覺(jué)的水果檢測(cè)的一個(gè)難題。今后,農(nóng)業(yè)場(chǎng)景下基于半監(jiān)督或無(wú)監(jiān)督學(xué)習(xí)的深度網(wǎng)絡(luò)檢測(cè)方法,將成為降低手工標(biāo)注樣本工作量的有效途徑。
[1] 李日旺, 黃國(guó)弟, 蘇美花, 等. 我國(guó)芒果產(chǎn)業(yè)現(xiàn)狀與發(fā)展策略[J]. 南方農(nóng)業(yè)學(xué)報(bào), 2013, 44(5): 875-878.
Li Riwang, Huang Guodi, Su Meihua, et al. Status and developmental strategies of mango industry in China[J]. Journal of Southern Agriculture, 2013, 44(5):875-878. (in Chinese with English abstract)
[2] 施茹萍. 如何提高芒果種植效率[J]. 農(nóng)業(yè)與技術(shù), 2017, 37(8): 45, 69.
Shi Ruping. The way to improve mango planting efficiency [J]. Agriculture and Technology. 2017, 37(8): 45, 69. (in Chinese with English abstract)
[3] Hussin R, Juhari M R, Kang N W, et al. Digital Image Processing Techniques for Object Detection From Complex Background Image[J]. Procedia Engineering, 2012, 41: 340-344.
[4] Payne A B, Walsh K B, Subedi P P, et al. Estimation of mango crop yield using image analysis-Segmentation method[J].Computers & Electronics in Agriculture, 2013, 91(2): 57-64.
[5] Payne A, Walsh K, Subedi P, et al. Estimating mango crop yield using image analysis using fruit at 'stone hardening' stage and night time imaging[J]. Computers & Electronics in Agriculture, 2014, 100(2): 160-167.
[6] Sa I, Ge Z, Dayoub F, et al. DeepFruits_ A Fruit Detection System Using Deep Neural Networks[J]. Sensors, 2016, 16(8): 1222.
[7] Stein M, Bargoti S, Underwood J. Image Based Mango Fruit Detection, Localisation and Yield Estimation Using Multiple View Geometry[J]. Sensors, 2016, 16(11): 1915.
[8] Tabb A L, Peterson D L, Park J. Segmentation of apple fruit from video via background modeling[C]// Asabe Annual International Meeting. 2006:1-12
[9] 謝忠紅, 姬長(zhǎng)英, 郭小清, 等. 基于改進(jìn)Hough變換的類圓果實(shí)目標(biāo)檢測(cè)[J]. 農(nóng)業(yè)工程學(xué)報(bào), 2010, 26(7): 157-162.Xie Zhonghong, Ji Changying, Guo Xiaoqing, et al. An object detection method for quasi-circular fruits 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)
[10] 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.
[11] Gong A, Yu J, He Y, et al. Citrus yield estimation based on images processed by an Android mobile phone[J]. Biosystems Engineering, 2013, 115(2): 162-170.
[12] 盧軍, 桑農(nóng). 變化光照下樹上柑橘目標(biāo)檢測(cè)與遮擋輪廓恢復(fù)技術(shù)[J]. 農(nóng)業(yè)機(jī)械學(xué)報(bào), 2014, 45(04): 76-81. Lu Jun, Sang Nong. Detection of citrus fruits within tree canopy and recovery of occlusion contour in variable illumination[J]. Transactions of the Chinese Society of Agricultural Machinery, 2014, 45(04): 76-81. (in Chinese with English abstract)
[13] Roscher R, Herzog K, Kunkel A, et al. Automated image analysis framework for high-throughput determination of grapevine berry sizes using conditional random fields[J]. Computers & Electronics in Agriculture, 2014, 100(1): 148-158.
[14] 馬翠花, 張學(xué)平, 李育濤, 等. 基于顯著性檢測(cè)與改進(jìn)Hough變換方法識(shí)別未成熟番茄[J]. 農(nóng)業(yè)工程學(xué)報(bào), 2016, 32(14): 219-226. Ma Cuihua, Zhang Xueping, Li Yutao, et al. Identification of immature tomatoes base on salient region 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)
[15] Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]// IEEE conference on Computer Vision and Pattern Recognition. 2014: 580-587.
[16] Girshick R. Fast r-cnn[C]// IEEE Inter-national Conference on Computer Vision, 2015: 1440–1448
[17] Ren S, He K, Girshick R, et al. Faster R-CNN: towards real-time object detection with region proposal net-works[J]. IEEE Trans on Pattern Analysis & Machine Intelligence, 2017, 39(6): 1137-1149.
[18] Redmon J, Divvala S, Girshick R, et al. You only look once: Unified, real-time object detection[C]// IEEE conference on Computer Vision and Pattern Recognition. 2016: 779-788.
[19] Liu W, Anguelov D, Erhan D, et al. SSD: Single shot multibox detector[C]//European conference on computer vision. 2016: 21-37.
[20] Redmon J, Farhadi A. YOLO9000: Better, Faster, Stronger [C]// IEEE Conference on Computer Vision and Pattern Recognition. 2017: 6517-6525
[21] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]// IEEE conference on Computer Vision and Pattern Recognition. 2016: 770-778.
[22] Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C] ]// IEEE conference on Computer Vision and Pattern Recognition. 2014: 1-9.
[23] Huang G, Liu Z, Weinberger K Q, et al. Densely connected convolutional networks[C]// IEEE conference on Computer Vision and Pattern Recognition. 2016: 4700-4708.
[24] Stern U, He R, Yang C. Analyzing animal behavior via classifying each video frame using convolutional neural networks[J]. Scientific Reports, 2015, 5(1): 1-3.
[25] Ding W, Taylor G. Automatic moth detection from trap images for pest management[J]. Computers & Electronics in Agriculture, 2016, 123(C): 17-28.
[26] Bargoti S, Underwood J. Deep fruit detection in orchards[C]// International Conference on Robotics and Automation. 2017: 3626-3633.
[27] Hariharan B, Arbeláez P, Girshick R, et al. Simultaneous detection and segmentation[C]//European Conference on Computer Vision. 2014: 297-312.
[28] Dalal N, Triggs B. Histograms of oriented gradients for human detection[C]// IEEE conference on Computer Vision and Pattern Recognition. 2005: 886-893.
[29] Redmon J. YOLO: real-time object detection[EB/OL]. https://pjreddie.com/darknet/yolo/. 2017-10-24
[30] Hripcsak G, Rothschild A. Agreement, the f-measure, and reliability in information retrieval[J]. Journal of the American Medical Informatics Association, 2005, 12(3): 296.
Immature mango detection based on improved YOLOv2
Xue Yueju1,2,3,4, Huang Ning1,2, Tu Shuqin5, Mao Liang1, Yang Aqing1, Zhu Xunmu1, Yang Xiaofan1, Chen Pengfei1
(1.5106422.510642,351064245106425510642)
Automatic target detection of immature mangoes on the trees is one of the key steps of early estimation or intelligent spraying of mangoes. In orchard scenes, it is extremely difficult to detect immature mangoes because of variability of light, complex background and high color similarity between mangoes and leaves. Especially, detection of occluded and overlapped mangoes is a challenging task. An immature mango detection model based on improved YOLOv2 with high speed and accuracy was proposed. By introducing dense connectivity pattern into Tiny-yolo, Tiny-yolo network with dense blocks (Tiny-yolo-dense) was designed. And the dense block was used to replace the 7thconvolutional layer with low-resolution feature map in Tiny-yolo to avoid adding more extra computational complexity. In the dense block, each layer receives the feature-maps of all preceding layers and passes on its own feature-map to all subsequent layers, which improves flow of information, and encourages feature reuse and multi-level features fusion. To overcome the difficulty of occluded or overlapped mango detection, foreground region samples of occluded or overlapped fruits were manually labeled, and then the foreground region samples were used to train YOLOv2 model. Feature extraction only for foreground region can avoid extracting redundant feature of non-target region in bounding box, which can enhance feature learning from foreground region of occluded or overlapped fruits. The steps of our work were stated as follows: Firstly, to reduce the influence of natural lighting variations on mango images, adaptive histogram equalization was used to improve the quality of training sample images and the variety of illumination. And foreground region and bounding box of training samples were manually labeled. The original training set including 3 702 bounding box labels of all mango targets and 1 077 foreground region labels of occluded or overlapped fruits from 660 images was constructed, and testing set for model validation including 1 713 bounding box labels of mango targets from other 300 images was also set up. In addition, training data size was augmented by horizontal flipping and multi-angle rotating according to the variety of suspension postures of mangoes. Image rotation with angles of ±10° and ±20° was used for data augmentation. And then, Tiny-yolo-dense was applied as a basic network to design the improved YOLOv2 for the mango detection. Moreover, by higher resolution inputs and multi-scale strategy, foreground region and bounding box of training samples were used to train improved YOLOv2 network. Every 10 batches, the present training scale was exchanged randomly by another one before continuing training. In this paper, input scale of 512×512 and training scales of {384, 416……672} were selected. Lastly, the trained networks were used to detect mango on testing set. The experimental results showed that the proposed algorithm had better performance for mango detection in natural scenes. At a detection rate of 83 fps, the precision rate reached up to 97.02%, and the recall rate reached up to 95.10%. Our algorithm was 11 times faster than the Faster RCNN(circular convolutional neural network), and achieved better detection performance in condition of complex scenes with occlusion and overlapping of mangoes. Moreover, our method also significantly outperforms YOLOv2 and Adaboost classifier based on HOG(histogram of oriented gradient) features. Our work provides an effective method to quickly detect mango under orchard scenes.
neural networks; feature extraction; estimation; target detection; mango; dense connectivity pattern; YOLOv2 network
薛月菊,黃 寧,涂淑琴,毛 亮,楊阿慶,朱勛沐,楊曉帆,陳鵬飛.未成熟芒果的改進(jìn)YOLOv2識(shí)別方法[J]. 農(nóng)業(yè)工程學(xué)報(bào),2018,34(7):173-179.doi:10.11975/j.issn.1002-6819.2018.07.022 http://www.tcsae.org
Xue Yueju, Huang Ning, Tu Shuqin, Mao Liang, Yang Aqing, Zhu Xunmu, Yang Xiaofan, Chen Pengfei. 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) doi:10.11975/j.issn.1002-6819.2018.07.022 http://www.tcsae.org
2017-10-24
2018-01-24
國(guó)家自然科學(xué)基金-廣東聯(lián)合基金(U1301253);廣東省科技計(jì)劃項(xiàng)目(2015A020209148);廣東省科技計(jì)劃項(xiàng)目(2015A020224038);廣州市科技計(jì)劃項(xiàng)目(201605030013);廣州市科技計(jì)劃項(xiàng)目(201604016122)
薛月菊,女,新疆烏蘇人,教授。研究領(lǐng)域?yàn)闄C(jī)器視覺(jué)與圖像處理。Email:xueyueju@163.com
10.11975/j.issn.1002-6819.2018.07.022
TP391.4
A
1002-6819(2018)-07-0173-07