吳 捷,馬小虎
(1.泰州職業(yè)技術(shù)學(xué)院信息技術(shù)學(xué)院,江蘇 泰州 225300;2.蘇州大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 蘇州 215006)
目標(biāo)跟蹤是計算機(jī)視覺領(lǐng)域的一個重要研究分支,其在視頻監(jiān)控、行為分析等領(lǐng)域都有著十分廣泛的應(yīng)用[1]。盡管諸如ECO 等一系列優(yōu)秀的跟蹤算法相繼涌現(xiàn),但由于前景和背景變化等諸多復(fù)雜因素的影響,設(shè)計一個魯棒且高效的跟蹤器仍然是一個艱難的任務(wù)。
近年來,基于相關(guān)濾波的跟蹤算法(CF)取得了很大的進(jìn)展[2-4]。通常,基于CF 的跟蹤器利用大量周期性位移對樣本進(jìn)行學(xué)習(xí),并將空間域的相關(guān)運算轉(zhuǎn)化為頻域的運算以降低計算復(fù)雜度,提高跟蹤速度。然而,早期基于CF 的方法在循環(huán)移位采樣過程中,在邊界位置上總是會出現(xiàn)周期性的重復(fù),使得一部分不真實的樣本被用于CF 模型的訓(xùn)練,即邊界效應(yīng)問題。使用余弦窗技術(shù)可以弱化邊界效應(yīng)的影響,但是同樣會屏蔽有用的背景信息,降低跟蹤器的判別力。2015 年,Danelljan 等[5]提出了基于空間正則化約束的相關(guān)濾波(SRDCF)跟蹤算法,為解決這類問題提供了很好的思路。但是該算法通過高斯-賽德爾方法優(yōu)化求解目標(biāo)函數(shù),跟蹤速度極慢,無法滿足實際應(yīng)用需要。2017 年,Danelljan 等基于C-COT[6]又提出了有效卷積運算(ECO)跟蹤算法[7],在特征提取方面使用PCA 技術(shù)降低特征維度,采用高斯混合模型(GMM)簡化了訓(xùn)練集且保證樣本多樣性,并改進(jìn)模型更新策略,但出現(xiàn)遮擋時會發(fā)生模型漂移的現(xiàn)象。2018 年,Li 等[8]提出了時空正則化(STRCF)跟蹤算法,該算法在SRDCF的基礎(chǔ)上,引入時間正則化項,并且無需保留以往樣本信息,可以實現(xiàn)實時跟蹤,僅用純手工特征就能達(dá)到很好的跟蹤效果。但其時間權(quán)重因子是固定的,在跟蹤過程中不會發(fā)生變化,無法充分利用不同時間跟蹤目標(biāo)的多樣性信息,且處理長時遮擋的效果不佳。
針對上述問題,提出了一種自適應(yīng)時間權(quán)重學(xué)習(xí)的目標(biāo)跟蹤算法。利用峰值旁瓣比在線動態(tài)更新時間權(quán)重因子,另外在跟蹤器中嵌入遮擋判斷模塊用于評估當(dāng)前幀的跟蹤效果,根據(jù)結(jié)果來判斷是否對濾波器的樣本模型予以更新。在OTB-100 上的測試表明,和7 種達(dá)到優(yōu)秀的相關(guān)濾波類算法相比,本文提出的改進(jìn)算法可以實現(xiàn)更精準(zhǔn)的目標(biāo)跟蹤。
STRCF 算法的主要思想是將時間正則化方法引入到單圖像SRDCF 中,得到時空正則化相關(guān)濾波器。其濾波器系數(shù)f 的求解公式為:
可以引入一個輔助變量g 和步長參數(shù)γ,且令g=f,利用ADMM(交替方向乘子算法)[9]對式(1)進(jìn)行求解。則式(1)可以表述為:
將式(3)劃分為3 個子問題迭代求解,即:
將式(4)中第1 行公式進(jìn)行離散傅里葉變換并取導(dǎo)數(shù)為0,可求得閉合形式的解,再進(jìn)行逆傅里葉變換即可得到濾波器系數(shù)f。筆者經(jīng)過推導(dǎo)同樣求出參數(shù)g 和γ,并利用f 和g 求解h,具體公式推導(dǎo)可見原文。
利用求得的濾波器系數(shù)可以計算得到響應(yīng)圖:
響應(yīng)圖中值最大的點標(biāo)記為當(dāng)前目標(biāo)位置,響應(yīng)最大值目標(biāo)模板對應(yīng)的尺度作為目標(biāo)估計尺度。
基于STRCF 提出了自適應(yīng)時空正則項跟蹤算法。為了提高算法運行速度,沒有使用深度特征,僅選擇HOG、CN 及Gray 共3 種手動特征,利用峰值旁瓣比動態(tài)設(shè)置式(1)中的時間權(quán)重因子,并在跟蹤器中嵌入遮擋檢測模塊以提升跟蹤器處理遮擋的能力。
STRCF 算法在SRDCF 基礎(chǔ)上引入時間正則項記錄相鄰兩幀目標(biāo)的變化信息,可以起到平滑多通道相關(guān)濾波的作用,進(jìn)而在減少訓(xùn)練樣本數(shù)目的同時仍可以保持較強(qiáng)的魯棒性。但STRCF 在目標(biāo)跟蹤過程中將時間權(quán)重因子設(shè)為固定值15,沒有充分利用不同時間跟蹤目標(biāo)的多樣性特征。為了更加準(zhǔn)確地設(shè)置時間權(quán)重因子,本文分別使用10、12、15 這3種時間權(quán)值隨機(jī)測試了10 組視頻的跟蹤成功率。從表1 可以看出,將時間權(quán)值設(shè)置較大在很多場景下并不能獲得最優(yōu)結(jié)果。一般來說,當(dāng)跟蹤模型可靠性較高時,可以增大時間權(quán)重因子以更快地響應(yīng)變化;相應(yīng)地,當(dāng)跟蹤可靠性較低時應(yīng)當(dāng)適當(dāng)減小時間權(quán)重因子。
表1 不同時間權(quán)值的跟蹤成功率對比
本文引入峰值旁瓣比作為跟蹤模型可靠性的度量因子,在線動態(tài)計算并更新時間權(quán)重因子。下面首先給出峰值旁瓣比的定義:
設(shè)第t 幀的特征響應(yīng)圖為ft,則其峰值旁瓣比(PSR)定義為:
其中,max 為求最大值函數(shù),μt、σt分別為特征響應(yīng)圖的均值和方差。峰值旁瓣比主要體現(xiàn)跟蹤的可靠性。因此,峰值旁瓣比和時間權(quán)重因子應(yīng)該成正比關(guān)系,當(dāng)峰值旁瓣比較大時,說明目標(biāo)定位的可靠性較高,增大時間權(quán)重因子可以加快模型學(xué)習(xí)速度。
本文通過下式計算得到時間權(quán)重因子μ:
視覺目標(biāo)在運動過程中可能被靜止的物體或者運動的物體遮擋,如何進(jìn)行遮擋檢測一直是目標(biāo)跟蹤領(lǐng)域的一大難點。和已有的跟蹤算法相比,STRCF 在跟蹤模型中引入了時間正則化方法,可以有效防止跟蹤模型腐化,對短時遮擋具有較強(qiáng)的魯棒性,但在遇到長時遮擋時仍會出現(xiàn)跟蹤漂移的情況。
已有的文獻(xiàn)主要使用濾波器最大響應(yīng)值、平均峰值相關(guān)能量[10]等指標(biāo)來檢測遮擋是否發(fā)生。其中,文獻(xiàn)[11]利用濾波器最大響應(yīng)值來觸發(fā)隨機(jī)蕨叢分類器進(jìn)行遮擋判斷,并基于滑動窗口機(jī)制進(jìn)行目標(biāo)檢測,算法的時間復(fù)雜度較高,無法做到實時跟蹤。文獻(xiàn)[12]通過計算目標(biāo)的峰值旁瓣比檢測目標(biāo)是否丟失,并利用Kalman 算法作為目標(biāo)遮擋后搜索目標(biāo)的策略,該方法在非線性環(huán)境下魯棒性并不強(qiáng)。
本文通過將當(dāng)前峰值旁瓣比與歷史峰值旁瓣比極值及均值分別做比較,設(shè)定滿足式(5)條件即認(rèn)為發(fā)生了遮擋,停止對目標(biāo)位置的更新,但仍然利用時間權(quán)重因子保持對跟蹤模型的更新。測試結(jié)果表明,該方案可以提升跟蹤器處理長時遮擋的能力。
為了對本文提出的算法進(jìn)行性能測評,利用benchmark 平臺進(jìn)行了實驗并與STRCF、ECO_HC、BACF[13]、Staple_CA[14]、fDSST[15]、SAMF[16]、KCF[17]這7 種優(yōu)秀的相關(guān)濾波算法進(jìn)行對比分析。實驗的硬件環(huán)境為Inter(R)Xeon(R)E3-1225(3.3 GHz)的CPU 和16GB 內(nèi)存,軟件環(huán)境為Matlab 2016b。本文算法所使用的主要實驗參數(shù)為:遮擋閾值λ1=0.56,λ2=0.35,其他參數(shù)和STRCF 原文一致。接下來將從定性比較和定量比較兩個主要方面來分析本文算法的魯棒性和有效性。
定量分析采用以一次通過評估(One-Pass Evaluation,OPE)運行得到距離精度(DP)和重疊成功率(OP)作為主要評價指標(biāo)。
所用公開數(shù)據(jù)集為OTB-100[18],其由100 個完全標(biāo)注的視頻序列組成,這些視頻序列包含遮擋、形變、旋轉(zhuǎn)等11 種典型干擾。
下頁圖1 是8 種算法在100 組視頻上的總精確度圖和成功率圖,從圖1 中看出本文提出的改進(jìn)算法的精確度和成功率分別為0.880 和0.814,精確度和成功率均排名第一。相對于ECO-HC 算法,精確度和成功率分別提升了4.1 豫和5.4 豫,和本文的基準(zhǔn)算法STRCF 相比,改進(jìn)算法在精確率和成功率方面分別提高了2.6 豫和2.0 豫,證明了改進(jìn)算法性能較好。
圖1 8 種算法在OTB-100 的距離精度曲線圖和成功率曲線圖
為更加直觀評價本文算法在復(fù)雜環(huán)境下的性能表現(xiàn),表2 和表3 給出了本文算法與其他7 種目標(biāo)跟蹤算法在OTB-100 基準(zhǔn)數(shù)據(jù)集中11 個具有挑戰(zhàn)性的屬性上的精確度圖和成功率圖統(tǒng)計數(shù)據(jù),以粗斜體標(biāo)識單個屬性的最優(yōu)結(jié)果。本文算法在10種屬性的精確度圖和成功率圖中排在第1 位,只有低分辨率(LR)屬性排在第2 位,且全部優(yōu)于STRCF算法,其中在出視野(OV)干擾下跟蹤的成功率提升了10.4 豫。本文算法處理遮擋(OCC)的成功率相比STRCF 算法提升了3.0 豫,說明增加的遮擋檢測機(jī)制有效增強(qiáng)了遮擋情形下算法對目標(biāo)的跟蹤能力。一系列對比數(shù)據(jù)有力地證明了本文改進(jìn)算法的合理性及有效性。
表2 8 種算法在不同場景屬性下的DP 值
表3 8 種算法在不同場景屬性下的OP 值
圖2 給出了本文算法與STRCF、ECO_HC、BACF 等7 種算法在6 個具有挑戰(zhàn)性的視頻序列的對比結(jié)果,這6 個視頻依次為Biker、DragonBaby、Diving、Girl2、Bird1 和Soccer。下面進(jìn)行定性分析:
圖2 8 種算法在6 個視頻序列的跟蹤結(jié)果比較
1)Biker、DragonBaby、Diving 這3 組視頻序列存在旋轉(zhuǎn)、變形、快速變化等干擾因素。本文算法采用自適應(yīng)時間權(quán)重因子,在時間意義上可以起到更好的平滑濾波作用,相比STRCF 算法可以更精確地定位目標(biāo)。
2)Girl2 視頻序列存在完全遮擋且遮擋物處于移動狀態(tài)。在第110 幀時目標(biāo)被完全遮擋,遮擋結(jié)束后包括STRCF 在內(nèi)的6 種算法被背景干擾導(dǎo)致出現(xiàn)漂移,ECO_HC 采用了周期更新模型的策略可以正確跟蹤,本文算法因為加入了遮擋檢測機(jī)制,同樣可以準(zhǔn)確跟蹤目標(biāo)。
3)在Bird1 和Soccer 序列中存在長時遮擋、相似背景干擾、尺度變化、變形等多種復(fù)雜因素的干擾。Bird1 序列中,125 幀時目標(biāo)逐漸被云霧遮擋,185 幀結(jié)束長時遮擋時其他7 種算法均丟失目標(biāo),只有本文算法可以一直跟蹤到最后。Soccer 序列中,STRCF、ECO_HC 等算法在第176 幀時均發(fā)生漂移,只有本文算法和fDSST、KCF 能準(zhǔn)確跟蹤,相比fDSST 和KCF,本文的算法目標(biāo)定位及尺度估計更加精確。
跟蹤速度也是評價算法的一個重要指標(biāo),本文算法在STRCF 基礎(chǔ)上,增加了時間權(quán)重因子計算及遮擋處理模塊,因此,算法跟蹤速度略慢于STRCF的29.30 幀/s,但仍然達(dá)到了28.61 幀/s,即使在CPU 上也完全可以實現(xiàn)實時跟蹤。
由于STRCF 時間權(quán)重因子固定且在目標(biāo)遮擋嚴(yán)重時會跟蹤失敗,因此,本文提出了自適應(yīng)時間權(quán)重的改進(jìn)時空正則項跟蹤算法。利用峰值旁瓣比動態(tài)更新時間權(quán)重因子,并設(shè)定多條件判斷目標(biāo)遮擋情況,從而決定模型更新策略,提升了跟蹤器處理各種復(fù)雜場景的能力。在OTB-100 數(shù)據(jù)集上評估本文算法的性能,跟蹤精度達(dá)到0.880,成功率為0.818,相對于STRCF 算法有了一定幅度的提高,超過目前已有的相關(guān)濾波類算法。將來的工作在于進(jìn)一步優(yōu)化跟蹤模型,提升算法性能。