吳 捷,馬小虎
(1.泰州職業技術學院 信息技術學院,江蘇 泰州 225300; 2.蘇州大學 計算機科學與技術學院,江蘇 蘇州 215006)
視覺目標跟蹤[1]是計算機視覺中的一個重要研究方向,在人機交互、交通控制等領域都有著廣泛的應用。盡管近十年來目標跟蹤已經取得了重大進展,但目前依然沒有一種方法能夠完美應對快速運動、變形、遮擋、光照變化等諸多復雜因素的影響。在各類目標跟蹤算法中,相關濾波(CF)類方法因其準確度高、實時性好的特性成為當前的研究熱點[2]。
BOLME等提出的MOSSE算法是相關濾波技術在目標跟蹤領域的首次應用,引起很大反響。基于此,CSK、KCF/DCF[3]、CN等一系列經典算法相繼產生。但以上算法采用固定大小的跟蹤框進行跟蹤,當目標的大小發生變化時跟蹤精度不高,甚至會導致跟蹤失敗。
浙大的Yang Li融合HOG和CN特征,并引入包含7個尺度的尺度池技術提出了SAMF算法,取得了較好的跟蹤效果。Martin Danelljan等引入尺度濾波器先后提出了DSST和fDSST[4]算法,實現了對尺度的精準估計。Bertinetto等[5]結合相關濾波模板類特征(HOG)和顏色直方圖提出Staple算法,在具有較高準確率的同時跟蹤速度可達80幀/s。
但是相關濾波類方法也存在明顯缺陷,主要是由于余弦窗(用來抑制邊界效應)和搜索區域的限制,導致CF模板無法學到更多的背景信息,當目標發生比較大的形變或者遇到復雜背景干擾的時候容易跟丟。
針對上述問題,文獻[6]提出一個統一框架——CACF來顯式地學習目標周圍的背景信息,這種框架可以廣泛地應用到基于CF的多種跟蹤算法上,但該框架沒有遮擋處理機制。
本文將CACF方法應用到Staple算法中,動態設置直方圖分類器與相關濾波器的融合系數,并在Staple跟蹤器中嵌入校驗機制,用于評估當前幀的跟蹤效果,根據校驗結果來判斷是否對濾波器的樣本模型予以更新并根據PSNR值自適應地設置學習率。在OTB-2015上的測試結果表明,和主流的相關濾波類算法相比,本文提出的改進算法可以實現更精準的目標跟蹤。
Staple跟蹤算法的主要創新之處在于將基于HOG 特征的DSST和采用顏色直方圖特征的DAT[7]算法進行了融合。HOG特征對光照變化等具有較強的魯棒性,而顏色直方圖對于目標的形變不敏感。因而Staple兼具兩者的優點,跟蹤的準確度較高。
為了保持算法的實時性,Staple算法通過解決兩個獨立的嶺回歸問題來訓練模型,其訓練過程可以簡化為(具體公式推導見原文)
(1)
(2)
其中,t為幀數;h、β分別為位置濾波器和顏色直方圖的模型參數;λtmpl和λhist分別為濾波器模型和直方圖模型中的正則化系數。
Staple算法分別使用相關濾波器和直方圖分類器對候選樣本進行預測,得到各自的響應輸出,并對2種響應按照下式采用固定權重進行融合
f(x)=γtmplftmpl(x)+γhistfhist(x)
(3)
得到對應的response map,再找到response map中最大值的位置即為目標所在的位置,重復這個步驟直至跟蹤結束。
得到新一幀的目標位置后,使用線性插值的方法對1.1中的2個模型分別進行更新

(4)

(5)
其中,式(4)表示對相關濾波器進行更新,式(5)用來對目標和背景直方圖進行更新,其中的相關參數推導可見原文。
在CF算法中使用余弦窗來限制邊界效應,但是余弦窗將圖像塊的邊緣區域像素全部設置為0,對于分類器而言非常重要的背景信息被大量過濾掉了,因此當目標發生比較大的形變或者復雜背景干擾的時候,容易導致跟蹤失敗。為了解決這一局限性,Mueller等在CVPR2017上提出了一個考慮全局上下文信息的框架,我們稱之為CACF框架,用于顯式學習目標周圍的背景信息,這種框架可以廣泛地應用到絕大多數基于CF的跟蹤算法上。
如圖1所示,和傳統的CF方法相比,CACF主要改進之處在于:在訓練階段,作者在目標的上下左右4個方向各采集一個Context-Area,在訓練過程中,將中間的標記為正樣本,將附近的上下文區域標記為負樣本進行模版的訓練。檢測階段與傳統CF一樣。

