999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于深度學習的葡萄果梗識別與最優采摘定位

2021-08-04 05:53:26寧政通羅陸鋒廖嘉欣文漢錦韋慧玲盧清華
農業工程學報 2021年9期
關鍵詞:區域檢測模型

寧政通,羅陸鋒,廖嘉欣,文漢錦,韋慧玲,盧清華

(佛山科學技術學院機電工程與自動化學院,佛山 528000)

0 引言

葡萄果梗的精準識別及最優采摘點定位是實現機器人無損采摘的重要環節。在葡萄采摘作業過程中,因果園環境復雜(光照不均、遮擋等),葡萄品種繁多且不同品種果梗外觀(顏色、紋理、形狀等)存在較大差異,這些非結構、不確定因素使得葡萄果梗識別及最優采摘定位成為難題。

多年來,國內外學者圍繞采摘機器人視覺定位開展了一系列研究。在國外,Kondo等[1-2]利用光譜特性對葡萄進行識別;Reis等[3-4]利用顏色特性對自然環境下的葡萄進行識別與定位;Pérez-Zavala等[5]利用可見光譜相機技術對葡萄進行識別;Unay等[6]提出一種針對蘋果果梗和花萼缺陷識別、定位的多分類器系統;Bac等[7]利用引導線作為視覺提示對甜椒果梗進行識別與定位;van Henten等[8]采用基于近紅外的計算機視覺系統對黃瓜果梗進行識別;Park等[9]利用最大相關最小冗余和深度神經網絡對蘋果進行識別;Muresan等[10]利用卷積神經網絡對蘋果、梨等水果進行識別。在中國,羅陸鋒等[11-13]利用幾何約束對自然懸掛和重疊簇葡萄的采摘點進行定位;梁喜鳳等[14]利用骨架角點對自然懸掛番茄的采摘點進行定位;郭艾俠等[15]采用基于探索性分析對荔枝的不同部位進行識別;彭紅星等[16]利用單次多框檢測器模型對皇帝柑、蘋果、荔枝、臍橙進行識別;畢松等[17]利用深度卷積神經網絡對自然環境下的柑橘進行識別;閆建偉等[18]利用更快速區域卷積神經網絡模型對自然環境中的刺梨果實進行識別;趙德安等[19]利用YOLO模型對全天候自然環境下的蘋果進行識別與定位。上述研究方法為采摘機器人視覺系統研發奠定了基礎[20-24]。然而,現有針對果實串(葡萄,番茄等)采摘方法主要從色彩、紋理、形狀等方面入手,使用幾何約束、骨架角點等方法定位果梗采摘點,這些方法在特定環境下實現了對果梗的識別與采摘點定位,但其在自然環境下的魯棒性較差,還難以實際應用。

為提高葡萄采摘機器人對葡萄果梗識別的精度和魯棒性,降低因采摘點定位不準導致的采摘失效,本研究提出一種基于深度學習的葡萄果梗識別與最優采摘定位方法,通過改進掩膜區域卷積神經網絡(Mask Region with Convolutional Neural Network,Mask R-CNN)模型,對葡萄果梗進行識別與粗分割,然后結合顏色閾值分割思想,通過分段式區域生長算法對葡萄果梗進行精細化分割,最后以臨質心點最近的葡萄果梗水平兩側中心為采摘點,為果園環境下葡萄采摘機器人采摘點的定位提供了技術支持。

1 材料與方法

1.1 圖像獲取和數據集預處理

為與葡萄采摘機器人實際作業情況保持一致,本研究以果園自然生長的紅提、夏黑紫葡萄作為試驗對象,采用尼康 D5200相機(日本)進行多角度拍攝,成像距離范圍為0.8~1.5 m,圖像分辨率為2 592×1 944像素,分別采集晴天順光、晴天遮陰、陰天光照3種天氣光照條件下的葡萄圖像。本研究在廣州、天津、佛山等地葡萄果園共采集有效葡萄圖像樣本700幅,樣本集圖像均包含葡萄、葡萄果梗、枝干和復雜果園環境。

