劉曉棟,尚振宏,黃 歡
昆明理工大學 信息工程與自動化學院,昆明650500
目標跟蹤是計算機視覺領域的一個熱點,被廣泛應用于視頻監控、機器人學習、工業智能化等方面。其本質是在一段連續視頻序列圖像中找到目標的位置和狀態[1]。雖然目前目標跟蹤已經取得很大進展,但因受到遮擋、光照變化和尺度變化等眾多因素影響,它仍然是一個具有挑戰性的問題。
目前大多數目標跟蹤方法通常使用邊界框表示被跟蹤目標的范圍。但是大多數被跟蹤目標都不是嚴格意義上的矩形形狀,因此邊界框表示跟蹤目標時,通常都會把多余的背景信息加入到模型中,背景信息過多的情況下可能會降低跟蹤器的整體性能。因此,矩形邊界框并非表示非矩形形狀目標的最佳方式。現在的跟蹤技術為了更準確地進行跟蹤目標中的形狀,已經探索出基于分割方法[2-3]為無模型目標建立準確的方法。盡管視頻分割技術[4]已經在視頻目標跟蹤中有了很大的進展,但是基于分割的方法處理雜亂的背景和遮擋也很具有挑戰性,這通常會導致不穩定的結果。
另一類對遮擋和變形比較穩健的跟蹤方法是基于目標關鍵點的跟蹤方法[5-6],它們通過一組顯著點(如SIFT特征或SURF特征)表示目標對象[7]。然而,基于關鍵點的跟蹤方法很難僅通過使用局部點獲取跟蹤目標的全局信息,特別是對于跟蹤目標和背景信息同質的情況下。
目前隨著深度學習的興起,一種結構推理網絡的理論被應用于運動目標的跟蹤,這種方法將物體檢測問題形式化為圖結構推理,采用細節特征、場景上下文、以及物體之間關系的圖結構,采用循環單元的消息傳遞機制對目標進行聯合推理,不過綜合性能取決于數據模型的大小[8]。
與使用整體特征表示的跟蹤方法相比,結構化的跟蹤方法通常更有前途,特別是在變形和遮擋的情況下[9],并且被跟蹤目標在發生遮擋時,單獨使用HOG特征的跟蹤算法,容易發生漂移,即HOG特征不能很好處理遮擋問題;而當目標發生劇烈光照變化時,顏色直方圖特征[10]不能很好處理光照變化問題。實驗表明,HOG特征對光照變化具有較好適應性,顏色直方圖特征對目標形變、尺度變化具有較好適應性。
因此,在本文中把被跟蹤目標表示成為一組塊粒子,利用置信度判斷哪些塊是有效的,通過投票確認目標最終位置。并基于基礎跟蹤方法單一特征提取的不足,利用HOG特征和顏色直方圖特征線性融合的方法提高跟蹤方法的魯棒性和精度。
在識別和跟蹤目標對象時,用一組塊粒子表示目標對象,由于剛開始很難找到確切可靠的塊,利用序列蒙特卡羅[11]方法實現在先驗條件不足的情況下對目標狀態的估計。
首先,從邊界框中取一個樣本圖像塊x=[x,y,w,h],其中( x,y)( w,h)分別代表圖像樣本x的坐標和大小。xt代表圖像樣本中的塊粒子,zt是基于跟蹤目標先前幀z1:t-1=中的觀察值,從貝葉斯理論看,狀態估計問題比如目標跟蹤方面,就是根據之前一系列已有數據z1:t-1,遞推計算出當前狀態xt的可信度,那么這個可信度就是概率公式,然后通過預測和更新兩個步驟遞推計算,假設已知t-1時刻的概率密度函數為p( xt-1|z1:t-1)。那么在預測時,由上一時刻的概率密度p( xt-1|z1:t-1)就可以得到p( xt|z1:t-1) ,p( xt|z1:t-1)的含義是有前面(1:t-1)時刻測量數據,那么就可以預測一下狀態xt出現概率。因此可以把當前幀zt中塊粒子xt是否可靠的概率密度函數表示為:

其中p( xtz1:t-1)為概率密度函數,根據貝葉斯公式規|則,式(1)在進行更新時由p( xt|z1:t-1)得到后驗概率p( xt|z1:t),這里的后驗概率p( xt|z1:t)也將利用式(1)代入到下次預測,形成預測、更新、再預測的遞推關系。因此后驗概率p( xt|z1:t)可以被表示為:

其中的p( zt|xt)為觀測似然值,p( xt|xt-1)表示為過渡密度函數,是一個一階馬爾科夫模型,也就是說xt的狀態只與上一時刻的xt-1有關,選取G作為高斯分布,那么p( xt|xt-1)就可以被表示為:

