符 強(qiáng),昌 濤,任風(fēng)華,紀(jì)元法*
(1.桂林電子科技大學(xué)廣西精密導(dǎo)航技術(shù)與應(yīng)用重點(diǎn)實(shí)驗(yàn)室,廣西 桂林 541004;2.衛(wèi)星導(dǎo)航定位與位置服務(wù)國(guó)家地方聯(lián)合工程研究中心,廣西 桂林 541004;3.桂林電子科技大學(xué)電子工程與自動(dòng)化學(xué)院,廣西 桂林 541004)
隨著機(jī)器視覺的發(fā)展,視覺目標(biāo)跟蹤技術(shù)已經(jīng)成為國(guó)內(nèi)外機(jī)器視覺領(lǐng)域中一個(gè)重要而富有挑戰(zhàn)性的研究問題,在諸如智能視頻監(jiān)控、無人駕駛、人機(jī)交互等領(lǐng)域被廣泛應(yīng)用。在視頻序列中的第一幀中選定待跟蹤目標(biāo),如何在后續(xù)幀中找到此目標(biāo)是視覺目標(biāo)跟蹤的主要任務(wù),經(jīng)過近年的研究與發(fā)展,視覺目標(biāo)跟蹤技術(shù)取得了較大的突破與進(jìn)展,但是由于在跟蹤過程中容易出現(xiàn)目標(biāo)遮擋、目標(biāo)快速移動(dòng)、背景復(fù)雜等問題的干擾,實(shí)現(xiàn)魯棒的視覺目標(biāo)跟蹤仍然具有一定的難度。
近年來,由于基于相關(guān)濾波的目標(biāo)跟蹤方法具有跟蹤速度快、精度高的優(yōu)勢(shì),因此成為了當(dāng)前視覺目標(biāo)跟蹤領(lǐng)域中的研究熱點(diǎn)之一。Bolme等[1]首次將相關(guān)濾波器引入到目標(biāo)跟蹤領(lǐng)域,并提出了最小輸出誤差平方和濾波(Minimum Output Sum of Squared Error Filter,MOSSE)算法,通過將時(shí)域上的卷積運(yùn)算轉(zhuǎn)換為頻域上的乘積運(yùn)算來降低運(yùn)算量,提升了目標(biāo)的跟蹤效率,達(dá)到了669幀每秒,但是此方法的跟蹤精度過低。在此基礎(chǔ)上,Henriques等[2]提出了循環(huán)結(jié)構(gòu)核(Circulant Structure Kernel,CSK)算法,它利用循環(huán)移位的方式實(shí)現(xiàn)了樣本的密集采樣,一方面通過增加增加樣本數(shù)量來提高跟蹤精度,另一方面通過循環(huán)結(jié)構(gòu)化核函數(shù)來提高跟蹤速度。隨后Henriques等[2]又提出了核相關(guān)濾波(Kernel Correlation Filter,KCF)算法,即在CSK算法的基礎(chǔ)上將核函數(shù)引入到嶺回歸中,并利用多通道的方向梯度直方圖(HOG)特征來替代單通道的灰度特征,從而提高了跟蹤的精度。Danelljan等[3]利用顏色屬性(CN)特征擴(kuò)展CSK算法,采用主成分分析法(PCA)將11維顏色特征降至2維,使跟蹤精度得到了一定的提升。Li等[4]提出了尺度自適應(yīng)多特征(Scale Adaptive Multiple Feature,SAMF)跟蹤算法,通過融合灰度特征、CN特征、HOG特征,并引入尺度估計(jì)來適應(yīng)目標(biāo)的尺度變化,展示出了較好的跟蹤結(jié)果。以上跟蹤算法雖然取得不錯(cuò)的跟蹤效果,但缺乏對(duì)背景信息的感知,Mueller等[5]提出了一種上下文感知相關(guān)濾波(Context-Aware Correlation Filter,CACF)跟蹤算法,該算法通過在目標(biāo)位置的上下左右四個(gè)方向各取了一塊背景區(qū)域,為跟蹤模型合理地增加了更多的背景信息,在對(duì)跟蹤速度影響較小的情況下提高了跟蹤的準(zhǔn)確率和魯棒性。但是CACF算法并未對(duì)上下文背景信息進(jìn)行細(xì)節(jié)上的處理,而是認(rèn)為目標(biāo)區(qū)域的上下文區(qū)域的重要性相同,從而影響了跟蹤算法的效率和魯棒性。針對(duì)這一問題,本文提出了一種基于粒子濾波的上下文感知自適應(yīng)的目標(biāo)跟蹤算法。該算法利用粒子濾波來預(yù)測(cè)目標(biāo)的運(yùn)動(dòng)方向,在訓(xùn)練濾波器時(shí),將目標(biāo)區(qū)域周圍8個(gè)方向的背景區(qū)域作為負(fù)樣本,并對(duì)目標(biāo)運(yùn)動(dòng)方向上的背景樣本給予較其它方向上更多的權(quán)重,從而提高了跟蹤器對(duì)目標(biāo)與樣本的判別能力。同時(shí)為了解決目標(biāo)遮擋問題,本文引入了一種新的模型更新判別依據(jù)APCE(Average Peak to Correlation Energy),在當(dāng)前幀的APCE值與相應(yīng)最大值同時(shí)分別大于各自的歷史平均值時(shí),才對(duì)模型進(jìn)行更新,從而有效防止模型被污染。
傳統(tǒng)的相關(guān)濾波跟蹤算法采用嶺回歸來訓(xùn)練分類器,設(shè)有訓(xùn)練樣本集(xi,yi),訓(xùn)練樣本集中的xi為訓(xùn)練樣本,yi為回歸標(biāo)簽。訓(xùn)練的目標(biāo)就是找到一個(gè)可以優(yōu)化下述嶺回歸方程的函數(shù)f(z)=wTz
(1)
為了方便求解,將上述方程寫成矩陣形式,如下
(2)
式中,f=X0w,f為分類器,X0為目標(biāo)樣本x0的循環(huán)移位矩陣,y為樣本標(biāo)簽矩陣,w為相關(guān)濾波器的權(quán)重系數(shù),λ為正則化參數(shù),防止分類器發(fā)生過擬合。
與傳統(tǒng)的相關(guān)濾波跟蹤算法相比,上下文感知相關(guān)濾波跟蹤算法將目標(biāo)區(qū)域的上下左右4塊背景區(qū)域作為負(fù)樣本來訓(xùn)練分類器,以目標(biāo)樣本處具有較高的響應(yīng)值與背景樣本處響應(yīng)值接近零為約束條件來訓(xùn)練分類器,從而使得跟蹤器對(duì)目標(biāo)與背景有了更高的判別能力。其目標(biāo)函數(shù)的嶺回歸可以表示為
(3)
式中,β為正則化系數(shù),Xi為目標(biāo)區(qū)域上下左右4個(gè)方向的背景樣本xi的循環(huán)移位矩陣,將式(3)中目標(biāo)樣本的循環(huán)移位矩陣X0和背景樣本的循環(huán)移位矩陣Xi合并可得
(4)
對(duì)式(4)求導(dǎo),并令其導(dǎo)數(shù)為0,解得
(5)
式中,H表示共軛轉(zhuǎn)置,I為單位矩陣,C為分塊循環(huán)矩陣
(6)
(7)
所有循環(huán)矩陣在頻域具有可相似對(duì)角化的特性,故可以將循環(huán)矩陣C進(jìn)行如下轉(zhuǎn)換
(8)
(9)
(10)
本文提出的上下文感知自適應(yīng)的相關(guān)濾波跟蹤算法首先是通過粒子濾波對(duì)目標(biāo)做運(yùn)動(dòng)狀態(tài)估計(jì)。粒子濾波的主要思想是通過帶權(quán)樣本粒子集合S={sn|n=1,…,N}近似概率分布,粒子模型為
s={x,y,vx,vy,response,κ}
(11)
其中,x和y為粒子對(duì)應(yīng)的坐標(biāo),vx為粒子對(duì)應(yīng)x方向上的速度,vy為粒子對(duì)應(yīng)y方向上的速度,response為該粒子經(jīng)過相關(guān)濾波器后得到的最高響應(yīng)值,κ為該粒子的權(quán)重值,通過狀態(tài)變化方程對(duì)粒子樣本集合進(jìn)行更新
St=TSt-1+εt-1
(12)
式中,St代表粒子在t時(shí)刻的狀態(tài),T為狀態(tài)轉(zhuǎn)移矩陣,εt-1為高斯隨機(jī)白噪聲。
本文所用粒子濾波估計(jì)目標(biāo)運(yùn)動(dòng)方向算法流程如下:
(13)
將N個(gè)服從[0,1]內(nèi)均勻分布的隨機(jī)變量組成一個(gè)數(shù)組a,對(duì)于數(shù)組a中的每個(gè)元素計(jì)算并歸一化其累計(jì)概率數(shù)組。
4)更新粒子樣本集合,并通過狀態(tài)變化方程St=TSt-1+εt-1計(jì)算新的粒子集合St,然后通過相關(guān)濾波器對(duì)St中的每一個(gè)樣本進(jìn)行位置估計(jì),然后更新估計(jì)從而獲得新的權(quán)重概率。
5)對(duì)于集合St的每個(gè)粒子,針對(duì)前一幀的目標(biāo)狀態(tài)s0更新粒子速度。
(14)
(15)
由于只需要通過粒子濾波來估計(jì)目標(biāo)的運(yùn)動(dòng)方向,得到目標(biāo)的水平速度vx和垂直速度vy后,由于時(shí)空一致性,將目標(biāo)在vx、vy以及兩者夾角方向上的背景區(qū)域賦予較其它背景區(qū)域更高的權(quán)重,并加入到濾波器中進(jìn)行訓(xùn)練,提高了跟蹤器對(duì)目標(biāo)與背景樣本的判別能力。由此可將式(3)轉(zhuǎn)換為
(16)
對(duì)其求解得
(17)
其中,Xj(j∈[1,m])為目標(biāo)上下文信息運(yùn)動(dòng)方向上的背景區(qū)域樣本。在對(duì)目標(biāo)進(jìn)行跟蹤的過程中,是一個(gè)自適應(yīng)項(xiàng)。其中m表示對(duì)目標(biāo)周圍選取背景區(qū)域的數(shù)量,本文在目標(biāo)周圍選取了目標(biāo)周圍8塊背景區(qū)域作為背景樣本,提高了跟蹤器的魯棒性。
本文引入了LMCF[6]算法中提出的模型更新判別依據(jù)APCE
(18)
式中Fmax和Fmin分別表示響應(yīng)圖中的響應(yīng)最大值和最小值,F(xiàn)w,h表示響應(yīng)圖中位置(w,h)處的響應(yīng)值。這個(gè)模型更新判別依據(jù)APCE可以很好的反映出響應(yīng)圖的振蕩程度,當(dāng)APCE的值足夠大時(shí),且響應(yīng)圖很平滑,此時(shí)認(rèn)為跟蹤目標(biāo)出現(xiàn)在檢測(cè)范圍內(nèi);當(dāng)APCE的值突然減小時(shí),此時(shí)認(rèn)為出現(xiàn)了目標(biāo)被遮擋或者目標(biāo)丟失的情況,停止對(duì)模型進(jìn)行更新,避免模型發(fā)生漂移。而本文采用的模型更新策略是只有在當(dāng)前幀的APCE值和響應(yīng)最大值Fmax同時(shí)以一定的比例大于各自的歷史平均值時(shí),才認(rèn)為跟蹤置信度滿足要求,此時(shí)對(duì)模型進(jìn)行更新,當(dāng)其中有一項(xiàng)低于其歷史平均值或者兩項(xiàng)都低于各自歷史平均值時(shí),則認(rèn)為該幀的跟蹤置信度不滿足要求,此時(shí)不對(duì)模型進(jìn)行更新。這樣不僅有效地減少了模型的更新次數(shù),而且有利于防止模型發(fā)生漂移。
本文所有的實(shí)驗(yàn)均在CPU為Intel Core i7-7700,3.60GHz主頻和8GB內(nèi)存的臺(tái)式電腦上完成,開發(fā)平臺(tái)為64位windows 7專業(yè)版系統(tǒng)上的Matlab R2017a。
為了便于本文算法與其它一些主流算法進(jìn)行對(duì)比,實(shí)驗(yàn)選取的標(biāo)準(zhǔn)數(shù)據(jù)測(cè)試集為OTB100{7},OTB100數(shù)據(jù)集包含100組視頻序列,涵蓋多種不同視覺跟蹤挑戰(zhàn)的屬性,如遮擋(OCC)、快速運(yùn)動(dòng)(FM)、復(fù)雜背景(BC)等,每段視頻序列可能有多個(gè)屬性,非常具有跟蹤挑戰(zhàn)性。同時(shí)為了展現(xiàn)本文算法的跟蹤性能,將本文算法與當(dāng)前一些主流目標(biāo)跟蹤算法做了大量的實(shí)驗(yàn)進(jìn)行對(duì)比。選取的主流算法為:CSK[2]、MIL[8]、OAB[9]、TLD[10]、KCF[11]、Struck[12]、Staple[13]等7個(gè)目標(biāo)跟蹤算法。本文算法的參數(shù)如下:正則化系數(shù)λ=10-4,β=20,γ=10,學(xué)習(xí)率η=0.015,μ1=0.6,μ2=0.4。
將本文算法與當(dāng)前一些主流算法在基準(zhǔn)數(shù)據(jù)集OTB100上進(jìn)行實(shí)驗(yàn)對(duì)比,得到實(shí)驗(yàn)結(jié)果如圖1、圖2所示,圖1為成功率圖,圖2為精準(zhǔn)度圖。
圖1 成功率圖
圖2 精準(zhǔn)度圖
由圖1可知,本文算法的得分為0.647,比排名第二的Staple算法(得分為0.600)高出了0.047,在成功率上排名第一。從圖2可以看出本文算法在精準(zhǔn)度上也排名第一,比第二名的Staple(得分為0.793)高出了0.073。
圖3 其它屬性下實(shí)驗(yàn)對(duì)比
圖3為跟蹤算法在其它屬性視頻的跟蹤性能對(duì)比,從圖中可以看出本文算法性能優(yōu)于其它對(duì)比算法,且充分展現(xiàn)出了本文算法的魯棒性。
本文提出了一種上下文感知自適應(yīng)的相關(guān)濾波跟蹤算法。首先提取目標(biāo)周圍8個(gè)方向的背景樣本學(xué)習(xí)到相關(guān)濾波器中,然后利用粒子濾波對(duì)目標(biāo)的運(yùn)動(dòng)狀態(tài)進(jìn)行估計(jì),預(yù)測(cè)目標(biāo)的運(yùn)動(dòng)方向。在訓(xùn)練濾波器時(shí),給予目標(biāo)運(yùn)動(dòng)方向上的背景樣本更多的權(quán)重。為了解決目標(biāo)遮擋的問題,引入了一種新的模型更新判別依據(jù)APCE,只有當(dāng)APCE值和響應(yīng)最大值同時(shí)分別以一定比例大于各自的歷史平均值時(shí),才對(duì)模型進(jìn)行更新;最后將本文算法與當(dāng)前一些主流的跟蹤算法在基準(zhǔn)測(cè)試集OTB100上進(jìn)行實(shí)驗(yàn)對(duì)比,實(shí)驗(yàn)結(jié)果表明,本文算法的成功率為0.647,精確度為0.866,均優(yōu)于其它對(duì)比算法,充分展現(xiàn)出了本文算法的魯棒性。