從700幅葡萄圖像中選取紅(紅提)、紫(夏黑紫)葡萄圖像共600幅(含693個紅葡萄果梗,564個紫葡萄果梗)作為訓練集,剩余100幅作為驗證集(含117個紅葡萄果梗,81個紫葡萄果梗)。為減少計算機運算負載,提升模型泛化能力,對樣本集進行預處理,通過Photoshop軟件將原圖裁剪至分辨率為1 024×1 024像素大小,并采取旋轉、鏡像、模糊、曝光等操作對訓練集進行數據增強,增強后的訓練集包含圖像3 000幅(含3 465個紅葡萄果梗,2 820個紫葡萄果梗)。使用數據標注軟件Labelme進行標簽制作,在標注時,只標注葡萄圖像中的主果梗,對于分叉結果的子果梗不標注,獲得標簽矩陣。

1.2 改進掩膜區域卷積神經網絡(Mask R-CNN)的葡萄果梗識別與精細分割模型

基于區域的卷積神經網絡(Region-based Convolution Neural Networks,R-CNN)系列算法[25-26]是當前目標檢測領域中最具代表性的方法,Mask R-CNN作為該系列中較新成果,能對圖像中的目標進行分類、識別與分割。本研究對該網絡結構參數、交互計算方式和分割結果等方面進行改進與優化,使其能夠高效識別與分割葡萄果梗。

1.2.1 葡萄果梗識別的深度學習網絡架構

Mask R-CNN網絡結構可分為3個部分:主干網絡、區域建議網絡(Region Proposal Network,RPN)、三分支網絡。基于Mask R-CNN的葡萄果梗識別與分割網絡結構如圖1所示。

1)主干網絡

本研究采用深度殘差網絡(Residual Neural Network 101,ResNet101)[27]和特征金字塔網絡(Feature Pyramid Networks,FPN)[28]相結合構成主干網絡。圖像通過自下向上的ResNet101網絡得到等級由低到高的4級特征圖C2、C3、C4、C5,低、高層特征圖分別具有更多的細節信息與語義信息。ResNet101網絡卷積特征的映射如式(1)所示

式中l為特征層數;k為卷積層數;為第l層特征經過第k層卷積后的特征;為第k層卷積權重;el為第l層特征;為第k層卷積偏置。

為了提高葡萄果梗的識別精度,本研究采用卷積核大小為1×1的卷積層通過自頂向下和橫向連接的方法將這4級特征圖融合,融合后的每層特征圖P2、P3、P4、P5、P6都具有不同層次的特征。

2)區域建議網絡

區域建議網絡(RPN)的工作機理是采用卷積層滑動窗口掃描特征圖中的錨點框。RPN損失函數如式(2)~式(6)所示

式中i為錨點的序號;pi為每個錨點的預測概率;ti為預測目標邊界框的坐標;Ncls為分類類別個數;Nbox為回歸個數;Lcls為分類損失函數;Lbox為回歸損失函數;*ip為每個錨點包含葡萄果梗的概率,取值為0或者1,分別表示負、正樣本;λ為平滑參數;為與錨點相關的真實邊界框坐標;xb、yb、wb、hb為原圖坐標偏移中心的左值、右值、寬值、高值;xa、ya、wa、ha為錨點邊界框中心坐標的左值、右值、寬值、高值;x*、y*、w*、h*為真實邊界框中心坐標的左值、右值、寬值、高值; smoothL1為魯棒范式損失函數。

Mask R-CNN設置的錨點框比例為0.5∶1∶2,但在實際檢測時,葡萄果梗的長寬比常為2.5∶1和5∶1,過小比例的錨點框無法完全覆蓋葡萄果梗,為此,本研究設置的錨點框比例為1∶2.5∶5,并使用1個3×3大小和2個并列1×1大小的卷積層進行掃描映射,以提高葡萄果梗的識別能力并縮短計算時間。

3)三分支網絡

