黃樹成,張 瑜,張天柱,徐常勝,王 直
1(江蘇科技大學 計算機學院,江蘇 鎮江 212003)
2(中國人民解放軍91917部隊,北京 100071)
3(模式識別國家重點實驗室(中國科學院 自動化研究所),北京 100190)
目標跟蹤是計算機視覺領域研究的熱點之一,當前廣泛應用于視頻監控、人機交互等實際問題中,具有重要的研究價值.但是受限于實際環境的復雜性,例如遮擋、光照變化、目標形變以及背景相似干擾等,當前跟蹤算法在準確性、魯棒性以及實時性上還很難滿足實際應用需求.因此它仍是一個極具挑戰性的課題.
基于相關濾波的跟蹤方法以其出色的性能和速度優勢,在跟蹤領域引起了很大的關注.近年來,涌現出了大量基于相關濾波的跟蹤方法,如 KCF[1]、SAMF[2]、LCT[3]、MUSTer[4]和 CACF[5],這些方法多數采用手工特征,因此限制了算法的準確性和魯棒性.隨著 CNN在目標識別領域中的成功應用,深度學習進入了目標跟蹤領域,比較有代表性的基于CNN的跟蹤方法有DeepSRDCF[6]、HCF[7]、SiamFC[8]、CFNet[9]和DCFNet[10]等,但這些算法僅考慮了對圖像中目標表觀特征的提取,特征響應存在多峰現象,跟蹤結果易產生漂移.本文結合連續 CRF模型提出了一種新的端到端的目標跟蹤方法,充分考慮了圖像相鄰超像素塊之間的相似性關系,利用該關系約束了初始響應值,抑制了跟蹤過程中的漂移現象.
本文提出的基于條件隨機場的深度相關濾波目標跟蹤算法,在跟蹤一段視頻序列時,將其中每一幀圖片的目標候選區域通過深度卷積神經網絡提取特征,運用相關濾波計算初始響應圖,與此同時,根據相鄰超像素塊之間的位置關系構建相似度矩陣.然后結合當前圖片的初始響應與相似度矩陣更新響應圖,最終確認目標的位置信息.如圖1所示,初始響應圖中目標位置附近多峰現象嚴重,本文加入了相鄰超像素塊之間的相似性關系,利用該關系去約束初始響應圖,去除了多峰現象,抑制了跟蹤過程中的漂移,使得優化后的響應圖更加平滑,提高了判別目標位置的魯棒性.

