王 京,王 霆,席仲雨
(1. 北京電子科技職業學院 汽車工程學院,北京 100176;2. 北京市西城經濟科學大學 培訓處,北京 100035)
在乒乓球場館,特別是訓練場地,在打球過程中或打完球后,會有大量乒乓球散落在場地上。如果有一種機器人能自動將球撿起并放到指定的位置,可以有效減少人的勞動強度。乒乓球是一種供人欣賞的競技比賽項目,如果在乒乓球比賽場地有一個撿乒乓球機器人,不僅可以幫運動員撿球,還可以增加競技比賽的趣味性及可觀賞性。
撿乒乓球機器人需要解決的一個核心問題是機器人定位的問題,即如何確定機器人與待撿乒乓球之間的位置關系。視覺是機器人獲取周圍世界信息最重要的來源。視覺測量分類方法多樣,按所用視覺傳感器數量可以分為單目視覺、雙目視覺等。單目視覺雖然缺少環境的立體信息,但由于其結構簡單、易標定,還能避免立體視覺中的視場小、立體匹配難的缺陷,在移動機器人的研究中十分常見,特別是在對已知特征物體的跟蹤上得到了廣泛應用[1-7]。采用單目視覺系統對乒乓球進行定位,涉及如何在復雜背景環境下將乒乓球信息快速、穩定提取出來的問題,很多學者提出了基于彩色圖像的特征提取方法[8-11]。
本文設計了一種撿乒乓球的機器人系統,主要包括單目視覺系統、機器人系統和上位控制系統等三個部分。提出基于彩色圖像 RGB顏色分量差值的二值化乒乓球特征快速提取方法,通過增加2個輔助乒乓球靶標,采用單目視覺系統實現了機器人平面空間內的定位及過程控制,保證六自由度機器人能夠正確撿起乒乓球。最后,通過實驗驗證了機器人系統及其算法的有效性。
撿乒乓球機器人系統的基本組成框圖如圖 1所示,包括單目視覺系統、機器人機械本體系統和上位控制系統三個部分。單目視覺系統主要用來實時采集其視覺范圍內的圖像信息,并將信息通過無線方式發送給上位控制系統。其中,圖像采集模塊為一彩色CCD攝像機;無線圖像采集模塊發送端用來將采集到的圖像信息通過無線方式發送給上位控制系統。
機器人機械本體系統用來執行上位控制系統的命令,負責撿起乒乓球并將其送到指定地方。其中,移動平臺為一輪式移動平臺,攜帶六自由度機械手,并負責將機械手運送到能夠正確抓取乒乓球及放置乒乓球的位置;六自由度機械手為6電機控制的機械手,當移動平臺達到指定位置后,機械手執行相應動作,實現抓取及放置乒乓球;電機驅動器是用來驅動移動平臺和六自由度機械手的電機;機器人控制器執行無線模塊控制器端接收的上位控制系統的控制命令,通過電機驅動器控制機器人運動;無線模塊控制器端通過無線方式接收上位控制系統的命令,并傳給機器人控制器。

圖1 機器人系統基本組成框圖
上位控制系統通過無線方式接收單目視覺系統采集的圖像信息,對圖像信息進行處理,并根據任務要求轉換成相應的控制命令,然后通過無線方式將控制命令發送給機器人機械本體系統,由機器人控制器完成給定的任務。其中,無線圖像采集模塊接收端通過無線方式接收單目視覺系統采集的圖像信息,并將其傳給上位機;無線控制模塊 PC端通過無線方式將上位機的控制命令發送給機器人機械本體系統;上位機為一 PC機,用來執行上位軟件,并根據任務要求生成機器人系統需要的控制命令;上位軟件主要包括圖像采集模塊、圖像處理模塊、標定模塊、跟蹤控制模塊及控制信號輸出模塊。
機器人的工作流程如圖2所示。步驟201:啟動系統開始按鈕,系統開始工作。步驟 211:上位軟件中的采集模塊采集單目視覺系統視野中的圖像信息,獲得當前彩色圖像。
步驟 212:上位軟件中的圖像處理模塊基于彩色圖像的 RGB信息對圖像進行處理,從復雜背景中提取出當前乒乓球及定位靶標的特征信息。

