摘 要:根據顏色特征利用閾值自動設定的方法對圖像進行分割,自動、快速識別紅色番茄;采用形心匹配取代常規的特征點選擇和匹配方法,對雙目立體成像測距公式進行了修正,經過驗證,當工作距離小于500mm時,距離誤差可以控制在±10mm以內。
關鍵詞:計算機視覺;定位;雙目立體視覺
利用機器人采摘果實,首先要識別果實,然后確定果實的空間位置,這樣才能實現下一步的采摘工作。基于計算機視覺尋找樹上果實的方法大致可以分為兩類:一類是根據顏色或者灰度特征分割圖像、尋找果實;另一類是在圖像采集時使用濾波片或者其它設備獲取較為簡單的圖像,然后根據形狀特征尋找果實[1,2]。這些方法目前基本上都停留在理論研究階段,與實際生產的需要差距很大。本文所提出的番茄識別與定位技術可滿足實際工作需要,力求快速、準確。
1 識別
1.1 圖像分割
在圖像上成熟番茄呈現紅色,背景大部分是綠色的枝葉,還有少部分是呈現介于黃色和紅色之間顏色的枯萎枝葉。當圖像上的像素呈現紅色時,其R值(像素紅色顏色分量)大于G值(像素綠色顏色分量);當像素呈現綠色時,其G值大于R值;當像素呈現介于黃色和紅色之間的顏色時,雖然R值也大于G值,但是二者的差值遠小于紅色像素的R值與G值的差值。根據這個特征,可以實現對圖像的兩次分割。令T=R-G。第一次分割:如果T≤0,認為是背景像素,令該像素的R值、G值、B值都為0;如果T>0,認為該像素可能屬于番茄,令該像素的R值、G值、B值都為T。經過第一次分割后,圖像轉變為灰度圖像。屬于番茄部分的像素的灰度值大部分集中在高灰度區域,非番茄部分的像素的灰度值大部分集中在低灰度區域,選擇合適的閾值進行第二次分割。閾值確定后,把灰度值小于閾值的像素變為白色像素(灰度值為255),灰度值大于閾值的像素變為黑色像素(灰度值為0),這樣圖像就轉化成二值圖像,可進行下一步處理。為適用于在不同光照條件下拍攝到的圖像,閾值需要根據具體圖像自動設定,閾值確定采用迭代法[3]。為了顯示第一次分割和第二次分割的效果,特對第一次分割后的圖像作如下處理:令T≤0的像素的顏色值為(255,255,255),即變為白色像素,令T>0的像素保持原來原始圖像中的顏色。圖1(a)為原始圖像,圖1(b)為第一次分割后的效果圖,圖1(c)為第二次分割后的圖像。

1.2 噪聲消除
經過第二次分割后的圖像中仍有許多非番茄部分的像素。對于較小的在視覺上表現為散點的噪聲,可以用形態學開運算和中值濾波相結合的方法去掉。對于較大的噪聲區域,其面積和周長同番茄的面積和周長相比是比較小的,可以根據面積或周長特征去掉。圖1(d)是經過輪廓提取、曲線標記,基于周長特征的識別結果。
2 定位
番茄位置的確定采用雙目立體視覺技術。雙目立體視覺技術是用兩個攝像頭模擬人的雙眼,同時從兩個不同位置對同一目標拍攝圖像,然后通過目標匹配根據三角關系計算目
標的空間位置。
2.1 攝像頭到番茄之間距離的計算
如圖2所示,L、R表示左右兩個攝像頭,點O表示番茄上的特征點,攝像頭焦距為f,攝像頭之間距離為b,Lo為左攝像頭L拍攝到的圖像(簡稱左邊圖像)的中心,Lx為點O在左邊圖像上的成像,Ro為右攝像頭R拍攝到的圖像(簡稱右邊圖像)的中心,Rx為點O在右邊圖像上的成像。根據三角關系,可以計算出O點到LR連線的垂直距離為

其中xL為點Lx在左邊圖像中的橫坐標,xR為點Rx在右邊圖像中的橫坐標。

利用雙目立體視覺技術測量距離的關鍵是特征點(即O點)的選取和匹配。常用的方法是選擇一幅圖像中目標的形心為特征點,根據灰度值在另一幅圖像中進行匹配,所用的匹配算法通常比較復雜,計算量大,而且對采集到的圖像質量要求很高,否則造成錯誤匹配的概率很大。針對上述問題和本研究的具體對象,本文提出以下采用形心匹配取代常規特征點選擇和匹配的方法。如圖3所示,圓O1表示番茄, Lo為左左邊圖像的中心,Lx為左邊圖像上番茄的形心,Ro為右邊圖像的中心,Rx右邊圖像上番茄的形心。我們認為Lx和Rx是番茄上同一點在兩幅圖像上的成像。很明顯,如果存在這樣一點,它一定是圓心O1。

