張 杰,常天慶,郭理彬,張 雷,馬金盾
陸軍裝甲兵學院 兵器與控制系,北京100072
目標跟蹤是計算機視覺中十分重要并且極具挑戰的研究課題之一,未來在視頻監控、智能駕駛、智能家居和軍事航天等領域都具有較大的應用前景[1-2]。經過幾十年的發展,目標跟蹤問題已經取得了巨大的發展,尤其是近十年,基于相關濾波的跟蹤方法和基于深度學習的圖像表示使得目標跟蹤問題進入了發展的快車道[3-5]。雖然目標跟蹤已經取得了驕人的成績,已經能夠解決一些問題,但是目標遮擋、光照變化、目標形變等因素依舊制約著跟蹤算法的性能,這也是目前跟蹤領域急需解決的難點問題[6]。
基于相關濾波的跟蹤方法具有較高的跟蹤速率,受到研究者的廣泛關注[7]。基于相關濾波的跟蹤方法是通過提取當前幀目標及其周圍區域圖像特征,通過循環采樣實現訓練樣本的擴展,通過傅里葉變換將圖像特征由空域轉換到頻域,并通過求解嶺回歸方程得到濾波器[8]。將濾波器與下一幀圖像待檢測區域進行相關運算得到目標響應,由最大響應值位置確定目標位置。基于相關濾波跟蹤方法的框架,大量的主流跟蹤算法提取圖像的方向梯度直方圖(Histogram of Oriented Gradient,HOG)特征進行跟蹤[8-10]。這些使用方向梯度直方圖特征的跟蹤算法跟蹤雖然在跟蹤性能上表現較好,但是濾波器嚴重依賴于目標的空間信息,當目標發生快速變化時跟蹤器的跟蹤效果便會變差。
2016年Bertinetto等提出了互補性實時跟蹤算法(Staple),該算法分別使用具有空間信息的梯度方向直方圖特征和具有全局統計的顏色直方圖特征分別構建了兩個獨立的濾波器,將兩個濾波器響應進行融合,并根據融合響應最大值位置確定目標位置[11]。由于兩種特征的互補性,該算法能夠較好適應目標的快速變化和光照變化等因素的影響,并且跟蹤速率達到80幀/s,能夠達到實時的要求,具有工程應用的可能。雖然Staple算法具有較好的跟蹤性能,但是當目標受到嚴重遮擋、平面外旋轉、相似目標干擾等因素的影響時,Staple算法仍會出現目標丟失現象,并且跟蹤器自身不具備判斷目標丟失的能力。對于一些實際應用的跟蹤系統,不僅需要具有較高的跟蹤精度,還需要具備判斷目標丟失的能力。當目標丟失后跟蹤系統能夠提供目標丟失預警信號,或能夠自主取消當前跟蹤任務,終止無效的跟蹤,提高系統的智能化水平。目前,許多研究者提出了許多理論用于目標跟蹤丟失預警。Bolme等[12]通過響應峰值的峰值旁瓣比(Peak to Sidelobe Ratio,PSR)評價跟蹤效果,Liu等[13]使用PSR和輸出平滑約束(Smooth Constraint of Confidence Map,SCCM)對目標遮擋進行檢測。Ma等[14]在長時跟蹤過程中使用單一閾值與相關濾波器最大響應值進行對比,當最大響應值小于閾值時便判斷目標丟失,進行目標重檢測。Wang等[15]使用平均峰值相關能量(Average Peak-to-Correlation Energy,APCE)反映相關濾波響應的震蕩程度,并用來評價跟蹤結果置信度。文獻[16]通過KCF算法的響應峰值的異常值對目標丟失進行判斷。文獻[17]在使用相關濾波最大響應值和平均峰值相關能量評價跟蹤置信度基礎上,加入了連續5幀不滿足置信度條件便判定目標丟失。由于目標跟蹤的復雜性,這些方法都不能嚴格判斷目標是否丟失,同時容易導致較高的誤檢率。本文在Staple算法的基礎上,使用異常跟蹤狀態與目標相關性檢驗作為目標丟失檢測機制。通過對跟蹤置信度進行評估,確定跟蹤狀態,并在高置信度情況下對目標區域建模,構建目標相關性檢驗模板。如果出現過異常跟蹤狀態,當相關濾波模型響應置信度由低變高,使用目標相關性檢驗模板與當前目標區域進行相關性計算得到相似度,根據相似度值大小對目標是否丟失進行判斷。本文算法總體框架如圖1所示。