三分支網絡用于獲取葡萄果梗的邊框、類別、掩碼。Mask R-CNN對MS COCO(Microsoft Common Objects in Context)中的80種物體進行分類、識別與分割,其掩膜分支通道數為z(z為類別數,即z= 80)。為實現網絡多任務功能,Mask R-CNN在分類損失函數和回歸損失函數的基礎上添加了掩碼損失函數,使用分類器來預測類別標簽并用于掩碼輸出,從而解耦了分類和掩碼預測。三分支網絡的損失函數如式(7)~式(10)所示

式中L為網絡總損失函數;Lmask為掩碼損失函數;Sm為像素數量;si為像素區域;為像素區域的類別標簽;p(si)為si預測類別的概率。

最終,類別分支計算出目標的類別,回歸分支計算出目標的位置邊界框,掩碼分支計算出目標的像素,從而準確地檢測出葡萄果梗。鑒于本研究的實際情況,設置類別數為3類(紅葡萄果梗類、紫葡萄果梗類、背景類),邊框和類別分支由全連接層輸出,掩碼分支由5個卷積層和2個反卷積層輸出,將葡萄果梗與背景分割。

1.2.2 并行交互計算策略

Mask R-CNN 在FPN、RPN、感興趣區域(Region of Interest,ROI)對齊耦合計算過程中,采用分流方式將FPN生成的特征圖分別輸出至 RPN、ROI對齊進行計算,其過程涉及多次圖形處理器(Graphics Processing Unit,GPU)與中央處理器(Central Processing Unit,CPU)之間的信息交互,造成時間和資源的消耗。為提高模型運算效率,本研究采用計算統一設備架構(Compute Unified Device Architecture,CUDA)策略對其耦合計算過程進行并行化處理,根據ROI將特征圖均勻劃分為特征塊,每個特征塊作為一個 CUDA 線程,并行地完成耦合計算。如式(11)所示

式中bw和bh分別為候選框的寬度和高度,g為ROI對齊特征圖等級,g0為bw=224和bh=224時映射的等級。

1.2.3 基于區域生長的葡萄果梗圖像精細分割

葡萄果梗的精細分割是實現采摘點定位的重要前提。為精準獲取葡萄果梗區域,本研究在改進Mask R-CNN的葡萄果梗識別和粗分割基礎上,再運用分段式區域生長算法對葡萄果梗進行精細分割,其步驟如下:

步驟1:提取葡萄果梗的粗分割結果和位置信息。

步驟2:將分割出的葡萄果梗按高度值平均分成3段(A1、A2、A3),提取每段區域的色調(Hue,H)、飽和度(Saturation,S)、亮度(Value,V)色彩分量,并篩選出該區域的H、S、V分量平均值為其基準顏色閾值,H、S、V分量平均值分別對應為h、s、v。

步驟3:設每段葡萄果梗的輪廓點為種子點,遍歷種子點4鄰域(即上、下、左、右鄰域),生長準則如式(12)所示

式中h0、s0、v0為種子點 4 領域中任意一點的H、S、V分量值,d為向量[h,s,v]的1-范數。

步驟4:將步驟3中獲得的A1、A2、A3果梗輪廓區域進行形態學合并運算,最終得到果梗的精細分割結果。

1.3 采摘點位置計算

葡萄果梗受重力作用常以懸掛、斜掛方式生長,且葡萄采摘機器人主要通過抓握葡萄并剪切果梗進行采摘。因此,本研究以臨質心點最近的葡萄果梗水平兩側中心作為最終采摘點,其求解過程如下。

1.3.1 質心點獲取

質心是二維形狀的幾何中心。通過提取精細分割后的葡萄果梗形態,根據圖像質心矩的定義[29],葡萄果梗質心點計算如式(13)所示

式中cn、cm為葡萄果梗質心點坐標,n、m為像素坐標,c為質心序號,f(n,m)為像素坐標(n,m)處的像素值。

1.3.2 采摘點確定

式中M為線段E1E2,為線段E1E2的左端點坐標,為線段E1E2的右端點坐標。

取線段E1E2為采摘區域,并以其中心點作為采摘點。

1.4 模型訓練及算法性能評價