根據前面圖像識別的結果,很容易求得兩幅圖像中番茄的形心坐標。這樣利用式(1)就可以求得圓心O1到LR連線的距離d。但是真正需要得到的是番茄上C點到LR連線的距離d1,所以測距公式應該變成

當研究對象是理想球體時,c就是球體的半徑。實際工作時,番茄是不規則的半球體,并且大小有差別,在工作前,必須對c進行標定。根據對實驗大棚和田間番茄生長情況觀察,在同一時期,在同一個大棚或者同一塊田地里,大部分成熟番茄的半徑差異基本上都在10mm以內,這樣的誤差應該可以滿足采摘的需要。這樣只要選取有代表性的番茄,將其擺放在距離攝像頭不同的位置,通過處理、計算,即可標定c值。圖4是對3個番茄在不同位置的試驗結果,c用另外一個西紅柿進行標定,標定值為22mm。表1中橫坐標是測量距離,縱坐標是根據式(2)計算得到的距離與測量距離之間的偏差,單位都是mm。

從圖4可以看出,當工作距離小于500mm時,除了個別奇異點,誤差基本上都在±10mm以內。這是因為攝像機有一定的取景范圍,距離較遠時,圖像上番茄的像比較小,微小的偏差就會造成較大誤差。
2.2 番茄空間坐標換算
如果取兩攝像頭鏡頭中心連線向右為x軸正方向,連線中點為空間坐標系原點,垂直于x軸所在水平面向下為y軸正方向,根據右手規則,z軸正方向為垂直于x、y所在平面離開攝像頭指向番茄的方向。根據三角關系可求得番茄特征點空間坐標為

其中b、xL、xR、f的意義同式(1),yL和yR是兩幅圖像中番茄形心的縱坐標。
3 結論
本文提出的識別與定位技術在Visual C++ 6.0編譯環境下編程實現,運行效果良好。綜上所述可以得出以下結論:
(1)對不同光照條件下采集到的圖像進行處理,紅色成熟番茄都可以識別;
(2)番茄的空間位置可以基本確定,當工作距離在小于500mm時,距離誤差可以控制在±10mm以內;
(3)由于不需要根據像素的顏色值或者灰度值進行特征點匹配,本文提出的識別和定位技術對圖像質量要求不高,只要人眼可以從圖像上根據顏色識別出紅色番茄,該技術就可以識別并確定番茄的位置;
(4)該識別與定位技術稍加修改,也可用于其它與背景有明顯顏色差別的球形果實的識別與定位。其中,ke和kc為量化因子。取Ke=3,kc=3,ku=1.2,當速度給定為2 000rpm時,實測的系統輸出響應曲線如圖5(a)所示。可見,系統的動態特性較好,但存在穩態誤差。為此,可改為Fuzzy-PID開關切換型混合控制方式,偏差絕對值較大時,采用模糊控制,以獲得較好的動特性,偏差絕對值較小時,自動切換成PID控制,利用積分作用消除穩態誤差。當切換閾值為0.8(給定值)時,系統響應曲線見圖5(b)??梢?,此時,系統得到了滿意的動、靜態特性。

因為性能分析是基于實際的物理系統進行的,且分析所得的結果直觀明了,故具有與一般仿真分析不同的客觀真實性,這對于實時控制系統的教學以及新的控制策略和算法的研究都有非常現實的意義。
3 結束語
本文結合計算機控制、智能控制和網絡通信等高新技術,構建了可實現聯網控制的計算機實時控制系統。該系統硬、軟件有所創新,對于促進理論研究與實際應用的結合有現實的意義。該項目已通過江蘇省科技廳組織的鑒定。
參考文獻
1 Ko C C, Chen B M. Development of a Web-based Laboratory forContol Experiments on a Coupled Tank Apparatus.IEEE Trans.Educ.,2001, 44(2):76-86
2 王耀南. 智能控制系統[M]. 長沙:湖南大學出版社,1996
3 龐文堯. 基于高速局域網絡的實時控制程序開發[J]. 上海:電氣自動化, 2001,(6)
4 易繼鍇. 智能控制技術[M].北京:北京工業大學出版社,1999