圖1 算法總體框架Fig.1 Framework of proposed algorithm
Staple算法是在DSST算法[9]的基礎上加入了顏色特征的相關濾波跟蹤方法,通過兩種特征分別訓練跟蹤器,并通過固定系數融合兩個跟蹤的響應圖實現信息融合。Staple算法主要分為目標檢測模塊和模型更新模塊。目標檢測模塊是使用前面多幀訓練得到的相關濾波器和顏色直方圖濾波器分別對目標進行檢測,使用固定系數將兩濾波器響應圖進行融合,根據融合響應圖最大值確定目標位置;模型更新模塊是使用當前幀的跟蹤結果分別提取兩種特征更新目標模板。
在訓練階段,提取目標及其周圍區域的多通道HOG特征,通過嶺回歸方程求解目標模型h,即

式中,?表示相關運算,l∈{1,2,…,d}表示第l通道,g是具有二維高斯形狀的理想相關輸出,λtmpl為正則項系數,λtmpl≥0。式(1)轉換到傅里葉域能夠快速求解得到閉合解,即

式中,Hl、G和Fk分別表示hl、g和fk的傅里葉變換,“—”表示復共軛。在檢測目標階段,提取下一幀輸入圖像的多維HOG特征ztmpl與目標模型h進行相關運算,即

式中,Ztmpl為ztmpl的傅里葉變換,根據響應圖ftmpl的最大響應位置估計出目標在下一幀圖像中的位置。最后以固定學習率ηtmpl更新相關濾波模型Hl的分子和分母。

式中,t表示幀序數。
在訓練階段,顏色直方圖模型通過提取RGB三通道顏色特征,通過最小化如下的損失函數?hist(ψ,p,β)求解求得顏色直方圖模型β,即

式中,ψ表示前景和背景圖像中提取的顏色直方圖特征,p是目標區域值為1且背景區域值為0的理想響應,M表示顏色直方圖特征的總維數, ||O和 ||B表示目標前景區域的像素總數和背景區域的像素總數,Nj(O)表示前景區域直方圖的第j個直方柱中的像素數,Nj(B)表示背景區域直方圖的第j個直方柱中的像素數。定義ρj(A)=Nj(A)/ ||A為第j個直方柱中像素總數與區域A內像素總數的比值,則式(6)的最終解為:

在目標檢測階段,根據β得到待檢測區域中像素點u屬于目標前景的概率值,并得到待檢測區域圖像的像素級概率圖Pu。對顏色直方圖模型得到的像素級概率圖采用積分圖方法計算得到響應圖fhist,具體計算方式為:

式中,Π(w,h)表示像素級概率圖Pu中(x,y)處左上角所有概率值之和。

式中,u和v分別表示跟蹤搜索框的寬和高。最后以固定學習率ηhist更新顏色直方圖模型,即

最后加權融合相關濾波模型與顏色直方圖模型得到的響應圖,根據響應圖f(x)最大值估計目標位置,即

式中,γ為融合系數。以Basketball視頻序列中某幀圖像為例,融合示意圖如圖2所示,待檢測圖像中綠色框是根據上一幀跟蹤結果確定的待檢測區域。

圖2 響應融合示意圖Fig.2 Response fusion diagram
Staple算法根據融合響應圖的響應值估計目標位置,并不具有判斷目標丟失的能力。當目標丟失后,跟蹤器將會使用錯誤目標信息對跟蹤器進行更新,導致跟蹤失敗。本文通過對相關濾波模型和顏色直方圖模型響應置信度進行評估,確定當前幀跟蹤狀態。當有異常跟蹤狀態出現過且相關濾波模型響應置信度為高時,對當前目標區域與相關性檢驗模板進行相關性計算,確定目標是否丟失。
本文所說的異常跟蹤狀態是指由于跟蹤器受外界的干擾導致跟蹤器響應出現異常,目標存在丟失的可能。本文分別對相關濾波模型和顏色直方圖模型的響應置信度進行分析評估,并根據兩模型置信度結果得到跟蹤置信度。當跟蹤置信度不可靠時,說明出現異常蹤狀態正常,存在目標丟失的可能。
本文使用文獻[15]的平均峰值相關能量(Average Peak-to Correlation Energy,APCE)和響應峰值評估相關濾波模型響應置信度。相關濾波響應置信度CItmpl計算方法為:

式中,ymax表示響應峰值,t為幀序號,τ和?為系數。CItmpl=1,表明相關濾波模型響應可靠。APCE的計算公式為:

式中,ymin表示響應最小值,yw,h表示響應圖(w,h)位置處的響應值。
目標快速運動等因素會導致相關濾波響應出現波動,使得CItmpl=0,但此時由于顏色直方圖模型對目標的空間信息不敏感,Staple算法仍可能較準確地估計目標位置。因此當CItmpl=0時,需要對顏色直方圖模型的響應置信度進行評估。通過實驗發現,無干擾時,顏色直方圖模型估計的目標位置坐標與融合響應圖估計的目標位置坐標接近。當存在干擾時,兩位置坐標具有較大的差異。因此,針對顏色直方圖模型響應置信度,本文提出了一種結合目標尺度的置信度評估方法。

式中,ΔWhist和ΔHhist分別表示顏色直方圖模型估計的目標位置坐標與融合響應圖估計的目標位置坐標的距離在水平軸和垂直軸上的投影長度,ΔWhist和ΔHhist的單位為像素。T_w和T_h表示跟蹤器估計的當前幀目標框的寬度和高度,δ為系數。
跟蹤置信度CI的計算方法為:

當CI=0,表明跟蹤器處于異常跟蹤狀態,存在著目標丟失的危險。
為了更好說明本文提出的跟蹤置信度對跟蹤狀態的檢測效果,使用OTB-100標準數據集中的Basketball視頻序列為例,Staple算法部分跟蹤結果如圖3所示,跟蹤過程中相關濾波響應置信度和本文提出的跟蹤置信度變化情況如圖4所示。Staple算法在第643幀跟丟目標,Basketball視頻序列第19幀前后目標被遮擋,第640幀前后目標被遮擋且被相似背景干擾。由圖3和圖4(b)可知,本文提出的跟蹤置信度評估方法在第19幀和640幀前后均及時檢測出干擾因素導致的跟蹤異常。由圖3和圖4(a)可知,平面外旋轉(第195幀)和目標形變(第487幀)導致文獻[15]的置信度評估方法認定跟蹤結果不可靠,但實際跟蹤器并沒有丟失目標。由圖4(a)和圖4(b)可知,與文獻[15]中置信度評估方法(圖4(a))相比,本文提出的置信度評估方法能夠更準確地評估跟蹤狀態,減少跟蹤過程中對跟蹤狀態的誤判。

圖3 Basketball視頻序列部分跟蹤結果Fig.3 Part of tracking results of Basketball video

圖4 置信度變化情況Fig.4 Confidence changes
出現異常跟蹤狀態(CI=0)后,對目標進行相關性檢驗,確定目標是否丟失。本文借鑒文獻[14]在處理長時跟蹤問題時訓練一個用于重檢測的相關濾波器的思想,使用一個獨立的相關濾波器用于目標丟失判斷,主要包括目標模板的訓練,目標區域與目標模板進行相關性檢驗。
當相關濾波模型響應峰值滿足式(17)時,提取目標區域多維HOG特征訓練得到目標相關性檢驗模板r,提取的目標特征不進行漢明窗處理。目標相關性檢驗模板更新時,直接用當前新模板替換之前的模板。

CItmpl由0變成1,且相關濾波器響應峰值為極大值時,說明跟蹤器能夠較穩定地跟蹤當前目標框內的目標。將當前目標與目標模板進行相關性檢驗,確定目標是否丟失。提取當前目標區域圖像的多維HOG特征zs與目標模型r進行相關計算。