本研究模型訓練和采摘點定位算法試驗分別在2臺電腦上進行,模型訓練所用電腦的硬件環境:計算機內存16 GB;中央處理器型號為Intel Core(TM)i5-8400,頻率為2.80 GHZ;圖形處理器型號為英偉達GeForce GTX 1070Ti,顯存為8 GB。采摘點定位測試所用電腦的主要硬件環境:計算機內存 16 GB;中央處理器型號為 Intel Core(TM)i5-9400,頻率為2.90 GHZ;圖形處理器型號為英偉達GeForce GTX 1060,顯存為6 GB。試驗所用的軟件環境:Windows 64位系統,Pycharm編程軟件,Tensorflow和Keras深度學習框架,Python編程語言(Python 3.6)。

1.4.1 模型訓練策略

為加快模型訓練收斂速度和提高模型訓練效果,本研究采用隨機梯度下降策略對模型進行交替訓練,訓練參數設置錨點尺寸為32、64、128、256和512,每幅圖像訓練的ROI個數為200,初始學習率為0.001,學習步長的動量參數為0.9,圖形處理器同時處理圖像數為1,每次迭代樣本量為200。其訓練過程分為3個階段:1)以初始學習率訓練主干網絡和三分支網絡各100次;2)以初始學習率訓練整體網絡200次;3)將初始學習率衰減10倍后訓練整體網絡150次。

本研究訓練使用3 000幅訓練集圖像,共進行了550次迭代,耗時108 h,其訓練損失曲線如圖2所示。結果表明,模型在前400次迭代中迅速收斂損失值,到500次迭代后損失值降至0.08附近震蕩并趨于穩定,說明模型訓練結果較理想。

1.4.2 模型評價指標

為試驗本研究所提算法性能,對100幅葡萄測試集圖像進行果梗識別與采摘點定位試驗與評價。選用精確率(Precision,%)、召回率(Recall,%)、F1得分(F1-score,%)、交并比(Intersection Over Union,IOU,%)、平均交并比(mean Intersection Over Union,mIOU,%)作為評價模型有效性的指標,并統計正確檢測率(C,%)和最優采摘點定位成功率(Y,%),其計算如式(15)~式(21)所示

式中TP為真陽性;FP為假陽性;FN為假陰性;Ap為預測值;Agt為真實值;IOUr為紅葡萄果梗的IOU值;IOUp為紫葡萄果梗的IOU值; 2N= ;AS為所有葡萄果梗數;S為正確檢測(IOU > 0.75)的葡萄果梗數;ST為最優采摘點定位成功數。

2 結果與分析

2.1 葡萄果梗識別與分割

葡萄果梗識別與精細分割模型的試驗結果如表1所示。其中,紫葡萄果梗的F1得分與IOU值均高于紅葡萄果梗,分析其原因主要有:一是極少數以懸掛方式生長的紅葡萄果梗,其特殊的長寬比遠高于模型錨點框比例;二是樣本集中存在部分出現病變的紅葡萄果梗,而紫葡萄果梗并未發生病變,特征相對單一;三是紅葡萄果梗所處的果園環境復雜度較高,較難識別。

檢測效果顯示病變和環境相似及遮擋是影響葡萄果梗識別的主要原因(圖3)。如圖3所示,箭頭1所指的葡萄果梗位置因發生病變導致其正常顏色、紋理、形態等外觀信息都被嚴重破壞,導致無法識別;箭頭2所指的葡萄葉柄因其外觀與葡萄果梗具有高度相似性,導致其被誤識別為葡萄果梗;箭頭3所指的葡萄果梗因部分被扎帶遮擋,影響了模型的判斷,扎帶上部果梗與葡萄葉片顏色相近,導致未被識別,但扎帶下部果梗因背景較單一,易于分辨,所以模型仍能對其準確檢測。如圖 3d和圖3e所示,在葡萄果梗重疊、懸掛、斜掛場景下,模型對其均有較好的檢測結果,表現出良好的檢測性能,但模型對重疊場景下的檢測精度略低于獨立懸掛、斜掛情形下的精度。