圖2 機器人工作流程
步驟 214:系統標定,即當乒乓球處于機器人最佳抓取位置時,通過圖像采集模塊及圖像處理模塊獲得理想乒乓球及定位靶標的特征信息。
步驟 213:上位軟件中的跟蹤控制模塊根據當前乒乓球和定位靶標的特征信息及理想的乒乓球和定位靶標的特征信息,并根據規定的控制策略,生成機器人的控制命令。
步驟221:判斷移動平臺是否需要轉向。
步驟2151:上位機的控制信號輸出模塊向移動平臺發送轉向命令。
步驟216:移動平臺根據轉向命令,進行轉向。
步驟222:判斷移動平臺是否需要移動。
步驟2152:上位機的控制信號輸出模塊向移動平臺發送移動命令。
步驟217:移動平臺根據移動命令,進行移動。
步驟2153:當移動平臺的位置和方向調整好后,上位機的控制信號輸出模塊給六自由度機械手發送乒乓球抓取命令。
步驟 218:六自由度機械手按預先設好的動作進行運動,直到抓取乒乓球并放置到預定位置。
步驟223:判斷撿乒乓球任務是否結束。
步驟202:按任務結束按鈕,結束任務。
根據撿乒乓球的要求及總體設計方案,系統涉及基于單目視覺的機器人定位及過程控制技術,以及基于彩色圖像的乒乓球特征提取技術。
由于六自由度機器人安裝在移動平臺上,而且乒乓球一般與移動平臺在同一個平面上,因此只要確定了移動平臺和乒乓球的位置和偏轉角關系,便可以通過預先設定的程序控制六自由度機器人正確抓取乒乓球。本文提出,在移動平臺上安裝2個靶標乒乓球,然后采用單目視覺系統確定待抓取的乒乓球與移動平臺之間的位置和偏轉角關系。
機器人的定位原理及控制策略如圖3所示,A、B為提取出來的安裝在移動平臺上的兩個靶標乒乓球圖像的重心,其圖像坐標分別為(xA, yA)及(xB, yB);C為提取出來的機器人待抓取的乒乓球圖像的重心,其圖像坐標為(xC, yC);L為C到A、B連線的標準距離,反映了當六自由度機器人能夠正確抓取乒乓球時移動平臺與被抓乒乓球之間的位置關系;O為C到A、B連線的垂線與A、B連線的交點,其圖像坐標為(xO, yO)。

圖3 機器人定位原理圖
令αCBA、αCAB分別為 CB與 BA連線及 CA與AB連線的夾角,當六自由度機器人能夠正確抓取乒乓球時,移動平臺和被抓乒乓球之間的偏轉關系如下:

式中,LAB、LAC及LCB分別為三個球心兩兩之間的相互距離:

由此可見,只要在移動平臺上增加2個靶標乒乓球,用單目視覺系統提取出3個乒乓球的球心圖像坐標后,就能夠實現對機器人系統的定位過程。
根據上述定位結果,便可實現對移動平臺的控制,進而實現六自由度機器人對乒乓球的抓取,具體控制策略如下:
當LAB=L時,移動平臺移動到位;
當LAB>L時,移動平臺需要向前移動;
當LAB<L時,移動平臺需要向后移動;
當 αCBA=αCAB時,移動平臺轉動到位;
當 αCBA<αCAB時,移動平臺需要向左轉動;
當 αCBA>αCAB時,移動平臺需要向右轉動。
本系統采用乒乓球作為跟蹤靶標,理論上球狀的乒乓球在CCD上的成像為一圓形且顏色一般為黃色,根據這些特征,提出了基于彩色圖像 RGB顏色分量差值的二值化乒乓球特征快速提取方法。
2.2.1 含黃色特征的彩色圖像分析
包含黃色乒乓球的一副彩色圖像如圖4所示。

圖4 實驗圖片
對RGB各分量的差值分析如圖5、圖6、圖7所示。

圖5 RG的差值

圖6 RB的差值

圖7 GB的差值
從上面的分析結果來看,黃色乒乓球區域的各顏色分量的差值具有明顯的凸起,可以應用這個特性把黃色物體從復雜背景中提取出來。
2.2.2 乒乓球提取策略
根據上面的圖像分析結果,可獲得黃色乒乓球特征提取的二值化公式:

其中,F(u,v)為(u,v)像素處圖像二值化后的值,RG、RB、BG分別為(u,v)像素處對應的各顏色分量差值的絕對值,TRG、TRB及TBG分別為對應的閾值。同時有:

采用上述策略對乒乓球進行特征提取的實例如圖8所示,由提取效果可見此策略是簡單有效的。

圖8 乒乓球特征提取結果
用于撿乒乓球的機器人系統如圖9所示,主要包括單目視覺系統、移動平臺和六自由度機器人、上位機及控制軟件。

圖9 撿乒乓球的機器人系統
整個實驗過程包括以下步驟:
(1)基于單目視覺系統原始彩色圖像的采集,采集到原始圖像如圖10所示。

圖10 原始圖片
(2)采用上述特征提取策略對乒乓球特征進行提取,提取出的乒乓球特征如圖11所示。

圖11 特征提取結果
(3)根據機器人定位原理,計算出的移動平臺的定位量如圖12所示。

圖12 定位值計算結果
(4)根據計算出的定位量及控制策略,控制移動平臺移動到六自由度機器人能夠抓取到乒乓球的位置和旋轉角,如圖13所示。

圖13 移動平臺運動到位狀態
(5)啟動六自由度機器人抓乒乓球程序,將乒乓球撿起,如圖14所示。

圖14 機器人撿乒乓球過程
(1)撿乒乓球機器人系統中,基于彩色圖像RGB顏色分量差值的二值化乒乓球特征快速提取方法可行、有效。
(2)單目視覺系統實現了機器人平面空間內的定位及過程控制,保證六自由度機器人能夠正確撿起乒乓球。
(3)實驗驗證了撿乒乓球機器人系統總體設計方案的正確性、流程的可行性及算法的有效性。