式中,Zs和R分別為zs和r的傅里葉變換,計算得到fs的最大響應值為fs_max。最大響應值fs_max為相似度,反映了跟蹤狀態異常前后目標的相似程度。當相似度fs_max滿足式(19)時表示跟蹤器沒有丟失目標。式中,u表示相關濾波模型響應峰值的平均值,ω為系數,控制著判斷目標丟失的苛刻程度。為了更形象說明基于相關性檢驗的目標丟失判斷過程,以Jogging視頻序列為例,目標丟失判斷過程示意圖如圖5所示。本文算法使用Jogging視頻序列的第61幀跟蹤結果訓練目標相關性檢驗模板,在第87幀對目標是否丟失進行判斷,根據相似度值不滿足式(19),判斷出Staple算法已經丟失目標。

圖5 目標丟失判斷示意圖Fig.5 Schematic diagram of target loss judgment
為了驗證本文目標丟失判斷方法的有效性,本文選取OTB-100[18]標準數據集中22段視頻進行實驗測試,視頻序列參數如表1所示。本文算法的測試環境為Matlab2018a,CPU為i5-4210M,主頻為2.6 GHz,內存為8 GB。Staple算法代碼使用作者公開的源代碼,Staple跟蹤算法參數與文獻[11]中一致。相關性檢驗中HOG特征的細胞大小為4×4。

表1 測試視頻參數Table 1 Test video parameters
到目前為止,目標丟失的判定還沒有準確的定義和參考,用于評價跟蹤器性能的指標主要是中心位置誤差和成功率。在實際工程控制中,經常使用跟蹤結果的中心位置作為控制的期望,所以中心位置誤差用于目標丟失判斷較成功率更具有工程實用性。在評價跟蹤器性能時,中心位置誤差閾值常取20個像素,即當前幀跟蹤器估計的目標中心位置與實際真實的中心位置距離小于20個像素表示跟蹤成功。這種評價指標忽視了目標尺度,當對小目標進行跟蹤時,雖然中心位置誤差小于20像素,但可能估計的目標中心點已經在實際目標區域外,在工程應用中會導致巨大的誤差。因此,本文提出一種面向工程應用的目標丟失判斷依據。

當式(20)成立時目標未丟失,反之目標丟失。式中,ΔW和ΔH分別表示跟蹤算法估計的目標中心位置與真實中心位置之間的距離在水平軸上和垂直軸上的投影,單位為像素,TA_W和TA_H分別表示目標框真實的寬和高,ε為系數,可以根據實際系統對跟蹤精度的要求設定。當ε=0.5時,跟蹤器估計的目標中心點可能位于實際目標框的邊緣,此時的跟蹤結果在工程實用中容易導致較大的誤差。為了減少跟蹤器產生的誤差,本文選取的目標丟失標準為ε=0.3,即當中心位置誤差在水平軸和垂直軸上的投影距離小于0.3倍實際目標框大小時,目標跟蹤正常。為了減少跟蹤過程中干擾因素對目標丟失判斷的影響,當連續10幀不滿足式(20),認定目標丟失。根據Staple算法實際的跟蹤結果,22段視頻共出現11次目標跟丟情況,發生目標丟失的幀序數如表1所示。
本文采用判斷成功率和誤判率作為評價標準,判斷成功率是正確判斷目標丟失的次數占實際目標丟失次數的百分比;誤判是指錯誤的判斷目標丟失,實際目標并沒有丟失,誤判率是誤判次數與判斷次數的百分比。
根據實驗結果,22段視頻,本文算法一共進行了35次目標丟失判斷。式(19)中的系數ω控制著判斷目標丟失的苛刻程度,當ω值較大時會導致誤判率較高;當ω值較小時又會導致判斷成功率降低。因此,分別對ω=0.7,ω=0.8,ω=0.9進行實驗。圖6~圖8分別為ω=0.7,ω=0.8,ω=0.9時部分視頻序列的實驗結果。圖中藍色曲線表示跟蹤置信度和跟蹤狀態變化情況,黑色曲線表示ω?u的變化曲線,紅色曲線表示相似度fs_max變化曲線,沒有進行目標相關性檢驗時fs_max=0現異常跟蹤狀態后,如果相關性檢驗結果fs_max不滿足式(19),判斷目標丟失。圖中紅色矩形框表示正確判斷目標丟失,紅色橢圓表示出現異常跟蹤狀態后正確判斷目標未丟失,黑色矩形表示漏判,即目標丟失后錯誤判定目標未丟失,黑色橢圓表示誤判。

