何小衛(wèi), 鄭 亮, 鄭忠龍, 賈永超, 吳嬌嬌
(浙江師范大學(xué) 數(shù)理與信息工程學(xué)院,浙江 金華 321004)
目標(biāo)跟蹤是預(yù)測(cè)視頻幀序列中給定的目標(biāo)在后續(xù)視頻幀中出現(xiàn)的位置.目標(biāo)跟蹤領(lǐng)域出現(xiàn)了許多優(yōu)秀的跟蹤算法,但仍敏感于復(fù)雜的現(xiàn)實(shí)環(huán)境,如:尺度變化、遮擋、光照變化、形變、快速移動(dòng)等.因此,設(shè)計(jì)準(zhǔn)確、高效、魯棒的目標(biāo)跟蹤算法仍然是一個(gè)值得持續(xù)關(guān)注的、極具挑戰(zhàn)性的課題.
目標(biāo)跟蹤算法通常可分為兩類:基于生成式的目標(biāo)跟蹤模型和基于判別式的目標(biāo)跟蹤模型.基于生成式的目標(biāo)跟蹤模型直接對(duì)目標(biāo)進(jìn)行外觀建模,然后使用外觀模型與目標(biāo)進(jìn)行比對(duì),找到新一幀中與外觀模型匹配程度最高的區(qū)域(即目標(biāo)位置),從而實(shí)現(xiàn)目標(biāo)跟蹤.基于增量學(xué)習(xí)的目標(biāo)跟蹤算法(IVT)[1],采用自適應(yīng)全局目標(biāo)外觀的生成式模型,對(duì)于處理剛性目標(biāo)運(yùn)動(dòng)的表現(xiàn)很好,但對(duì)目標(biāo)姿態(tài)變化和目標(biāo)出現(xiàn)遮擋極其敏感;視覺跟蹤分解算法[2]將原運(yùn)動(dòng)模型分割成多個(gè)小的圖像塊,這樣可以更好地捕捉運(yùn)動(dòng)中目標(biāo)位置的變化,但其跟蹤速度僅達(dá)到5.7 幀/s,不能滿足在線跟蹤的需求;基于稀疏的目標(biāo)表示模型[3]將目標(biāo)外觀模板與稀疏模板融合,很好地解決了目標(biāo)部分遮擋的問題,但仍然無法處理非剛性目標(biāo)和嚴(yán)重遮擋問題,且算法的復(fù)雜度高,無法滿足實(shí)時(shí)性.基于判別式模型的方法將跟蹤問題看成一個(gè)二元分類問題,是找到區(qū)分目標(biāo)和背景的最好決策,從而實(shí)現(xiàn)對(duì)前景對(duì)象的判定.文獻(xiàn)[4]引入了多實(shí)例學(xué)習(xí)的概念,有效地處理目標(biāo)尺度變化及背景雜波等引起的漂移現(xiàn)象;文獻(xiàn)[5]將壓縮感知引入到目標(biāo)跟蹤中,跟蹤速度達(dá)到64 幀/s;文獻(xiàn)[6]基于結(jié)構(gòu)化輸出SVM提出了目標(biāo)跟蹤算法,利用核化的SVM直接輸出結(jié)果,滿足實(shí)時(shí)性要求.基于判別式模型的目標(biāo)跟蹤算法性能主要取決于分類器的判別性,因此更好地利用訓(xùn)練樣本,得到更精準(zhǔn)的分類器,是此類算法研究的主要方向.
基于相關(guān)濾波的跟蹤器[7-13]近幾年來在目標(biāo)跟蹤領(lǐng)域表現(xiàn)出很好的跟蹤效果和性能.2010年,Bolme[7]首次在跟蹤領(lǐng)域引入相關(guān)濾波,提出了MOSSE,利用信號(hào)的相關(guān)性,計(jì)算視頻序列的當(dāng)前幀不同區(qū)域?qū)τ谇耙粠繕?biāo)的響應(yīng)值,響應(yīng)值最大的區(qū)域被預(yù)測(cè)為當(dāng)前幀目標(biāo)所處的位置.文獻(xiàn)[7]將時(shí)域中卷積操作轉(zhuǎn)換到頻域中的點(diǎn)乘運(yùn)算,大大降低了計(jì)算的復(fù)雜度,算法運(yùn)行速度高達(dá)615 幀/s,但在跟蹤的精度上顯得有些不足(43.1%);CSK[8]采用循環(huán)矩陣的方式進(jìn)行密集采樣,得到在濾波器訓(xùn)練階段所需要的更多負(fù)樣本,更好地適應(yīng)和表達(dá)在不同場(chǎng)景中目標(biāo)位置的變化,同時(shí)利用循環(huán)矩陣可對(duì)角化的性質(zhì),在頻域內(nèi)快速地訓(xùn)練分類器,以保證算法的實(shí)時(shí)性,在精度提升到54.5%時(shí)仍保持189 幀/s的速度;KCF[9]在CSK工作的基礎(chǔ)上,利用HOG算子進(jìn)行特征的提取,采用核技術(shù)將線性不可分的問題映射到核空間,在保證速度的同時(shí)又提高了目標(biāo)跟蹤的精度;DSST[10]引入空間正則分量,根據(jù)空間位置約束相關(guān)濾波系數(shù),利用Gauss-Seidel在線學(xué)習(xí)模型的優(yōu)化策略,在數(shù)據(jù)集上表現(xiàn)出83.8%的高精度,但沒有達(dá)到實(shí)時(shí)性的要求;DeepSRDCF[11]利用非全連接網(wǎng)絡(luò)的特征提取方式使得跟蹤精度達(dá)到84.9%,但算法速度不足1 幀/s;文獻(xiàn)[12]融合HOG與顏色直方圖特征,對(duì)于解決目標(biāo)邊緣形變時(shí)有很好的效果,精度達(dá)到了78.2%,速度達(dá)到67 幀/s;文獻(xiàn)[13]提出多峰檢測(cè)和高置信度選擇性更新目標(biāo)的模型APCE(average peak-to-correlation energy),很好地解決了相似目標(biāo)出現(xiàn)情況下的跟蹤問題,精度達(dá)到了83.9%,速度保持80 幀/s,但是模型敏感于目標(biāo)快速移動(dòng)的情形.基于深度學(xué)習(xí)的目標(biāo)跟蹤[14-16],跟蹤精度非常高,但算法無法達(dá)到實(shí)時(shí)性要求.以上基于相關(guān)濾波的目標(biāo)跟蹤算法,由于搜索區(qū)域的大小固定,僅局限于目標(biāo)所在區(qū)域,所以這些算法容易產(chǎn)生誤判.為了解決以上問題,本文提出一個(gè)自適應(yīng)調(diào)整搜索窗口的相關(guān)濾波模型(RIACF),并有效地利用目標(biāo)周圍的背景信息.
跟蹤目標(biāo)所處環(huán)境對(duì)跟蹤器的性能會(huì)產(chǎn)生很大的影響.假如目標(biāo)所處環(huán)境有大量背景雜波,在跟蹤過程中新一幀圖像將產(chǎn)生污染,導(dǎo)致分類器無法正確分辨目標(biāo)和背景,從而引起跟蹤漂移.對(duì)此,本文基于KCF算法[9]和CACF算法[17]提出一種新的相關(guān)濾波跟蹤器(RIACF),通過采用以下兩點(diǎn)避免漂移現(xiàn)象:抑制目標(biāo)周圍背景信息以突出跟蹤目標(biāo);自適應(yīng)調(diào)整搜索區(qū)域,增加響應(yīng)值匹配的可信度.
以下是RIACF算法的具體描述:在每一幀中,根據(jù)目標(biāo)響應(yīng)值自適應(yīng)調(diào)整目標(biāo)搜索區(qū)域,對(duì)新的搜索目標(biāo)周圍采樣k個(gè)背景塊xi∈Rn,i=1,2,…,k,其相應(yīng)的循環(huán)矩陣是X0,Xi,i=1,2,…,k,這些背景信息塊可以看作是負(fù)樣本用來抑制對(duì)跟蹤目標(biāo)的干擾.顯然,好的濾波器應(yīng)對(duì)目標(biāo)位置有較大的響應(yīng)值,而對(duì)背景信息塊的響應(yīng)值接近于0.本文將傳統(tǒng)相關(guān)濾波的嶺回歸分類問題轉(zhuǎn)變成以下最小化目標(biāo)函數(shù):
(1)
(2)
(3)
式(3)的右邊各項(xiàng)可以通過快速傅里葉變換分別求解:
(4)
(5)
(6)
(7)
在跟蹤目標(biāo)過程中,由于復(fù)雜環(huán)境下固定大小的搜索窗口只能完成目標(biāo)的局部標(biāo)定,所以通常會(huì)導(dǎo)致目標(biāo)的局部特征被錯(cuò)誤地歸類為背景信息,最終導(dǎo)致后序幀目標(biāo)跟蹤失敗.通過實(shí)驗(yàn)發(fā)現(xiàn),在訓(xùn)練濾波器時(shí),通過更新尺度參數(shù)動(dòng)態(tài)地調(diào)整目標(biāo)搜索區(qū)域可以有效地解決此類問題.
考慮到目標(biāo)在受到外界干擾時(shí)才會(huì)引起這種情況,筆者僅在相鄰幾幀目標(biāo)最優(yōu)響應(yīng)值較小時(shí)才會(huì)更新尺度參數(shù)、調(diào)整搜索區(qū)域.假設(shè)第t幀圖像Mt中所有候選區(qū)域響應(yīng)值的平均值為
(8)
計(jì)算連續(xù)兩幀響應(yīng)值的平均值,對(duì)連續(xù)兩幀之間的尺度估計(jì)可以表示為
(9)
為了減少尺度估計(jì)誤差可能帶來的噪聲影響,本文采取對(duì)n個(gè)連續(xù)幀求尺度估計(jì)平均值的方法,使得所求尺度估計(jì)更加穩(wěn)定、可靠,即
(10)
同時(shí),為了避免尺度估計(jì)敏感于過度縮放,利用尺度閾值對(duì)其進(jìn)行約束,即
(11)
式(11)中:smin表示尺度估計(jì)更新下限;smax表示尺度估計(jì)更新上限;S表示尺度更新步長;「*?表示上取整運(yùn)算;?*」表示下取整運(yùn)算;n是連續(xù)幀的數(shù)量;Sm是搜索窗口尺寸;A是輸入圖像尺寸;Ts表示目標(biāo)尺寸.利用相應(yīng)的參數(shù)進(jìn)行尺度更新,最新的尺度估計(jì)值St+1按如下函數(shù)取值:
(12)
式(12)中,參數(shù)λ為尺度因子.考慮上下限閾值,最終尺度估計(jì)值St為
(13)
由得到的最新尺度估計(jì)值St來獲取新的搜索區(qū)域,即
Mt←Mt*St.
(14)
模型更新方案通常采用線性更新方式,相關(guān)濾波模型更新時(shí)用當(dāng)前幀與前一幀的圖像信息,即
(15)
式(15)中:η為學(xué)習(xí)因子;0≤t≤N;Mt為圖像樣本;ωt為濾波器參數(shù).
算法1 RIACF跟蹤算法
輸入:圖像幀信息Mt(t=0,1,…,N),標(biāo)注起始幀目標(biāo)初始位置m0.
輸出:跟蹤每一幀目標(biāo)所處位置mt(t=1,2,…,N).
1)針對(duì)圖像幀M0,根據(jù)式(6)計(jì)算ω0;t=1;
Whilet≤N
3)if最大響應(yīng)值大于閾值(可取先前歷史幀目標(biāo)響應(yīng)平均值)
5)針對(duì)圖像幀Mt,根據(jù)式(6)計(jì)算ωt;
6)t=t+1;
7)利用式(15)更新跟蹤模型計(jì)算下一幀Mt;
8)else
9)利用式(14)更新當(dāng)前幀的搜索窗口Mt;
10)Continue;
11)end if;
12)end Loop
為了驗(yàn)證本文算法的有效性,選擇CVPR-2013[18],OTB-100[19]數(shù)據(jù)集進(jìn)行測(cè)試,并與KCF進(jìn)行比較.實(shí)驗(yàn)平臺(tái)為MATLAB R2010a,實(shí)驗(yàn)均在Intel Core i5-4460 CPU、主頻3.20 GHz、4 G內(nèi)存配置的計(jì)算機(jī)上完成,用于比較的跟蹤器的默認(rèn)參數(shù)設(shè)置與原文獻(xiàn)相同;本文模型的正則化參數(shù)λ1和λ2為0.000 1和25,更新尺度因子λ為0.25,學(xué)習(xí)因子η為0.015.
所有實(shí)驗(yàn)均在CVPR-2013/OTB-100[18-19]數(shù)據(jù)集圖像序列進(jìn)行對(duì)比,主要比較跟蹤精度和算法的運(yùn)行速度.精度指的是跟蹤算法跟蹤的目標(biāo)中心位置與標(biāo)定真實(shí)目標(biāo)的中心位置的平均歐氏距離,在生成的plot圖中一般選用閾值20像素精度值作為參考標(biāo)準(zhǔn);成功率指的是跟蹤算法的目標(biāo)框與真實(shí)標(biāo)定的目標(biāo)區(qū)域重疊面積的大小.算法的運(yùn)行速度在目標(biāo)跟蹤挑戰(zhàn)賽后也作為一個(gè)重要的評(píng)判標(biāo)準(zhǔn),算法的運(yùn)行速度指的是跟蹤器處理圖像序列的平均速度——即每秒處理的幀數(shù).
目標(biāo)跟蹤研究的2個(gè)主要目標(biāo)分別為理想的跟蹤精度和符合實(shí)時(shí)性要求的跟蹤速度.例如:MD-Net[16],C-COT[17]的實(shí)驗(yàn)精度很高,但是處理速度非常慢,無法滿足實(shí)時(shí)性要求;另一類則在跟蹤速度上有很大優(yōu)勢(shì),但其跟蹤精度相對(duì)較低,如CSK[8].對(duì)CVPR-2013/OTB-100[18-19]中所有包含跟蹤挑戰(zhàn)的數(shù)據(jù)圖像序列進(jìn)行計(jì)算和分析.基于相關(guān)濾波的跟蹤器,比如CSK[8],KCF[9],雖然在速度上相比于傳統(tǒng)的跟蹤器有著很大的優(yōu)勢(shì),即實(shí)時(shí)性得到了很好的保證,但精度不高.因此,應(yīng)該更加注重提升這類算法的精度.表1是本文算法RIACF和其他算法的比較結(jié)果.
表1 RIACF與其他跟蹤器之間實(shí)驗(yàn)結(jié)果對(duì)比
在具有尺度變化、形變、平面內(nèi)/外旋轉(zhuǎn)等挑戰(zhàn)的視頻中,如:Blur Body,Freeman 4,Dog等,KCF的跟蹤效果分別是:58.4%/102.79 幀5s-1,53%/487.52 幀5s-1和75.6 %/205.8 幀5s-1;RIACF模型的跟蹤效果分別是:92.2%/37.51 幀5s-1,85.2%/178.62 幀5s-1和98.4%/44.73 幀5s-1.從上面數(shù)據(jù)可以看到,RIACF算法通過對(duì)搜索區(qū)域的自適應(yīng)調(diào)整,有效地提高了KCF在形變、尺度變化及旋轉(zhuǎn)等情形下的跟蹤效果.在跟蹤精度提高的同時(shí),本文算法以犧牲部分速度為代價(jià),保證了RIACF模型目標(biāo)跟蹤的實(shí)時(shí)性要求.而對(duì)于部分遮擋和快速運(yùn)動(dòng)的視頻,如:Human 7,Couple,Deer等,KCF的跟蹤效果分別是:42.7%/143.07 幀5s-1,25.7%/253.84 幀5s-1和81.7%/91.23 幀5s-1;RIACF模型的跟蹤效果分別是:100%/35.48 幀5s-1,45.7%/58 幀5s-1和85.9%/24.7 幀5s-1.RIACF模型在處理目標(biāo)運(yùn)動(dòng)模糊的情況下也有較好的魯棒性.
如圖1(a)所示,從KCF模型的跟蹤效果圖中可以看出,跟蹤目標(biāo)運(yùn)動(dòng)到綠色搜索框的邊界時(shí),發(fā)生嚴(yán)重遮擋,導(dǎo)致模型跟蹤失敗.圖1(b)為本文RIACF模型的跟蹤效果.由于RIACF模型的目標(biāo)響應(yīng)值較小,所以本文采用搜索尺度更新策略,擴(kuò)大目標(biāo)搜索區(qū)域.圖1(b)中藍(lán)色區(qū)域?yàn)樾碌哪繕?biāo)搜索區(qū)域.通過擴(kuò)大目標(biāo)搜索區(qū)域和抑制目標(biāo)周圍局部背景信息,實(shí)現(xiàn)了目標(biāo)的準(zhǔn)確跟蹤,很好地解決了圖1(a)中出現(xiàn)的跟蹤失敗問題.
(a)KCF模型在Jogging視頻序列中的跟蹤表現(xiàn)
(b)RIACF模型在Jogging視頻序列中的跟蹤表現(xiàn)
圖2 RIACF與其他跟蹤算法在OTB數(shù)據(jù)集視頻中的跟蹤表現(xiàn)對(duì)比
從直觀感覺上,圖2給出了幾種優(yōu)秀算法(Staple[12],KCF[9],DSST[20],CSK[8])對(duì)數(shù)據(jù)集OTB-100[19]中Jogging,Dog和Blur-body視頻的比較結(jié)果,可以明顯看出RIACF模型的跟蹤算法有較好的跟蹤表現(xiàn).
如圖3和圖4所示,本文的算法RIACF在數(shù)據(jù)集CVPR-2013[18]中與最優(yōu)算法Staple[12]的表現(xiàn)相差無幾,在OTB-100[19]中與Staple效果接近,遠(yuǎn)遠(yuǎn)好于KCF的表現(xiàn).圖5和圖6分別為4種跟蹤挑戰(zhàn):形變(deformation)、目標(biāo)離開視野(out of view)、遮擋(occlusion)、快速移動(dòng)(fast motion)情形下的跟蹤成功率表現(xiàn),對(duì)于克服光照變化(illumination variation)、運(yùn)動(dòng)污染(motion blur)等挑戰(zhàn),本文算法相比于其他算法也有著很好的效果.
(a)CVPR-2013數(shù)據(jù)集精度圖 (b)CVPR-2013數(shù)據(jù)集成功率圖
(a)OTB-100數(shù)據(jù)集精度圖 (b)OTB-100數(shù)據(jù)集成功率圖
(a)形變 (b)目標(biāo)離開視野
(a)遮擋 (b)快速移動(dòng)
為了解決目標(biāo)遮擋、非剛性物體運(yùn)動(dòng)形變及低像素所帶來的跟蹤漂移現(xiàn)象,本文通過自適應(yīng)搜索目標(biāo)區(qū)域結(jié)合抑制目標(biāo)周圍的背景信息,很大程度上降低了跟蹤時(shí)背景對(duì)于目標(biāo)的干擾,使本文模型的跟蹤效果相比于基準(zhǔn)跟蹤器有了很大提升,算法運(yùn)行速度仍可滿足實(shí)時(shí)性要求.對(duì)于解決目標(biāo)消失后重新回到跟蹤區(qū)域的挑戰(zhàn),將考慮引入檢測(cè)器的方法重新檢測(cè)目標(biāo)所在區(qū)域,進(jìn)而提升跟蹤效果.