其中H(x)=[0 ,E] x是一個選擇圖像坐標的函數,E代表的是一個2×2的單位矩陣,那么可觀測的似然值p( zt|xt)就可以被表示為:

其中pt( zt|xt)表示有效跟蹤塊的置信度,而po( zt|xt)表示塊在被跟蹤對象上的可能值。由于變量x數據太大而無法直接計算,采用粒子濾波器[2]估計后驗p( xt|z1:t-1)的值,那么第i個塊粒子權重就可以通過式(5)計算:


其中xtarg代表的是最終的目標跟蹤狀態。
要估計塊的有效跟蹤的可能性,采用Peak-to-Sidelobe Ratio(PSR)作為置信度[12],這種方法廣泛用于信號處理,以測量響應圖中的信號峰值強度。在文獻[12]中采用PSR作為跟蹤目標的峰值強度,基于此,將PSR推廣到基于模板的跟蹤器,作為塊跟蹤的置信度函數,判斷塊粒子是否對跟蹤起積極的作用:
其中R(X)是圖像塊的響應函數,以R(X)峰值為中心,15×15像素為邊界框對R( )

X劃分區域,邊界框以外的為旁瓣區域Φ,μΦ和σΦ分別表示旁瓣區域Φ的均值和標準差,從式(7)可以看出,響應函數R()X的峰值越大,s( X )就會越大,因此s( X)可以作為圖像塊的置信函數,用來衡量圖像塊是否對跟蹤起積極作用。當s(X )大于0時,則標記塊粒子為積極的。響應函數R(X)可以被表示成:

其中d表示模板T和圖像塊X之間的歐氏距離,f(X)表示圖像特征提取函數。由于響應函數R()X與模板T和采樣圖像塊之間的距離成反比,所以塊跟蹤置信度函數s()
X值越大,樣板T和圖像塊X之間的距離越近,反之亦然。
而且塊跟蹤置信度函數s( )X與大多數基礎跟蹤方法兼容,因為大多數相關濾波跟蹤方法采用最大響應圖作為被跟蹤目標的位置,并且都有一個基礎模板,所以采用基于核相關和循環矩陣而取得高效率和高速度的KCF[13]作為基礎跟蹤方法,并基于KCF單獨的HOG特征在發生強烈光照變化和形變時,會發生嚴重漂移問題,而顏色直方圖對形變和顏色變化比較敏感,所以融合兩種特征的KCF可以獲得更好精度的響應圖。
在KCF中,循環位移產生的樣本能夠近似的表示通過密集采樣所產生的樣本,假如有一維數據x=[x1,x2,…,xn],那么一維數據x的循環移位Px=[xn,x1,x2,…,xn-1]T,{Pux|u=0,1,…,n-1}中u代表移位的個數,在這個式子中每乘一次P,則代表著x中的元素就循環偏移一位,因此所有的循環樣本被鏈接起來形成一個矩陣X=C()x,把X稱為循環矩陣,并且把循環矩陣表示為:

其中,F代表的是離散傅里葉變換(DFT),FH是F的共軛轉置矩陣,x^代表對x進行離散傅里葉變換,diag表示向量對角化。在KCF中循環矩陣的分解可用于簡化線性回歸的解,線性脊嶺回歸的目標函數可以被表示為:

函數f可以寫成基礎樣本的線性組合f(x)=ωTy,脊嶺回歸具有完全封閉的解ω=( XTX+λI)-1XTy,由式(9),可以得到:


因此對于上式的核函數,也可以使用KCF中循環矩陣技巧。因此,KXX表示循環矩陣的第一行向量,通過上面的方法可以得到α,相當于線性回歸方程中的ω。
在KCF中利用循環矩陣技巧的高斯核被表示為:

由上式可知由于核相關函數只需要計算點乘積和矢量范數,使計算量大大減少,因此把圖像特征被應用到多個通道,多個通道特征數據也可以連接成一個一維向量,式(13)可以被表示為:

在式(14)特征數據也鏈接成為一維之后,KCF不僅僅可以使用HOG特征,也可以利用到其他優秀的特征,所以可以通過式(14)進行HOG特征和顏色特征線性融合并利用它們的優勢。
之后,采用基于多特征線性融合后的KCF響應圖促進跟蹤置信度函數s( )X。因此,可跟蹤塊粒子觀測值可以表述如下:

其中λ是用于權衡可能性貢獻系數。在本文中經過多次實驗,設定λ=2時,實驗效果最好。
為計算位于被跟蹤物體上的有效塊的概率,利用運動信息實現這一目標。具體來說,跟蹤前景和背景塊粒子,并記錄每一個塊的相對軌跡:

其中的vt=ψ2( )xt-xt-1是相對運動矢量。由于塊粒子的位移可能對應于不同的物體,記錄k個相對運動矢量以使軌跡信息更加穩定。使用L2范數公式測量軌跡之間的距離。并對軌跡進行分組,以一個矩形框目標為中心簡單地將圖像分成兩個區域。然后,將邊界框上和邊界框內的塊粒子標記為正,而將外部的塊粒子標記為負:

其中yt∈{+ 1,-1}代表的是圖像塊Xi的標簽,Ω+代表的是積極塊粒子的集合,Ω-代表的是消極塊粒子的集合。N+和N-分別表示為積極響應集和消極響應集的大小。當一組樣本塊粒子有相同運動時,函數l(X)具有較高的分數值,反之分數值就會很低,當每組之間的運動軌跡沒有明顯的距離時,該函數的值接近于零。因此,可以在塊粒子集中標記每個塊粒子,將重點集中在那些在目標對象上的塊粒子。因此,使用l(X)計算塊粒子在目標對象上的概率:

其中μ是平衡對象概率貢獻的系數,本文中值為1。如果前景和背景之間沒有明顯的運動變化,po趨近于1。
在pt( zt|xt)和po( zt|xt)的結果被計算之后,假設可靠的塊在結構上與被跟蹤物體一致,可以將粒子的權重作為被跟蹤目標塊的置信度量度值。那么,使用所有積極塊粒子投票到目標最終的位置,如下所示:

運動目標跟蹤的過程中,一組塊粒子經過一段時間的運算,效果會越來越差,稱這種情況為塊粒子的退化[14],本文采用SIR方法對粒子進行重采樣,詳細方法可以參考文獻[14]。
輸入:模型vot-1和新的一幀圖片It。
(1)對于在目標模型vot-1中每一個塊粒子,在新的一幀中用基于多特征融合后的基礎跟蹤方法KCF做跟蹤,以獲取最大響應圖。
(2)在Xit中更新xit和Vit。
(3)根據式(5)計算粒子重量ω。
(4)塊粒子重采樣。
(6)根據式(6)更新模型vot。
輸出:更新的模型vot用于目標跟蹤;得到新目標狀態
本次實驗中所使用到的工具有:Matlab2015 Athlon(速龍)X2 CPU(2.10 GHz)4 GB RAM,λ=2,μ=1。
實驗選取公開的標準測試數據集Benchmark[15]中12段視頻序列進行實驗,測試視頻序列依次為BlurBody、BlurFace、Boy、CarDark、Coke、David3、Deer、Girl、tiger2、Vase、BlurCar2和Box,其中包含了目標多種變化,如遮擋、快速運動和旋轉、光照變化、尺度變化等影響因素的12個視頻序列上,進行跟蹤實驗,并與7種優秀方法進行比較,這7種目標跟蹤方法分別是Conv_KCF[16]、CSK[17]、RPT[18]、DFT[19]、DSST[20]、IVT[21]、KCF。
本文采用平均跟蹤誤差Center Location Error(CLE)和重疊率Pascal VOC Overlap Ratio(VOR)來評估本文算法和其他比較算法。

CLE是指目標框的中心與目標真實位置中心之間的偏差。中心誤差越小,則算法性能越高。VOR中BC和BG分別表示跟蹤框的實際大小和真值。重疊率越高,則算法性能越高。平均跟蹤誤差和重疊率結果如表1和表2,時間效率結果如表3。
其他算法的對比圖,如圖1所示。

表1 平均跟蹤誤差

表2 重疊率

表3 不同算法的時間效率 (幀·s-1)

圖1 精度和成功圖
在本文中,利用有效塊跟蹤框架,該框架試圖識別和利用可靠的塊粒子用以實現運動目標跟蹤。為了有效地找到可靠的塊,使用塊粒子的兩個正交特性:可跟蹤性和運動相似性,以估計可靠塊粒子的分布。在找到可靠的塊粒子后,預測和更新這些塊粒子。通過跟蹤有效的塊粒子,可以處理多樣化的運動目標。本文使用的響應圖的基礎跟蹤方法是KCF,又基于KCF使用的HOG在某些特征提取方面的不足,選擇將顏色直方圖和梯度直方圖特征進行線性融合,提高在獲取響應圖的精準度。通過與幾個先進跟蹤方法的實驗表明,本文方法可以穩定、準確地進行目標跟蹤。但由于本文采用了粒子重采樣,工作總量比較多,所以該算法平均速度僅為0.67幀/s,速度較慢,今后需要進一步優化。