張學鋒,戴亮亮,周建欽,儲岳中,紀 濱
(安徽工業大學 計算機科學與技術學院,馬鞍山 243002)
乒乓球機器人作為一種典型的實時智能機器人,需要感知競技對象的發球路線和軌跡,并做出合理的判斷和回球策略,從而完成靈活擊打[1].其所包含的高速乒乓球識別跟蹤、快速精確擊球預測、機械手臂運動規劃與控制等關鍵技術有著廣泛的應用前景[2,3].其中乒乓球的檢測與定位,是乒乓球軌跡預測精度的基礎,直接影響著乒乓球機器人的擊球成功率和擊球效果[4,5].
由于乒乓球機器人的高實時性與魯棒性等要求,部分效果良好的目標檢測與跟蹤方法在實際應用過程中無法穩定的在有效時間內完成乒乓球識別任務[6].致使乒乓球的快速精確檢測成為了乒乓球機器人研究中的重難點問題.文獻[7]研究了RGB加權法對乒乓球圖像灰度化,結合閾值分割達到乒乓球檢測的目的,該方法速度快,但對光照敏感.文獻[8]將乒乓球RGB圖像轉換到HSV顏色模型中進行顏色篩選,克服了RGB顏色模型對光照敏感的問題.文獻[9]提出了基于HSV模型的顏色閾值自學習方法.通常,基于單一顏色模型的分割方法會受到相近顏色及光照變化的干擾.因此,文獻[10,11]研究了基于運動分析的幀間差分法對運動目標進行提取,同時為了提高乒乓球定位精度,提出了基于采樣點生長的中心定位算法,該方法檢測效果良好,但對運動干擾魯棒性較差.文獻[12]提出了結合運動分析與基于HSV顏色模型篩選的乒乓球檢測方法,能夠有效檢測出乒乓球區域.但仍然無法排除相近顏色(如膚色等)干擾.
為了解決現有乒乓球分割方法無法在復雜環境下對乒乓球進行有效檢測與跟蹤這一問題,本文提出了一種基于多顏色模型的乒乓球檢測與跟蹤方法.綜合乒乓球在RGB顏色空間與HSV顏色空間中的顏色分布特性,能夠有效排除光照與相近顏色的干擾,提取出乒乓球區域.并以圖像中乒乓球區域的質心位置作為乒乓球的定位坐標,同時結合ROI技術縮小后續圖像的篩選范圍,降低圖像處理的時間花費,達到乒乓球的快速檢測與跟蹤的目的.通過追蹤效果的三維重建分析,證實了該方法的可行性及有效性.
基于多顏色模型的乒乓球分割算法是根據乒乓球在不同顏色模型中不同的顏色描述特性提出的,本文中的多顏色模型結合了RGB模型的強顏色表達能力與HSV模型中色調與飽和度對光照的抗干擾能力,能夠有效的對復雜背景下的乒乓球進行分割與提取.
其中,RGB顏色模型作為最常用模型,主要用于顯示器等發光體的顏色顯示,是一種加色法混色模型.通過將紅(R)、綠(G)、藍(B)三種基本色按其亮度的不同分別劃分為256個等級,進行不同程度的疊加,能夠表示1600多萬種不同的顏色.該模型的顏色表達能力強,但對光照變化較為敏感.如圖1 所示,圖1(a)與圖1(b)分別為相機在強光條件與弱光條件下采集到的乒乓球RGB圖像,統計后分別得到兩種光照條件下乒乓球的RGB顏色分布范圍(如表1所示).通過對比發現,在不同光照條件下,乒乓球的RGB顏色分布范圍變化較大,證明了RGB模型對光照敏感這一特性.

圖1 不同光照條件下采集到的乒乓球圖像

表1 不同光照條件下乒乓球的RGB顏色分布范圍
HSV顏色模型用色調(Hue)、飽和度(Saturation)和亮度(Value)三元素來描述色彩[3],更貼近人眼的視覺感知.如圖2所示,色調H表示顏色的色彩信息(范圍從 0°~360°),即所處的光譜顏色的位置; 飽和度S(范圍從0%~100%)表示所選顏色接近光譜色的程度,飽和度越高,則顏色越深、越鮮艷; 亮度 V(范圍從0~1)表示色彩的明亮程度.

