王 濱,陳子嘯,傅隆生,蘇寶峰,崔永杰
(西北農(nóng)林科技大學(xué) 機(jī)械與電子工程學(xué)院,陜西 楊凌 712100)
?
基于Kinect傳感器的獼猴桃果實(shí)空間坐標(biāo)獲取方法
王濱,陳子嘯,傅隆生,蘇寶峰,崔永杰
(西北農(nóng)林科技大學(xué) 機(jī)械與電子工程學(xué)院,陜西 楊凌712100)
摘要:獼猴桃自動(dòng)采摘機(jī)器人研究中,為了自動(dòng)獲取目標(biāo)果實(shí)的空間坐標(biāo),提出了一種基于Kinect傳感器的獼猴桃果實(shí)空間坐標(biāo)獲取方法。首先利用Kinect傳感器的紅外投影機(jī)和紅外攝像機(jī)獲取深度圖像,利用彩色攝像機(jī)獲取RGB圖像,根據(jù)彩色圖和深度圖對(duì)應(yīng)關(guān)系,轉(zhuǎn)換成深度坐標(biāo);然后通過(guò)Map Depth Point To Skeleton Point函數(shù)得到以紅外攝像機(jī)為原點(diǎn)的坐標(biāo)系坐標(biāo)。實(shí)驗(yàn)表明:該方法能夠有效獲取獼猴桃目標(biāo)果實(shí)的空間坐標(biāo),其定位誤差小于2mm。
關(guān)鍵詞:采摘機(jī)器人;獼猴桃;Kinect傳感器;深度圖像;空間坐標(biāo)
0引言
中國(guó)是世界上獼猴桃種植面積最大的國(guó)家,但目前獼猴桃主要依靠人工采摘,采摘自動(dòng)化程度很低。隨著農(nóng)業(yè)勞動(dòng)力的減少,農(nóng)業(yè)生產(chǎn)成本也相應(yīng)提高,降低了產(chǎn)品的市場(chǎng)競(jìng)爭(zhēng)力[1]。隨著棚架式栽培模式的推廣普及,機(jī)械采摘的需求也越來(lái)越大。
收獲作業(yè)的自動(dòng)化和機(jī)器人的研究始于20世紀(jì)60年代的美國(guó),采用的收獲方式主要是機(jī)械震搖式和氣動(dòng)震搖式;缺點(diǎn)是果實(shí)易損、效率不高,特別是無(wú)法進(jìn)行選擇性的收獲。近年來(lái),以日本、荷蘭、中國(guó)為代表的一些國(guó)家,在果蔬采摘機(jī)器人方面做了大量的研究工作,研制了多種果蔬采摘機(jī)器人。日本的果蔬采摘機(jī)器人研究始于1980年。Kawamura等人進(jìn)行了番茄采摘機(jī)器人的研究,他們利用成熟番茄與背景顏色的差別,采用機(jī)器視覺(jué)對(duì)果實(shí)顏色進(jìn)行判別進(jìn)而進(jìn)行定位,研制了番茄采摘機(jī)器人。日本岡山大學(xué)的Kondo N等人研制的番茄采摘機(jī)器人[2-4],由機(jī)械手、末端執(zhí)行器、行走裝置、視覺(jué)系統(tǒng)和控制部分組成,視覺(jué)傳感器主要由彩色攝像機(jī)來(lái)尋找和識(shí)別成熟果實(shí),利用雙目視覺(jué)方法對(duì)目標(biāo)進(jìn)行定位。荷蘭農(nóng)業(yè)環(huán)境工程研究所(IMAG) Van Henten等人研究開(kāi)發(fā)了一種溫室黃瓜采摘機(jī)器人[5],該機(jī)器人利用近紅外視覺(jué)系統(tǒng)辨識(shí)黃瓜果實(shí),并探測(cè)它的位置。英國(guó)Silsoe研究院研制了蘑菇采摘機(jī)器人[6],該機(jī)器人的視覺(jué)傳感器采用TV攝像頭,安裝在頂部,用來(lái)確定蘑菇的位置和大小,進(jìn)而進(jìn)行選擇性地進(jìn)行采摘和修剪。在國(guó)內(nèi)方面:中國(guó)農(nóng)業(yè)大學(xué)劉剛等研究了應(yīng)用于蘋果采摘機(jī)器人的激光距離傳感器[7]。浙江大學(xué)趙德安研究了一種針對(duì)果實(shí)振蕩狀況下的收獲機(jī)器人快速采摘方法[8-9],該方法利用單目視覺(jué)進(jìn)行果實(shí)位置的獲取;但該方法需要對(duì)同一個(gè)目標(biāo)在不同位置采集圖像,耗費(fèi)時(shí)間過(guò)長(zhǎng),不利于機(jī)器人的快速識(shí)別與采摘。中國(guó)農(nóng)業(yè)大學(xué)李偉研發(fā)了黃瓜采摘機(jī)器人系統(tǒng)[10-11],采用雙目攝像機(jī)和輔助光源對(duì)目標(biāo)果實(shí)進(jìn)行定位。中國(guó)農(nóng)業(yè)大學(xué)張鐵中等研制了茄子采摘機(jī)器人[12]]。綜上所述,目前的收獲機(jī)器人采用了不同的視覺(jué)系統(tǒng)對(duì)不同的果實(shí)進(jìn)行識(shí)別與定位,但尚沒(méi)有針對(duì)獼猴桃果實(shí)采摘機(jī)器人視覺(jué)定位系統(tǒng)的研究。
本文以獼猴桃果實(shí)為研究對(duì)象,利用微軟公司的Kinect傳感器,進(jìn)行了自動(dòng)獲取獼猴桃目標(biāo)果實(shí)空間坐標(biāo)的研究。
1Kinect傳感器的工作環(huán)境
本文關(guān)于獼猴桃果樹(shù)的種植模式和果實(shí)物理特性的數(shù)據(jù)均在西北農(nóng)林科技大學(xué)獼猴桃實(shí)驗(yàn)基地采集。圖1為獼猴桃果樹(shù)栽培模式,圖2為獼猴桃果實(shí)生長(zhǎng)狀態(tài)。目前,獼猴桃果樹(shù)最普遍的種植結(jié)構(gòu)為棚架式,架子的上方用鐵絲構(gòu)成網(wǎng)格型結(jié)構(gòu),結(jié)構(gòu)規(guī)整,果枝沿鐵絲網(wǎng)生長(zhǎng),果實(shí)自然下垂。其架子之間橫向距離約為4m,縱向距離約為3m,果實(shí)成熟之后分布在鐵絲形成的棚頂上,高度分布在1.5~1.8m之間。圖1為獼猴桃果樹(shù)栽培模式,圖2為獼猴桃果實(shí)生長(zhǎng)狀態(tài)。其中,圖2(a)為側(cè)面拍攝的獼猴桃圖像,圖2(b)為底部獲取。
圖1 獼猴桃果樹(shù)棚架式栽培模式
(a) 側(cè)面拍攝 (b) 底部拍攝
由圖2可知:從底部獲取的獼猴桃果實(shí)圖像中不存在相互遮擋現(xiàn)象,能夠較好地獲取獼猴桃果實(shí)的空間坐標(biāo),故采用Kinect傳感器從底部獲取獼猴桃果實(shí)的空間坐標(biāo)。
2Kinect傳感器
Kinect傳感器的整體結(jié)構(gòu)如圖3所示。其從左到右依次是紅外投影機(jī)、RGB攝像頭、紅外攝像機(jī)。紅外投影機(jī)能夠主動(dòng)投射近紅外光譜,照射到粗糙物體或穿透毛玻璃后光譜發(fā)生扭曲,會(huì)生成隨機(jī)的反射光點(diǎn)(散斑),進(jìn)而被紅外攝像機(jī)讀?。患t外攝像機(jī)能夠分析近紅外光譜,創(chuàng)建其可視范圍內(nèi)物體的深度圖像;RGB攝像頭拍攝可視范圍內(nèi)的彩色圖像。
圖3 Kinect傳感器硬件組成
Kinect傳感器受其硬件及軟件的影響,其深度圖像的獲取范圍如圖4所示。其以紅外投影機(jī)為中心上下角度范圍為43°,左右角度范圍為57°,攝像頭前方800~1 000mm是深度圖像的獲取范圍,在此范圍內(nèi)獲取的深度精度能夠達(dá)到毫米級(jí)。前文已經(jīng)提到獼猴桃果實(shí)高度分布在1.5~1.8m之間,故能夠滿足需要。
圖4 深度圖像的獲取范圍
基于Kinect Xbox的開(kāi)發(fā)平臺(tái)主要有微軟的Kinect for Windows SDK和PrimeSense公司的OpenNI,本文采用的開(kāi)發(fā)平臺(tái)是Kinect for Windows SDK;所用的計(jì)算機(jī)為ThinkPad T400,運(yùn)行內(nèi)存2GB。
3空間坐標(biāo)獲取
獼猴桃果實(shí)空間坐標(biāo)獲取方法的流程如圖5所示。
圖5 空間坐標(biāo)獲取流程圖
首先,進(jìn)行彩色圖像數(shù)據(jù)流與深度圖像數(shù)據(jù)流的注冊(cè),利用Kinect傳感器分別獲取目標(biāo)果實(shí)的彩色圖像與深度圖像并對(duì)其進(jìn)行優(yōu)化;然后,將優(yōu)化后的RGB圖像映射到深度圖像。再將建立映射之后的圖像加載到Kinect傳感器內(nèi)置的空間坐標(biāo)系,加載Map Depth Point To Skeleton Point函數(shù),獲取三維x、y、z坐標(biāo)判斷坐標(biāo)值是否在Kinect傳感器精度較高的范圍內(nèi):若在則輸出以紅外線攝像頭為原點(diǎn)的空間坐標(biāo);若不在則輸出距離超出范圍。
3.1深度圖像
由Kinect傳感器獲取的彩色圖像與深度圖像如圖6所示。
(a) 彩色圖像 (b) 深度圖像
雖然由深度圖像能夠得出獼猴桃與攝像頭之間的距離,但由圖6可以看出:?jiǎn)为?dú)的深度圖像并不清晰,在曝光嚴(yán)重的區(qū)域往往形成大塊的白斑;白斑區(qū)域并不包含深度信息,且此時(shí)由深度圖像得到的深度信息不夠精確,也不能夠獲取坐標(biāo)信息。
3.2空間坐標(biāo)獲取
3.2.1像素坐標(biāo)及深度坐標(biāo)獲取
RGB圖像映射到深度圖像后得到獼猴桃果實(shí)的像素坐標(biāo)及深度坐標(biāo)。為獲取獼猴桃果實(shí)的空間坐標(biāo),需將使用Kinect傳感器最初得到的像素坐標(biāo)及深度坐標(biāo)經(jīng)過(guò)多次不同坐標(biāo)系之間的轉(zhuǎn)換,最終得到果實(shí)的真實(shí)世界坐標(biāo)。各坐標(biāo)系之間的轉(zhuǎn)換及其函數(shù)如圖7所示,真實(shí)世界坐標(biāo)系如圖8所示。獼猴桃果實(shí)的像素坐標(biāo)及深度坐標(biāo)獲取過(guò)程如下:通過(guò)MapColorFrameToDepthFrame函數(shù)將RGB攝像頭獲取到的彩色圖像映射到深度圖像,然后通過(guò)MapDepthPointToSkeletonPoint函數(shù)將建立映射之后的深度圖像映射到Kinect傳感器固有的骨骼坐標(biāo)系中。骨骼坐標(biāo)系的坐標(biāo)原點(diǎn)為紅外攝像機(jī)的中心,X-Y平面即為Kinect所在平面,Z軸垂直于Kinect傳感器所在的平面,即為鏡頭所對(duì)的方向。
3.2.2坐標(biāo)轉(zhuǎn)換
通過(guò)Kinect for Windows SDK所獲得的x、y是DepthMap的索引位置(x為column,y為row),深度值即為實(shí)際空間坐標(biāo)的z值,利用ConvertProjectToRealWorld函數(shù)將x、y轉(zhuǎn)為實(shí)際坐標(biāo)空間的x、y值,但此函數(shù)是不改變z值的。ConvertProjectToRealWorld函數(shù)的實(shí)現(xiàn)是通過(guò)單位換算得到的。
1)獲得視角值:獲取horizontal和vertical的視角值,即Kinect水平和垂直視角。
2)單位換算比例:α表示水平視角角度值,β表示垂直視角角度值,換算關(guān)系為
(1)
(2)
即得到了depthmap的寬度值w/高度值h與距離d的比值。
3)求出實(shí)際的x、y值,則有
NormailzedX=x/outputMode.nXRes-0.5
(3)
即深度圖像左側(cè)在x軸負(fù)方向,右側(cè)在x軸正方向,同樣有
NormailzedY=0.5-y/outputMode.nYRes
(4)
上側(cè)在y軸正方向,下側(cè)在y軸負(fù)方向,有
x=MormailizedX×Z×RealWorldXtoZ
(5)
y=MormailizedX×Z×RealWorldYtoZ
(6)
圖7 Kinect傳感器各坐標(biāo)系之間的轉(zhuǎn)換
圖8 真實(shí)世界坐標(biāo)系
3.2.3坐標(biāo)獲取
通過(guò)Button Screenshot函數(shù)加載按鈕點(diǎn)擊事件,點(diǎn)擊屏幕上獼猴桃果實(shí)的某一像素,通常選擇獼猴桃果實(shí)的中心位置,然后通過(guò)坐標(biāo)轉(zhuǎn)換獲取獼猴桃果實(shí)相對(duì)應(yīng)像素點(diǎn)的空間坐標(biāo)。獲取過(guò)程的分解如圖9~11所示。其3幅圖像分別為彩色圖像、深度圖像和獲取果實(shí)坐標(biāo)后的圖像。
圖9 獼猴桃果實(shí)彩色圖像
圖10 獼猴桃果實(shí)深度圖像
圖11 獲取的獼猴桃果實(shí)坐標(biāo)
其中,引線所示的A位置為選取的目標(biāo)像素點(diǎn),下方為獲取的x、y、z坐標(biāo)值。獲取到的獼猴桃果實(shí)的空間坐標(biāo)將會(huì)被軟件寫入到Excel表格,如表1所示。
表1 存入到Excel表格中的一組坐標(biāo)
4實(shí)驗(yàn)及分析
4.1實(shí)驗(yàn)方法
為了得到本研究方法的坐標(biāo)精度,在實(shí)驗(yàn)室內(nèi)進(jìn)行了誤差實(shí)驗(yàn)。實(shí)驗(yàn)裝置如圖12所示。其中,Kinect傳感器固定在支架上,三坐標(biāo)微調(diào)實(shí)驗(yàn)臺(tái)位于Kinect傳感器的正下方,果實(shí)固定在三坐標(biāo)微調(diào)實(shí)驗(yàn)平臺(tái)上。如圖13所示,三坐標(biāo)微調(diào)實(shí)驗(yàn)臺(tái)X、Y、Z3個(gè)方向的移動(dòng)距離由千分尺調(diào)節(jié),調(diào)節(jié)精度為0.02mm。本次實(shí)驗(yàn)選取獼猴桃果實(shí)20個(gè),每個(gè)果實(shí)上5個(gè)標(biāo)記點(diǎn),標(biāo)記點(diǎn)平均分布在果實(shí)底面,如圖14所示,共計(jì)100個(gè)標(biāo)記點(diǎn)。
圖12 試驗(yàn)裝置圖
圖13 三坐標(biāo)微調(diào)實(shí)驗(yàn)臺(tái)
圖14 5個(gè)標(biāo)記點(diǎn)的分布
試驗(yàn)的具體步驟如下:
1)Kinect傳感器固定在支架上,位于三坐標(biāo)微調(diào)實(shí)驗(yàn)臺(tái)和被測(cè)果實(shí)上方的1 000mm處。
2)在被測(cè)果實(shí)表面標(biāo)記5個(gè)點(diǎn),并用Kinect傳感器分別獲取5點(diǎn)的三維坐標(biāo),計(jì)算差值。
3)調(diào)整三坐標(biāo)微調(diào)實(shí)驗(yàn)臺(tái),將其中一點(diǎn)移動(dòng)到另外一點(diǎn)的位置,并記錄千分尺讀數(shù)。例如,首先用Kinect獲取1點(diǎn)與2點(diǎn)的坐標(biāo)位置,然后將點(diǎn)2移動(dòng)到與點(diǎn)1重合的位置,記錄微調(diào)實(shí)驗(yàn)臺(tái)三坐標(biāo)的移動(dòng)距離,根據(jù)兩組數(shù)據(jù)的差值獲取誤差。圖14所示為1~5點(diǎn)的分布。
4)重復(fù)進(jìn)行步驟3),通過(guò)多組千分尺讀取數(shù)據(jù)與Kinect傳感器測(cè)量所得數(shù)據(jù)之間的對(duì)比,得到Kinect傳感器測(cè)量的精度誤差。
4.2結(jié)果與分析
獲取坐標(biāo)的誤差分布如表1所示。由表1可知:在測(cè)量的100個(gè)坐標(biāo)點(diǎn)中誤差小于0.5mm的有38個(gè),誤差在0.5~1.0mm之間的有41個(gè),1.0~1.5mm之間的有18個(gè),1.5~2.0mm之間的有3個(gè),沒(méi)有出現(xiàn)誤差大于2mm的情況。由此可以看出:誤差基本上都在0~1.5mm之間,少數(shù)誤差在1.5~2.0mm之間,精度比較高;另外系統(tǒng)對(duì)于每個(gè)標(biāo)記點(diǎn)坐標(biāo)的獲取時(shí)間約為0.5s,反應(yīng)迅速,能夠滿足獼猴桃采摘機(jī)器人的設(shè)計(jì)要求。
表2 坐標(biāo)點(diǎn)誤差分布
5結(jié)論
1)針對(duì)現(xiàn)有的果蔬采摘機(jī)器人果實(shí)坐標(biāo)獲取系統(tǒng)或裝備存在的各種問(wèn)題,根據(jù)獼猴桃果實(shí)生長(zhǎng)環(huán)境和采摘機(jī)器人的作業(yè)要求,基于Kinect傳感器提出了一種自動(dòng)獲取目標(biāo)果實(shí)空間坐標(biāo)的方法。
2)本研究方法獲取的獼猴桃目標(biāo)果實(shí)空間坐標(biāo)精度較高,誤差小于2mm,單個(gè)坐標(biāo)獲取時(shí)間約為0.5s,能夠滿足獼猴桃采摘機(jī)器人的設(shè)計(jì)要求。
3)獼猴桃果實(shí)的自動(dòng)識(shí)別與空間坐標(biāo)獲取的結(jié)合,以及空間坐標(biāo)獲取與采摘機(jī)械臂、末端執(zhí)行器的集成將作為下一步的研究目標(biāo)。
參考文獻(xiàn):
[1]崔永杰, 蘇帥, 王霞霞.基于機(jī)器視覺(jué)的自然環(huán)境中獼猴桃識(shí)別與特征提取[J].農(nóng)業(yè)機(jī)械學(xué)報(bào), 2013, 44(5): 247-252.
[2]Monta M, Kondo N, Shibano Y. Agricultural robot in grape production system[C]//IEEE International Conference on Robotics and Automation,1995:2504-2509.
[3]Arima S,Kondo N.Cucumber harvesting robot and plant training system[J].Journal of Robotics and Mechatronics,1999,11(3):208-212.
[4]Kondo N,Monta M,F(xiàn)ujiura T. Fruit harvesting robot in Japan[J].Adv.Space Res,1996,18(1-2):181-184.
[5]E J van Henten, J Hemming, B A J van Tuijl,et a1.An Autonomous Robot for Harvesting Cucumbers in Greenhouses [J].Autonomous Robots,2002, 13(3):241-258.
[6]J N Reed, S J Miles, J Butler, et al.Automatic Mushroom Harvester Development[J].Journal of Agricultural Engineering Research,2001,78(1): 15-23.
[7]司永勝, 喬軍, 劉剛,等.蘋果采摘機(jī)器人果實(shí)識(shí)別與定位方法[J].農(nóng)業(yè)機(jī)械學(xué)報(bào), 2010,41(9): 148-153.
[8]呂繼東, 趙德安, 姬偉.蘋果采摘機(jī)器人目標(biāo)果實(shí)快速跟蹤識(shí)別方法[J].農(nóng)業(yè)機(jī)械學(xué)報(bào), 2014.,45(1): 65-72.
[9]呂繼東, 趙德安, 姬偉, 等.采摘機(jī)器人振蕩果實(shí)動(dòng)態(tài)識(shí)別[J].農(nóng)業(yè)機(jī)械學(xué)報(bào), 2012,43(5): 173-178,196.
[10]馮青春,袁挺,紀(jì)超,等.黃瓜采摘機(jī)器人遠(yuǎn)近景組合閉環(huán)定位方法[J].農(nóng)業(yè)機(jī)械學(xué)報(bào), 2011,42(2): 154-157.
[11]袁挺, 李偉, 譚豫之, 等.溫室環(huán)境下黃瓜采摘機(jī)器人信息獲取[J].農(nóng)業(yè)機(jī)械學(xué)報(bào), 2009,40(10): 151-155.
[12]宋健, 孫學(xué)巖, 張鐵中.開(kāi)放式茄子采摘機(jī)器人設(shè)計(jì)與試驗(yàn)[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2009, 40(1):143-147.
Abstract ID:1003-188X(2016)05-0232-EA
A Method of Acquiring Kiwi Fruit Coordinate in Space Based on Kinect
Wang Bin, Chen Zixiao,Fu Longsheng, Su Baofeng, Cui Yongjie
(College of Mechanical and Electric Engineering, Northwest Agricultural and Forestry University, Yingling 712100, China)
Abstract:Considering the problems to acquire spatial coordinates of fruit during Kiwi fruit picking robot harvesting, a method is proposed to obtain the spatial coordinates of kiwi fruit based Kinect. This method can obtain the Kiwifruit spatial coordinates accurately.Kinect infrared projector and infrared cameras was used to obtain the depth of image, and Color camera for RGB images. According to corresponding relationship between color and the depth image, the depth of the coordinate could be obtained. Then, map depth point to skeleton point function was used to get Spatial coordinate system coordinates for the origin of the infrared camera. Experiments show that this method can effectively obtain the spatial coordinates of kiwi fruit, positioning error less than 2mm.
Key words:harvesting robot; kiwi fruit; Kinect sensor; the depth of image; spatial coordinate
文章編號(hào):1003-188X(2016)05-0232-05
中圖分類號(hào):S233.5;TP399
文獻(xiàn)標(biāo)識(shí)碼:A
作者簡(jiǎn)介:王濱(1992-),男,山東鄆城人,碩士研究生,(E-mail)wangbinedu@163.com。通訊作者:崔永杰(1971-),男(朝鮮族),吉林圖們?nèi)?,副教授,博士生?dǎo)師,(E-mail)cuiyongjie@nwsuaf.edu.cn。
基金項(xiàng)目:國(guó)家自然科學(xué)基金項(xiàng)目(61175099)
收稿日期:2015-04-28