王連枝,朱朝旭,趙 帥,李寶璽
(開封大學(xué)電子電氣工程學(xué)院,河南 開封 475000)
作為計(jì)算機(jī)視覺技術(shù)應(yīng)用領(lǐng)域內(nèi)的重要課題之一,跟隨式導(dǎo)航技術(shù)利用攝像頭拍攝目標(biāo)對(duì)象[1],并對(duì)圖像序列進(jìn)行分析,基于圖像內(nèi)目標(biāo)特征實(shí)現(xiàn)目標(biāo)跟隨[2],基于跟隨結(jié)果生成導(dǎo)航路線。該技術(shù)被普遍應(yīng)用于機(jī)器人視覺導(dǎo)航、交通監(jiān)控等諸多領(lǐng)域內(nèi)[3]。
楊輝與吳賽燕等人將STM32與物聯(lián)網(wǎng)應(yīng)用在機(jī)器人導(dǎo)航問題中[4],依照所處環(huán)境獲取目標(biāo)圖像,分析圖像確定目標(biāo)移動(dòng)軌跡,實(shí)現(xiàn)機(jī)器人的自主導(dǎo)航。孟慶寬與楊曉霞等人研究普通光照條件下機(jī)器人導(dǎo)航技術(shù)[5],利用視覺傳感器獲取目標(biāo)圖像,基于圖像熵對(duì)灰度圖完成機(jī)器人導(dǎo)航功能。上述方法均采用單目攝像頭采集目標(biāo)圖像,其主要優(yōu)勢(shì)為運(yùn)算速度較快。但該類方法在實(shí)際應(yīng)用過程中未考慮實(shí)際場(chǎng)景的三維信息,導(dǎo)致所跟隨的對(duì)象均具有相對(duì)性,由此造成機(jī)器人最終導(dǎo)航結(jié)果產(chǎn)生偏差。針對(duì)這一問題,研究基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航方法,將視距雙窗口攝像頭應(yīng)用于機(jī)器人導(dǎo)航問題中,提升跟隨對(duì)象跟隨精度,實(shí)現(xiàn)機(jī)器人的準(zhǔn)確導(dǎo)航。
圖1所示為基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航方法實(shí)現(xiàn)流程。
基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航過程中,在機(jī)器人視覺圖像上選取引導(dǎo)目標(biāo)矩形圖像區(qū)域,機(jī)器人通過視覺雙窗口攝像頭采集跟隨對(duì)象圖像,標(biāo)定視覺雙窗口攝像頭,實(shí)現(xiàn)視覺雙窗口攝像機(jī)圖像與現(xiàn)實(shí)場(chǎng)景內(nèi)圖像間的映射。在此基礎(chǔ)上,對(duì)視覺雙窗口攝像頭采集的圖像序列進(jìn)行特征立體匹配,并提取三維坐標(biāo),實(shí)現(xiàn)跟隨目標(biāo)的視覺跟隨定位。獲取視覺雙窗口攝像頭在水平方向上的位置,以基于行為的控制結(jié)構(gòu)作為機(jī)器人導(dǎo)航控制結(jié)構(gòu)的基礎(chǔ),通過一個(gè)宏行為MB_M(jìn)ove To Target完成基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航路線生成,控制機(jī)器人運(yùn)動(dòng)方向。
機(jī)器人視覺雙窗口攝像頭的空間點(diǎn)標(biāo)定采用TSAI提出的兩步標(biāo)定算法獲取參數(shù)[6]:
1)左攝像頭內(nèi)、外參數(shù):焦距、平移向量和旋轉(zhuǎn)矩陣、平移向量;
2)右攝像頭內(nèi)、外參數(shù):焦距、實(shí)際圖像中心坐標(biāo)和旋轉(zhuǎn)矩陣、平移向量。
上述外參數(shù)均與各自標(biāo)定過程中設(shè)定的世界坐標(biāo)系相對(duì)應(yīng)。以確定雙窗口視場(chǎng)中空間點(diǎn)的三維坐標(biāo)為目的,依照人類視覺慣性[7],將機(jī)器人雙窗口攝像頭統(tǒng)一至相同世界坐標(biāo)系內(nèi)。以左攝像機(jī)光心為世界坐標(biāo)系原點(diǎn),也就是機(jī)器人位于左攝像頭光心區(qū)域,在此條件下,可利用空間轉(zhuǎn)換矩陣[RT]描述右攝像機(jī)坐標(biāo)系or-xryrzr同當(dāng)前世界坐標(biāo)系o-xyz

