劉麗娟,劉國(guó)棟
(江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇無(wú)錫 214122)
由于現(xiàn)在不斷增長(zhǎng)的安全需求,目標(biāo)跟蹤的研究日益受到重視。目前的跟蹤技術(shù)主要是利用完全基于聲音或視覺(jué)傳感器,音頻定位具有精度差而覆蓋面廣的特點(diǎn),視覺(jué)跟蹤具有定位精度高而受攝錄角度限制的特點(diǎn),以至于在復(fù)雜環(huán)境下難以取得理想的跟蹤效果。這時(shí)由2只或多只傳感器獲得的信息相結(jié)合有更大的優(yōu)勢(shì)。
德國(guó)Erlnagne Nurem berg大學(xué)遠(yuǎn)程通信實(shí)驗(yàn)室在實(shí)驗(yàn)中采用卡爾曼濾波來(lái)融合音頻和視頻信息,在一個(gè)模擬鐵道上得到的跟蹤結(jié)果好于單獨(dú)使用音頻或視頻信息的跟蹤[1]。但是由于其假設(shè)的線性動(dòng)力學(xué)和一個(gè)單峰高斯后驗(yàn)概率密度,卡爾曼融合法受到了嚴(yán)重的限制。瑞士DalleMolel感知人工智能研究所Daniel Gatica-perez等人進(jìn)一步考慮了音頻信息和視頻信息的差異,提出了采用重要性函數(shù)粒子濾波器(ISPF)進(jìn)行音頻信息和視頻信息的融合[2]。這種方法改善了跟蹤效果,但增加了計(jì)算成本,降低了系統(tǒng)的速度。由美國(guó)微軟研究院的Mahttew J Beal等人提出的融合方法[3],采用隱變量概率圖的方式來(lái)分別描述音頻信息和視頻信息,根據(jù)貝葉斯(Bayes)準(zhǔn)則,采用EM算法來(lái)取得最大后驗(yàn)概率,并同時(shí)得到人物的位置估計(jì)。雖然,貝葉斯方法的原理非常簡(jiǎn)單,功能強(qiáng)大,其在實(shí)踐中的主要缺點(diǎn)是計(jì)算量大,主要用于執(zhí)行在一個(gè)非常高維空間的隨機(jī)變量。
本文在這些研究的基礎(chǔ)上,提出了一種利用音頻和視頻信息在三維空間直接跟蹤目標(biāo)的新方法,音頻和視覺(jué)信息利用TRIBES算法以一種新的方式融合[4],這種方法比現(xiàn)有的方法具有更快、更精確的跟蹤性能。
聲源定位系統(tǒng)目的是提供表示系統(tǒng)原點(diǎn)和被跟蹤對(duì)象相對(duì)角的方位角φ。假設(shè)一個(gè)單一的聲源與消聲平面波在低不相關(guān)噪聲和低回響情況下傳播。這個(gè)波被距離為b的2個(gè)麥克風(fēng)收集。麥克風(fēng)信號(hào)x1(t)和x2(t)可表示為[5]
其中,T為時(shí)間,s(t)為被定位的信號(hào)源,TTDOA為2只傳感器之間的延遲,n1(t),n2(t)為假設(shè)不相關(guān)噪聲信號(hào)和廣義平穩(wěn)過(guò)程,延遲T可以通過(guò)計(jì)算廣義互相關(guān)函數(shù)(GCC)Rx1x2(T)來(lái)估計(jì),Rx1x2(T)由下式信號(hào)的交叉功率譜密度的傅立葉逆變換給出,即
式中A(ω)為一個(gè)過(guò)濾函數(shù),假設(shè)觀測(cè)時(shí)間是無(wú)限制的,T再次表示頻域的信號(hào)X1(ω)和時(shí)X2(ω)之間的延遲。將A(ω)進(jìn)行相位變換(PHAT)如下
該濾波器的功能是使GCC更加適合檢測(cè)狹窄頻帶信號(hào)和增強(qiáng)抗混響。從信號(hào)s(t)得到的估計(jì)延遲T^TDOA,通過(guò)以下方式得到最大搜索
最后,用以下公式得到需要的角度φ
式中c為聲度,b為2只傳感器之間的距離。
CAMshift[6]是基于均值偏移(mean shift)的算法。這里的均值偏移是指用一個(gè)非參數(shù)的方法來(lái)檢測(cè)概率密度分布模式,利用一個(gè)遞歸過(guò)程收斂于最接近的平穩(wěn)點(diǎn)。
CAMshift算法通過(guò)調(diào)節(jié)搜索窗口的大小來(lái)擴(kuò)展均值偏移方法。通過(guò)擴(kuò)展,這個(gè)方法可以應(yīng)用到圖像序列,這個(gè)圖像序列中包括一個(gè)不斷變化跟蹤的顏色分布的形狀。
CAMshift算法適用于立體視覺(jué)系統(tǒng)的左幀和右?guī)?,得?個(gè)中心點(diǎn)(xcl,ycl)和(xcr,ycr)。然后,左邊的中心點(diǎn)(xcl,ycl)通過(guò)一個(gè)二維塊匹配搜索在右邊的框架搜索。這個(gè)搜索用到二維歸一化互相關(guān)數(shù)R(x,y)。在右側(cè)R(x,y)最大值的位置表示對(duì)應(yīng)的左側(cè)框架中相對(duì)于CAMshift的中心點(diǎn)(xcl,ycl)的MPr=(xMPr,yMPr),它在邏輯上表示在左側(cè)的對(duì)應(yīng)點(diǎn),即MPl=(xMPl,yMPl)=(xcl,ycl)。
融合模塊的任務(wù)是結(jié)合音頻和視頻算法得到的信息,來(lái)提供跟蹤對(duì)象在當(dāng)前三維位置相對(duì)于系統(tǒng)原點(diǎn)的坐標(biāo)估計(jì)值。在本節(jié),將闡述這種基于TRIBES的融合技術(shù)。
TRIBES融合方法中,在一個(gè)相對(duì)于視聽(tīng)系統(tǒng)原點(diǎn)的坐標(biāo)系統(tǒng),每個(gè)粒子M代表一個(gè)在三維空間中的位置,即M(x,y,z)。其基本思路是,最小化成本或適應(yīng)度函數(shù)F(x),且F:∈Rn→R,使用動(dòng)態(tài)粒子群。通過(guò)在參數(shù)空間x∈Ω?R″中搜索最優(yōu)解。它的改進(jìn)之處主要是,它不需要用戶給定任何參數(shù),包括粒子數(shù)、粒子拓?fù)涞染歉鶕?jù)算法性能自動(dòng)確定。
隨著,從音頻系統(tǒng)和視覺(jué)系統(tǒng)得到的位置信息,在三維空間中移動(dòng)的粒子可以通過(guò)分別計(jì)算在音頻系統(tǒng)中的最佳角度和視頻系統(tǒng)中的最佳歐氏距離,來(lái)確定在當(dāng)前位置的一個(gè)適合度函數(shù)。
1)音頻:為了評(píng)估一個(gè)固定粒子在當(dāng)前位置音頻系統(tǒng)獲得的方位角,本文引入一個(gè)音頻距離變量Daudio。這個(gè)變量表示按弧度的角距離,即音頻方位角和當(dāng)前位置與音頻系統(tǒng)原點(diǎn)之間的角度之間的距離,如圖1所示。Daudio的距離通過(guò)π規(guī)范化,表示α與φ之間最大的角度差
其中,Zm和Xm分別為粒子位置在X和Z的坐標(biāo)。因?yàn)橐纛l角度φ為方位角,所以,Xm/Ym等效方位角α的切線。
2)視覺(jué):為了評(píng)價(jià)粒子相對(duì)于立體視覺(jué)系統(tǒng)的當(dāng)前位置,粒子被投影在左側(cè)和右側(cè)框架上,這樣就能分別產(chǎn)生左側(cè)和右側(cè)的投影點(diǎn)ml=(xml,yml)和mr=(xml,ymr)。使用一個(gè)校準(zhǔn)的立體攝像系統(tǒng),通過(guò)以下方式獲得的投影
其中,Pl和Pr是左幀和右?guī)耐队熬仃?,?jì)算公式為
假設(shè)左圖像平面原點(diǎn)Ol被視為該系統(tǒng)的原點(diǎn),矩陣[I|o]和[R|t]描述了在均勻坐標(biāo)系統(tǒng)中左幀和右?guī)g的單應(yīng)性。R和t分別表示旋轉(zhuǎn)矩陣和翻譯向量。KKl和KKr表示相機(jī)矩陣。
歸一化值Dleft和Dright代表一個(gè)粒子M在當(dāng)前位置在左右圖像幀的投影,即ml和mr與相應(yīng)的視覺(jué)系統(tǒng)中本地化點(diǎn)即MPl和MPr之間的歐氏距離,計(jì)算公式為
其中,width和height分別為左幀和右?guī)膶挾群透叨?,如圖1所示。
3)適應(yīng)度函數(shù):根據(jù)算法TRIBES,每顆粒子通過(guò)每一次迭代中計(jì)算其適應(yīng)度函數(shù)F來(lái)測(cè)試其在當(dāng)前位置的質(zhì)量。這個(gè)函數(shù)必須最小化,因此,當(dāng)粒子的位置靠近要跟蹤對(duì)象的解空間時(shí),函數(shù)會(huì)減小。相對(duì)于基于視頻的定位模塊,距離Dleft和Dright測(cè)量位置質(zhì)量。同樣,相對(duì)于基于音頻的模塊,Daudio直接測(cè)量質(zhì)量。因此,適當(dāng)?shù)倪m應(yīng)度函數(shù)F被定義為3個(gè)距離值的加權(quán)的總和
圖1 粒子群跟蹤系統(tǒng)模型Fig 1 TRIBES tracking system model
其中,waudio,wleft,wright分別為每個(gè)組件的加權(quán)系數(shù)。
TRIBES算法提供了一個(gè)跟蹤對(duì)象的3D位置估計(jì)。當(dāng)?shù)螖?shù)達(dá)到預(yù)定義的最大數(shù)量或者適應(yīng)度函數(shù)F達(dá)到最小值Fmin時(shí),即趨同標(biāo)準(zhǔn)滿足了,TRIBES算法將停止迭代。此時(shí),全局極值的3D位置gbestTRS(X,Y,Z)已經(jīng)恰好表示跟蹤對(duì)象的當(dāng)前位置。
在本節(jié)中,將基于卡爾曼的融合算法,與基于TRIBES算法在速度和準(zhǔn)確性兩方面進(jìn)行了比較。為了測(cè)試和評(píng)估的跟蹤器,要通過(guò)立體照相機(jī)和立體麥克風(fēng)系統(tǒng)來(lái)獲得一個(gè)人在某區(qū)域的移動(dòng)和談話的音頻和視頻數(shù)據(jù)。所用的硬件包括2個(gè)FireWire相機(jī)和2個(gè)AKG全方位麥克風(fēng)。在第一次執(zhí)行時(shí),視頻以每秒15幀和分辨率640像素 ×480像素拍攝。音頻材料使用采樣頻率為44 100 Hz來(lái)記錄。對(duì)于一個(gè)單一的音頻計(jì)算步驟,文中捕捉和處理每個(gè)麥克風(fēng)的4~8個(gè)窗口,一個(gè)FFT窗口長(zhǎng)度1 024樣本和50%重疊的音頻流。這將導(dǎo)致最大的104.48 ms的時(shí)間幀。此外,利用突變體開(kāi)發(fā)框架,實(shí)現(xiàn)了TRIBES系統(tǒng)和卡爾曼系統(tǒng)的一個(gè)優(yōu)化版本。它使多線程執(zhí)行不同的模塊,允許有效地使用處理器的內(nèi)核。這個(gè)版本允許每秒30幀的在線測(cè)試。該跟蹤器實(shí)現(xiàn)了在C++中使用OpenCV庫(kù)和使用FFTW庫(kù)計(jì)算快速傅立葉變換。
測(cè)試卡爾曼算法和TRIBES算法在不同電腦上的平均計(jì)算時(shí)間,以ms為單位。
由表1可見(jiàn),在計(jì)算時(shí)間方面TRIBES算法只比卡爾曼算法略少,因?yàn)橐曈X(jué)系統(tǒng)運(yùn)行2個(gè)CAMshift跟蹤器需要多于執(zhí)行時(shí)間的60%。沒(méi)有優(yōu)化的話,視覺(jué)系統(tǒng)計(jì)算方位角的時(shí)間高達(dá)30%。這些預(yù)處理時(shí)間將被添加到卡爾曼和TRIBES融合技術(shù)中,卡爾曼和TRIBES算法的模塊跟蹤執(zhí)行時(shí)間都將少于10%。在基于突變的實(shí)現(xiàn)中,卡爾曼和TRIBES模塊都需要2 ms的平均計(jì)算時(shí)間和整個(gè)跟蹤系統(tǒng)相機(jī)的幀率。
表1 卡爾曼算法和TRIBES算法平均時(shí)間比較Tab 1 Average time comparison of Kalman and TRIBES algorithm
競(jìng)爭(zhēng)算法的突變體進(jìn)行了在線測(cè)試。要獲得在X和Z方向的精確的真實(shí)的數(shù)據(jù)和證據(jù),本文使用SICK LM210激光雷達(dá)追加記錄跟蹤對(duì)象的位置。激光雷達(dá)每100 m提供一個(gè)位置估計(jì),其角分辨率是0.5°和在Z方向的精確度是0.015 m。用TRIBES算法和卡爾曼跟蹤器估計(jì)當(dāng)前位置在X和Z的坐標(biāo),并與用激光雷達(dá)得到的位置比較。如圖2所示X和Z的位置。通過(guò)測(cè)試,移動(dòng)物體隨著時(shí)間推移在Z坐標(biāo)的位置,如圖3所示。在每一個(gè)激光雷達(dá)測(cè)量步驟里,激光雷達(dá)、卡爾曼和TRIBES跟蹤器記錄位置。本文對(duì)不同的移動(dòng)物體進(jìn)行多次測(cè)試,以產(chǎn)生類(lèi)似的結(jié)果。
圖2 X和Z的位置跟蹤Fig 2 X and Z position tracking
圖3 Z坐標(biāo)位置跟蹤Fig 3 Position tracking in Z coordinate
表2給出了由TRIBES跟蹤系統(tǒng)和參考卡爾曼系統(tǒng)跟蹤得到的在X和Z方向的平均值和最大誤差還有平均歐氏誤差。
結(jié)果表明:雖然在緩慢運(yùn)動(dòng)時(shí)卡爾曼系統(tǒng)比TRIBES算法提供了更加平滑的軌道,但是,TRIBES算法跟蹤可以更快地適應(yīng)位置的變化。當(dāng)目標(biāo)的速度和方向不斷變化時(shí),TRIBES算法跟蹤器的跟蹤誤差非常小。
表2 TRIBES算法和卡爾曼算法結(jié)果比較Tab 2 Results comparison of TRIBES and Kalman algorithm
本文提出了一種新的基于視聽(tīng)信息融合的3D目標(biāo)跟蹤系統(tǒng),以TRIBES為基礎(chǔ)的融合方法的速度性能比現(xiàn)存最簡(jiǎn)單的卡爾曼跟蹤更快。因此,它的速度性能更超越耗時(shí)的粒子濾波或貝葉斯推理等復(fù)雜方法。該算法的另一個(gè)優(yōu)點(diǎn)是,當(dāng)目標(biāo)的速度和方向不斷變化時(shí),它的跟蹤誤差非常小。
[1] Strobel N,Spors S,Rabenstein R.Joint audiovideo object localization and tracking[J].IEEE Signal Processing Magazine,2001,18(1):22 -31.
[2] Krahnstoever N,Yeasin M,Sharma R.Automatic acquisition and initialization of articulated models[J].Machine Vision and Applications,2003,14(4):218 -228.
[3] Jaina K,Chen Y.Pores and ridges:High-resolution fingerprint match using level 3 features[J].IEEE Pattern Analysis Machine Intelligence,2007,29(1):15 -27.
[4] Cooren Y,Clerc M,Siarry P.MO-TRIBES,an adaptive multiobjective particle swarm optimization algorithm[J].Comput Optim Appl,2011,49(2):379 -400.
[5] 王春艷,樊官民,孟 杰.基于廣義互相關(guān)函數(shù)的聲波陣列時(shí)延估計(jì)算法[J].電聲技術(shù),2010,34(8):36 -39.
[6] 申鉉京,張 博.基于圖像矩信息的 Camshift視覺(jué)跟蹤方法[J].北京工業(yè)大學(xué)學(xué)報(bào),2012,38(1):105-109.