圖1 CACF采樣區域
傳統的CF的目標函數如式(6)
(6)
改進后的CACF算法的目標函數如下
(7)
與傳統的CF的目標函數相比,增加了一個懲罰項,使得要訓練的模版與背景做相關時響應盡量小。作者通過一系列公式推導證明這個新方程具有封閉解。
本文改進算法以Staple算法為基礎,引入CACF處理框架,并從3個方面進行了綜合改進。
Staple算法以固定系數α線性融合相關濾波器與直方圖分類器,即
response=(1-α)·response_cf+α·response_pwp
但在實際跟蹤過程中,兩種跟蹤模型的相對準確度并不是恒定不變的,采用固定權重融合往往無法獲得最優的跟蹤結果。
針對這個問題,本文基于平均峰值相關能量[8](average peak-to-correlation energy,APCE)設計了一種自適應系數融合方法,可以充分發揮兩種模型各自的優勢。
下面首先給出APCE的定義:
大小為MN的檢測區域與模型的響應結果的APCE計算方法為
(8)
其中,gmin表示響應結果的最小值,gm,n表示在(m,n)處的響應結果。APCE可以反映響應結果的波動程度,APCE越大跟蹤結果越穩定。
如式(9),本文針對每一幀視頻圖像分別計算其直方圖分類器與相關濾波器的APCE值,并得出其比值
rate=APCEpwp/APCEcf
(9)
然后通過下式計算得到融合系數α
α=0.4/(1+exp(1-rate))
(10)
如何判斷目標發生遮擋是視覺跟蹤領域的一大挑戰,常用的評價指標包括最大響應值、峰值旁瓣比[9]、平均峰值相關能量以及CSR-DCF中提出的空域可靠性[10]。
通過大量實驗發現,遮擋判斷非常復雜,如果只使用一種度量因子或一種限定條件極易出現“誤判”,會將一些未發生遮擋的場景誤判為遮擋進行處理,反而造成跟蹤精度的下降。本文綜合使用平均峰值相關能量、峰值信噪比(peak signal to noise ratio,PSNR)和相鄰幀運動位移量3種因子并設定多個限定條件作為遮擋判斷的依據。下面首先給出峰值信噪比和運動變化量的定義。
峰值信噪比是一種在數字圖像領域廣泛使用的評價指標,體現圖像之間的差異大小。PSNR計算方法如下式
(11)
其中,MSE是兩幀圖像之間的均方誤差。
本文通過計算相鄰幀指定大小的目標圖像的PSNR值來衡量目標變化情況。
運動變化量指的是前一幀目標中心與計算出的當前幀目標位置中心的距離,計算公式如下
(12)
其中, (xt,yt) 表示預測的當前幀的目標中心點的坐標, (xt-1,yt-1) 表示前一幀中目標中心點的坐標。通常情況下,相鄰幀的運動變化量在一定范圍內,如果運動變化量過大,則跟蹤可能發生了漂移。
本文設計的跟蹤器設定滿足以下兩種情況之一的即認為發生了遮擋,跟蹤器停止對模型的更新

在Staple算法中,跟蹤模型的學習率為固定數值。而在實際跟蹤過程中,目標的變化率并不是一成不變的,當PSNR值較小時,說明相鄰兩幀圖像差異較大,需要增大學習率;而PSNR值較大時,說明相鄰兩幀圖像相似度較高,可以減小學習率。因此借助PSNR值,本文對學習率做出以下調整