圖6 ω=0.7判斷結果Fig.6 Whenω=0.7,targe some video sequences

圖7 ω=0.8時部分視頻序列目標丟失判斷結果Fig.7 Whenω=0.8,target loss judgment results of some video sequences

圖8 ω=0.9時部分視頻序列目標丟失判斷結果Fig.8 Whenω=0.9,target loss judgment results of some video sequences
22段視頻序列的實驗結果如表2所示。由實驗結果可知,當ω取值較小時,容易導致漏判,使得成功率較低。例如Biker視頻序列中,當跟蹤器丟失目標后,ω取0.8和0.9時成功判斷目標丟失,ω取0.7時判斷目標未丟失。當ω取值較大時,容易導致誤判,使得誤判率較高。例如Walking2視頻序列中,跟蹤器未丟失目標時,ω取0.8和0.9時錯誤判斷目標丟失,ω取0.7時成功判斷目標未丟失。由表2可知,當ω=0.8時,目標丟失判斷效果最好,既能保證成功率,又能保證較低的誤判率。

表2 實驗結果Table 2 Experimental results
為進一步說明本文算法對目標丟失判斷的有效性,選用Basketball、Singer1和Suv三段視頻序列,令ω=0.8,結合實際Staple算法跟蹤結果和目標丟失判斷過程中的有關參數進行分析。Basketball、Singer1和Suv視頻序列部分跟蹤結果分別如圖9(a)、圖9(b)和9(c)所示,Basketball、Singer1和Suv視頻序列跟蹤過程中相關參數變化情況分別如表3、表4和表5所示。

圖9 3段視頻序列部分跟蹤結果Fig.9 Partial tracking results of 3 video sequences

表3 Basketball視頻序列相關參數變化情況Table 3 Changes in relevant parameters of Basketball video

表4 Singer1視頻序列相關參數變化情況Table 4 Changes in relevant parameters of Singer1 video

表5 Suv視頻序列相關參數變化情況Table 5 Changes in relevant parameters of Suv video
Staple跟蹤算法在Basketball視頻序列中一共進行了兩次目標相關性檢驗,即進行了兩次目標丟失判斷。在第19幀前后目標被嚴重遮擋,在第635幀至650幀目標被部分遮擋且被相似物體干擾。由圖9(a)和表3可知,本文提出的方法在第27幀正確判斷出目標未丟失,在第655幀正確判斷目標丟失。由圖9(b)可知,Singer1視頻序列中存在目標尺度變化和光照變化,光照急劇變化導致第72幀至102幀和第126幀至135幀出現異常跟蹤狀態。由表4可知,本文方法在第103幀和第145幀對目標是否丟失進行判斷,本文方法均正確判斷目標未丟失。由圖9(c)可知,Suv視頻序列的第53幀至第45幀目標出視野導致異常跟蹤狀態出現;第511幀至568幀、第675幀至688幀和第774幀至787幀目標被嚴重遮擋,導致異常跟蹤狀態出現。由表5可知,在異常跟蹤狀態出現后,本文算法在第48幀、第574幀第692幀和第791幀對目標是否丟失進行判斷,本文方法均正確判斷目標未丟失。
針對Staple算法不具備目標丟失判斷能力,導致錯誤和無效的跟蹤,本文在Staple算法的基礎上,提出了基于跟蹤異常與相關性檢驗的目標丟失判斷方法。通過分別對Staple算法的相關濾波模型響應和顏色直方圖模型響應進行評估,確定Staple跟蹤器狀態。根據出現過的異常跟蹤狀態和后續相關濾波器響應置信度,對目標區域進行相關性檢驗,確定目標是否丟失。本文算法在OTB-100標準數據集的22段視頻序列上進行實驗驗證,實驗結果表明本文算法能夠有效地判斷目標丟失,并且具有較低的誤判率。在工程實用中能夠為人員提供目標丟失預警信號,能夠實現跟蹤系統自主取消無效的跟蹤任務。本文目標丟失判斷方法雖然基于Staple跟蹤算法,但也能用于其他相關濾波類算法。