本發(fā)明屬于機(jī)器人領(lǐng)域,是基于多特征時(shí)空上下文的機(jī)器人目標(biāo)識(shí)別與運(yùn)動(dòng)決策的方法。
背景技術(shù):
隨著機(jī)器人的應(yīng)用范圍越來(lái)越廣泛,智能機(jī)器人的相關(guān)技術(shù)受到了極大的重視。特別是智能服務(wù)機(jī)器人是近年來(lái)機(jī)器人發(fā)展的一個(gè)熱門(mén)方向,而智能服務(wù)機(jī)人要為服務(wù)對(duì)象提供服務(wù),首先要進(jìn)行目標(biāo)的識(shí)別并據(jù)此進(jìn)行機(jī)器人的運(yùn)動(dòng)決策。目標(biāo)識(shí)別是機(jī)器視覺(jué)領(lǐng)域研究的經(jīng)典部分,國(guó)內(nèi)外研究人員提出了許多的跟蹤方法。Mean Shift算法是識(shí)別跟蹤的經(jīng)典算法,針對(duì)此算法中顏色直方圖表達(dá)目標(biāo)顏色分布的不足,Li提出了一種基于聚類(lèi)算法的自適應(yīng)顏色直方圖,實(shí)現(xiàn)了良好的識(shí)別跟蹤效果。為減小光照變化對(duì)跟蹤過(guò)程的影響,Lu等人利用局部二值紋理特征實(shí)現(xiàn)對(duì)目標(biāo)的識(shí)別跟蹤。但是單一特征對(duì)目標(biāo)的描述并不全面,跟蹤的魯棒性差,針對(duì)這一問(wèn)題,Nigam提出基于粒子濾波框架融合梯度及顏色特征進(jìn)行目標(biāo)識(shí)別跟蹤,顧等人研究了自適應(yīng)加性和乘性變權(quán)重的多特征融合目標(biāo)識(shí)別跟蹤算法。除此之外,還有許多的目標(biāo)識(shí)別跟蹤算法,但是這些算法在應(yīng)對(duì)目標(biāo)遮擋及環(huán)境變化劇烈的情形時(shí)均未能很好的解決。在這個(gè)問(wèn)題上,Yang等人提出利用輔助目標(biāo)或目標(biāo)局部上下文信息來(lái)協(xié)助目標(biāo)跟蹤為這一難題的解決提供了新的思路,Zhang等人基于貝葉斯框架利用時(shí)空上下文信息更新來(lái)實(shí)現(xiàn)目標(biāo)跟蹤,在應(yīng)對(duì)遮擋及光照變化情形時(shí)表現(xiàn)良好,但是此算法只使用了圖像的單一特征,在目標(biāo)快速移動(dòng)和背景劇烈變化的情況下魯棒性差。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)以上存在的問(wèn)題,本發(fā)明基于時(shí)空上下文提出了一種融合多特征的時(shí)空上下文分塊稀疏結(jié)構(gòu)表示的目標(biāo)跟蹤方法,即先利用圖像的顏色和紋理特征對(duì)圖像進(jìn)行分塊聚類(lèi),完成第一幀目標(biāo)的時(shí)空上下文模型的初始化,并構(gòu)造目標(biāo)塊的稀疏表示方程。然后以聚類(lèi)塊為基本單位,將聚類(lèi)過(guò)程中的聚類(lèi)置信值與上下文特征相結(jié)合建立以圖像塊為基本單位的置信圖。最后,置信圖似然概率最大處即為預(yù)測(cè)的下一幀的目標(biāo)位置。與以前的方法相比,本發(fā)明加強(qiáng)了目標(biāo)的特征描述,提高了目標(biāo)在復(fù)雜背景下的魯棒性,另外,提出加入分塊聚類(lèi)的思想保證了算法的實(shí)時(shí)性。在算法完成目標(biāo)的識(shí)別跟蹤后,以跟蹤結(jié)果作為機(jī)器人運(yùn)動(dòng)決策的根據(jù),完成機(jī)器人對(duì)目標(biāo)的識(shí)別跟蹤。
本發(fā)明采用的技術(shù)方案如下:
首先,進(jìn)行場(chǎng)景圖像分割,采用簡(jiǎn)單線性迭代聚類(lèi)算法(SLIC),利用圖像的顏色、紋理和距離信息對(duì)像素進(jìn)行聚類(lèi)形成圖像塊,然后對(duì)各圖像塊賦予不同的權(quán)重進(jìn)行篩選,得 到圖像塊的稀疏表示方程,至此就完成了圖像的分割與篩選。圖片分割后下面以分割得到的圖像塊為基本單位建立時(shí)空上下文模型,在當(dāng)前幀目標(biāo)位置已知的情況下(第一幀由人工指定),先獲得圖像塊的上下文先驗(yàn)?zāi)P?,然后基于貝葉斯框架下由目標(biāo)位置置信圖與圖像塊的上下文先驗(yàn)?zāi)P偷牡疆?dāng)前幀圖像的空間上下文模型,然后進(jìn)行空間上下文更新得到下一幀圖像的時(shí)空上下文模型,并進(jìn)行尺度參數(shù)的更新。得到下一幀的時(shí)空上下文模型后,在處理下一幀時(shí)由其圖像塊的上下文先驗(yàn)?zāi)P秃蜁r(shí)空上下文模型得到目標(biāo)位置的置信圖,置信圖概率最大處即認(rèn)為是目標(biāo)的中心位置,目標(biāo)的跟蹤也就完成了。得到目標(biāo)位置后又對(duì)其時(shí)空上下文模型進(jìn)行更新,以此循環(huán)達(dá)到實(shí)時(shí)跟蹤目標(biāo)的目的。最后在跟蹤得到目標(biāo)的位置后,根據(jù)目標(biāo)的位置進(jìn)行機(jī)器人的運(yùn)動(dòng)決策,實(shí)現(xiàn)機(jī)器人對(duì)目標(biāo)的識(shí)別跟蹤。具體包括以下步驟:
步驟1,場(chǎng)景圖像分割
利用圖像的顏色、紋理和距離相似性特征對(duì)像素進(jìn)行聚類(lèi),采用Lab顏色空間的三維顏色信息和位置信息,引入局部熵來(lái)表示像素的特征,形成緊湊性好、邊界貼合度高、形狀規(guī)則的圖像分塊,實(shí)現(xiàn)對(duì)像素的聚類(lèi)。
步驟1.1,獲取局部熵
局部熵hi由公式(1)近似表示:
其中pi表示當(dāng)前像素i占局部像素總個(gè)數(shù)的概率。
步驟1.2,對(duì)像素進(jìn)行聚類(lèi)
設(shè)定i從初始聚類(lèi)中心Ck=[ak,bk,hk,xk,yk]開(kāi)始采樣,為降低種子像素錯(cuò)誤設(shè)定的可能性以及邊緣噪聲干擾,將聚類(lèi)中心限定在最低梯度量為3x3的鄰域,每個(gè)像素與最近鄰聚類(lèi)中心距離Di進(jìn)行聚類(lèi),如公式(2):
其中ak,bk,為像素點(diǎn)k的Lab顏色空間[Lk,ak,bk]的色彩分量,hi為式(1)所求的局部熵,[xi,yi]為像素i的橫縱坐標(biāo),μ是權(quán)重經(jīng)驗(yàn)參數(shù),這里取μ=0.4。
步驟1.3,更新聚類(lèi)中心
一旦像素聚類(lèi)至最臨近中心像素,則更新聚類(lèi)中心Φk代替聚類(lèi)區(qū)域內(nèi)的所有像素的平均向量:
其中,Zi表示以Φk為中心的聚類(lèi)區(qū)域,N表示區(qū)域內(nèi)所包含的像素個(gè)數(shù),Ci表示聚類(lèi) 中心,Si為二維空間位置。
步驟2,基于稀疏表示的圖像塊篩選
引入稀疏表示對(duì)各分塊賦予不同的權(quán)重,并對(duì)最近鄰區(qū)域進(jìn)行篩選后作為目標(biāo)上下文區(qū)域塊,能夠更好的應(yīng)對(duì)目標(biāo)遮擋的情況以及提高實(shí)時(shí)性。
步驟2.1,建立圖像塊稀疏方程,并賦權(quán)重
對(duì)于第n個(gè)分塊yn,帶權(quán)重的稀疏表示方程為:
其中,聚類(lèi)中心距離Dn由公式(2)計(jì)算,Sn為二維空間位置。An表示第n塊的稀疏系數(shù)向量,Wn是稀疏權(quán)重系數(shù),是上下文區(qū)域中不同分塊稀疏系數(shù)的均值,η、μ均為正數(shù)常量,用于規(guī)范相似性約束對(duì)稀疏表示的影響。
步驟2.2,求解稀疏方程
求解稀疏方程即為An和Wn是一個(gè)最優(yōu)化問(wèn)題,用迭代法進(jìn)行求解。主要思想是假設(shè)Wn為固定值,更新An的值,然后以計(jì)算出的An值為固定值,再求解Wn,不斷重復(fù),直至An和Wn收斂至局部最小或達(dá)到迭代次數(shù)終止值。假設(shè)所有分塊的權(quán)重W1,W2,…,Wm均為已知,由公式(4)可得稀疏系數(shù):
其中,Pn=(DTD+Λ(ηWn))-1,Mn=PnDnTyn,D=ΦkΛ為單位對(duì)角陣。由上式得到分塊yn的稀疏系數(shù)向量An后,權(quán)重由下式獲得:
可得:
其中,L為拉格朗日乘子,
迭代次數(shù)限制設(shè)為tmax,采用迭代法求解第n個(gè)分塊的稀疏系數(shù)An和權(quán)重Wn的步驟可以總結(jié)如下:
輸入:(1)Di,(2)yi
1)初始化,Wn=1,n=1,2,…,m
2)
3)由公式(11)計(jì)算An
4)由公式(13)計(jì)算Wn
5)end while
輸出:(1)An,(2)Wn
步驟3,建立時(shí)空上下文模型
在上述步驟中以完成了圖像的分割和稀疏化篩選,得到了以圖象塊為基本單位的稀疏圖像,下面將在已知當(dāng)前幀即第t幀即目標(biāo)位置的情況下即第一幀直接指定,建立基于圖像塊的上下文模型,為下一幀即第t+1幀進(jìn)行目標(biāo)跟蹤做準(zhǔn)備。
步驟3.1,建立目標(biāo)區(qū)域聚類(lèi)中心的上下文特征
假設(shè)目標(biāo)的上下文區(qū)域被分割成Mc個(gè)塊,用Rn(d)表示第n幀中目標(biāo)上下文區(qū)域的第d個(gè)圖像塊,其聚類(lèi)中心位置設(shè)為CR(d),視覺(jué)特征改用表示,聚類(lèi)中心的上下文特征的定義式如下:
步驟3.2,建立圖像塊的上下文先驗(yàn)?zāi)P?/p>
通過(guò)對(duì)圖像塊的視覺(jué)特征進(jìn)行加權(quán),建立基于圖像塊的上下文先驗(yàn)?zāi)P停?/p>
其中,wσ為視覺(jué)注意機(jī)制的權(quán)重函數(shù),該參數(shù)是基于圖像塊的聚類(lèi)中心到目標(biāo)中心位置的距離確定的,距離目標(biāo)的當(dāng)前位置越近的圖像塊則賦予較大權(quán)重,其上下文信息對(duì)下一幀目標(biāo)位置的預(yù)測(cè)更重要。
步驟3.3,獲得基于圖像分塊的空間上下文模型
現(xiàn)在以得到當(dāng)前幀即第t幀的目標(biāo)位置置信圖與上下文先驗(yàn)?zāi)P?,由貝葉斯框架可得當(dāng)前幀的空間上下文模型,為提高計(jì)算時(shí)間,進(jìn)行FFT運(yùn)算加速,則第t幀的基于圖像塊的空間上下文模型為:
其中F-1()表示傅里葉反變換,F(xiàn)()表示傅里葉變換。
步驟3.4,時(shí)空上下文更新
對(duì)空間上下文進(jìn)行加權(quán)累計(jì),得到用于下一幀(第t+1幀)進(jìn)行目標(biāo)跟蹤的時(shí)空上下文模型:
其中,ρ是更新參數(shù)。對(duì)第一幀圖像而言,其空間上下文模型即為時(shí)空上下文模型。
步驟4,目標(biāo)跟蹤
步驟4.1,建立置信圖
對(duì)由前一幀即第t幀得到時(shí)空上下文模型對(duì)下一幀即第t+1幀進(jìn)行目標(biāo)檢測(cè)跟蹤,首先先獲取此幀即第t+1幀的上下文先驗(yàn)?zāi)P?,如?9),然后由時(shí)空上下文模型和當(dāng)前幀即第t+1幀的上下文先驗(yàn)?zāi)P徒⒌趖+1幀的基于圖像塊的置信圖,如下式:
步驟4.2,跟蹤目標(biāo)所在位置
置信圖計(jì)算的是目標(biāo)出現(xiàn)在各個(gè)聚類(lèi)中心的概率值,所以置信圖概率最大處即認(rèn)為是目標(biāo)所在的位置,即:
步驟4.3,尺度更新
目標(biāo)的外形、尺寸總是在變化的,所以為了提高魯棒性尺度參數(shù)σ也要隨之更新,更新公式如下:
其中,表示目標(biāo)位置,σt+1表示更新后的尺度參數(shù)。
步驟5,機(jī)器人運(yùn)動(dòng)決策
本方法的硬件平臺(tái)是搭載kinect的機(jī)器人移動(dòng)平臺(tái),由kinect上的攝像頭采集用于目標(biāo)檢測(cè)的場(chǎng)景圖。為使機(jī)器人能連續(xù)穩(wěn)定的跟隨目標(biāo),使用基于模糊控制規(guī)則的智能調(diào)速算法,控制機(jī)器人的左、右輪速度。根據(jù)機(jī)器人運(yùn)動(dòng)模型(見(jiàn)附圖2),機(jī)器人以線速度v行進(jìn)時(shí),它的左右輪速度可被分別計(jì)算如下:
其中,K轉(zhuǎn)向增益,2d為機(jī)器人兩輪間距。
步驟5.1,確定隸屬度函數(shù)、模糊集進(jìn)行模糊化
直線函數(shù)能快速調(diào)整較大的人機(jī)距離與人機(jī)距離變化率,曲線型函數(shù)變化平滑,有利于控制的平穩(wěn)性。當(dāng)人機(jī)距離和人機(jī)距離變化率較大時(shí),采用三角形隸屬函數(shù);當(dāng)人機(jī)距離在安全范圍內(nèi)時(shí),采用高斯型隸屬函數(shù)。
模糊化的作用是將輸入的精確量轉(zhuǎn)化成模糊化量,取Xr的模糊子集,在其論域中均劃分為5個(gè)集合:“最近(VN)”、“近(N)”、“正常(ZE)”、“遠(yuǎn)(F)”、“最遠(yuǎn)(VF)”;取vpx的模糊子集,在其論域中均劃分為5個(gè)集合:“負(fù)大(NB)”、“負(fù)小(NS)”、“正常(ZE)”、“正小(PS)”、“正大(PB)”;取ν的模糊子集,在其論域中均劃分為5個(gè)集合:“很小(VL)”、“小(L)”、“中(M)”、“大(H)”、“很大(VH)”;取Yr、vpx的模糊子集,在其論域中均劃分為5個(gè)集合:“負(fù)大(NB)”、“負(fù)小(NS)”、“正常(ZE)”、“正小(PS)”、“正大(PB)”;取K的模糊子集,在其論域中均劃分為5個(gè)集合:“很小(VL)”、“小(L)”、“中(M)”、“大(H)”、“很大(VH)”。通過(guò)試驗(yàn)得到參數(shù)的有效論域:Xr∈[0,3],vpx∈[-1,1],v∈[0,200],Yr∈[-1,1],vpy∈[-1,1],K∈[0,3]。
步驟5.2,建立控制規(guī)則
R1i:if Q1=Ai and Q2=Bi,then v=Ci;
R2i:if Q3=Di and Q4=Ei,then K=Fi。
R1i為基準(zhǔn)線速度模糊控制器控制規(guī)則,Q1表示人機(jī)垂直距離語(yǔ)言變量,Q2表示人機(jī)垂直距離變化率語(yǔ)言變量。Q3表示人機(jī)水平距離語(yǔ)言變量,Q4表示人機(jī)水平距離變化率語(yǔ)言變量,ν和K分別表示基準(zhǔn)線速度和轉(zhuǎn)彎增益語(yǔ)言變量。它們的語(yǔ)言值在相應(yīng)論域中的模糊子集分別為Ai、Bi、Ci、Di、Ei、Fi。
表1基準(zhǔn)線速度模糊控制規(guī)則
表2轉(zhuǎn)彎增益模糊控制規(guī)則表
根據(jù)基準(zhǔn)線速度模糊控制器調(diào)整機(jī)器人線速度,當(dāng)人機(jī)垂直距離大于安全距離,為快速跟隨目標(biāo),系統(tǒng)將增大機(jī)器人運(yùn)動(dòng)線速度;當(dāng)人機(jī)垂直距離小于安全距離,減小線速度以保證人機(jī)之間的安全距離;當(dāng)人機(jī)垂直距離過(guò)小,機(jī)器人停止運(yùn)動(dòng)以防人機(jī)碰撞。根據(jù)轉(zhuǎn)彎增益模糊控制器調(diào)整轉(zhuǎn)向增益,當(dāng)人機(jī)水平距離過(guò)大時(shí),轉(zhuǎn)向增益增大,轉(zhuǎn)彎半徑減小,機(jī)器人行進(jìn)過(guò)程中快速調(diào)整轉(zhuǎn)向以保證目標(biāo)在視野中心位置。規(guī)則如表1和表2所示。
步驟5.3解模糊
經(jīng)過(guò)邏輯判斷,利用重心法解模糊化。對(duì)于由規(guī)則描述的模糊控制系統(tǒng)的穩(wěn)定性問(wèn)題,可以根據(jù)模糊集理論,通過(guò)關(guān)系矩陣來(lái)分析其穩(wěn)定性。
到這一步一個(gè)算法周期已經(jīng)完成,得到第t+1幀的目標(biāo)位置后,重復(fù)上述步驟,更新第t+1幀的空間上下文模型和時(shí)空上下文模型,為下一幀即第t+2幀的目標(biāo)更新做準(zhǔn)備,并根據(jù)跟蹤的結(jié)果進(jìn)行機(jī)器人控制,由機(jī)器人采集下一幀即第t+2幀的場(chǎng)景圖像繼續(xù)進(jìn)行上述操作,不斷循環(huán)實(shí)現(xiàn)實(shí)時(shí)的目標(biāo)跟蹤。
附圖說(shuō)明
圖1為本發(fā)明所涉及方法的流程圖;
圖2機(jī)器人運(yùn)動(dòng)模型;
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明專(zhuān)利進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。
步驟1,場(chǎng)景圖像分割
采用簡(jiǎn)單線性迭代聚類(lèi)算法(SLIC)對(duì)圖像進(jìn)行分割,利用圖像的顏色、紋理和距離相似性特征對(duì)像素進(jìn)行聚類(lèi),形成邊界明顯緊湊性好的圖像塊。
步驟1.1,獲取局部熵
步驟1.2,對(duì)像素進(jìn)行聚類(lèi)
步驟1.3,更新聚類(lèi)中心
步驟2,基于稀疏表示的圖像塊篩選
為了更好的應(yīng)對(duì)遮擋的情況和提高實(shí)時(shí)性,對(duì)圖像塊進(jìn)行稀疏表示,給不同的圖形塊賦予不同的權(quán)重,篩選出目標(biāo)塊的近鄰塊作為上下文區(qū)域。
步驟2.1,建立圖像塊稀疏方程,并賦權(quán)重
步驟2.2,求解稀疏方程
得到圖像塊的稀疏表示后對(duì)稀疏方程進(jìn)行求解,得到稀疏系數(shù)和權(quán)重。
步驟3,建立時(shí)空上下文模型
基于上述得到的圖像塊建立時(shí)空上下文模型,為后面的目標(biāo)跟蹤做準(zhǔn)備。
步驟3.1,建立目標(biāo)區(qū)域聚類(lèi)中心的上下文特征
在目標(biāo)區(qū)域已知的情況下獲取目標(biāo)區(qū)域上下文特征。
步驟3.2,建立圖像塊的上下文先驗(yàn)?zāi)P?/p>
然后得到當(dāng)前的上下文先驗(yàn)?zāi)P汀?/p>
步驟3.3,獲得基于圖像分塊的空間上下文模型
由目標(biāo)位置和上下文先驗(yàn)?zāi)繕?biāo),在貝葉斯框架下得到空間上下文模型。
步驟3.4,時(shí)空上下文更新
由空間上下文的加權(quán)更新得到時(shí)空上下文模型,為下一幀的目標(biāo)跟蹤做準(zhǔn)備。
步驟4,目標(biāo)跟蹤
由上一幀得到的時(shí)空上下文模型與當(dāng)前幀的上下文先驗(yàn)?zāi)P偷玫侥繕?biāo)位置置信圖,置信圖概率最大處認(rèn)為是目標(biāo)位置。得到目標(biāo)位置后對(duì)當(dāng)先幀的空間上下文模型進(jìn)行更新,進(jìn)而得到新的時(shí)空上下文模型,繼續(xù)為下一幀的目標(biāo)跟蹤做準(zhǔn)備。
步驟4.1,建立置信圖
步驟4.2,跟蹤目標(biāo)所在位置
步驟4.3,尺度更新
為適應(yīng)目標(biāo)在運(yùn)動(dòng)過(guò)程中的形狀、大小的變化對(duì)目標(biāo)區(qū)域做尺度更新。
步驟5,機(jī)器人運(yùn)動(dòng)決策
根據(jù)上述得到的目標(biāo)位置的結(jié)果進(jìn)行機(jī)器人的運(yùn)動(dòng)決策,采用模糊控制的控制方法。
步驟5.1,確定隸屬度函數(shù)、模糊集進(jìn)行模糊化
步驟5.2,建立控制規(guī)則
步驟5.3解模糊 。