實驗使用Matlab2016b作為軟件測試平臺,使用內存大小為16 GB,CPU型號為Inter(R)Xeon(R)E3-1225(3.3 GHz)的PC機作為硬件平臺。本文算法中所使用的主要實驗參數為:遮擋閾值λ1=4.8 (灰度圖像取值2.5),λ2=0.55,λ3=0.3,λ4=19; 距離因子d=40,其它參數和Staple原文一致。為更好地判斷改進算法的性能,分別從定量、定性兩方面與Staple、SAMF等7種經典的相關濾波算法進行綜合對比分析。
定量分析采用以一次通過評估(one-pass evaluation,OPE)運行得到距離精度(DP)和重疊成功率(OP)作為主要評價指標。
使用OTB-2015[11]作為測試視頻序列。OTB-2015是OTB2013的擴展,包含26個灰度視頻序列和74個彩色視頻序列。這些視頻序列包含遮擋、形變、旋轉等11種典型干擾。
圖2是8種算法在100組視頻上的總精確度圖和成功率圖,從圖2中看出本文提出的改進算法的精確度和成功率分別為0.818和0.731,精確度和成功率均排名第一。和Staple算法相比,改進算法在精確率和成功率方面分別提高了4.3%和4.6%,驗證了改進算法的有效性。

圖2 8種算法在OTB-2015的距離精度曲線圖和成功率曲線
為更加直觀評價本文算法在復雜環境下的性能表現,表1和表2給出了本文算法與其它4種目標跟蹤算法在OTB-2015基準數據集中11個具有挑戰性的屬性上的精確度圖和成功率圖統計數據,單個屬性的最優結果以粗斜體標識。本文算法在11種屬性的精確度圖中有9項排在第1位,另兩項排在第2位;在成功率圖中有6項排在第1位,其中處理遮擋(OCC)的成功率相比Staple算法提升了7.4%。一系列數據驗證本文所提算法綜合性能更優,可以有效處理遮擋等挑戰。
在圖3中給出本文提出的算法與Staple、SAMF、fDSST等7種算法在6個具有代表性的視頻序列中的定性比較,這6個視頻為Jogging-2、Girl2、Soccer、DragonBaby、bolt2、和Jumping。

表1 5種排名靠前算法在不同場景屬性下的DP值

表2 5種排名靠前算法在不同場景屬性下的OP值

圖3 8種算法在6個視頻序列的跟蹤結果比較
(1)Jogging-2和Girl2是用來做遮擋測試的經典視頻序列,在這兩組序列中均存在全局遮擋。Jogging-2視頻中第52幀目標被完全遮擋,包括Staple在內的其它6種算法因為沒有遮擋處理機制而丟失目標,只有本文算法與SAMF算法能正常跟蹤而本文算法跟蹤結果更加準確;Girl2視頻中第110幀時目標被完全遮擋,遮擋結束后其它7種算法因跟蹤器受“污染”而導致跟蹤失敗,本文算法因為有遮擋處理機制可以一直準確跟蹤目標。
(2)在Soccer和DragonBaby序列中,存在遮擋、背景相似干擾、尺度變化等多種復雜因素的干擾。Soccer序列中,DSST、SAMF、Staple等算法在第296幀時均發生漂移,只有本文算法和fDSST能準確跟蹤,相比fDSST,本文的算法跟蹤更為精確。從DragonBaby序列的第40幀和85幀可以看出,只有本文算法的目標定位和尺度估計是準確的。
(3)在bolt2和Jumping視頻序列中,存在快速運動、運動模糊等干擾,其它6種算法均發生嚴重漂移,只有本文算法和fDSST算法能正確跟蹤。
跟蹤速度也是評價算法的一個重要方面,8種算法在OTB-2015視頻序列上運行的平均速度見表3。由表3可見,本文算法在引入了CACF框架及增加遮擋判斷等模塊后跟蹤速度仍然達到了34.55幀/s,可以滿足實時跟蹤的需求。
針對當前相關濾波類算法無法學習更多背景信息及不能處理目標跟蹤過程中的遮擋等問題,本文結合CACF及Staple算法,并引入平均峰值相關能量、相鄰幀運動位移量和峰值信噪比等指標設定多條件判斷目標遮擋情況,從而決定是否更新模型。另外,通過對學習率的動態調整,進一步提升了跟蹤器處理其它復雜場景的能力。在OTB-2015 數據集上評估本文算法的性能,通過定性和定量的分析,本文算法性能相對于Staple算法有了明顯的提高。將來的工作在于考慮結合深度學習算法進一步提升算法性能。

表3 8種算法在OTB-2015上的運行速度