基于雙計(jì)算機(jī)的仿人機(jī)器人的視覺跟蹤系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
仿人機(jī)器人的頭部視覺跟蹤系統(tǒng)利用視覺信息作為反饋,來規(guī)劃?rùn)C(jī)器人的頭部運(yùn)動(dòng)使其能實(shí)時(shí)的跟蹤運(yùn)動(dòng)目標(biāo)。視覺跟蹤是仿人機(jī)器人的重要功能之一,它的研究對(duì)于仿人機(jī)器人的自主導(dǎo)航、人機(jī)交互以及視覺伺服都具有極其重要的意義。
視覺跟蹤的實(shí)時(shí)性是仿人機(jī)器人的重要性能要求之一。針對(duì)這一系統(tǒng)要求,近年來有很多學(xué)者設(shè)計(jì)出了多種系統(tǒng)結(jié)構(gòu)。文[1]中作者設(shè)計(jì)了一種基于CAN總線的分布式的仿人機(jī)器人的控制系統(tǒng),其中的視覺系統(tǒng)通過無線局域網(wǎng)與控制系統(tǒng)進(jìn)行通訊。日本仿人機(jī)器人ASIMO的運(yùn)動(dòng)控制系統(tǒng)采用集中式控制方式,視覺系統(tǒng)通過網(wǎng)絡(luò)與運(yùn)動(dòng)控制系統(tǒng)通訊[2]。一臺(tái)計(jì)算機(jī)難以滿足視覺跟蹤的實(shí)時(shí)性要求,為了實(shí)現(xiàn)實(shí)時(shí)跟蹤,本文提出并實(shí)現(xiàn)了一種基于MemoLink通訊的雙計(jì)算機(jī)的視覺跟蹤系統(tǒng)。該系統(tǒng)通訊可靠、體積小,便于將兩臺(tái)計(jì)算機(jī)安置于仿人機(jī)器人的胸腔內(nèi)。
目標(biāo)分割的穩(wěn)定性是機(jī)器人視覺跟蹤系統(tǒng)的重要要求之一,近幾年來很多學(xué)者對(duì)這個(gè)領(lǐng)域進(jìn)行了研究,大多數(shù)的機(jī)器人目標(biāo)跟蹤系統(tǒng)選用了單一的圖像信息,有的采用了物體的顏色信息[3],有的采用了物體的輪廓信息[4]。然而在復(fù)雜的非結(jié)構(gòu)化的室內(nèi)背景下,單一的圖像信息不能保證系統(tǒng)穩(wěn)定的分割出目標(biāo)。多種圖像信息的融合是解決目標(biāo)物體識(shí)別穩(wěn)定性的方法之一[5]。本文中作者提出了一種集成深度、顏色和形狀信息的逐步逼近目標(biāo)區(qū)域的快速目標(biāo)分割方法
1 系統(tǒng)結(jié)構(gòu)
仿人機(jī)器人BHR1的系統(tǒng)結(jié)構(gòu)如圖1所示,其全身有32個(gè)自由度,其中頭部有2個(gè)自由度,可以在兩個(gè)方向上自由轉(zhuǎn)動(dòng),即左右轉(zhuǎn)動(dòng)和上下轉(zhuǎn)動(dòng)。面部放置兩只CCD攝像頭作為視覺傳感器來模擬人的眼睛。采用SVS立體視覺處理系統(tǒng)處理視覺信息,SVS系統(tǒng)提供了每幀圖像的深度圖像[6]。
圖1 仿人型機(jī)器人(BHR1)跟蹤系統(tǒng)的系統(tǒng)結(jié)構(gòu)
兩臺(tái)計(jì)算機(jī)置于機(jī)器人的胸腔內(nèi),其中一臺(tái)計(jì)算機(jī)負(fù)責(zé)視覺信息的處理,另外一臺(tái)負(fù)責(zé)機(jī)器人的運(yùn)動(dòng)控制。前者被稱之為信息處理子系統(tǒng),后者被稱為運(yùn)動(dòng)控制子系統(tǒng), 兩臺(tái)計(jì)算機(jī)通過Memolink進(jìn)行通訊。信息處理子系統(tǒng)利用Windows強(qiáng)大的多媒體功能來處理立體視覺信息,實(shí)現(xiàn)目標(biāo)的快速分割以及物體的運(yùn)動(dòng)估計(jì)和預(yù)測(cè)。運(yùn)動(dòng)控制子系統(tǒng)以Linux/RT-Linux實(shí)時(shí)操作系統(tǒng)作為平臺(tái),保證了機(jī)器人控制系統(tǒng)的實(shí)時(shí)性。除了頭部運(yùn)動(dòng)關(guān)節(jié),運(yùn)動(dòng)控制系統(tǒng)負(fù)責(zé)仿人機(jī)器人全部關(guān)節(jié)的控制。Memolink 是系統(tǒng)間進(jìn)行快速通信的一種有效解決方案,是連接信息處理子系統(tǒng)和運(yùn)動(dòng)控制子系統(tǒng)的橋梁。具有通信速度快和通信前無需握手的優(yōu)點(diǎn)。
整個(gè)跟蹤過程執(zhí)行如下的循環(huán):搜索目標(biāo)——發(fā)現(xiàn)目標(biāo)——匹配——狀態(tài)估計(jì)和預(yù)測(cè)——運(yùn)動(dòng)控制。不同的匹配方法應(yīng)用產(chǎn)生了不同的跟蹤方法。本文中作者提出了一種融合深度、顏色和形狀信息的逐步逼近目標(biāo)區(qū)域的快速分割方法。在實(shí)時(shí)的跟蹤系統(tǒng)中,運(yùn)動(dòng)估計(jì)和預(yù)測(cè)有效的減少了檢測(cè)區(qū)域,提高了系統(tǒng)的跟蹤速度。研究中采用經(jīng)典的卡爾曼濾波器進(jìn)行運(yùn)動(dòng)目標(biāo)的狀態(tài)估計(jì)和預(yù)測(cè)。
2 基于多圖像信息的目標(biāo)分割方法
視覺信息處理子系統(tǒng)完成目標(biāo)物體的快速分割,同時(shí)估計(jì)和預(yù)測(cè)目標(biāo)物體的運(yùn)動(dòng)信息,把目標(biāo)物體的位置信息實(shí)時(shí)地傳遞給運(yùn)動(dòng)控制子系統(tǒng)。目標(biāo)識(shí)別的穩(wěn)定性對(duì)整個(gè)跟蹤系統(tǒng)的穩(wěn)定性起著至關(guān)重要的作用。
在復(fù)雜背景的非結(jié)構(gòu)化的室內(nèi)環(huán)境下,用于機(jī)器人視覺跟蹤的圖像信息有:深度、顏色、形狀、邊緣、運(yùn)動(dòng)等?;诙嘈畔⒌倪\(yùn)動(dòng)目標(biāo)的分割方法中,所選取的信息應(yīng)該具有互補(bǔ)性。物體的顏色是物體最顯著的特征,適合用于目標(biāo)的跟蹤。但是當(dāng)背景中包含同樣顏色的物體時(shí),基于顏色的跟蹤將會(huì)失敗。深度信息有助于系統(tǒng)得到粗略的前景區(qū)域,也就是包含運(yùn)動(dòng)物體的目標(biāo)候選窗口,另外基于深度分割的粗略前景輪廓的獲得計(jì)算量小,速度快?;赗HT(Random Hough transform)算法的形狀檢測(cè)器可以檢測(cè)各種不同的幾何形狀,比如:橢圓形、三角形和多邊形,進(jìn)而把目標(biāo)候選區(qū)域中相同顏色的物體區(qū)別開來。 [!--empirenews.page--]
圖2 視頻序列中運(yùn)動(dòng)目標(biāo)分割過程
本文利用仿人機(jī)器人的立體視覺系統(tǒng),設(shè)計(jì)了融合深度,顏色,形狀信息的逐步逼近目標(biāo)區(qū)域的快速跟蹤方法。圖2為視頻序列中運(yùn)動(dòng)目標(biāo)的分割過程。首先利用深度信息把機(jī)器人關(guān)心的前景區(qū)域分割出來,得到ROF(Region of Foregroud)區(qū)域,即粗略的目標(biāo)候選區(qū)域。在ROF中使用顏色濾波器分割,得到ROIC(Region of Interest Color)區(qū)域。最后形狀檢測(cè)器可以把相同顏色的物體區(qū)別開來。在分割過程中,候選目標(biāo)區(qū)域逐步縮小并逼近目標(biāo)區(qū)域。逐步縮小的候選目標(biāo)區(qū)域減少了計(jì)算量,提高了系統(tǒng)的運(yùn)算速度。同時(shí),該方法有效的避免了場(chǎng)景中相同顏色物體的干擾,提高了目標(biāo)分割的穩(wěn)定性。圖3顯示了目標(biāo)物體的分割結(jié)果。
圖3 復(fù)雜場(chǎng)景中目標(biāo)物體的分割結(jié)
‘
3 運(yùn)動(dòng)控制子系統(tǒng)
3.1運(yùn)動(dòng)控制系統(tǒng)的結(jié)構(gòu)
機(jī)器人的運(yùn)動(dòng)控制子系統(tǒng)是一個(gè)典型的計(jì)算機(jī)控制系統(tǒng)。機(jī)器人頭部的控制目的是為了機(jī)器人的頭部能夠?qū)崟r(shí)跟蹤運(yùn)動(dòng)目標(biāo),因此實(shí)際控制信號(hào)輸入量是根據(jù)目標(biāo)物體的位置信息求得的規(guī)劃數(shù)據(jù)。在反饋信號(hào)的輸入方面,因?yàn)楸豢貙?duì)象是電機(jī)轉(zhuǎn)動(dòng)的角度,用電機(jī)上面的軸角編碼器的輸出作為反饋信號(hào)。
系統(tǒng)使用了一套多功能接口板,將所有的A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、ENC(encoder)、PWM、IO等多種功能都集成在該接口板上,提高了系統(tǒng)的集成性并減小了系統(tǒng)體積和重量。多功能接口板上上的ENC接口來作為反饋信號(hào)的輸入通道,它可以測(cè)量軸角編碼器的脈沖輸出個(gè)數(shù)。每個(gè)運(yùn)動(dòng)關(guān)節(jié)采用經(jīng)典的PD伺服控制。
3.2運(yùn)動(dòng)控制系統(tǒng)的軟件結(jié)構(gòu)
運(yùn)動(dòng)控制子系統(tǒng)采用了RT-Linux(Real Time Linux)實(shí)時(shí)操作系統(tǒng),其軟件結(jié)構(gòu)如圖4所示,主要包括兩個(gè)模塊:主程序模塊、實(shí)時(shí)任務(wù)模塊,主程序模塊是linux應(yīng)用程序,實(shí)時(shí)任務(wù)模塊是RTlinux下的實(shí)時(shí)進(jìn)程。兩個(gè)模塊也是兩個(gè)進(jìn)程,通過管道(FIFO)進(jìn)行通訊等。
圖4 BHR1運(yùn)動(dòng)控制系統(tǒng)的軟件結(jié)構(gòu)
實(shí)時(shí)任務(wù)主模塊包括兩部分:周期性執(zhí)行的實(shí)時(shí)控制循環(huán)(即實(shí)時(shí)線程)和實(shí)時(shí)任務(wù)觸發(fā)器。實(shí)時(shí)線程的周期性執(zhí)行是由一個(gè)循環(huán)實(shí)現(xiàn)的。該循環(huán)主要完成兩大功能:機(jī)器人運(yùn)動(dòng)控制、與各電機(jī)相連的軸角編碼器的信息采集。實(shí)時(shí)任務(wù)周期為3毫秒。實(shí)時(shí)任務(wù)周期是根據(jù)D/A通道處理時(shí)間和碼盤計(jì)數(shù)器讀取時(shí)間,以及傳感器信息獲取時(shí)間確定。 [!--empirenews.page--]
主程序模塊與一般的Linux應(yīng)用程序沒有區(qū)別,它主要有以下幾個(gè)功能:與信息處理系統(tǒng)通訊;向?qū)崟r(shí)任務(wù)傳送控制參數(shù);實(shí)現(xiàn)人機(jī)交互,即將從實(shí)時(shí)任務(wù)傳過來的電機(jī)轉(zhuǎn)動(dòng)數(shù)據(jù)和傳感器數(shù)據(jù)輸出到監(jiān)視器上,同時(shí)將通過鍵盤輸入的控制信號(hào),實(shí)際上主程序模塊主要實(shí)現(xiàn)控制臺(tái)的作用,可以稱之為控制臺(tái)程序。
3.3運(yùn)動(dòng)控制過程
跟蹤系統(tǒng)的控制目標(biāo)是:根據(jù)圖像處理獲取的目標(biāo)質(zhì)心在圖像平面中的位置,實(shí)時(shí)調(diào)整機(jī)器人頭部的2個(gè)電機(jī)轉(zhuǎn)動(dòng)角度,將目標(biāo)置于圖像平面的中央位置。運(yùn)動(dòng)控制系統(tǒng)中一個(gè)控制循環(huán)大約需要3毫秒的時(shí)間。在信息處理系統(tǒng)中,處理一幀圖像平均需要100毫秒左右的時(shí)間。由此可見,視覺處理的周期要遠(yuǎn)遠(yuǎn)大于運(yùn)動(dòng)控制的周期。因此在一個(gè)視覺處理周期之后,系統(tǒng)應(yīng)該做好下一個(gè)視覺處理周期之內(nèi)的運(yùn)動(dòng)規(guī)劃,也就是做好后面多個(gè)控制周期之內(nèi)的運(yùn)動(dòng)規(guī)劃,這樣才能保證機(jī)器人的頭部以均勻、平緩,同時(shí)又是準(zhǔn)確的速度來跟蹤目標(biāo)。
4 實(shí)驗(yàn)
在仿人機(jī)器人BHR1中,信息處理計(jì)算機(jī)的CPU為PⅣ2.4GHz,內(nèi)存為512MB,運(yùn)動(dòng)控制計(jì)算機(jī)的CPU為PIII700MHz,內(nèi)存為256MB。SVS系統(tǒng)的采集速度為15幀每秒,采集圖像的大小為320×240像素。Memolink采用PCI接口,最大傳輸速率為1M bytes/s或1M words/s。
4.1 復(fù)雜背景下運(yùn)動(dòng)目標(biāo)的跟蹤。
在運(yùn)動(dòng)物體跟蹤實(shí)驗(yàn)中,紅色小球作為目標(biāo)在機(jī)器人的視野中做單擺運(yùn)動(dòng)。為了驗(yàn)證基于多圖像信息的目標(biāo)識(shí)別算法,背景中放置了紅色的方塊和一個(gè)綠色的小球。實(shí)驗(yàn)結(jié)果如圖5所示,第一行圖像是實(shí)驗(yàn)場(chǎng)景,第二行圖像是左攝像頭的視頻序列,結(jié)果表明彩色目標(biāo)運(yùn)動(dòng)速度小于0.3m/s時(shí),機(jī)器人頭部仍可以很好地跟蹤目標(biāo)的運(yùn)動(dòng),并使其始終位于左側(cè)攝像機(jī)所采集到圖像的中央位置。在復(fù)雜的非結(jié)構(gòu)環(huán)境的室內(nèi)背景下,利用單一的圖像信息,系統(tǒng)很可能會(huì)跟蹤失敗。相同背景下,單一的顏色信息不能將紅色的小球和背景中的紅色方塊區(qū)分開來。
圖 5 復(fù)雜背景下彩色目標(biāo)跟蹤實(shí)驗(yàn)
圖6顯示了紅色小球運(yùn)動(dòng)狀態(tài)時(shí)的跟蹤過程,圖中的數(shù)據(jù)為實(shí)際數(shù)據(jù)的1/10抽樣??梢钥闯?,在X軸方向上,目標(biāo)質(zhì)心坐標(biāo)到圖像中心的偏差在±30個(gè)像素以內(nèi),在y軸方向上,目標(biāo)質(zhì)心坐標(biāo)到圖像中心的偏差在±20個(gè)像素內(nèi)。實(shí)驗(yàn)說明在物體的運(yùn)動(dòng)過程中,跟蹤系統(tǒng)能夠?qū)崟r(shí)跟蹤物體并將物體的質(zhì)心保持在左眼攝像機(jī)的中心。
圖6 目標(biāo)在X、Y方向上的跟蹤誤差(像素)
5 結(jié)論
本文提出了基于Memolink通訊的雙計(jì)算機(jī)的仿人機(jī)器人的視覺跟蹤系統(tǒng),系統(tǒng)能夠滿足仿人機(jī)器人實(shí)時(shí)視覺跟蹤的性能要求。
在未知的復(fù)雜環(huán)境中,基于深度、顏色和模版匹配的多圖像信息融合方案確保機(jī)器人穩(wěn)定的從視頻序列中分割出運(yùn)動(dòng)目標(biāo)。
本文作者的創(chuàng)新點(diǎn)
本文提出并實(shí)現(xiàn)了一種基于MemoLink通訊的雙計(jì)算機(jī)的視覺跟蹤系統(tǒng), 一臺(tái)計(jì)算機(jī)負(fù)責(zé)視頻信息的處理,另一臺(tái)計(jì)算機(jī)負(fù)責(zé)機(jī)器人頭部的運(yùn)動(dòng)控制,實(shí)現(xiàn)了仿人機(jī)器人頭部對(duì)運(yùn)動(dòng)目標(biāo)的實(shí)時(shí)跟蹤。本文提出了一種集成深度、顏色和形狀信息的逐步逼近目標(biāo)區(qū)域的快速目標(biāo)分割方法,實(shí)現(xiàn)了復(fù)雜背景下目標(biāo)物體的穩(wěn)定分割。