(1)
式(1)內(nèi),R和T分別表示機(jī)器人視覺雙窗口攝像頭與世界坐標(biāo)系的旋轉(zhuǎn)矩陣與平移向量,兩者的計(jì)算公式如下

(2)
式(2)內(nèi),Ra和Rl分別表示左、右攝像頭的旋轉(zhuǎn)矩陣,Ta和Tl分別表示左、右攝像頭的平移向量。依照計(jì)算機(jī)圖像坐標(biāo)(u,v)與世界坐標(biāo)(XW,YW,ZW)間的相關(guān)性[8],結(jié)合式(1)能夠得到視覺雙窗口條件下空間點(diǎn)三維坐標(biāo),詳細(xì)過程如下:
將機(jī)器人視覺雙窗口攝像頭內(nèi)參數(shù)分別代入矩陣

(3)
式(3)內(nèi),fl和fa表示左、右攝像頭焦距;dx和dy分別表示圖像在x與y方向單位像素的尺寸;(ul0,vl0)和(ua0,va0)分別表示左、右攝像頭實(shí)際圖像坐標(biāo)中心。
以(XW,YW,ZW)和(ul,vl)、(ua,va)分別表示空間點(diǎn)P的世界坐標(biāo)和在機(jī)器人各攝像頭圖像上的投影點(diǎn),由此可得以下兩組矩陣方程

(4)
式(4)內(nèi),G表示4階單位矩陣。對(duì)式(4)進(jìn)行展開處理能夠?qū)⑵滢D(zhuǎn)換為矩陣M與矩陣U。
設(shè)定M[XWYWZW]′=U,選取最小二乘法確定P在以機(jī)器人左攝像頭光心為原點(diǎn)的世界坐標(biāo)系內(nèi)的三維坐標(biāo)

(5)
通過視覺雙窗口攝像頭的空間點(diǎn)標(biāo)定可實(shí)現(xiàn)機(jī)器人視覺雙窗口攝像機(jī)圖像與現(xiàn)實(shí)場(chǎng)景內(nèi)圖像間的映射,提升后續(xù)跟隨對(duì)象識(shí)別與定位的精度。
機(jī)器人采用視覺雙窗口攝像機(jī)采集跟隨對(duì)象圖像后,由于各圖像內(nèi)跟隨對(duì)象間不存在顯著的特征區(qū)別[9],因此對(duì)圖像進(jìn)行立體特征匹配極為重要,能夠有效改善視覺雙窗口圖像采集過程中的重復(fù)紋理以及重疊遮擋等問題[10]。基于視覺雙窗口立體特征匹配的機(jī)器人視覺跟隨算法實(shí)現(xiàn)流程如圖2所示。

圖2 基于視覺雙窗口立體特征匹配的機(jī)器人視覺跟隨算法流程
機(jī)器人利用二維擴(kuò)展Kalman濾波器分別跟隨兩個(gè)不同攝像頭所采集圖像序列內(nèi)的跟隨對(duì)象,以所采集圖像序列為基礎(chǔ),實(shí)現(xiàn)跟隨對(duì)象的三維擴(kuò)展Kalman濾波器預(yù)測(cè)跟隨;若在不同攝像頭所采集圖像序列的預(yù)測(cè)區(qū)域內(nèi)分別存在若干個(gè)候選跟隨對(duì)象,那么機(jī)器人通過視覺雙窗口下的外極線約束條件清除錯(cuò)誤的候選跟隨對(duì)象[11],完成正確的跟隨對(duì)象匹配,實(shí)現(xiàn)機(jī)器人視覺跟隨目的。
基于視覺雙窗口立體特征匹配的機(jī)器人視覺跟隨算法主要特點(diǎn)體現(xiàn)在兩方面,分別是跟隨過程中,二維與三維擴(kuò)展Kalman濾波器同時(shí)用于預(yù)測(cè),以及通過外極線約束處理視覺雙窗口下不同二維候選跟隨對(duì)象的對(duì)應(yīng)問題。前者能夠縮小跟隨對(duì)象的搜索范圍,降低因特征缺失導(dǎo)致的跟隨對(duì)象跟隨錯(cuò)誤問題;后者能夠清除錯(cuò)誤的匹配關(guān)聯(lián),由此得到準(zhǔn)確的候選跟隨對(duì)象。


(6)

(7)

(8)


