曾上游,賈小碩,李文惠
(廣西師范大學電子工程學院,廣西 桂林 541004)
視頻追蹤在計算機視覺領域是一個重要且有挑戰(zhàn)性的熱門課題。目前,隨著卷積神經(jīng)網(wǎng)絡的廣泛應用,視頻追蹤算法在準確率與追蹤速度上比傳統(tǒng)算法都有提高,但在真實場景下,遮擋物、運動突變等情況會對目標物體的定位帶來很大的干擾。
視頻追蹤中對目標的連續(xù)定位屬于運動估計范疇,而運動估計算法的速度和準確率又直接影響了視頻追蹤總體的優(yōu)劣性。傳統(tǒng)的運動估計算法以相關濾波器方法[1 - 4]為主,目前最新的濾波器追蹤算法有SRDCF(Spatially Regularized Discriminative Correlation Filters)[5]、CSRDCF(Channel and Spatial Reliability-Discriminative Correlation Filters)[3]和KCF(Kernel Correlation Filter)[6],但這些算法針對背景復雜、有運動突變的物體存在難以定位的問題。近年來,隨著卷積神經(jīng)網(wǎng)絡的廣泛應用,經(jīng)典的SiamFC(Fully Convolutional Siamese networks)[7]、SiamRPN(Siamese Region Proposal Network)[8]追蹤算法和最近提出的SiamRFC[9]算法在VOT 2015、VOT 2016和OTB100數(shù)據(jù)集上也都取得了很大的突破。SiamFC主要對圖像進行相似度判定和目標定位,但出現(xiàn)遮擋物干擾時,目標定位的準確率偏低。SiamRPN把視頻追蹤看作連續(xù)的檢測過程,通過RPN網(wǎng)絡生成待定的目標候選框,利用孿生網(wǎng)絡進行相似度判定,達到精準定位效果。SiamRPN的準確率和速度都要高于SiamFC的,但訓練過程較為復雜;SiamRFC則結合以上2個追蹤算法的優(yōu)勢,減少了訓練參數(shù),提升了追蹤能力,但在遮擋物和運動突變的干擾下仍面臨很大的挑戰(zhàn)。
為解決此類問題,本文提出一個基于LSTM(Long Short-Term Memory)[10]的雙線程在線更新的追蹤算法TripLT。該算法由3部分組成:(1)基于Triplet Network[11]設計的相似度判定網(wǎng)絡Tripnet;(2)基于LSTM設計的運動預測網(wǎng)絡LTnet,可通過當前幀的位置數(shù)據(jù)預測下一幀的位置數(shù)據(jù);(3)在線更新機制:利用相似度判定網(wǎng)絡由當前幀的預測框和當前的定位框可計算得到相似度值U。若U∈(0,0.8),運動預測網(wǎng)絡則進行相關的在線更新學習。本文算法利用了LSTM的特性,不僅在運動估計上不受背景的干擾,避免了遮擋物的影響,也在更新機制上擺脫了運動突變帶來的干擾。
本文利用OTB100 Toolkit[12]的指標來評價本文的網(wǎng)絡模型,并在VOT2015[13]、2016[14]、2017[15]數(shù)據(jù)集上和SiamFC、SiamRFC及文獻[16]中的算法進行實驗對比。實驗結果表明,本文算法在追蹤上具有更好的追蹤效果。
為提升相似度判定的準確率,本文利用Triplet Network的原理并結合預處理Robinson算子[17]設計了相似度判定網(wǎng)絡Tripnet模型,對圖像進行相似度判定,網(wǎng)絡結構如圖1所示。

Figure 1 Tripnet model
Tripnet模型的訓練過程需要輸入3幅圖像img1、img2和img3,其中img1和img2為相似圖像,img2和img3為非相似圖像。Tnet是一個全卷積式的特征提取網(wǎng)絡,網(wǎng)絡參數(shù)如表1所示。結合Robinson算子對輸入圖像進行相似度判定的訓