圖2 HSV 顏色模型
通常,相機采集到的數字圖像是以RGB顏色模型來描述的.因此,要獲得該圖像的在HSV顏色模型下的描述需對圖像進行顏色模型轉換[10](本文將HSV顏色模型中H范圍設定為0–360,S與V范圍設定為0–255): 假設某個像素點的RGB空間顏色描述為(r,g,b),而HSV空間顏色描述為(h,s,v),為了方便計算與表述,定義變量RGBmax和RGBmin分別表示RGB分量中的最大值和最小值:

色調h為所處的光譜顏色的位置,其表示的顏色信息與RGBmax相關 (如圖1 所示,若RGBmax=r,則色調h表示紅色區間內某一顏色),該參數以一角度量來表示,具體定義如下:

飽和度s表示色調h所表示顏色的純度(RGBmax–RGBmin)和該顏色最大的純度RGBmax之間的比率 (注: 當s=0 時,圖像為灰度圖像),計算公式如下:

亮度v反映了顏色的明亮程度,與物體的透射比或反射比有關,定義如下:

不同于RGB顏色模型,HSV 顏色模型各分量之間相對獨立,顏色變化不易受到其它分量的影響.同時HSV模型中的H、S分量在光照干擾下具有較強的魯棒性.如表2所示,在HSV顏色模型中,分別對圖3中強光條件與弱光條件下的乒乓球顏色分布進行統計.對比發現,乒乓球的在HSV模型中,不同光照條件對H分量范圍影響較小,同時S分量在弱光條件(光照條件2)下的分布范圍為強光條件(光照條件1)下分布范圍的子集.因此,在 HSV 模型中,乒乓球的色調 (H)與飽和度(S)在不同光照的影響下具有較好的穩定性.

表2 不同光照條件下乒乓球的HSV顏色分布范圍
乒乓球為球體形狀,其部分表面會由于光源被遮擋導致所受光照不均勻,從而無法使用單一的RGB模型進行乒乓球提取.利用單一的HSV模型能夠在無相近顏色干擾的實驗環境中具有良好的乒乓球分割果,但乒乓球機器人的研究目的之一是為了實現人機對戰,這導致在實際實驗場景中往往會出現膚色(H分量值為10–20,與乒乓球相近)等其他顏色較為相近的復雜背景出現,這時單一的HSV顏色模型無法對圖像中的乒乓球進行有效的分割與提取.基于多顏色模型的乒乓球分割算法能夠有效的解決這一問題,通過利用對光照干擾魯棒的HSV模型進行初步篩選,得到所有與乒乓球顏色相近的物體,再利用具有高區分度的RGB模型去除非乒乓球區域的圖像噪聲,達到復雜環境下乒乓球分割的目的.
如圖3所示,實驗環境為場景較為復雜的室內環境.其中視覺系統的硬件部分由兩臺Basler 高速相機(acA1600)和一臺圖像處理計算機(Core i5-5200U)的組成,相機固定在握拍機械臂的左右兩側后上方.

圖3 實驗環境
系統工作時,兩臺相機以 100 fps (frames per second)的速率同步抓取圖像,經由圖像處理計算機進行處理,達到乒乓球的檢測與實時跟蹤的目的,具體工作原理如圖4所示.
利用多顏色模型對乒乓球進行檢測與分割需要獲得圖像在多顏色模型下的分割閾值: 首先對實驗環境中各個位置乒乓球的RGB變化范圍進行離線統計,得到乒乓球在RGB顏色空間中的各分量區間(rl,ru),(gl,gu),(bl,bu)(其中l代表區間下限,u代表區間上限),統一記作ThresholdRGB.然后將RGB圖像轉換到HSV顏色模型中,統計出乒乓球在HSV顏色空間中的各分量范圍 (hl,hu),(sl,su),記作ThresholdHSV.