(9)
若存在跟隨對(duì)象Dn,那么利用Dn的信息更新不同狀態(tài)變量的預(yù)測(cè)誤差(Δwk+1,Δvk+1,Δak+1),公式描述如下
Δwk+1=|wk+1-wk-1|
(10)
Δvk+1=α°|vk+1-vk-1|+(1-α)°Δvk
(11)
Δjk+1=β°|jk+1-jk-1|+(1-β)°Δjk
(12)
若在跟隨對(duì)象Dn的預(yù)測(cè)區(qū)域內(nèi)存在不止一個(gè)候選跟隨對(duì)象,那么根據(jù)外極線約束清除錯(cuò)誤的跟隨對(duì)象。外極線約束原理如下:
以w1(w2)和F分別表示Dn在機(jī)器人視覺雙窗口攝像頭采集的兩個(gè)圖像上的位置坐標(biāo)和視覺雙窗口的基礎(chǔ)矩陣,那么w2(w1)的位置處于同w1(w2)相關(guān)聯(lián)的外極線b2(b1)上,公式描述如下
b1=FTw2,b2=Fw1
(13)
由此,在搜索w2(w1)過程中可將搜索范圍約束在b2(b1)范圍內(nèi),即搜索范圍降低,搜索效率提升。但實(shí)際機(jī)器人視覺跟隨過程中,考慮不同噪聲與誤差的存在[12],在機(jī)器人實(shí)際視覺跟蹤過程中所檢測(cè)到的跟隨對(duì)象無法完全符合外極線約束,針對(duì)此問題,將候選跟隨對(duì)象同外極線間的距離作為約束準(zhǔn)則,距離與二維匹配程度之間呈反比例相關(guān)。
機(jī)器人的視覺跟隨式導(dǎo)航過程中,需實(shí)時(shí)響應(yīng)具有突發(fā)性與多樣性的緊急事件[13],因此在導(dǎo)航過程中以基于行為的控制結(jié)構(gòu)作為機(jī)器人導(dǎo)航控制結(jié)構(gòu)的基礎(chǔ)。通過一個(gè)宏行為MB_M(jìn)ove To Target完成基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航[14]。
基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航工作內(nèi)包含的基本行為包括機(jī)器人以穩(wěn)定速度前行的基本行為、堵轉(zhuǎn)狀態(tài)下控制自動(dòng)解脫的基本行為、前方障礙物條件下控制轉(zhuǎn)彎的基本行為、沿墻壁前行并保持相應(yīng)距離的基本行為、跟隨視覺引導(dǎo)對(duì)象調(diào)整航向的基本行為[15]。基于上述基本行為,利用式(14)表示通過宏行為完成的基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航工作
MB_M(jìn)oveToTarget(Ψ,)
(14)
式(15)內(nèi),Ψ=(Q,E,f,q0,H)表示有限狀態(tài)自動(dòng)機(jī),Q=(S0,S1,S2,S3,S4,S5)表示狀態(tài)集,其中S0—S5表示機(jī)器人的初始狀態(tài),朝跟隨對(duì)象運(yùn)動(dòng)狀態(tài),依左、右側(cè)障礙物運(yùn)動(dòng)狀態(tài),達(dá)到對(duì)象狀態(tài)與未到達(dá)對(duì)象狀態(tài);E={e1,e2,…,eg}和f分別表示事件集和由Q×E至Q的映射,q0和H分別表示初始狀態(tài)和終止?fàn)顟B(tài)集,兩個(gè)分別與S0和{S4,S5}對(duì)應(yīng)。表示與S0—S5相對(duì)的組合行為集。
實(shí)驗(yàn)為驗(yàn)證本文所研究的基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航方法在實(shí)際機(jī)器人導(dǎo)航中的應(yīng)用效果,在Matlab 2013a軟件上實(shí)施相關(guān)仿真,仿真過程中設(shè)定仿真對(duì)象與跟隨對(duì)象分別為某型號(hào)無人機(jī)與某型號(hào)車輛,選取視覺雙窗口攝像頭開發(fā)板,仿真測(cè)試結(jié)果如下。
3.1.1 目標(biāo)跟隨結(jié)果
仿真對(duì)象采用本文方法對(duì)跟隨對(duì)象進(jìn)行視覺跟隨,對(duì)比仿真對(duì)象采用本文方法跟隨設(shè)定跟隨對(duì)象過程中,跟隨對(duì)象在各幀圖像上的中心坐標(biāo)值與跟隨對(duì)象實(shí)際坐標(biāo),結(jié)果如表1所示。