Fig.1 Process of model optimization圖1 算法模型優化過程
本文的貢獻及創新點總結如下.
(1) 將連續CRF模型運用到目標跟蹤領域中,通過對CRF模型中單個勢節點和相鄰勢節點之間的關系建模,優化了基于深度學習的 DCF跟蹤算法,有效緩解了不同情況下的跟蹤漂移問題,特別是在目標尺度變化時,明顯提高了跟蹤的成功率;
(2) 設計了一個端到端的框架,將CRF模型嵌入深度卷積神經網絡中,在保持算法實時性的前提下,提升了算法的跟蹤精度;
(3) 構建了一個基于圖像相鄰超像素塊之間位置關系的相似度矩陣,在響應圖中校正了目標的相對位置,減少了目標周邊背景噪聲的影響;
(4) 將本文算法在OTB-2013的 50個視頻序列和OTB-2015的 100個視頻序列[11]上進行了大量的測試,并與9種近年來在國際上具有代表性的相關算法進行了對比分析,顯著性實驗結果驗證了算法的有效性、準確性和魯棒性.
本文的主要貢獻是將CRF模型運用到目標跟蹤領域,優化基于深度學習的DCF跟蹤算法.涉及到本文相關工作的兩個方面主要包括基于DCF的跟蹤方法以及CRF的應用情況.
基于 DCF的目標跟蹤算法利用快速傅里葉變換進行濾波器的訓練和響應圖的計算,極大地提高了跟蹤效率,具有很好的擴展性.傳統的基于DCF的算法有KCF、MOSSE[12]和CSK[13],隨后出現了各種改進算法,包括優化尺度變換的跟蹤器SAMF和fDSST[14]、將顏色信息考慮在內的Staple[15]和CN[16]、希望跟蹤器能長期跟蹤的LCT和MUSTer、考慮緩和邊界效應的SRDCF[17]和CACF,但這些方法多數使用手工特征,因此限制了算法的魯棒性.
隨著CNN在圖片分類[18,19]、目標檢測[20]以及圖像分割[21]工作中的迅速發展,目標跟蹤領域也開始將深度卷積神經網絡作為解決問題的工具之一.越來越多的算法將DCF框架和CNN結合在一起,例如HCF和HDT[22],提出使用分層卷積特征對跟蹤目標進行學習和表達,代替了原來的 HOG特征.SRDCF和 DeepSRDCF改善了DCF中存在的邊界效應,后者在前者基礎上將手工特征替換為 CNN特征,并說明了在解決跟蹤問題時,采取CNN的底層特征效果較好,得出解決跟蹤問題并不需要太高語義信息的結論.CFNet和DCFNet在SiamFC的結構上加入了 CF層,實現了網絡的端到端訓練,用實驗表明這種網絡結構可以用較少的卷積層而不會降低精度.
CRF由Lafferty等人[23]提出,結合了最大熵模型和隱馬爾可夫模型的特點,是一種無向圖模型,近年來在分詞、詞性標注和命名實體識別等序列標注任務中取得了良好的效果.CRF模型很少應用在處理連續的回歸問題上,最早采用連續CRF模型的工作之一是Qin等人[24]提出的,應用在文獻檢索中解決全球排名問題,在一定的約束條件下,可以用確定的規范化因子來優化極大似然函數.在這之后,連續CRF模型被成功開發應用在各種結構化回歸問題中,例如圖像降噪[25]和遙感領域[26],值得一提的是,隨著 CNN的普及應用,Liu等人[27]成功地將連續CRF模型用于圖像深度估計,結合深度值的連續性,學習連續CRF在CNN框架中的勢能函數.
到目前為止,還沒有將連續CRF模型應用到目標跟蹤領域的魯棒性算法,本文提出的目標跟蹤模型建立在連續圖像響應值上,用連續CRF來估計目標候選區域的響應,旨在共同探索CRF模型結合CNN的跟蹤方法在學習目標特征表示時的能力和潛力.
本節首先對基于 CRF的相關濾波目標跟蹤方法進行簡要概述,然后詳細介紹本文算法中各個模塊的原理和實現方法,最后,介紹改進后的算法流程以及網絡的優化過程.
目標跟蹤的主要目的在于確定目標在視頻幀中的位置信息,需要通過相應的目標表觀特征描述方法將其中相對穩定的統計特征或某些不變的特征提取出來,一般通過相關濾波器來獲取目標候選區域的響應,作為判斷目標位置的標準,與背景加以區分.由于視頻中的每一幀圖像都由若干個像素組成,假設可以將每一張圖像分割成若干個超像素塊,并且認為圖像模型是由很多超像素塊所構成.
如圖2所示,輸入x∈ ?W0×H0表示圖像的目標候選區域,用w×h的核(w,h∈?)對x進行池化操作(步長分別為stride_w和stride_h),得到x′ ∈ ?W×H,且W=(W0-w)/stride_w+1,H=(H0-h)/stride_h+1;再經過全連接操作將圖片分為n=W×H個超像素塊.其中,對應的響應值表示為向量的格式,即y= [y1,...,yn]T∈?n.

Fig.2 An illustration of the superpixel pooling method圖2 圖像超像素化過程
根據傳統的CRF參數化模型[28],在隨機變量X取值為x的條件下,隨機變量Y取值為y的條件概率密度函數可以表示為

式中,i,j=1,2,...,n,sl和tk是特征函數,μl和λk是對應的權值,求和是在所有可能的輸出序列上進行的,Z(x)表示規范化因子,本文將特征表示部分用能量函數G(y,x)來表示,因此條件概率密度函數可以寫為

式(2)中,規范化因子Z(x)表示為

由于這里的y是連續值,與離散情況不同,因此用積分來替換原來的求和運算.為了預測目標位置,可用模型的最大后驗概率(maximum a posteriori,簡稱MAP)來推斷視頻幀的響應值,具體表示為

