文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.10.032
中文引用格式: 張子洋,孫作雷,,曾連蓀. 視覺追蹤機器人系統(tǒng)構建研究[J].電子技術應用,,2016,42(10):123-126,,130.
英文引用格式: Zhang Ziyang,,Sun Zuolei,Zeng Liansun. The construction of visual tracking robot[J].Application of Electronic Technique,,2016,,42(10):123-126,130.
0 引言
機器視覺是一種利用視覺傳感器與計算機實現(xiàn)人的視覺功能的技術,,它從采集的圖像中提取信息并進行處理和理解[1],,處理后的結果用于機器人決策和控制,。視覺追蹤是對移動目標的識別和對其移動屬性(如方向、速度,、軌跡,、加速度等)的持續(xù)獲取,然后對獲取的圖像序列進行目標提取和檢測,,從而通過深入的分析和理解,,達到對移動目標的行為的理解。視覺追蹤的本質就是對機器人獲取的視覺圖片進行合理利用,,快速地對圖像信息進行處理,,以便最快地為決策控制提供反饋信息,從而構成視覺追蹤的整個閉環(huán)系統(tǒng)[2],。而視覺追蹤機器人要實現(xiàn)的功能包括[3]:先通過攝像機獲取目標的方位信息,,核心控制器通過相關算法判斷機器人下一步該如何移動,再將這些控制信號送給機器人移動的執(zhí)行元件的驅動器,,使之能追蹤目標物,。
1 硬件平臺
視覺追蹤技術作為計算機視覺領域的熱門課題之一,所需硬件要具備視覺部件攝像頭,、與上位機通信的硬件模塊(如WiFi天線,、藍牙等)和靈活的移動控制模塊。此外,,為實現(xiàn)避障,,除了單目攝像頭之外,通常還會引入激光,、紅外線傳感器等,。Rovio WowWee機器人(如圖1),作為一款成本低而功能相對完善的玩具機器人,,十分適合移動機器人的視覺追蹤及導航算法的研究,。其擺臂前端的攝像頭數(shù)據(jù)通過無線連接實時傳回上位機,同時,,3個全向輪確保了其運動的靈活性,,下端的紅外傳感器可以用于避障。本文將基于Rovio構建視覺追蹤移動機器人系統(tǒng),。
2 通信與景物辨識
2.1 數(shù)據(jù)通信
Rovio可以接入互聯(lián)網(wǎng),,也可工作在Adhoc模式,在此模式下機器人的IP固定,,通過Socket依托TCP/IP鏈路向機器人發(fā)送官方API文檔所指定的HTTP請求[4],,機器人收到請求后產生動作并返回數(shù)據(jù)。整個流程如圖2所示。
圖像采集模塊是機器人進行視覺追蹤的重要組成部分,,該模塊獲取當前圖像并提供保存接口,,提供了離線處理數(shù)據(jù)的能力。為避免機器人與物體產生碰撞,,使用紅外傳感器設計一簡單接口來實現(xiàn)檢測障礙物功能,,根據(jù)傳感器返回數(shù)據(jù)結構使用8 bit的信息量來存儲信息,Bit0存儲LED燈的開關狀態(tài),,Bit1存儲IR傳感器的開關狀態(tài),,Bit2存儲IR檢測是否有障礙的狀態(tài),0表示無,,1表示有,,分別定義3個檢測碼:(1<<0),、(1<<1),、(1<<2),用檢測碼與用戶接口的傳感器獲取的數(shù)據(jù)進行位與操作,,所獲取結果即可作為傳感器檢測結果,,如表1所示。
傳感器返回信息顯示此時IR打開,,有障礙物,。使用IR障礙物檢測碼檢測結果為1,表示有障礙物,。
系統(tǒng)中的傳感器數(shù)據(jù)包括:3個輪子的方向,、電機編碼器信息、電池狀態(tài),、擺臂位置,、相機亮度、分辨率,、幀率和WiFi信號強度等信息,。
2.2 目標識別與追蹤
追蹤部分引入Tracking-Learning-Detection(TLD)追蹤算法[5],基于其在線追蹤機制,,追蹤機器人所采集的每一幀圖像,,處理追蹤結果并送入控制算法模塊。TLD的追蹤器,、檢測器和機器學習之間關系如圖3所示,。
TLD在對視頻中未知物體的長時間跟蹤有突出的優(yōu)勢,“未知物體”指的是任意物體,,通過選定追蹤的目標來初始化TLD,,“長時間跟蹤”意味著對算法的實時性要求,而在追蹤中物體的消失再出現(xiàn),光線,、背景變化以及目標的遮擋給追蹤提出了很大的挑戰(zhàn),,單獨使用追蹤器或檢測器顯然無法勝任這樣復雜多變的工作,故TLD算法提出將追蹤器與檢測器結合,,同時引入在線的機器學習來提高準確度,。
2.2.1 追蹤器
追蹤器的作用是跟蹤連續(xù)幀間的運動,當物體可見時跟蹤器才會起作用,,基于光流法的跟蹤器由前一幀已知目標位置估計當前幀的目標位置,,所產生的運動軌跡為學習模塊提供正樣本。追蹤點的選擇依據(jù)FB(forward-backward consistency)誤差[6]篩選出誤差最小的部分點作為最佳追蹤點,,如圖4所示,,然后根據(jù)這些點的坐標變化計算t+1幀目標包圍幀的位置和尺度大小。
2.2.2 檢測器
檢測器使用的級聯(lián)分類器對圖像元樣本進行分類,,級聯(lián)分類器共分為3個級別[5]:圖像元方差分類器(Patch Variance Classifier),,計算圖像元像素灰度值的方差,如果圖像塊與目標圖像塊之間的方差(一般取灰度值計算)小于50%(經(jīng)驗值),,那么就拒絕這些圖像塊,,此分類器將去除大量背景圖像塊;集成分類器(Ensemble Classifier),,由N個基分類器組成,,圖像元樣本經(jīng)平滑濾波后取13對隨機點比較得到二進制碼,隨后依據(jù)各基分類器輸出的后驗概率結果平均,,如果其值大于0.5,,則接收并送入下一級分類器;最近鄰分類器(Nearest Neighbor Classifier),,經(jīng)過前兩級分類器,,至此大約剩余50個圖像元,計算新樣本的相對相似度,,如大于0.6,,則認為這是正樣本并添加到目標模型。圖像元和相似度描述如下:
Sr取值在[0,,1]之間,,值越大代表相似度越高,最后取值最高樣本作為結果輸出,。
2.2.3 P-N學習
P-N學習[5]是一種半監(jiān)督的機器學習算法,,針對檢測器對樣本分類時產生的兩種錯誤提供了兩種“專家”進行糾正:P專家(P-expert),針對分類為負樣本的樣本,,檢出漏檢的正樣本,;N專家(N-expert),,針對分類為正樣本的樣本,改正誤檢的正樣本,。
圖像元樣本是用不同尺寸掃描窗(scanning grid)對圖像進行逐行掃描,,每個位置形成一個包圍框(bounding box),包圍幀所確定的圖像區(qū)域稱為一個圖像元,,圖像元進入機器學習的樣本集即目標模型M成為一個樣本,,掃描產生的樣本是未標簽樣本,需要用分類器確定其分類標簽,。每一幀圖像內目標最多只出現(xiàn)在一個位置,;相鄰幀間目標的運動是連續(xù)的,連續(xù)幀的位置可以構成一條較平滑的軌跡,。P專家的作用是尋找數(shù)據(jù)在時間上的結構性,,它利用追蹤器的結果預測物體在t+1幀的位置。如果這個位置(圖像元)被檢測器分類為負,,P專家就把這個位置改為正,。也就是說P專家要保證物體在連續(xù)幀上出現(xiàn)的位置可以構成連續(xù)的軌跡。N專家的作用是尋找數(shù)據(jù)在空間上的結構性,,它把檢測器產生的和P專家產生的所有正樣本進行比較,,選擇出一個最可信的位置,保證物體最多只出現(xiàn)在一個位置上,,把這個位置作為TLD算法的追蹤結果。同時這個位置也用來重新初始化追蹤器,。其結構如圖5所示,。
3 跟隨控制
由圖像目標追蹤可得目標于圖像中的準確位置,通過控制算法對機器人進行控制,,從而使得目標一直處于相機圖像中部位置,,進而實現(xiàn)完整的視覺伺服功能。
圖像追蹤模塊追蹤到目標,,通過TLD算法對目標縮放的估測能力[5]估計出目標的前后移動,;通過圖像中目標的像素坐標變化估計出目標的左右移動趨勢,并使用PID控制對此作出定量反饋,。
離散PID控制算法[7]為:
圖像逐幀追蹤所得的目標信息與目標期望位置的誤差送入PID控制器,,進而對移速進行實時控制,較好的實現(xiàn)定量控制,,對不同誤差值作出不同反饋,。考慮到所選平臺的運動特性,,現(xiàn)制定一種適用于本系統(tǒng)的控制策略,。機器人前后運動依據(jù)追蹤目標的尺度縮放,,左右運動依據(jù)實際值與期望像素坐標值的誤差值進行PID控制,最終完成對任意給定目標的視覺伺服任務,,流程如圖6所示,。
本文基于機器人全向輪的運動特性構建出運動控制模型如下:
由圖8可知:
由式(6)、式(7)可得機器人逆運動學方程:
因此機器人中心速度到輪子轉速的轉換方程為:
4 實驗
本文使用3個實驗驗證所提軟硬件系統(tǒng)的可行性,,代碼在github上開源,,代碼主頁:https://github.com/sunzuolei/wowwee。
4.1 基于紅外的避障
機器人在Adhoc模式下會發(fā)射無線信號,,通過無線網(wǎng)卡連接到機器人后即可開始使用該驅動,。當檢測到障礙物時,機器人左轉,;當未檢測到時,,機器人前進,本實驗視頻可通過腳注中地址查看,。
4.2 追蹤指定顏色標記
先對機器人相機進行配置,,然后獲取一幀圖像并顯示,如圖 9所示,,對獲取圖像過濾并追蹤前方出現(xiàn)的粉色域(圖9中顯示為灰色),,找出圖像中粉色方塊,遍歷找出最大的,,并在其上打上X字符(如圖9 (b)中X符),,然后將其顯示出來。
4.3 追蹤指定目標
通過在機器人前期采集圖像中框選感興趣的目標,,可驗證機器人對人臉[8],、校園卡和水壺等物體的目標追蹤能力,如圖10所示,,本實驗視頻可通過腳注中地址查看,。
對走廊中標志物及人體后背的跟蹤結果如圖11所示,可見在一定的光照變化及目標運動的條件下,,機器人的跟隨效果可以達到較好的效果,,初步驗證了所提方案的可行性。
5 結論
本文所構建的視覺追蹤軟硬件系統(tǒng)在日常環(huán)境中可實時識別并跟隨目標移動,,在實驗平臺上驗證了所提系統(tǒng)的可行性,,且誤差控制在可接受范圍內,對伺服機器人的研究具有一定參考價值,。
參考文獻
[1] 倪受東,,劉洋,袁祖強.機器人視覺伺服綜述[J].機床與液壓,,2007,,35(9):227.
[2] 羅金梅.移動目標視覺追蹤系統(tǒng)設計與實現(xiàn)[D].成都:電子科技大學,,2012.
[3] 盧光青,史金飛.視覺追蹤機器人實時控制系統(tǒng)的設計[J].中國制造業(yè)信息化,,2009,,38(17):49.
[4] WowWeeGroup.API specification for rovio[Z].2008.
[5] KALAL Z,MIKOLAJCZYK K,,MATAS J.Tracking-learning-detection[J].Pattern Analysis and Machine Intelligence,,IEEE Transactions on,2012,,34(7):1409-22.
[6] KALAL Z,,MIKOLAJCZYK K,MATAS J.Forward-backward error:automatic detection of tracking failures[C].Proceedings of the Pattern Recognition(ICPR),,2010 20th International Conference on,,2010:2756-9.
[7] 劉金琨.先進PID控制MATLAB仿真(第三版)[M].北京:電子工業(yè)出版社,2010.
[8] KALAL Z,,MIKOLAJCZYK K,,MATAS J.Face-TLD:tracking-learning-detection applied to faces[C].Proceedings of the Image Processing(ICIP),2010 17th IEEE International Conference on,,2010:3789-92.