為提高模型的檢測速度,本研究未采用 Mask R-CNN模型在FPN、RPN、ROI對齊耦合計算過程中使用的GPU+CPU 信息交互方式,而是使用了CUDA并行交互計算策略。試驗結果發現,2種交互方式所得F1得分和mIOU值相同,說明在檢測精度方面,使用CUDA不會對模型的檢測精度產生任何影響,但在檢測時間方面,CUDA比GPU + CPU耗時減少1.44 s,檢測速度提升24%,說明使用CUDA在提升模型檢測速度上有明顯優勢。

2.2 不同天氣光照條件下檢測效果對比

為進一步驗證改進后模型在葡萄采摘機器人實際作業天氣光照條件下的檢測效果,本試驗選取晴天順光、晴天遮陰、陰天光照3種不同天氣光照條件下進行改進前后模型檢測效果的對比試驗,其具體效果如圖4所示。由圖4c和圖4d可知,在3種不同天氣光照條件下,改進前后的模型對于葡萄果梗的位置和類別均能準確檢測,沒有出現誤檢測現象,且改進后的模型檢測精度更高。在葡萄果梗分割方面,未改進的模型存在分割不完整、有毛刺等現象,分析其原因是由于葡萄果梗形態的不規則性,導致了該現象的出現,改進后的模型對該現象有明顯改善,使其分割精準度進一步逼近真實區域。

不同天氣光照條件下模型改進前后檢測的統計結果如表2所示。由表2可知,在3種不同天氣光照條件下檢測精確率平均值達88%。其中,在晴天順光條件下,模型的精確率和召回率達96.72%,mIOU值達85.73%,說明在該條件下葡萄果梗較易被模型精準檢測出來;但在晴天遮陰和陰天光照條件下,模型的精確率、召回率和mIOU值均大幅降低。其原因為在晴天順光條件下,葡萄果梗表面顏色、紋理、輪廓清晰,模型檢測難度小,表現較好;在晴天遮陰條件下,因光照被遮擋,導致葡萄果梗與背景環境相似,其部分輪廓與葡萄葉片顏色產生混疊,在陰天光照條件下,葡萄果梗因表面光照的不足及分布不均,導致其一側顏色呈黑色,且與葡萄枝干的連接處較難分辨,所以模型在晴天遮陰和陰天光照條件下的檢測難度大,表現較差。同時,本研究提出的錨點框比例優化和分段式精細分割方法在3種不同天氣光照條件下相較于未改進的模型,F1-得分提升了3.24%,mIOU值提升了1.1%,表示該方法能夠在不同天氣光照條件下做到自適應優化調整,并且通過CUDA交互后,檢測時間減少了0.99 s,說明在其檢測性能上有顯著提升。

表2 不同天氣光照條件下模型改進前后檢測的統計結果 Table 2 Statistical results of detection before and after the model improvement under different weather and light conditions

2.3 采摘點定位試驗

為驗證采摘點位置確立的合理性,先通過人工設置每串葡萄果梗的最優采摘區域(分辨率為35×20像素),然后與本方法進行對比,其在3種不同天氣光照條件下的具體定位效果如圖4d和圖4e所示。由圖4e可知,本方法對以懸掛、斜掛方式生長的葡萄串采摘點定位效果優異,定位出的采摘點均在最優采摘區域內;標號1處的采摘點不在最優采摘區域內,其原因在于該葡萄串以躺臥姿勢生長在支撐架上,且子果梗在其頂部分叉,造成定位的采摘點附近仍存在3粒葡萄,從而導致最優采摘定位失敗。不同天氣光照條件下采摘點定位統計結果如表3所示,其中采摘點定位正確檢測率為81.58%;在果梗成功識別后最優采摘點定位準確率達99.43%;單次定位的平均計算時間為1.37×10-3s。這說明對果園中絕大多數以懸掛、斜掛方式生長的葡萄串,只要模型檢測出葡萄果梗,就能實時同步定位出最優采摘點。

表3 不同天氣光照條件下采摘點定位統計結果 Table 3 Statistical results of picking point location under different weather and light conditions