能量函數G(y,x)由一元狀態函數V和二元轉移函數E構成,這里,V對應于圖像中n個超像素塊,旨在回歸每個超像素塊對應的響應;E依賴于圖像中S對相鄰超像素塊之間的關系,該關系的相似性會起到約束響應值的作用,超像素塊間的相似度越高,對應的響應值越接近.這里的函數V和函數E可以表示為

因此,能量函數G(y,x)可以表示為

本文將V和E嵌入到統一的CNN框架中,結合相關濾波建立一個深度網絡來得到圖片目標候選區的響應值,從而準確地預測目標的位置信息.
圖3展示了本文提出的基于CRF的深度網絡框架,整個網絡架構包括一元特征模塊、二元關系模塊和學習更新模塊 3個部分.一元特征模塊實現了在深度網絡中對圖片目標候選區的特征提取,并且通過相關濾波輸出初始響應值;二元關系模塊通過網絡輸出一組一維向量,該向量建立了相鄰超像素塊之間的相似性關系,用來約束一元特征模塊中的初始圖片響應;學習更新模塊結合一元特征模塊中的初始響應值和二元關系模塊中的相似度矩陣更新響應圖,最終確認目標的位置信息.

Fig.3 Improved deep correlation filters via conditional random field圖3 基于CRF和DCF的深度目標跟蹤模型
2.2.1 一元特征模塊
本文使用一元狀態函數V對一元特征模塊進行建模,目的是通過訓練深度網絡獲取圖像目標候選區域的特征,得到理想的濾波器,輸出初始響應.

這里,yi表示理想狀態下的響應,Ri(α)表示網絡輸出的響應,α為網絡中的參數.
如第2.1節所述,將圖像分為n個超像素塊,每個超像素塊的區域vi={ai,bi,wi,hi} ,?i= 1 ,2,...,n對應CRF中的節點信息,其中,(ai,bi)表示超像素塊的中心位置,(wi,hi)表示超像素塊的寬度和高度,考慮到對每一個超像素塊單獨進行卷積運算會存在大量的內存消耗,導致計算效率降低,本文利用 Fast R-CNN[29]的思想,首先對圖像整體進行卷積運算,再對結果進行分割,從而提高網絡訓練的速度和準確率.該模塊中的特征提取部分如圖3所示,主要由兩個卷積層、一個修正線性單元(rectified linear unit,簡稱ReLU)和一個局部響應歸一化(local response normalization,簡稱 LRN)層構成.假設模塊的輸入為圖片塊x0∈R125×125×3.在第1個卷積層中,為了能夠更好地利用位置對應信息,本文在x0的外側進行填補,填補的尺寸為1.x0通過一個權重矩陣W1得到了96個特征映射,W1包含96個子矩陣,即,其中,表示第1個卷積層中每個卷積核對應的參數,卷積核的通道數和尺寸分別為3和3×3,采樣間隔為1.因此,輸出的96個特征映射是通過對x0卷積響應和經過激勵函數計算得到的.其中,,選用修正線性單元作為激活函數f(.) = m ax(0,.) ,“*”代表卷積運算,分別表示權重矩陣與偏置項.通過將所有的連接在一起,可以得到一個完整的特征映射.在第2個卷積層中,為了能更充分地利用輸入信息x1的外側進行填補,填補的尺寸為1.之后,將x1i與 32個卷積核依次進行卷積,對應的權重參數為每個卷積核的通道數和尺寸分別為96和3×3,采樣間隔為1,可得,其中,s(.)選用局部響應歸一化層來實現,使得其中響應比較大的值變得相對更大,并抑制其他反饋較小的神經元,增強了模型的泛化能力.將所有的特征映射組成x2∈R125×125×32.每跟蹤一個新的視頻幀,網絡就會輸出該幀的特征φ(z),再輸入到相關濾波層,根據上一幀的特征φ(x)來更新一個新的濾波器w,從而得到當前幀目標候選區域的初始響應圖R(z):

這里,φl(z)表示CNN中提取特征的第l個通道,“?”代表循環矩陣的卷積運算,wl表示第l個理想的濾波器,可以表示為[30]

這里,y表示目標位置的真實值,表示離散傅里葉變換,*表示變量的復共軛,⊙表示矩陣的哈達瑪積.
2.2.2 二元關系模塊
本文使用二元轉移函數E對二元關系模塊進行建模,目的是為了通過相鄰超像素塊之間的相似性關系來平滑視頻幀的輸出響應.

