劉祚時,王亞平, 吳翠琴
(江西理工大學,a.機電工程學院;b.電氣工程與自動化學院,江西 贛州 341000)
臍橙作為贛南特色產(chǎn)業(yè),種植面積居世界之首,果實采摘是一項繁重的勞動.隨著人口老齡化,農(nóng)業(yè)勞動人口不斷縮減,實現(xiàn)臍橙自動化采摘是提高農(nóng)業(yè)自動化,解決勞動力不足的必然發(fā)展趨勢[1].在臍橙自動化采摘過程中對空間果實準確、實時定位是成功采摘的關鍵.
雙目視覺系統(tǒng)具有感知信息量豐富、全局性好、精度高、非接觸式測量等無可替代的優(yōu)勢,已廣泛應用于機器人導航、工業(yè)測量等方面[2-3].針對工作于自然環(huán)境下的采摘機器人目標識別和定位,是近年來研究的熱門課題[4-7].采摘機器人是一個高實時系統(tǒng),其中識別定位是影響采摘機器人實時性的關鍵環(huán)節(jié).提高視覺定位系統(tǒng)的實時性與準確性,進而改善采摘機器人性能、提高作業(yè)效率是目前采摘機器人應用推廣亟待解決的重要問題.文中主要針對臍橙果實的快速識別、立體匹配和三維重建進行了研究.采用游程編碼快速進行連通區(qū)域標記及區(qū)域形狀特征描述;結(jié)合臍橙表面紋理、果形區(qū)分度小的特點,提出了臍橙采摘機器人目標果實快速識別和定位方法,設計了非結(jié)構(gòu)環(huán)境下的雙目視覺快速定位系統(tǒng).為實時性場合下視覺定位提供了一種解決方案.
根據(jù)果實顏色與背景顏色有明顯的差異特點,通過顏色分量特征關系進行圖像分割.在不同光照條件下對自然生長的果實進行圖像采樣,在RGB顏色空間分析目標和背景R、G、B分量值關系.圖像行采樣像素各顏色通道值如圖1(b).可見目標果實與背景在色差模型2R-G-B下灰度對比度較大.2R-G-B色差模型灰度直方圖如圖1(c),具有明顯雙峰特點,因此可設定閾值將目標分離[8].為了對不同光照強度有更好的適應性采用歸一化色差 (2R-G-B)/(2R+G+B)〈T 閾值分割. 取全局閾值T=0.29時分割效果如圖2(b).得到分割后的圖像經(jīng)過中值濾波濾除噪聲,轉(zhuǎn)化成二值圖像如圖2(c).對于部分果實存在粘連情況,將閾值分割后果實區(qū)域進行顏色變換求取灰度圖像[9],再采用高斯-拉普拉斯算子提取出果實的邊界區(qū)域如圖 2(d).再將圖 2(d)與二值化圖像 2(c)或運算可以較好將粘連果實分開如圖2(e).最后通過3次3×3模板的形態(tài)學腐蝕和膨脹處理,去掉圖像中的噪聲和小孔洞,得到連通果實區(qū)域,如圖2(f).
圖1 目標與背景各顏色通道分量與2R-G-B模型直方圖
圖2 目標分割提取
由于采摘過程是逐個摘取果實,因此要采用最優(yōu)采摘目標策略選取優(yōu)先采摘對象.分割后的圖像呈現(xiàn)多個目標連通區(qū)域,區(qū)域分析通常是圖像處理中耗時較長的環(huán)節(jié).常用的區(qū)域分析方法有種子填充算法和兩步掃描法等,其都以像素為基本單元進行分析,計算代價高、實時性差.游程編碼法[10]以游程為基本操作單元,連通區(qū)域分析基本單元由像素級轉(zhuǎn)到游程級,提高了區(qū)域分析效率.文中采用游程編碼法對檢測到的果實連通區(qū)域進行分析,只需一遍掃描即可完成區(qū)域標記及形狀特征計算,具體步驟如下.
第1步,初始化游程結(jié)構(gòu)體數(shù)組,從左到右逐行掃描圖像,編碼記錄一行中游程的編號RLEi、行坐標 Ri、起止位置 Xi、Yi,以及將指針 Qi加入所鄰接的父游程(當前游程上一行游程)所指向的根游程(首個父游程)鏈表.屬同一根游程的游程組成一個區(qū)域?qū)ο?
第2步,判斷當前游程與父游程的鄰接關系,按四鄰域方向判斷重疊區(qū)域(K表示重疊像素數(shù)),如圖3,有三種情況:?若與上一行游程都不鄰接(如RLE0),則創(chuàng)建新的根游程鏈接指針,并加入根游程鏈表;?若與上一行單鄰接(如RLE1與RLE0鄰接),則將該游程指針加入父游程的根游程指針鏈表;?若與上一行多個游程復鄰接 (如RLE3與RLE1、RLE2復鄰接),則將所鄰接的父游程對應的根游程鏈表中的成員更新合并到其中編號最小根游程鏈表中,并將當前游程指針加入合并后的根游程鏈表.
圖3 游程編碼示意圖
第3步,統(tǒng)計區(qū)域的面積S,周長L、區(qū)域中心坐標p(x,y)等特征參數(shù).往根游程鏈表中加入游程 RELi+1時區(qū)域特征如下式(1)~式(4):
通常小面積區(qū)域為噪聲干擾、距離遠和不在采摘范圍內(nèi)的果實圖像,所有行掃描完后,先去除這些小面積區(qū)域.再按公式(5)進行區(qū)域圓度檢測.
其中Si是區(qū)域的面積 (區(qū)域像素總數(shù)),Li為區(qū)域的周長(區(qū)域邊界像素個數(shù)).Ci為區(qū)域的圓度,越接近1是表示區(qū)域形狀越接近圓形.將面積在預設定范圍內(nèi)的圓形區(qū)域標記并加入堆棧.由于近距離目標比遠距離目標成像大,外側(cè)無遮擋的果實圓度較好.以近距離、外側(cè)目標優(yōu)先采摘的原則,選用優(yōu)先度函數(shù)如式(6).
其中γ為比例系數(shù).掃描整個區(qū)域后對堆棧內(nèi)區(qū)域按優(yōu)先度值Pi進行排序,選擇優(yōu)先度最高的區(qū)域為采摘目標,提取區(qū)域邊界,采用隨機圓環(huán)法[11-12]擬合求取目標圓心坐標和半徑參數(shù)如圖2(g).
立體匹配過程即找到左圖特定點在右圖中對應的點.傳統(tǒng)的匹配方法有基于區(qū)域匹配和基于特征匹配.基于區(qū)域匹配是以窗口內(nèi)灰度分布的相似性進行判別圖像對吻合程度,匹配計算量大,實時性差.基于特征的匹配是根據(jù)目標的特征點,邊緣形狀等特征進行匹配,具有匹配速度快,匹配精度高,但是特征匹配在尋找對應匹配點時很可能存在多個候選點或匹配點不存在,容易出現(xiàn)誤匹配,如圖4.
圖4 視差范圍內(nèi)多候選匹配圖
文章利用形心特征點與鄰域灰度互相關性相結(jié)合的匹配算法,通過由粗到精實現(xiàn)目標匹配.在形心特征點匹配過程中加以極線約束和視差范圍約束.左圖像中的點在右圖像中只在對應的極線高度上搜索,考慮到畸變誤差,將垂直方向上搜索范圍限定在對應極線高度的上下三個像素范圍內(nèi).在水平方向上搜索限定在機器人作業(yè)空間對應有效視差范圍X-Dmax~X內(nèi),如圖4.在搜索區(qū)域內(nèi)的目標中心點為候選匹配點.針對搜索區(qū)域存在多候選匹配,容易出現(xiàn)誤匹配的情況,采用鄰域區(qū)域灰度相關性為唯一約束.文中采用光照強度適應性較好的歸一化互相關性系數(shù)R(x,y),如式(7).
其中 P(x,y)為左圖中目標中心點灰度,Q(x′,y′)為右圖對應候選匹配點灰度,2M+1,2N+1為模板的高、寬.
匹配步驟如下:
步驟(1),在左圖選取采摘目標,以該目標點中心P(x,y)建立9×9模板窗口,形心匹配加以極線約束視差約束,確定候選匹配點 Q(x′,y′).
步驟(2),選取一個候選匹配點,在它的15×15鄰域窗口內(nèi)移動模板,搜索與左圖模板灰度分布相關性R(x,y)最高的匹配點.
步驟(4),記錄最后匹配點對坐標參與視差計算,若所候選匹配均不滿足,則匹配目標不存在,轉(zhuǎn)至步驟(1)進行下一目標匹配.
攝像機模型采用小孔成像的線性模型,雙目攝像頭主軸平行設置,雙目模型如圖5所示.
圖5 雙目攝像機模型圖
其中f為攝像機的焦距,b為兩攝像機的基線長.P1(x1,y1)和 P2(x2,y2)為目標點 P 在兩成像平面內(nèi)的成像點坐標.通過三角測距原理可得目標果實的三維空間坐標點 P(x,y,z)坐標如式(10):
通過CMOS雙目攝像機實時獲取目標信息,提取目標果實的像素坐標;通過攝像機標定獲的攝像機內(nèi)部參數(shù)外部參數(shù).根據(jù)成像原理計算果實在攝像機坐標系的三維空間坐標,流程圖如圖6.
圖6 系統(tǒng)軟件流程圖
系統(tǒng)利用兩個型號相同Logitech QuickCam公司的pro5000 USB接口的CMOS攝像機,分辨率1280×1024,視角 50°,焦距 8mm,圖像信息處理采用便攜式PC機,其CPU為A6-3400M四核,主頻為2.4 GHz,內(nèi)存4 GB,windows7操作系統(tǒng).通過多角度棋盤標定板拍攝20組圖像,采用Matlab標定工具箱標定[13],系統(tǒng)采用VC++結(jié)合OpenCV庫編程實現(xiàn)系統(tǒng)算法,開發(fā)調(diào)試軟件界面如圖7.
圖7 定位軟件界面
實時性實驗.以常用的種子填充的區(qū)域分析算法[14]作參照對比,系統(tǒng)區(qū)域分析階段通過分別調(diào)用種子填充算子算法類和游程編碼算法類,對固定視深為300 mm和800 mm的植株果實目標各做20組定位對比實驗,其中單目標、多目標各10組.測試系統(tǒng)完成一次定位過程的平均時間,對比試驗結(jié)果如表1.
表1 算法運行時間對比實驗/s
定位精度實驗.為了驗證系統(tǒng)的定位精度通過雙目攝像機隨機選取深度范圍在220~850 mm的200個不同位置的植株目標果實進行識別試驗,記錄實測坐標和計算坐標.結(jié)果成功識別出果實188次,有8次漏識別(沒有檢測到果實),有4次誤識別(將背景當作果實),部分實驗數(shù)據(jù)如表2.
表2 部分實驗數(shù)據(jù)
以上實驗結(jié)果表明,該系統(tǒng)定位單個果實時間為0.6 s左右,游程編碼法進行區(qū)域特征分析相比以像素為基本單元的種子填充算法實時性更好,視野中有多目標情況時實性優(yōu)勢更明顯.特征點與鄰域互相關性相結(jié)合匹配算法在提高匹配效率的同時保證了匹配精度.系統(tǒng)識別率達94%,在距離范圍220~850mm內(nèi)誤差小于12mm,可以較好滿足采摘機器人實時性和精度要求.該方法針對近距離、部分遮擋目標果實有較好的定位效果,在嚴重遮擋情況下的果實定位還有待深入研究.
在果實目標識別階段對連通區(qū)域通過游程編碼進行區(qū)域標記和區(qū)域特征參數(shù)檢測.采用最優(yōu)采摘目標策略,選取優(yōu)先采摘對象.采用形心特征點與鄰域灰度互相關性相結(jié)合的匹配法在提高了匹配速度的同時保證了匹配精度.視覺定位系統(tǒng)在機器人的工作空間內(nèi)能較好滿足精度和實時性要求.通過該定位系統(tǒng)研究也為其他視覺定位系統(tǒng)在實時性應用場合應用提供了一種參考解決方案.
[1]金衡模,高煥文,王曉燕.農(nóng)業(yè)機械自動化的現(xiàn)狀與推進模式[J].中國農(nóng)業(yè)大學學報,2000,5(2):44-49.
[2]張慶君,胡修林,葉 斌,等.基于雙目視覺的航天器間相對位置和姿態(tài)的測量方法[J].宇航學報,2008,29(1):156-161.
[3]Jiménez A R,Ceres R,Pons JL.A vision system based on a laser range-finder applied to robotic fruit harvesting[J].Machine Vision and Applications,2000,11(6):321-329.
[4]Arefi A,Motlagh A M,Mollazade K,et al.Recognition and localization of ripen tomato based on machine vision[J].Australian Journal of Crop Science,2011,5(10):1144.
[5]趙 鵬,趙德安.雙目立體視覺在果樹采摘機器人中的應用[J].農(nóng)機化研究,2009,31(1):212-214.
[6]蔣煥煜,彭永石,應義斌.雙目立體視覺技術(shù)在果蔬采摘機器人中的應用[J].江蘇大學學報,2008,29(5):377-380.
[7]Kondo N,Nishitsuji Y,Ling P P,et al.Visual feedback guided robotic cherry tomato harvesting[J].Transactions of the ASAE,1996,39(6):2331-2338.
[8]賴有華,葉海建.幾種閾值分割法在工程圖自動識別中的應用[J].江西理工大學學報,2006,27(4):31-33.
[9]蔡健榮,周小軍,李玉良,等.基于機器視覺自然場景下成熟柑橘識別[J].農(nóng)業(yè)工程學報,2008,24(1):175-178.
[10]胡 濤,郭寶平,郭 軒,等.基于改進游程連通分析的快速目標描述算法[J].光電工程,2009,36(2):116-121.
[11]司永勝,喬 軍,劉 剛,等.蘋果采摘機器人果實識別與定位方法[J].農(nóng)業(yè)機械學報,2010,41(9):148-153.
[12]朱慶生,胡章平,劉 然,等.立體圖像對的極線校正 [J].計算機工程與設計,2009,30(17):4027-4030.
[13]孫玉青,冀小平.Matlab標定工具箱在攝像機定標中的應用[J].太原科技,2010,194(3):99-100.
[14]吳 潛,居太亮.應用種子填充算法提取圖像的形狀特征[J].電訊技術(shù),2001,41(4):88-90.