表1 跟隨對(duì)象中心點(diǎn)坐標(biāo)對(duì)比結(jié)果
由表1能夠得到,采用本文方法跟隨設(shè)定的跟隨對(duì)象時(shí),所得跟隨對(duì)象中心點(diǎn)位置坐標(biāo)同其實(shí)際中心點(diǎn)坐標(biāo)值大致相同,這表明采用本文方法可有效跟隨設(shè)定的跟隨對(duì)象,滿足本文方法應(yīng)用需求。
3.1.2 單一對(duì)象跟隨誤差
仿真復(fù)雜的背景條件與光照條件,并在圖像中仿真出與設(shè)定跟隨對(duì)象雷同的干擾對(duì)象。采用本文方法對(duì)單一跟隨對(duì)象實(shí)施跟隨測(cè)試。測(cè)試本文方法在應(yīng)用過程中,每一幀圖像內(nèi)跟隨位置誤差與分重疊區(qū)域比的波動(dòng)情況,兩者值越低說明本文方法跟隨精度越高,結(jié)果如圖3所示。

圖3 單一對(duì)象跟隨誤差對(duì)比結(jié)果
分析圖3能夠得到,本文方法在背景較為復(fù)雜的條件下跟隨單一對(duì)象能夠能夠得到較高的跟隨精度。由圖3(a)得到,單一對(duì)象跟隨過程中每一幀圖像的像素誤差均低于10像素,像素誤差均值約為6像素。分析圖3(b)得到,單一對(duì)象跟隨過程中每一幀圖像的非重疊區(qū)域比均低于0.50,均值約為0.30。設(shè)定對(duì)象在運(yùn)動(dòng)過程中尺度產(chǎn)生顯著波動(dòng)情況,且在仿真過程中出現(xiàn)同設(shè)定對(duì)象較為雷同的干擾對(duì)象,但本文方法的跟隨誤差并不顯著波動(dòng),這說明本文方法能夠基于準(zhǔn)確地特征在背景較為復(fù)雜的條件下實(shí)現(xiàn)準(zhǔn)確的設(shè)定對(duì)象定位,結(jié)合本文方法的高跟隨精度能夠說明本文方法較好的魯棒性。
3.1.3 雙對(duì)象跟隨
仿真過程中本文方法采用視覺雙窗口采集設(shè)定對(duì)象圖像。同時(shí)考慮跟隨過程中所跟隨對(duì)象數(shù)量不為一的情況,因此對(duì)本文方法對(duì)雙對(duì)象同時(shí)跟隨的性能進(jìn)行仿真測(cè)試,結(jié)果如圖4所示。
分析圖4得到,對(duì)象A與對(duì)象B在37—56幀、第88—105幀中出現(xiàn)存在彼此遮擋又產(chǎn)生分離的現(xiàn)象。采用本文方法對(duì)同時(shí)跟隨兩個(gè)對(duì)象,在兩者彼此分離地條件下能夠準(zhǔn)確地跟隨兩個(gè)對(duì)象;在兩者彼此遮擋又分離后,依舊能夠準(zhǔn)確跟隨兩個(gè)對(duì)象,由此說明采用本文方法在雙對(duì)象條件下依舊能夠?qū)崿F(xiàn)準(zhǔn)確的跟隨。

圖4 多對(duì)象跟隨結(jié)果
綜合3.1節(jié)仿真測(cè)試所得結(jié)果結(jié)果得到,本文方法具有較好的跟隨性能,能夠根據(jù)實(shí)際需求得到準(zhǔn)確的跟隨結(jié)果。
本文方法能夠根據(jù)對(duì)象跟隨結(jié)果生成仿真對(duì)象的導(dǎo)航路線,并且能夠自主進(jìn)行避障設(shè)計(jì)。圖5所示為本文方法導(dǎo)航路線生成結(jié)果的二維圖。

圖5 導(dǎo)航路線二維圖
分析圖5得到,采用本文方法能夠準(zhǔn)確根據(jù)仿真對(duì)象的運(yùn)動(dòng)軌跡生成導(dǎo)航圖,并且在存在障礙物的條件下,可以準(zhǔn)確避開障礙物,并在其后回歸準(zhǔn)確的導(dǎo)航路線中,由此驗(yàn)證了本文方法導(dǎo)航性能。
本文研究基于視覺雙窗口的機(jī)器人視覺跟隨式導(dǎo)航方法,該方法利用視覺雙窗口攝像頭采集對(duì)象的圖像,針對(duì)視覺雙窗口所采集的圖像進(jìn)行處理,完成對(duì)象跟隨與導(dǎo)航。仿真結(jié)果顯示本文方法具有較高的跟隨精度與準(zhǔn)確的導(dǎo)航性能。在后續(xù)研究過程中將繼續(xù)完善本文方法,提升本文方法在復(fù)雜環(huán)境下的應(yīng)用性能。