其中,Cij表示相鄰超像素塊vi和vj之間的依賴關系,可以用全連接層來表示:

這里,β是網絡參數,S(k)表示相鄰超像素塊之間的第k種相似性關系矩陣.可以用位置信息、HOG特征等建立相鄰超像素塊之間的相似性關系,本文將這k種相似性關系的模型表示為

2.2.3 學習更新模塊
根據式(8)給出的一元狀態函數V和式(11)給出的二元轉移函數E的定義,能量函數G(y,x)可以表示為

為了便于函數表達和計算,這里定義矩陣A:

其中,I表示n×n的單位陣,D表示由組成的度矩陣,它是一個對角陣,C表示由Cij組成的鄰接矩陣,D-C是一個圖拉普拉斯矩陣,因此,這里的矩陣A是一個正則化拉普拉斯矩陣,能量函數G(y,x)可以替換為

由于上式中關于y的二次項系數是矩陣A,這里的A是正定陣,結合均值θ服從先驗norm分布,且θ~N(μ0,∑0)的多維高斯分布的公式為

規范化因子Z(x)的積分可推算得到:
根據式(1)、式(16)和式(18),推出CRF的先驗概率模型可以表示為

這里,R=[R1,...,Rn]T,是在初始響應的基礎上做池化后得到的矩陣,|·|表示矩陣的行列式,A-1是A的逆矩陣.因此,根據式(4)可以得到圖像中目標候選區域的響應值為

根據式(15)中對矩陣A的定義,矩陣A是對稱陣,即AT=A,令:

因此,式(20)的閉式解為

當不考慮二元關系模塊中相鄰超像素塊之間的關系時,即Cij=0時,上式可以表示為y★=R,這是一般的CNN回歸模型,本文將其作為比較的基準算法,在第3節會對比這種模型的實驗結果.
本文算法將矩陣A定為位置關系矩陣,根據第2.2.1節中對超像素塊區域的定義,利用相鄰超像素塊vi={ai,bi,wi,hi}和vj={aj,bj,wj,hj}之間的歐式距離建立的相似性關系Cij和度矩陣D可以表示為


根據式(15)將矩陣A帶入式(22)可以更新初始響應矩陣,校正目標的位置信息,得到校正后的響應y★,從而確定目標的位置,具體流程詳見算法1.
算法1.基于條件隨機場的魯棒性深度相關濾波目標跟蹤算法.

本文將CRF和基于深度學習的DCF跟蹤網絡相結合,設計了一個新的端到端的網絡框架.為了使模型的跟蹤效果更優,算法魯棒性更強,本文使用了基于隨機梯度下降的反向傳播來優化網絡參數.
假設通過網絡獲取的當前幀響應為y★,理想的響應值為?,定義損失函數為

其中,θ表示網絡中的所有參數,γ用來約束正則化項.

根據文獻[31],離散傅里葉變換與離散傅里葉逆變換的梯度可用下述公式計算:

在學習更新模塊中,前向傳播過程只包含一般矩陣乘法,因此可以計算矩陣的導數:

在二元轉移模塊中,由于關系矩陣A可以通過位置信息直接構建,因此這支網絡無需從響應更新層反向傳播更新參數.在一元特征模塊中,損失函數對響應更新層的偏導數可以表示為

在該模塊中,網絡的輸入分別為當前幀圖片z和前一幀圖片x對應網絡的檢測分支與學習分支.表示損失函數對檢測分支的偏導數,具體計算如下:


誤差經過反向傳播到有實值的特征圖后,余下的傳播過程可以看作是傳統的卷積神經網絡優化問題,這里不再贅述.由于本文算法中反向傳播涉及的運算只是復頻域中的哈達瑪積以及一般的矩陣乘法,因此可以在大量數據集中進行離線訓練,再通過網絡模型進行在線跟蹤.
本文算法在 Matlab 2015b上實現,網絡層使用 MatConvNet工具[32]訓練.計算機配置為 Intel i7?CoreTM-4770CPU@3.40GHz×8,內存為 32GB RAM,顯卡為 NVIDIA GeForce GTX Titan X.本文的訓練視頻來源于NUS-PRO[33]、TempleColor128[34]和UAV123[35],大約共有166 643幀.對于每個視頻,本文選取相鄰t-1和t兩幀進行配對,然后將每幀裁剪出以目標位置為中心、1.5倍padding大小的圖片塊,并統一成125×125個像素點.學習率γ設為 0.072,目標候選區域 padding為 2.3.本文利用隨機梯度下降的方法更新網絡參數,大約訓練了 20 epoch.網絡測試所選用的數據集為OTB-2013和OTB-2015,其中,訓練集與測試集無交叉,包含了各種具有挑戰性的場景,如:目標遮擋、光照變化以及目標快速運動等.本文選取了9種當前國際上具有代表性的相關算法,分別是DCFNet算法、SRDCF算法、CFNet算法、KCF算法、LCT算法、MEEM算法、Staple算法、SAMF算法、DSST算法,并將本文算法與這9種算法進行了對比實驗.其中,DCFNet算法是基于CNN直接回歸圖像中目標候選區域響應的一般回歸算法,本文將其作為對比的基準算法.
圖4給出了5種跟蹤算法在數據集中5個視頻序列上的部分跟蹤結果,視頻按照從左到右、從上到下的順序分別是 carScale(第 110、167、183、194 幀)、bird2(第 49、60、70、75 幀)、tiger1(第 34、37、39、93 幀)、deer(第 11、26、28、33幀)、trans(第37、43、50、53幀).其中,不同的跟蹤算法用不同的顏色表示,紅色為本文算法,左上角的數字為當前圖像幀數.通過它們在具體視頻序列中的表現,對結果進行比對和分析后可以發現,本文提出的算法對目標位置的預測結果是比較理想的.
(1) 快速尺度變化:以“CarScale”為例,目標在跟蹤過程中出現了劇烈的尺度變化,雖然給出的5種算法都能始終跟蹤目標,但是只有本文算法能夠很好地適應目標的尺度,隨著目標尺度的變化實現理想跟蹤.
(2) 目標平面內/外旋轉、目標形變:以“bird2”為例,目標在跟蹤過程中出現了內外旋轉變化,對算法的高度旋轉不變性提出了要求,這里,DCFNet、SRDCF以及KCF跟蹤結果都有偏差,只有本文提出的算法和CFNet方法能夠較好地跟蹤目標.
(3) 遮擋、光照變化:以“tiger1”為例,在第34、37和39幀時,目標被樹葉遮擋,跟蹤結果中其他算法都出現了不同程度的跟蹤漂移,只有本文算法對目標遮擋問題具有較好的魯棒性,能夠始終準確地跟蹤目標,在第 93幀時,背景光照出現了劇烈變化,除了本文提出的算法和 DCFNet方法能夠較好地跟蹤目標外,其他算法都偏離了目標.
(4) 運動模糊、低分辨率:以“deer”為例,這段視頻跟蹤目標的分辨率較低,而且小鹿在跳躍中運動出現了模糊,考驗了算法在復雜條件下對目標特征的提取,在跟蹤結果中,DCFNet和KCF都出現了跟蹤失敗,本文算法能夠始終魯棒地跟蹤目標,對低分辨率的模糊運動目標具有較好的處理能力.
(5) 快速運動、相似背景:以“trans”為例,目標在快速運動過程中伴隨著與目標相似的背景,對算法跟蹤的準確性具有很大的挑戰,只有本文提出的算法和 DCFNet方法能夠始終準確地跟蹤目標,而其他算法都出現了不同程度的漂移現象.
為了綜合評價算法的跟蹤性能,本文采用跟蹤精度和跟蹤成功率這兩個通用的評價指標來進行定量分析.其中,跟蹤精度是指當平均中心位置誤差小于 20像素時,算法成功跟蹤的幀數與視頻總幀數的比值;跟蹤成功率是指當覆蓋率overlap>0.5時,算法成功跟蹤的幀數與視頻總幀數的比值.
在數據集OTB-2013下,由圖5(a)和圖5(b)可以得到所列10種算法的跟蹤精度和跟蹤成功率曲線AUC(area under curve)值.由圖 5(a)可以看出,本文算法的精度最高,達到了 0.856,相比 DCFNet算法,提高了 6.1%,相比CFNet算法,提高了 3.4%;由圖 5(b)中的曲線可以看出,本文算法的跟蹤成功率最高,AUC值達到了 0.652,相比DCFNet算法,提高了3%,相比CFNet算法,提高了4.2%.這種跟蹤精度和跟蹤成功率的明顯提升,是因為本文引入了相鄰超像素塊之間的相似性關系,使得響應圖更加平滑,校正了目標位置.
在數據集OTB-2015下,由圖5(c)和圖5(d)中的曲線可以看出,與所列的9種其他跟蹤算法相比,本文算法的跟蹤精度最高,達到了 0.797,相比 DCFNet算法,提高了 4.8%,相比 CFNet算法,提高了 1.7%;跟蹤成功率也最高,AUC值達到了0.612,相比DCFNet算法,提高了3.5%,相比CFNet算法,提高了2.4%,驗證了算法的有效性和魯棒性.
為了進一步分析跟蹤算法在不同跟蹤條件下的跟蹤性能,表 1和圖 6分別給出了 10種算法在數據集OTB-2013下11種不同屬性的跟蹤結果,包括算法的成功率和跟蹤精度.表1中紅色加粗的數字表示最優結果,藍色加粗的數字表示次優結果,黑色加粗的數字表示排名第 3的結果,其中的字母縮寫分別表示不同的跟蹤條件,分別是:LR(低分辨率)、BC(背景雜波)、OV(目標超出視野)、IPR(平面內旋轉)、FM(快速運動)、MB(運動模糊)、DEF(目標形變)、OCC(目標遮擋)、SV(尺度變化)、OPR(平面外旋轉)、IV(光照變化).
由表1和圖6可以看出,在11種不同屬性的跟蹤條件中,除了DEF屬性,本文算法的成功率和跟蹤精度在其他屬性中均處于最優或次優的位置,尤其是在SV屬性下,成功率達到了0.664,比第2名的DCFNet高了4.5%,比第3名的SRDCF高了7.7%,展現了本文算法在目標尺度變化上的跟蹤優勢,同時也表明了對于其他復雜條件下的跟蹤,本文算法也具有較好的魯棒性.

