李國友,張鳳煦,紀(jì)執(zhí)安
(燕山大學(xué) 工業(yè)計(jì)算機(jī)控制工程河北省重點(diǎn)實(shí)驗(yàn)室,河北 秦皇島 066004) E-mail:1097089954@qq.com
目標(biāo)跟蹤是計(jì)算機(jī)視覺的重要組成部分之一,它在視頻監(jiān)控、導(dǎo)彈制導(dǎo)、智能交通、智能視覺導(dǎo)航等領(lǐng)域都有著廣泛的應(yīng)用前景[1].目標(biāo)跟蹤是使用視頻序列初始幀給定的目標(biāo)位置和尺寸,通過一定算法,判斷每一幀視頻序列中的目標(biāo)位置和尺寸.影響追蹤的精度的主要因素有遮擋、形變、快速移動(dòng)、光照變化、以及相似目標(biāo)干擾等[2].因此,建立一個(gè)穩(wěn)定有效的跟蹤系統(tǒng)才能應(yīng)對(duì)這些問題.
目標(biāo)跟蹤算法大體分為三個(gè)步驟:目標(biāo)的外觀模型的建立、搜索機(jī)制和模型的更新策略[3].外觀模型的建立就是利用特征描述目標(biāo)的過程,搜索機(jī)制是對(duì)候選區(qū)域的搜索,模型的更新策略是在當(dāng)前幀確定目標(biāo)之后,對(duì)目標(biāo)的外觀做出調(diào)整,以適應(yīng)新的環(huán)境.2010年以前,目標(biāo)跟蹤領(lǐng)域主要使用一些經(jīng)典的跟蹤方法,如Meanshift[4]和Kalman Filter[5]等.2010年,Bolme D S等人[6]首次將相關(guān)濾波器引入追蹤領(lǐng)域.近年來視覺目標(biāo)跟蹤技術(shù)取得了很大的進(jìn)步,涌現(xiàn)出更多優(yōu)秀的跟蹤算法.Henriques等人[7]在KCF(Kernelized Correlation Filters)算法中,利用循環(huán)矩陣在傅里葉空間可對(duì)角化的性質(zhì),將矩陣的運(yùn)算轉(zhuǎn)化為向量的點(diǎn)積,大大地提高了運(yùn)算速度.Danelljan M等人[8]利用訓(xùn)練樣本集的插值模型,提出了一種在連續(xù)空間域?qū)W習(xí)卷積的新方法(Learning Continuous Convolution Operators for Visual Tracking,C-COT),將DCF(Discriminative Correlation Filters)[9]中的單分辨率特征映射轉(zhuǎn)換為多分辨率特征映射,使不同分辨率的卷積層完美融合.之后Danelljan M等人[10]提出的ECO(Efficient Convolution Operators for Tracking)算法在特征提取上將C-COT做了簡化,使運(yùn)算效率明顯提高.并簡化了訓(xùn)練集和模型更新策略,防止目標(biāo)在更新過程中發(fā)生過擬合.
近年來追蹤算法有了各種改進(jìn)方法[11],但對(duì)于目標(biāo)嚴(yán)重遮擋、丟失及出視野的情況處理方法依然不理想.當(dāng)目標(biāo)不在檢測(cè)區(qū)域時(shí)繼續(xù)按照正常情況時(shí)的方法進(jìn)行追蹤,勢(shì)必會(huì)對(duì)目標(biāo)模型造成污染.因此當(dāng)目標(biāo)再次出現(xiàn)時(shí),難以用模型對(duì)目標(biāo)進(jìn)行匹配.長期跟蹤算法TLD(Tracking Learning Detection)[12]采用對(duì)視頻序列的每幀圖像都執(zhí)行重檢測(cè)的策略,能進(jìn)行長期跟蹤,但運(yùn)算效率低下.
針對(duì)以上問題,本文在ECO算法基礎(chǔ)上,引用一種檢測(cè)機(jī)制,當(dāng)檢測(cè)到目標(biāo)遮擋時(shí)停止對(duì)目標(biāo)尺度的更新,檢測(cè)到丟失時(shí)停止對(duì)目標(biāo)模型的更新.利用最佳伙伴相似度(Best-Buddies Similarity for Robust Template Matching,BBS)[13]設(shè)計(jì)出在線重定位模塊,當(dāng)目標(biāo)遮擋或丟失后,重新定位目標(biāo)位置.本文采用OTB-2015數(shù)據(jù)集[14]評(píng)估改進(jìn)后算法的性能,改進(jìn)后算法的精確度和成功率分別為0.879和0.799,相比傳統(tǒng)的ECO算法分別提高4.1%和3.6%.
ECO算法提出了因式分解卷積操作,減少DCF的參數(shù),提高了運(yùn)算效率.ECO采用高斯混合模型來生成不同的模型組件,防止目標(biāo)出現(xiàn)過擬合.同時(shí)降低模型更新頻率,節(jié)約了時(shí)間,避免了模型的漂移問題.
(1)
式中,bd是一個(gè)周期為T>0的插值核,結(jié)果Jd{xd}是一個(gè)插值特征層,為連續(xù)周期函數(shù).當(dāng)J{x}(t)∈RD時(shí),使用J{x}表示整個(gè)插值特性映射.
訓(xùn)練一個(gè)連續(xù)的T周期多通道卷積濾波器f=(f1…fD),用來預(yù)測(cè)檢測(cè)分?jǐn)?shù)Sf{x}(t):
(2)
(3)
=f*PTJ{x}
(4)
(5)
式中,加入P的弗羅比尼烏斯(Frobenius)范數(shù)作為正則化,權(quán)重λ為正則化系數(shù).
(6)
將一階近似式(6)代入(5)中,得到迭代i處的高斯-牛頓子問題,
(7)
基于樣本特征映射x的聯(lián)合概率分布p(x,y)和相應(yīng)的期望輸出分?jǐn)?shù)y.在給定p(x,y)的情況下,直觀的目標(biāo)是找到使期望的相關(guān)誤差最小化的濾波器,
(8)
使用Declercq和Piater對(duì)在線算法進(jìn)行簡化.給定一個(gè)新樣本xj,初始化一個(gè)新的組件πm=γ和μm=xj.當(dāng)組件的數(shù)量超過極限L時(shí),如果存在權(quán)重πl(wèi)低于閾值的組件,則丟棄這個(gè)組件.否則,將兩個(gè)最接近的分量k和l合并成一個(gè)共同的分量n.
(9)
所需的距離比較‖μk-μl‖有效地計(jì)算在傅里葉域中使用Parseval公式.最后,期望損失函數(shù)(8)近似為:
(10)
式中,樣本數(shù)量從M減少到L.用投影樣本PTJx代替樣本x.矩陣P在第一幀之后是常數(shù).
ECO主要是解決模型過大的問題,簡化了訓(xùn)練集,同時(shí)改變了模型更新策略,防止模型出現(xiàn)過擬合.然而,傳統(tǒng)的ECO算法沒有遮擋檢測(cè)機(jī)制,當(dāng)目標(biāo)遮擋丟失后,繼續(xù)對(duì)目標(biāo)進(jìn)行追蹤和尺度的更新.這樣使分類器模型誤差累計(jì),導(dǎo)致當(dāng)目標(biāo)再次出現(xiàn)時(shí)難以確定目標(biāo)的位置.本文引用一種遮擋檢測(cè)機(jī)制,當(dāng)檢測(cè)到目標(biāo)受遮擋時(shí)停止對(duì)模型和目標(biāo)尺度的更新.當(dāng)目標(biāo)丟失后,通過融合空間權(quán)重、目標(biāo)檢測(cè)得分和最佳伙伴相似性得分來估計(jì)候選目標(biāo)位置,解決遮擋或丟失情況下的目標(biāo)重定位問題.
遮擋檢測(cè)是判斷目標(biāo)是否遮擋,是對(duì)遮擋目標(biāo)模型更新和尺度變化進(jìn)行調(diào)整的基礎(chǔ),根據(jù)濾波響應(yīng)得分Sf{μ}的分布,本文提出遮擋檢測(cè)算法.假設(shè)目標(biāo)受遮擋的過程是在原來的目標(biāo)區(qū)域之上疊加了一個(gè)服從高斯分布的噪聲[15],由于受到遮擋的區(qū)域與未遮擋區(qū)域同樣進(jìn)行特征提取操作,遮擋區(qū)域特征在與濾波器模型參數(shù)作卷積時(shí),響應(yīng)得分Sf{μ}在極大值周圍點(diǎn)有所提升,使響應(yīng)分布方差變大.因此,當(dāng)目標(biāo)無遮擋時(shí)Sf{μ}的響應(yīng)分布比較均勻,能夠明確確定最大相應(yīng)的位置,如圖1所示.目標(biāo)受遮擋時(shí)響應(yīng)分布比較雜亂,最大響應(yīng)位置不明顯,如圖2所示.
圖1 遮擋時(shí)響應(yīng)得分圖Fig.1 Response score when occlusion圖2 未遮擋時(shí)響應(yīng)得分Fig.2 Response score when occlusion
對(duì)于M×N的目標(biāo)檢測(cè)區(qū)域,根據(jù)遮擋時(shí)的響應(yīng)得分函數(shù)中的較大響應(yīng),引入遮擋閾值λ1和面積因子λ2.求出所有滿足Sfij>λ1Sfmax的位置坐標(biāo)posij,根據(jù)posij和posmax的歐氏距離得出,
(11)
式中,Sfij/Sfmax是對(duì)‖posij-posmax‖的距離加權(quán).響應(yīng)得分值越大的位置對(duì)目標(biāo)位置確定的影響越大,故權(quán)值越大.
由此得出遮擋判別準(zhǔn)則為,
(12)
圖3 遮擋檢測(cè)算法流程Fig.3 Occlusion detection algorithm process
其中C=1表示目標(biāo)受遮擋,C=0表示未遮擋.具體算法流程如圖3所示.
(13)
式中,NN(ti,O)=argminoj∈Od(ti,oj)表示點(diǎn)集O中ti的最近鄰.
BBS是兩個(gè)集合之間最佳伙伴對(duì)的占比,定義為,
(14)
式中,H和J分別為點(diǎn)集T和O的大小,BBS(T,O)是目標(biāo)模板在搜索區(qū)域的目標(biāo)最佳伙伴似然概率圖,BBS(T,O)越大,目標(biāo)在搜索區(qū)域相似性越高,候選目標(biāo)區(qū)域O屬于目標(biāo)區(qū)域的可能性越大.
當(dāng)追蹤到當(dāng)前幀目標(biāo)的位置和尺寸時(shí),通過目標(biāo)置信度判斷跟蹤目標(biāo)的可靠性,其目標(biāo)置信度判別為:
Pt=e-η‖xt-xt-τ‖2
(15)
式中,Pt為目標(biāo)外觀模型置信度,η表示懲罰權(quán)重,xt為當(dāng)前幀外觀模型,當(dāng)追蹤到第NS幀前xt-τ為目標(biāo)的首幀目標(biāo)外觀模型,追蹤到第N幀后,xt-τ前NS幀可靠目標(biāo)中外觀置信度最大幀的目標(biāo)外觀模型.由此得出目標(biāo)的追蹤可靠性為,
(16)
其中,γ=1表示目標(biāo)可靠,γ=0表示目標(biāo)不可靠,θ為外觀模型置信度閾值.
(17)
ECO使用稀疏更新方案[10],而不是每一幀都以連續(xù)的方式更新模型,參數(shù)NS決定了過濾器更新的頻率.當(dāng)追蹤目標(biāo)位置不可靠時(shí),如果繼續(xù)對(duì)模型進(jìn)行更新,勢(shì)必會(huì)降低模型的準(zhǔn)確性.故本文采用可靠性校正的稀疏更新方案,對(duì)不可靠的目標(biāo)不計(jì)入更新模型數(shù)目中,即當(dāng)經(jīng)過NS幀可靠目標(biāo)后,才會(huì)對(duì)模型進(jìn)行更新.
圖4 算法流程圖Fig.4 Algorithm flow chart
當(dāng)目標(biāo)遮擋和出視野時(shí),尺度上的變化無法估計(jì),因此,當(dāng)檢測(cè)到遮擋或出視野時(shí),將停止對(duì)跟蹤目標(biāo)在尺度空間上的估計(jì).
本實(shí)驗(yàn)的硬件環(huán)境為:內(nèi)存為8GB,Inter(R)Core(TM) i5-44600(3.20Hhz)的CPU,Windows10專業(yè)版64位操作系統(tǒng)的臺(tái)式機(jī),使用了Matlab2016b作為軟件平臺(tái).本文算法的實(shí)驗(yàn)參數(shù)為:遮擋閾值λ1=0.38、面積因子λ2=0.05、模型更新參數(shù)NS=5,丟失判斷不可靠目標(biāo)數(shù)Nt=10,懲罰因子η為0.05,外觀模型置信度閾值θ為0.5,候選目標(biāo)個(gè)數(shù)k大小設(shè)置為10,搜索目標(biāo)區(qū)域?yàn)檎叫螀^(qū)域,其他參數(shù)與ECO原文保持一致.
本實(shí)驗(yàn)采用了OTB-2015[14]中的精確度圖(Precision Plot)和成功率圖(Success Plot)兩種評(píng)價(jià)方法作為定量評(píng)價(jià)指標(biāo).精確度圖為跟蹤目標(biāo)中心位置誤差CLE小于20個(gè)像素的幀數(shù)占總跟蹤幀數(shù)的百分比;成功率圖為重疊率OR大于給定閾值R0=0.5的幀數(shù)占跟蹤序列總幀數(shù)的百分比.中心位置誤差和重疊率的定義分別為,
(18)
(19)
本實(shí)驗(yàn)采用精確度圖和成功率圖的一次通過評(píng)估(One-PassEvaluation,OPE)方法評(píng)估改進(jìn)后算法性能.利用OTB-2015數(shù)據(jù)集提供的29種算法和KCF[7]、ECO[10]、TLD[12]、DSST(DiscriminativeScaleSpaceTracking)、fDSST(FastDiscriminativeScaleSpaceTracker)[17]、CN(ColorNames)[18]、Staple(SumofTemplateAndPixel-wiseLEarners)[19]、LCT(Long-termCorrelationTracking)[20]等37個(gè)跟蹤算法進(jìn)行性能比較.為便于觀察,本文僅在精度圖和成功率圖上顯示前10種跟蹤算法的結(jié)果.
圖5 OPE精確度圖和成功率圖Fig.5 Precision and Success plot of OPE
圖5是10種排名靠前的算法在100組視頻上的總精確度圖和成功率圖,從圖5中看出改進(jìn)的算法的精確度和成功率分別為87.9%和79.9%,相對(duì)于ECO的83.8%和76.3%分別提高了4.1%和3.6%,改進(jìn)的ECO算法在37種算中精確度和成功率排名第一.
表1 9種算法平均重疊率、中心位置誤差和速度Table 1 OR,CLE and fps of 9 tracking algorithms
表1列出了本文算法與排名靠前的9種算法的平均重疊率、中心位置誤差和速度比較結(jié)果.通過和原始ECO算法對(duì)比,速度下降了3.9fps,平均重疊率和中心位置誤差分別提高了3%和7.6pix.改進(jìn)的ECO算法在100組視頻序列中平均速度為46.5fps,滿足算法實(shí)時(shí)性要求.因此,本文算法引入的遮擋檢測(cè)機(jī)制和重檢測(cè)模塊能很好的解決目標(biāo)遮擋和出視野情況下造成的跟蹤失敗問題,提高了目標(biāo)跟蹤精度,使目標(biāo)跟蹤算法具有更高的魯棒性.
圖6展示了8種不同算法在測(cè)試集上的跟蹤結(jié)果,其中包含的挑戰(zhàn)因素有遮擋、出視野、尺度變化、快速移動(dòng)、運(yùn)動(dòng)模糊等挑戰(zhàn)因素.本節(jié)定性地對(duì)比分析算法在不同場(chǎng)景中的跟蹤效果.
4.2.1 抗遮擋能力
jogging-2序列顯示了改進(jìn)后算法的抗遮擋能力,目標(biāo)在跟蹤過程中被遮擋,基于相關(guān)濾波技術(shù)的KCF等算法在第65幀左右發(fā)生漂移,DSST算法追蹤精度有所下降.ECO算法跟蹤效果較好,只有本文算在給出目標(biāo)位置估計(jì)的同時(shí)對(duì)目標(biāo)尺寸進(jìn)行自適應(yīng)更新.
4.2.2 出視野重定位
長期跟蹤算法在具有超出視野因素的數(shù)據(jù)集上代表性跟蹤結(jié)果.在數(shù)據(jù)集Bird1中,目標(biāo)經(jīng)歷了完全遮擋并在視野中消失超出視野(128-186幀)、且外觀變化嚴(yán)重,ECO算法在第128幀之后就一直跟蹤失敗.在第186幀目標(biāo)重新回到視野中,由于加入重定位組件,能夠重新確定目標(biāo)的位置,繼續(xù)進(jìn)行追蹤.由于ECO算法沒有重定位模塊,當(dāng)目標(biāo)超出視野一段時(shí)間后再次返回視野時(shí),無法重新定位目標(biāo)的位置而跟蹤失敗.
圖6 8種算法不同測(cè)試視頻上的部分跟蹤結(jié)果Fig.6 Partial tracking results on video of 8 different algorithms
4.2.3 其他挑戰(zhàn)因素下的魯棒性
由于本文算法改變了外觀模型和尺度模型更新策略,在尺度變化、快速移動(dòng)、運(yùn)動(dòng)模糊等挑戰(zhàn)因素下的魯棒性均有所提高.以Trellis序列為例,第20幀以前各算法均有較高魯棒性,87幀以后KCF和DSST算法尺度精度下降,393幀以后隨著目標(biāo)人物臉的角度發(fā)生變化,Struct和TLD發(fā)生漂移,403幀以后,只有本文算法與Staple算法能正確追蹤目標(biāo)位置,其中本文算法追蹤精度最大.
針對(duì)ECO算法不能處理目標(biāo)追蹤過程中的嚴(yán)重遮擋及目標(biāo)出視野問題,本文首先利用檢測(cè)得分函數(shù)和高斯噪聲的特點(diǎn)通過簡單有效的計(jì)算獲取目標(biāo)遮擋狀態(tài),解決了遮擋判別問題,然后利用外觀模型置信度判斷目標(biāo)的可靠性,減少了不確定目標(biāo)對(duì)模型的污染.當(dāng)目標(biāo)長期遮擋或者丟失時(shí),利用融合空間權(quán)重、濾波響應(yīng)得分和最佳伙伴相似性得分來重定位目標(biāo)位置,實(shí)現(xiàn)長期追蹤.在OTB-2015數(shù)據(jù)集上評(píng)估本文算法的性能,通過定性和定量的分析,本文算法性能相對(duì)于傳統(tǒng)ECO算法有了明顯的提高.因此改進(jìn)的算法能有效地解決目標(biāo)遮擋和出視野情況下的目標(biāo)跟蹤問題,實(shí)現(xiàn)長期跟蹤.