易 詩,張 磊,謝子瓊,張 健
(成都理工大學(xué) 信息科學(xué)與技術(shù)學(xué)院,成都 610059)
基于機器視覺的目標(biāo)跟隨六足機器人
易 詩1,張 磊2,謝子瓊3,張 健4
(成都理工大學(xué) 信息科學(xué)與技術(shù)學(xué)院,成都 610059)
針對智能機器人控制領(lǐng)域的機器視覺中的目標(biāo)跟蹤問題與機器人運動控制方法研究,設(shè)計實現(xiàn)了一款基于機器視覺的目標(biāo)跟隨六足機器人,該系統(tǒng)的機器視覺目標(biāo)跟蹤算法為TLD(tracking-learning-detection)算法,采用stm32嵌入式處理器驅(qū)動32路舵機控制板控制機器人運動,并設(shè)計實現(xiàn)了一種小型自動火控裝置用于鎖定目標(biāo)后的定位打擊。該系統(tǒng)融合了六足機器人運動學(xué)和機器視覺目標(biāo)跟蹤技術(shù),對六足機器人步態(tài)進行研究,根據(jù)目標(biāo)視覺導(dǎo)航,精確鎖定目標(biāo),對目標(biāo)進行瞄準(zhǔn)打擊做出了詳細(xì)的設(shè)計實現(xiàn)工作。
機器視覺;TLD算法;目標(biāo)跟隨;stm32處理器;六足機器人
隨著信息科技,自動化技術(shù),智能硬件技術(shù)的飛速發(fā)展,對于智能機器人技術(shù)的研究越加成熟。機器視覺、定位導(dǎo)航、人工AI等研究領(lǐng)域成果倍出,智能機器人技術(shù)目前在消費、軍事上的運用越來越廣泛。
六足智能機器人機相對傳統(tǒng)輪式移動機器人具有跨越障礙性強、適應(yīng)復(fù)雜地形、靈活機動的特點,目前在運動學(xué)方面對六足機器人的研究技術(shù)較為成熟。隨著機器視覺目標(biāo)跟蹤技術(shù)和定位導(dǎo)航技術(shù)在一些先進的智能機器人產(chǎn)品中已得到一定應(yīng)用,如大疆、零度等無人機生產(chǎn)研發(fā)企業(yè)的新一代產(chǎn)品中,使用了基于機器視覺技術(shù)的目標(biāo)自動跟隨與導(dǎo)航技術(shù)。機器視覺的目標(biāo)檢測、跟蹤算法也不斷地被更新、完善,機器視覺技術(shù)的發(fā)展使智能機器人與環(huán)境的交互、感知功能得到進一步提升。目前,對機器視覺的研究方向與成果主要在于算法的設(shè)計與實現(xiàn)和無人機及slam機器人方面的應(yīng)用。對于機器視覺中目標(biāo)跟蹤技術(shù)應(yīng)用于六足機器人的研究較少,研究融合機器視覺與六足智能機器人的運動學(xué)優(yōu)勢的系統(tǒng)對機器視覺技術(shù)應(yīng)用于智能機器人控制具有很大的意義。
本文設(shè)計實現(xiàn)了一種基于機器視覺目標(biāo)自動跟隨、鎖定的六足機器人控制系統(tǒng)。該系統(tǒng)目標(biāo)跟蹤鎖定采用TLD(tracking-learning-detection)目標(biāo)跟蹤算法,實現(xiàn)對目標(biāo)快速、穩(wěn)定地鎖定跟蹤,提取目標(biāo)重心,計算機器人與目標(biāo)相對位置,為機器人調(diào)整自身位置對準(zhǔn)目標(biāo)提供精準(zhǔn)數(shù)據(jù);該系統(tǒng)運動控制采用STM32嵌入式處理器,并設(shè)計了一款小型自動火控系統(tǒng)模擬對跟蹤目標(biāo)的精確射擊。該系統(tǒng)較好融合了機器視覺目標(biāo)跟蹤技術(shù)、六足機器人運動控制技術(shù)和自動火控技術(shù)。
機器視覺是智能機器人研究領(lǐng)域一個重要分支,目前一系列成熟機器視覺算法已投入應(yīng)用,如有的系統(tǒng)采用TLD目標(biāo)跟蹤算法。TLD算法是Zdenek Kalal提出的一種對視頻中單個物體長時間追蹤的算法。它主要由追蹤器、檢測器、機器學(xué)習(xí)3個模塊構(gòu)成。TLD算法相對于傳統(tǒng)跟蹤算法,其優(yōu)勢在于TLD算法結(jié)合了傳統(tǒng)跟蹤算法和傳統(tǒng)檢測算法,解決了跟蹤過程中的變形和跟蹤目標(biāo)的部分遮擋問題。同時,采用改進的在線學(xué)習(xí)機制對跟蹤模塊的顯著特征點和目標(biāo)模型以及檢測模塊的相關(guān)參數(shù)進行更新[1]。
TLD目標(biāo)跟蹤算法總體框架如圖1所示。
圖1 TLD算法總體框架圖Fig.1 TLD algorithm overall framework
跟蹤模塊是觀察幀與幀之間的目標(biāo)動向,采用LK(Lucas-Kanade)光流法,利用時間差預(yù)測目標(biāo)出現(xiàn)位置進行鎖定[2]。
檢測模塊是將跟蹤器提取的目標(biāo)圖像看成獨立的,然后去定位,使用一個級聯(lián)分類器,使用級聯(lián)分類器結(jié)構(gòu)有利于對目標(biāo)的判斷分類。級聯(lián)分類器包含3個級別,首先是圖像元方差分類器:其功能為計算圖像元像素灰度值的方差,把方差小于原始圖像元方差一半的樣本標(biāo)記為負(fù),這為對目標(biāo)分類的第一步;其次是集成分類器:實際上是一個隨機蕨分類器[3],用于目標(biāo)分類中對動態(tài)目標(biāo)的篩選;然后是最近鄰分類器:用于計算新樣本的相對相似度及對跟蹤目標(biāo)的長時間鎖定。計算公式為
(1)
(1)式目的在于計算采集目標(biāo)圖像元pi和pj的相似度。(1)式中,N為歸一化相關(guān)系數(shù),這樣值N(pi,pj)取值在[0,1]范圍內(nèi),如采集目標(biāo)圖像元間具有較高的相似性,則(1)式計算值越大。
根據(jù)跟蹤模塊的結(jié)果,學(xué)習(xí)模塊評估檢測模塊的錯誤,并生成訓(xùn)練樣本更新檢測模塊的目標(biāo)模型,提高檢測器的性能,避免以后出現(xiàn)類似錯誤、主要采用P-N(positive-nagitive)學(xué)習(xí),P-N學(xué)習(xí)是一種半監(jiān)督的機器學(xué)習(xí)算法,在模塊運行過程中檢測正負(fù)樣本[4]。正樣本由(2)式計算得出,負(fù)樣本由(3)式計算得出。
(2)
(3)
(2)式中,等號右邊為每次圖像樣本經(jīng)分類器篩選得出的上個周期采集的正樣本和當(dāng)前周期采集的正樣本。(3)式中,等號右邊為每次圖像樣本經(jīng)分類器篩選得出的上個周期采集的負(fù)樣本和當(dāng)前周期采集的負(fù)樣本。
正負(fù)樣本由檢測模塊提供的檢測結(jié)果經(jīng)過k次迭代得出。P-N算法根據(jù)樣本結(jié)果進行學(xué)習(xí),訓(xùn)練,生成一個目標(biāo)分類器,并不斷更新[5]。
TLD目標(biāo)跟蹤算法在3個模塊的閉環(huán)協(xié)同工作下,能夠?qū)︽i定目標(biāo)進行長期、有效、可靠地跟蹤。
目標(biāo)跟蹤算法采用TLD算法為機器人提供目標(biāo)位置的坐標(biāo)信息,TLD算法使用機器視覺開源庫opencv在電腦上實現(xiàn),導(dǎo)航設(shè)計實現(xiàn)流程如下。
1)指定需要跟蹤目標(biāo)。
2)啟動TLD算法在線學(xué)習(xí)、訓(xùn)練、鎖定目標(biāo)特征。
3)跟蹤目標(biāo)。
4)提取目標(biāo)圖像位置形心。
5)計算目標(biāo)與圖像中心位置差值,作為位置調(diào)整依據(jù)。
6)啟動串口,發(fā)送調(diào)整機器人位置命令。
導(dǎo)航的核心在于提取需要跟蹤的目標(biāo)位于圖像中的重心坐標(biāo),由(4)式計算:
(4)
(4)式中:x0,y0為形心坐標(biāo);f(x,y)為圖像在(x,y)處坐標(biāo)值。根據(jù)(4)式計算出跟蹤物體的形心,通過形心計算,可以確定跟蹤物體中心在圖像中具體的坐標(biāo),提供該物體的定位信息[6]。
在電腦上運行圖像處理上位機軟件通過形心與圖像中心位置的差值,生成機器人位置移動命令并通過無線串口發(fā)送到機器人運動控制端,讓機器人調(diào)整自身的左右、前后移動,使目標(biāo)處于圖像中心位置,從而達(dá)到機器人正對目標(biāo)并和目標(biāo)保持固定距離。
3.1 控制系統(tǒng)總體框架
六足機器人控制系統(tǒng)采用stm32處理器作為下位機控制核心,總體設(shè)計方案為下位機處理器通過無線串口模塊接收電腦上運行的機器視覺目標(biāo)跟蹤算法提供的位置信息加以處理,生成控制命令發(fā)送至32路舵機控制板生成PWM(pulse width modulation)波控制六足機器人底盤各個舵機的運動,進行目標(biāo)跟隨,同時架設(shè)在六足機器人底盤上的攝像頭實時采集視頻圖像,通過open-wrt模塊傳輸至電腦進行圖像處理,在跟隨目標(biāo)進入設(shè)定的區(qū)域及距離時啟動架設(shè)在六足底盤上的小型火控系統(tǒng)模擬對目標(biāo)的精確跟蹤打擊。
控制系統(tǒng)總體設(shè)計框架如圖2所示。
圖2 控制系統(tǒng)總體設(shè)計框架圖Fig.2 Overall design frame of control system
3.2 六足機器人步態(tài)控制設(shè)計
六足機器人的運動控制中,主要為機器人步態(tài)控制,六足機器人采用仿生學(xué)設(shè)計,模擬自然界六足昆蟲運動方式,相比輪式機器人,履帶機器人等地面運動機器人有著多地形適應(yīng)性、更高穩(wěn)定性和更靈活移動的優(yōu)勢。
六足步行機器人的步態(tài)是多種多樣的,其中,三腳架步態(tài)是一個六足步行機器人的典型步態(tài)。昆蟲行走,通常在非直線前進的同時,將腳分成兩組,用三角形的支撐結(jié)構(gòu)向前移動[7]。其步態(tài)設(shè)計如圖3所示。
圖3 六足機器人三角步態(tài)Fig.3 Triangular gait of six legged robot
如圖3,六足機器人身體兩側(cè)分布6條腿,六足通過三角步態(tài)進行移動。機器人在水平和垂直方向上運動時,B,D,F(xiàn)腳為擺動腳,向水平或垂直方向擺動,A,C,E腳保持原有位置不動,只發(fā)揮支撐作用。由于機器人重心較低,不需要協(xié)調(diào)Z軸移動,容易穩(wěn)定,因此這種方案得到廣泛的應(yīng)用[8]。
運動系統(tǒng)由處理器發(fā)送舵機控制命令,控制舵機操縱六足機器人使用三角步態(tài)進行前、后、左轉(zhuǎn)、右轉(zhuǎn)的基本運動。
3.3 跟隨瞄準(zhǔn)控制設(shè)計
為突出表現(xiàn)六足機器人對目標(biāo)跟隨鎖定的精確度,系統(tǒng)設(shè)計了一款小型火控系統(tǒng),在六足機器人根據(jù)目標(biāo)調(diào)整自身位置進行跟隨過程中,達(dá)到正對目標(biāo)并和目標(biāo)保持固定距離后,啟動火控裝置,激發(fā)小彈丸命中目標(biāo)。
小型火控系統(tǒng)由繼電器、電子點火模塊、發(fā)射裝置構(gòu)成,在目標(biāo)鎖定后由stm32處理器發(fā)出激發(fā)信號,啟動發(fā)射裝置射擊。
火控系統(tǒng)設(shè)計框圖如圖4所示。
六足機器人自動跟隨的基本原因是系統(tǒng)根據(jù)電腦端運行的機器視覺目標(biāo)跟蹤算法獲取自身與目標(biāo)形心位置坐標(biāo)關(guān)系,根據(jù)坐標(biāo)不斷運動更新調(diào)整自身位置,以達(dá)到與目標(biāo)保持正對和與目標(biāo)保持固定距離,鎖定目標(biāo)后,開火命中目標(biāo)。
圖4 火控系統(tǒng)設(shè)計框圖Fig.4 Diagram of fire control system design
自動跟隨瞄準(zhǔn)的基本流程如圖5所示。
圖5 自動跟隨瞄準(zhǔn)流程圖Fig.5 Automatic target following flow chart
系統(tǒng)啟動后獲取攝像頭實時視頻流,指定需要跟蹤的目標(biāo)物體,提取目標(biāo)的形心坐標(biāo),例如(550,270),說明目標(biāo)位于攝像頭左下位置,根據(jù)目標(biāo)形心坐標(biāo)發(fā)出位置調(diào)整信息,機器人向左及向下運動,正對目標(biāo)后,目標(biāo)形心將鎖定于圖像中心區(qū)域(420-440,290-310),此時機器人正對目標(biāo),隨后調(diào)整與目標(biāo)距離,根據(jù)目標(biāo)鎖定框面積值,機器人前進或后退,在此過程中同時保持正對目標(biāo),調(diào)整到與目標(biāo)距離位于設(shè)定開火距離后(目標(biāo)框圖像值大于1 500像素,小于2 500像素)啟動火控裝置,準(zhǔn)確命中目標(biāo)。對于靜止目標(biāo)或運動目標(biāo),機器人都可以該方式穩(wěn)定跟隨。
目標(biāo)跟隨六足機器人在完成組裝、算法設(shè)計、軟硬件調(diào)試后進行了完整的測試工作。
為保證測試全面性,設(shè)置了一個帶紙靶的遙控小車,六足機器人鎖定小車上的靶心后跟隨小車運動,在運動過程中調(diào)整自身與小車角度、位置,在正對靶心,保持固定距離后啟動火控系統(tǒng)激發(fā)并命中靶心。
六足機器人跟隨小車運動測試效果如圖6所示。
圖6 六足機器人跟隨目標(biāo)測試Fig.6 Six legged robot following target test
由圖6可以看出,六足機器人獲取機器視覺目標(biāo)跟隨算法提供的位置信息后,跟隨目標(biāo)運動,能很好地調(diào)整自身位置。
六足機器人在正對目標(biāo),保持與目標(biāo)一定距離后鎖定目標(biāo),啟動火控系統(tǒng)激發(fā)命中目標(biāo),測試結(jié)果如圖7所示。
圖7 六足機器人瞄準(zhǔn)目標(biāo)測試Fig.7 six legged robot robot aiming test
由圖7可以看出,在六足機器人鎖定目標(biāo)后啟動火控裝置,準(zhǔn)確命中鎖定目標(biāo)的中心位置。
系統(tǒng)運行中機器視覺目標(biāo)跟隨算法不斷更新六足機器人和目標(biāo)的位置關(guān)系,以達(dá)到鎖定、跟隨目標(biāo)。
對目標(biāo)穩(wěn)定檢測和跟蹤做出測試,效果如圖8所示。
圖8 目標(biāo)檢測跟蹤測試
由圖8可以看出,機器視覺目標(biāo)跟隨算法可以有效鎖定目標(biāo)。通過控制機器人自身位置,讓目標(biāo)靶心隨時處于攝像頭中心部分,能有效、可靠地鎖定目標(biāo)。
系統(tǒng)所采用攝像頭為720P高清網(wǎng)絡(luò)攝像頭,通過測試,攝像頭采集圖像中心點坐標(biāo)為(430,300),設(shè)定火控啟動距離為離目標(biāo)50 cm,為測試系統(tǒng)工作性能,采用了一組6個目標(biāo)進行跟蹤、鎖定和瞄準(zhǔn)測試,測試結(jié)果如表1所示。
通過以上測試,該系統(tǒng)可以高效鎖定目標(biāo),控制六足機器人與跟隨目標(biāo)的位置關(guān)系,同時在達(dá)到指定位置條件時,啟動火控系統(tǒng)精準(zhǔn)命中目標(biāo)。
表1 測試結(jié)果Tab.1 Test results
基于機器視覺的目標(biāo)跟隨六足機器人,采用了先進的機器視覺目標(biāo)跟蹤算法,可以長期、穩(wěn)定地跟蹤并鎖定目標(biāo)。在運動控制方面采用的嵌入式處理器可以高效控制六足機器人轉(zhuǎn)向,前進后退等動作。融合機器視覺算法及自動控制系統(tǒng)的六足機器人可以對移動目標(biāo)進行自動跟隨,同時可對跟隨目標(biāo)進行精準(zhǔn)射擊等操作,對于智能機器人控制技術(shù)具有深遠(yuǎn)應(yīng)用研究價值。
[1] 廖萬輝,李琳.基于機器視覺的工業(yè)機器人定位系統(tǒng)[J].微計算機信息,2009,25(8):242-244. LIAO Wanhui, LI Lin. Industrial robot localization system based on machine vision[J]. microcomputer information, 2009,25(8): 242-244.
[2] 許海霞.機器視覺標(biāo)定與目標(biāo)檢測跟蹤方法及其應(yīng)用研究[D].長沙:湖南大學(xué),2011:230-232. XU Haixia. Research on machine vision calibration and target detection and tracking method [D]. Changsha:Hunan University, 2011.230-232.
[3] 龔愛平.基于嵌入式機器視覺的信息采集與處理技術(shù)研究[D].杭州:浙江大學(xué),2013. GONG Aiping. Research on information collection and processing technology based on embedded machine vision [D]. Hangzhou:Zhejiang University, 2013.
[4] 周鑫,錢秋朦,葉永強,等.改進后的TLD視頻目標(biāo)跟蹤方法[J].中國圖象圖形學(xué)報,2013,18(9):1115-1123. ZHOU Xin, YE Yongqiang, WANG Congqing, et al. TLD Video object tracking method Chinese improved [J]. Journal of image and graphics, 2013,18(9):1115-1123.
[5] 李偉.六自由度關(guān)節(jié)式機器人控制系統(tǒng)開發(fā)[D].上海:華東理工大學(xué),2014. LI Wei. Development of control system for articulated robot with six degrees of freedom [D].Shanghai: East China University of Science and Technology, 2014.
[6] 易詩,林凡強.基于改進TLD的自動目標(biāo)跟蹤方法[J].重慶郵電大學(xué)學(xué)報:自然科學(xué)版,2016,28(6):892-896. YI Shi, LIN Qiangfan. Automatic Tracking method based on improved TLD[J]. Journal of Chongqing University of Posts and Telecommunications: Natural Science Edition, 2016,28(6):892-896.
[7] 魏星.基于SVM 的山體滑坡災(zāi)害圖像識別方法[J].電子測量技術(shù),2013,36( 8):65-70. WEI Xing. Image recognition method of landslide disaster based on SVM [J]. Electronic measurement technology, 2013, 36 (8):65-70.
[8] BABENKO B,YANG M H,BELONGIE S.Visual tracking with online multiple instance learning[C]//Proc. CVPR 2009. [s.l.]:IEEE Press,2009:983-990.
[9] 賀人慶.多關(guān)節(jié)機器人嵌入式控制系統(tǒng)開發(fā)[D].杭州:浙江大學(xué),2015. HE Renqing. Development of embedded control system for multi joint robot [D]. Hangzhou:Zhejiang University, 2015.
[10] LIM T Y,RATNAM M M,KHALID M A.Automatic classification of weld defects using simulated data and an MLP neural network[J].Insight,2007,49 ( 3 ) :154-159.
[11] TSAI R. A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses[J]. IEEE Journal on Robotics and Automation, 1987, 3(4): 323-344.
[12] INIGO R M, MCVEY E S, BERGER B J, et al. Machine vision applied to vehicle guidance[J]. IEEE transactions on pattern analysis and machine intelligence, 1984 (6): 820-826.
[13] MIRAPEIX J,GARCIA-ALLENDE P B,COBO A,et a1.Real-time arc-welding defect detection and classification with principal component analysis and artificial neural networks[J].NDT & E International,2007,40 ( 4 ) :315-323.
[14] VINCENT P,LAROCHELLE H,LAJOIE I, et al.Stacked de noising auto encoders: learning useful representations in a deep network with a local de noising criterion[J].Journal of Machine Learning Research,2010,11 ( 12 ) :3371-3408.
[15] DUAN X, CHEN W, YU S, et al. Tripod gaits planning and kinematics analysis of a hexapod robot[C]//2009 IEEE International Conference on Control and Automation. [s.l.]: IEEE, 2009: 1850-1855.
(編輯:魏琴芳)
The National Undergraduate Innovation and Entrepreneurship Project (201610616043)
Aiming at the target tracking problem in the field of intelligent robot control, machine vision study and research on robot motion control method, this paper designed a six-foot robot using machine vision technology to follow the target, and the system uses the TLD target tracking algorithm to track the target, controls the robot movement using the stm32 embedded processor to drive the 32-way steering gear control board,and designs a mini automatic fire control device used to lock the target and strike. The system integrates the six-foot robot kinematics and machine vision target tracking technology. The system realizes visual navigation and studies the six legged gait.
Machine vision; tracking-learning-detection(TLD) algorithm; Target follow; Stm32 processor; Six-legged robot
10.3979/j.issn.1673-825X.2017.04.020
2017-03-15
2017-07-06 通訊作者:易 詩 549745481@qq.com
國家大學(xué)生創(chuàng)新創(chuàng)業(yè)項目(201610616043)
TN919.5
A
1673-825X(2017)04-0557-06
Target following six-legged robot based on machine vision
(College of Information Science and Technology, Chengdu University of Technology, Chengdu 610059, P.R.China)
易 詩(1983-),男,四川成都人,碩士研究生,主要從事機器視覺研究,深度學(xué)習(xí)算法研究,信號與信息處理,嵌入式技術(shù)研究。E-mail:549745481@qq.com。
YI Shi1, ZHANG Lei2, XIE Ziqiong3, ZHANG Jian4