Table 1 Success score of average AUC for each attribute on OTB-2013表1 不同屬性下算法在OTB-2013中的跟蹤成功率對比結果

Fig.6 Precision score at 20 pixels for 11 attributes on OTB-2013圖6 OTB-2013中11種屬性下算法的跟蹤精度對比結果
表2給出了各種算法在OTB-2013和OTB-2015這兩個數據集上的平均視頻跟蹤速率(單位為fps).可以發現,本文算法的跟蹤速度與DCFNet相近,比CFNet高約14幀/s左右,這是因為在濾波器的在線更新過程中,通過向量的傅里葉變換和點積運算取代了時域的卷積運算,同時避開了矩陣求逆,將原先矩陣相乘O(n3)的計算量轉換為了傅里葉變換nlog(n)和向量點乘n,極大地提高了濾波器的訓練速度.
總體來說,本文算法在基于深度學習的跟蹤算法中,跟蹤速率較快,可以實現跟蹤的實時性要求.

Table 2 Tracking speed for OTB-2013 and OTB-2015 compared with baseline methods表2 各種算法在OTB-2013和OTB-2015數據集上的平均視頻跟蹤速度
本文將連續 CRF模型運用到目標跟蹤領域中,將一元狀態函數與二元轉移函數嵌入到深度卷積神經網絡中,設計了一個端到端的框架.該算法通過結合一元狀態函數得到的初始響應圖和二元轉移函數得到的相似度矩陣對目標位置進行校正,從而得到了一個更平滑、更精確的響應圖,提高了跟蹤的精度.本文在 OTB-2013和OTB-2015這兩個數據集上進行了大量的測試,在復雜的跟蹤條件下,與近年來9種在國際上具有代表性的相關算法進行了對比分析,實驗結果表明,優化后的算法不僅得到了精度高、魯棒性好的跟蹤結果,同時也較好地解決了跟蹤過程中的各類復雜狀況,有效地提高了目標跟蹤的成功率.
在今后的工作中,我們將會繼續研究由相鄰超像素塊之間依賴關系構建的相似度矩陣,并且進一步優化各類參數,從而校正目標位置的響應,提高算法的魯棒性.