Table 1 Tnet network parameters
練時,又引入相對特征loss函數(shù),計算方法如式(1)~式(4)所示:
cm=G1-G2
(1)
avg=∑mcm/m
(2)
dv=(∑mcm-avg)2/m
(3)
loss=G12-2*G23
(4)
圖像img1、img2和img3先經(jīng)過Robison預處理再通過Tnet得到對應的3個高維特征G1、G2、G3。利用式(1)得到圖像對G1和G2的相對特征cm,其中m表示高維特征的通道數(shù)。再利用式(2)得到相對特征的均值avg,利用式(3)取得相對特征的離散值dv,也即G12。同理得到G2和G3的相對特征的離散值G23。G12是相似圖像對img1和img2之間的離散值,G23是非相似圖像對img2和img3之間的離散值。本文式(4)擴大img2和img3之間的非相似性距離,縮小img1和img2之間的相似性距離,進一步優(yōu)化Tnet網(wǎng)絡參數(shù)。
LSTM網(wǎng)絡的每個單元由輸入門、輸出門和遺忘門組成,如圖2所示。Rt表示t時刻的輸入,Ht表示t時刻的輸出,Ct表示t時刻的狀態(tài)。下面介紹各個門的算法。
ft=σ(Wf·[Ht-1,Rt]+bf)
(5)
it=σ(Wi·[Ht-1,Rt]+bi)
(6)
jt=tanh(Wc·[Ht-1,Rt]+bc)
(7)
Ct=ft*Ct-1±it*jt
(8)
ot=σ(Wo·[Ht-1,Rt]+bo)
(9)
Ht=ot*tanh(Ct)
(10)
上一時刻的輸出Ht-1與該時刻的輸入Rt會與權重Wf、Wi、Wj、Wo及偏置bf、bi、bj、bo通過激活函數(shù)σ或者tanh函數(shù)得到中間參數(shù)ft、it、jt、ot。然后ft、it、jt與上一時刻的狀態(tài)變量Ct-1通過式(8)得到該時刻的狀態(tài)變量Ct,Ct與ot通過式(10)得到本時刻的輸出變量Ht。
本文利用LSTM設計了運動預測網(wǎng)絡LTnet。Rt為t時刻目標的位置G(x,y,w,h),輸入到LTnet中得到Ht,即預測的位置g(x,y,w,h)。LTnet整體運算不受圖像背景的影響,避免了遮擋物的干擾。

Figure 2 Structure diagram of LSTM unit
普遍的追蹤網(wǎng)絡在運動目標發(fā)生突變時,追蹤過程會出現(xiàn)定位偏差。本文設計了一個在線更新的機制Online-LT,以處理運動突變的情況,具體的流程如圖3所示。
由當前時刻的目標位置G(x,y,w,h)獲得當前目標圖像Te0,通過LTnet預測獲得下一時刻目標的預測位置g,同時獲得下一時刻目標圖像Te1;Tripnet對Te0和Te1進行相似度判定得到相似度值U。如果0.5

Figure 3 Flow chart of online update mechanism
TripLT是由Tripnet、LTnet和Online-LT組成的雙線程追蹤算法。TripLT利用Tripnet的優(yōu)點提高了定位的準確率,利用LTnet的預測性減少了候選框的計算,并結合Online-LT的雙線程特點,提高了運行速度和容錯率,如圖4所示。
這里本文先給定初始目標的位置數(shù)據(jù)G0(x,y,w,h),然后利用已訓練好的LTnet對下一幀的目標位置進行預測,并得到預測的目標位置g0(x,y,w,h),當讀取到下一幀圖像P1時,用上一幀的g0在P1上截取相應的目標區(qū)域圖像Te1,并與上一幀的目標區(qū)域圖像Te0在已訓練好的Tripnet網(wǎng)絡上進行相似度的判定,最終得到下一幀的目標位置G1(x,y,w,h)。以上述方式不斷地對視頻中的目標進行預測,以達到追蹤效果。
本文的TripLT算法利用LSTM的時序預測性,在讀取當前時刻圖像的同時獲得下一時刻目標位置的預測數(shù)據(jù),并和孿生網(wǎng)絡相結合,大大縮短了運動估計時間,達到了實時追蹤效果。