3 結 論

為實現果園環境下葡萄采摘機器人自主作業,提出了一種基于深度學習的葡萄果梗識別與最優采摘定位方法。通過改進掩膜區域卷積神經網絡(Mask Region with Convolutional Neural Network,Mask R-CNN)模型的網絡結構及參數,采用并行化計算策略提高模型運算,結合區域生長算法實現對葡萄果梗精細分割,最后計算出葡萄果梗區域最優采摘點,為葡萄的高效自主機器人采摘提供了技術支持。具體結論如下:

1)將Mask R-CNN模型中的分流交互過程改為計算統一設備架構并行化處理,檢測耗時減少1.44 s。采用區域生長算法對模型粗分割結果進行優化,在 3 種不同天氣光照條件下果梗檢測精確率平均值為88%。

2)本研究提出的葡萄果梗最優采摘定位方法,采摘點定位正確檢測率為81.58%;在果梗成功識別的情況下,定位的采摘點在最優采摘范圍內達99.43%。

雖然本研究為葡萄采摘機器人提供了一種果梗識別與最優采摘定位方法,但在訓練深度學習網絡模型過程中,數據集的大小及標注精度均會影響定位結果。在今后的研究中,將探索先識別葡萄再向上搜索果梗的采摘點定位方法。

猜你喜歡
區域檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
關于四色猜想
分區域
主站蜘蛛池模板: 久久这里只有精品2| 97青草最新免费精品视频| 欧美一区二区三区香蕉视| a国产精品| 秋霞国产在线| 香蕉视频在线观看www| 国产一区二区福利| 毛片最新网址| 午夜福利在线观看成人| 国产经典在线观看一区| 精品国产免费观看| 天堂va亚洲va欧美va国产| 久久公开视频| 国产成人亚洲精品无码电影| 欧洲av毛片| 中文字幕丝袜一区二区| 亚洲中久无码永久在线观看软件 | 国产视频你懂得| 日本国产在线| 亚洲免费三区| 伊人色综合久久天天| 亚洲天堂视频网站| 久久不卡精品| 国产欧美视频综合二区| 成人伊人色一区二区三区| 久久大香香蕉国产免费网站| 无遮挡一级毛片呦女视频| 国产裸舞福利在线视频合集| 亚洲AⅤ永久无码精品毛片| 久久精品丝袜| 无码精品福利一区二区三区| 久草网视频在线| 黄片一区二区三区| 少妇被粗大的猛烈进出免费视频| 国产无码精品在线播放| 在线播放国产99re| 国产高清在线丝袜精品一区| 国产乱人激情H在线观看| 日韩欧美国产中文| 亚洲黄色激情网站| 国产福利在线免费观看| 国产福利影院在线观看| 亚洲色图综合在线| 日本一区中文字幕最新在线| 宅男噜噜噜66国产在线观看| 国语少妇高潮| 成人字幕网视频在线观看| 亚洲人成日本在线观看| 亚洲天堂福利视频| 久久久国产精品免费视频| 亚洲无码在线午夜电影| 无码福利视频| 99视频精品在线观看| 久久毛片免费基地| 国产超薄肉色丝袜网站| 国产精品欧美激情| 国产在线精品99一区不卡| 国产91av在线| 欧美A级V片在线观看| 精品国产美女福到在线不卡f| 欧美成人h精品网站| a在线亚洲男人的天堂试看| 久久综合AV免费观看| 日韩一区二区在线电影| 亚洲AV无码乱码在线观看代蜜桃| 性色在线视频精品| 亚洲色图欧美在线| 精品视频一区二区观看| 3344在线观看无码| 2021国产乱人伦在线播放| 国产精品所毛片视频| 精品第一国产综合精品Aⅴ| 欧美日韩中文字幕二区三区| 欧美日本在线播放| 亚洲天堂视频在线免费观看| 亚洲成a人片77777在线播放| 国产免费久久精品44| 伊在人亞洲香蕉精品區| www.精品国产| 国产黄在线免费观看| 国产精品黑色丝袜的老师| 99福利视频导航|