圖4 乒乓球的檢測與跟蹤原理
經統計得到各顏色分量的分割閾值后,實時乒乓球視覺系統便能夠使用多顏色模型分割法對乒乓球進行快速提取與定位操作.
如圖5所示,對于一幅輸入的RGB圖像,首先進行顏色模型轉換得到其各像素點(x,y)對應的HSV各分量值,然后分別對該像素的r、g、b值與h、s值進行閾值判斷:

從而得到多顏色模型下的乒乓球分割二值圖.分割后的圖像包含的是乒乓球區域圖像,要對球心進行定位,則需要獲得乒乓球的中心位置,本文以二值圖像binary中乒乓球區域的質心位置作為乒乓球中心坐標.假設二值圖像的大小為M×N,則質心坐標的計算方式如下[8]:

其中,A表示二值圖中,乒乓球面積的大小:


圖5 乒乓球提取與定位過程
乒乓球在運動過程中其前后位置具有連續相關性,即相鄰兩幀圖像中乒乓球的位置是相近的,同時乒乓球區域面積只占整幅圖像的一小部分,這使得對圖像進行全局處理會增加不必要的時間開銷.為了保證乒乓球跟蹤的實時性,本文引用了感興趣區域(Region Of Interests,ROI)算法對乒乓球進行快速跟蹤.在當前圖像中,將前一幀圖像中乒乓球所在位置的附近區域設定為感興趣區域,以較小的感興趣區域的局部圖像處理替代全局圖像處理,不僅能夠提升分割速度,同時也避免了非感興趣區域的噪聲干擾.
基于ROI技術的乒乓球檢測的主要目的是以局部檢測代替全局檢測,從而達到快速跟蹤的目的.如圖6所示,對于實時采集到RGB圖像,首先利用多顏色模型法對圖像進行全局檢測,直至檢測出第i幀圖像中包含乒乓球,球心坐標記作由于乒乓球在運動過程中前后位置具有相關性.因此,在第i+1 幀圖像中,乒乓球的位置通常處于附近某個小區域內,將該區域設定為感興趣區域進行局部檢測,能夠有效的提高乒乓球檢測效率.
其中感興趣區域的位置及區域大小的確定是該算法的核心問題,需要作為離線參數在實時系統工作前確定下來.本文中感興趣區域的中心位置基于前一幀圖像中乒乓球球心的位置Pc的,假設當前幀為第i幀,可以確定感興趣區域的中心位置center:


圖6 基于 ROI技術的乒乓球實時檢測過程
感興趣區域的長寬H×W則是根據實驗環境中,運動的乒乓球在相鄰幀之間的位移差得到.其中,乒乓球心在相鄰幀圖像間橫坐標位移dxi與縱坐標位移dyi分別定義如下:

那么在i次實驗統計中,結合最大位置差與圖像中乒乓球半徑r與容錯邊界值b(經驗值得到),可以得到感興趣區域的長寬值m'、n'分別為:

基于感興趣區域算法的乒乓球實時跟蹤方法能夠有效的減少圖像處理的工作量,同時對于ROI區域可能出現的檢測不到乒乓球的情況,也設定了異常處理機制.在提升圖像處理速度的同時,保證了乒乓球分割性能的穩定性.經實驗,該算法的執行時間小于實驗中相機設定的采樣時間間隔10 ms,能夠與相機進行同步工作.
如圖7所示,以該環境作為實驗環境,通過多次實驗統計得到乒乓球在RGB與HSV模型中的分割范圍ThresholdRGB與ThresholdHSV,具體閾值分布如表3所示.

圖7 運動中的乒乓球圖像

表3 基于顏色特征的乒乓球分割閾值表
根據表3中的分割閾值對圖6進行乒乓球分割與提取,提取結果如圖8 所示.其中,圖8(a)與圖8(b)分別為在單一的RGB顏色模型與HSV顏色模型下的乒乓球分割得到的效果圖,結果證明單一的顏色模型無法將乒乓球與顏色相近的機械手臂等干擾物體區分開來.圖8(c)為本文所提出的多顏色模型下的乒乓球分割效果,分割效果較好,對相近顏色區分度較高.圖8(d)為對圖8(c)進行去噪處理后得到的效果圖.經過以上乒乓球分割效果的對比,表明了多顏色模型下乒乓球分割算法的可行性.