Figure 4 Flowchart of TripLT algorithm
為了訓練TripLT算法,本文將分別對Tripnet和LTnet各自進行訓練,然后利用OTB Tooklit進行效果評定以及在VOT 2015~VOT 2017數(shù)據(jù)集中和已有算法進行對比實驗。本文也給出超參數(shù)N的定義:利用LSTM 對目標的連續(xù)N個時刻的運動軌跡來預測N+1時刻的運動軌跡。
訓練LTnet需要對VOT數(shù)據(jù)集中的位置數(shù)據(jù)做如下處理:將目標位置數(shù)據(jù)整合在一起,然后根據(jù)已追蹤的前N個時刻目標位置來預測下一時刻目標位置的原則處理數(shù)據(jù)集,最后將數(shù)據(jù)以7:3的比例分成訓練集和評價集。并根據(jù)式(11)~式(14)將目標位置的4個點位數(shù)據(jù)Gt{(xi,yi),i∈{1,2,3,4}}轉成左下角點、寬和長的數(shù)據(jù)形式gt(x,y,w,h)。
x=min(Gtxi)
(11)
y=min(Gtyi)
(12)
w=max(Gtxi)-x
(13)
h=max(Gtyi)-y
(14)
為了不失一般性,本文主要選用CACD2000[18]和VGG_FACE2[19]訓練Tripnet的數(shù)據(jù)集。
LTnet在AMD Ryzen3平臺下搭建而成。模型結構及參數(shù)的設置為:Batch size為10;LSTM單元核為20個;循環(huán)次數(shù)為200次;選用Adam Optimizer作為優(yōu)化器;使用式(15)計算網(wǎng)絡的loss。
(15)
其中,ypij,ytij表示LSTM的預測值和真實值。
下面在數(shù)據(jù)集OTB100上測試超參數(shù)N和準確率的關系,結果如圖5所示。

Figure 5 Accuracy vs. N
從圖5可以看出,當N=1時,準確率達到最高。結合參數(shù)N的意義和實際環(huán)境中的追蹤效果得出,N=1更適用于本文的追蹤。
TripLT和SiamFC、SiamRFC和文獻[16]中的算法在VOT2015~VOT 2017上的對比實驗結果分別如表2~表4所示。并利用在OTB100 Toolkit對CFNet[20]、SiamFC、SRDCF、CSRDCF、KCF進行準確率的對比,結果如圖6所示。

Table 2 Performance comparison of three tracking algorithms on VOT2015

Figure 6 Accuracy trends of 11 attribute datasets of OTB100

Table 3 Performance comparison of four tracking algorithms under VOT2016

Table 4 Performance comparison of three tracking algorithms under VOT2017
從表2~表4可以看出,在準確率上TripLT取得了較好的效果;與SiamFC、SiamRFC和文獻[16]的算法相比,TripLT解決了單線程的時間計算問題,追蹤速度也取得了較好的效果。TripLT中加入了在線更新的機制,以針對運動突變的現(xiàn)象,從圖6c、圖6e和圖6f看出,TripLT取得很好的結果。
由圖7可以看出,和標簽對(白色虛線框)相比,高速運動的汽車在遇到遮擋物時,本文算法仍能高效預測出目標位置。白色虛線框為標簽位置,白色實線框為本文算法的追蹤位置。

Figure 7 TripLT video tracking effect
在視頻追蹤過程中,為了避免出現(xiàn)因遮擋物或運動突變情況的干擾而導致無法定位目標的問題,本文設計了雙線程LSTM在線更新的視頻追蹤算法TripLT。在結合LSTM的可預測特性和Triplet Network的高魯棒性的同時,引入雙線程在線更新機制,一方面利用在線更新操作排除物體運動突變現(xiàn)象的干擾,另一方面利用雙線程的優(yōu)點將更新時間與追蹤時間剝離,進而不干擾追蹤。測試結果表明,與對比算法相比,本文算法在保證有效的追蹤速度的同時,準確率也得到一定的提升。