圖8 乒乓球分割效果對比
在利用多顏色模型分割法進行乒乓球分割效果良好的前提下,為了證實圖像中乒乓球的定位精度滿足乒乓球機器人的擊球精度,需要結合雙目視覺的三維重建方法對定位效果進行檢驗.
表4展示了在圖7所示的實驗環境下,結合OpenCV開源庫中的相機標定技術與本文提出的乒乓球識別方法,對乒乓球進行三維定位的部分數據.其中,X、Y、Z的坐標方向如圖9所示.

表4 部分乒乓球三維定位數據

圖9 仿真場景坐標系設定
為了更直觀的展示算法的實時性及有效性,本文通過仿真平臺對乒乓球的實時定位結果進行分析,如圖10所示,其中黃色軌跡為實時定位數據的仿真復現.軌跡仿真結果較為平滑,證明了算法的魯棒性.以測量值為實際值,通過多次試驗對比得到: 重建后的乒乓球三維坐標位置與實際位置誤差約為5 mm(距離相機3 m 處)~20 mm(距離相機 5 m 處),小于乒乓球拍半徑長度(約75 mm),滿足乒乓球機器人的擊球需要.

圖10 乒乓球定位數據仿真結果
充分考慮了乒乓球所固有的顏色特征,在分析各顏色模型的基礎上,提出了多顏色模型下的乒乓球分割算法.結合RGB顏色模型與HSV顏色模型對復雜環境下的乒乓球進行分割操作,以質心法對乒乓球進行精確定位.同時采用基于前幀位置的ROI技術降低后續幀中乒乓球跟蹤的時間開銷,達到實時跟蹤的目的.實驗證明,該算法處理時間小于 10 ms,定位誤差小于20 mm,滿足乒乓球機器人系統的擊球需要.但本文中乒乓球定位的方法采取的是質心法,在乒乓球運動過快的情況下會造成相機所抓取的圖像包含運動模糊或部分缺失,從而使得乒乓球的定位產生一定的誤差,需要進一步優化該算法,這將是下一步需研究的內容.
參考文獻
1Sun YC,Xiong R,Zhu QG,et al.Balance motion generation for a humanoid robot playing table tennis.Proceedings of the 11th IEEE-RAS International Conference on Humanoid Robots.Bled,the Republic of Slovenia.2011.19–25.
2Zhao YS,Zhang YF,Xiong R,et al.Optimal state estimation of spinning Ping-Pong ball using continuous motion model.IEEE Transactions on Instrumentation and Measurement,2015,64(8): 2208–2216.
3Zhang K,Fang ZJ,Liu JR,et al.An adaptive way to detect the racket of the table tennis robot based on HSV and RGB.Proceedings of the 34th Chinese Control Conference.Hangzhou,China.2015.5936–5940.
4Ko? O,Maeda G,Peters J.A new trajectory generation framework in robotic table tennis.Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems.Daejeon,Korea.2016.3750–3756.
5Huang YL,Scholk?pf B,Peters J.Learning optimal striking points for a Ping-Pong playing robot.Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems.Hamburg,Germany.2015.4587–4592.
6張遠輝,韋巍.在線角速度估計的乒乓球機器人視覺測量方法.浙江大學學報 (工學版),2012,46(7): 1320–1326.
7張德龍.乒乓球機器人視覺伺服關鍵技術研究[碩士學位論文].鄭州: 鄭州大學,2014.
8郟海峰.無標記仿人乒乓球機器人本體視覺系統及其軌跡預測研究[碩士學位論文].杭州: 浙江大學,2016.
9章逸豐,熊蓉.乒乓球機器人的視覺伺服系統.中國科學:信息科學,2012,42(9): 1115–1129.
10Zhang ZT,Xu D,Tan M.Visual measurement and prediction of ball trajectory for table tennis robot.IEEE Transactions on Instrumentation and Measurement,2010,59(12): 3195–3205.
11張正濤.乒乓球機器人視覺測量與控制[博士學位論文].北京: 中國科學院研究生院(自動化研究所),2010.
12張遠輝.基于實時視覺的乒乓球機器人標定和軌跡跟蹤技術研究[博士學位論文].杭州: 浙江大學,2009.