盧盼成 丁 勇 黃鑫城
(南京航空航天大學自動化學院 江蘇 南京 211106)
目標跟蹤是計算機視覺領域的核心問題,在智能交通[1]、醫學輔助診斷[2]、軍事制導、航空視覺導航等各方面都發揮著重要的作用。近年來隨著人工智能技術的飛速發展,基于卷積神經網絡的深度學習方法在目標跟蹤領域展現出巨大潛力。
近20年來,涌現出了大量的目標跟蹤算法,根據其工作原理主要分為生成式模型和判別式模型兩類。早期的目標跟蹤算法研究主要集中在生成式模型上,如光流法[3]、粒子濾波[4]、Mean-shift算法、Cam-shift算法等。此類方法首先建立目標模型或者提取目標特征,然后對后續幀進行相似特征搜索實現對目標的定位。但此類方法也存在明顯的缺點,如圖像的背景信息沒有得到全面的利用且目標本身的外觀變化有隨機性和多樣性的特點。判別式模型則是同時考慮目標模型和背景信息,通過比較兩者的差異,將目標模型提取出來,從而得到當前幀的目標位置。由于判別式模型將背景信息引入跟蹤模型,可以很好地實現背景區分,因此具有很大的優勢。2000年以來,人們逐漸嘗試采用經典的機器學習方法訓練分類器,例如MIL(Matrox Imaging Library)、TLD(Tracking Learning Detection)、支持向量機(Support Vector Machine,SVM)[5]等。盡管這些分類器種類繁多并具有一定的學習能力,但分類效果存在不確定性。2010年,文獻[6]首次將通信領域的相關濾波(Correlation Filtering)方法引入到目標跟蹤中,提高了目標跟蹤的速度和精度,但對于多尺度的目標跟蹤效果并不理想。2015年以后,隨著卷積神經網絡在圖像領域的廣泛應用,人們開始將深度學習的方法應用于目標跟蹤[7]。由于該方法缺乏正樣本訓練數據,同時,隨著神經網絡規模的增加跟蹤實時性很低。因此深度學習的方法難以訓練出性能優良的分類器,不能滿足快速運動目標的實時跟蹤。
針對深度學習方法在目標跟蹤中的問題,孿生全卷積網絡的目標跟蹤方法由于其端到端的訓練能力和跟蹤的實時性備受關注[8-11]。雖然孿生全卷積網絡通過相似性學習的方法解決了深度學習在目標跟蹤領域的實時性問題,但它的一個關鍵限制是缺少有效的模型更新策略,無法將來自背景區域或先前跟蹤幀的信息融合到模型預測中。近年來相關文獻的研究旨在解決這個問題。Valmadre等[9]將相關濾波器整合到深層網絡中,但由于濾波器判別能力有限,難以有效區分跟蹤目標與相似目標。Yao等[12]在訓練階段,通過特征提取器去學習跟蹤參數,但參數本身不能應用于多個樣本,需要特殊的線性濾波器組合來適應模型。Park等[13]從初始幀出發,通過獨立的學習框架優化梯度下降過程和學習的步長,然而這種策略只適用于模型的初始自適應,并不能改善迭代時的模型本身。此外,Guo等[14]通過學習變化特征來處理目標外觀變化帶來的影響,從而抑制周圍相似目標的干擾;Zhu等[15]在目標跟蹤期間,從目標模板中減去相似目標圖像特征達到排除相似目標干擾的目的。以上兩種方法為在線更新,定位精度高但模型學習效果較差。綜上可見,孿生全卷積網絡在進行目標跟蹤時,仍然無法有效解決跟蹤目標易受相似目標干擾的問題。
針對上述問題,本文提出一種基于預判式學習更新策略孿生全卷積網絡(Pre-judgment Learning Update Strategy Full-Convolutional Siamese Networks,Prl-SiamFC)的目標跟蹤算法。由目標模板和搜索區域模型建立置信度估計,將模型更新策略加入到端到端的跟蹤架構中,解決了孿生全卷積網絡在目標跟蹤時相似目標干擾的問題。
傳統孿生全卷積網絡(Full-Convolutional Siamese Networks,SiamFC)的結構如圖1所示。在進行目標跟蹤時,首先構建目標模板和搜索區域,然后采用兩個相同的卷積神經網絡,分別獲取目標模板和搜索區域的卷積特征。最后對特征再進行卷積操作得到預測分數矩陣,從而定位到原始圖片的目標跟蹤區域。

圖1 傳統孿生全卷積網絡結構
本文所提出的預判式學習更新策略的孿生全卷積網絡在孿生全卷積網絡基礎上加入了置信度估計模塊和預判式學習模塊,如圖2所示。從輸入端到輸出端,總體框架包括卷積網絡模塊、置信度估計模塊和預判式學習模塊三個部分。卷積網絡模塊的網絡構架采用孿生全卷積網絡的AlexNet;置信度估計模塊對目標模板和搜索區域建立顏色直方圖密度估計;預判式學習模塊包括初始化模塊和優化器模塊兩個部分。

圖2 預判式學習更新策略孿生全卷積網絡總體框架
圖2中,視頻序列輸入后,根據給定序列坐標中心建立目標模板及搜索區域;卷積網絡模塊用來提取目標模板和搜索區域的卷積特征;置信度估計模塊用來對目標模板與搜索區域進行置信度估計,作為卷積權重濾波器f更新的參考標準;在預判式學習模塊中,將視頻序列的初始正確標注數據(Ground Truth,GT)平均分布在數據集s上,獲得初始模型f(0),同時根據置信度估計判別跟蹤序列中是否存在相似目標干擾,從而決定是否更新f(i)。
預判式學習更新策略孿生全卷積網絡的置信度估計模塊,對跟蹤算法的精度、成功率和速度具有至關重要的影響。目標模板與搜索區域的卷積特征具有良好的魯棒性,但不能從中有效地得到相似目標干擾的相關特征。若要實現對跟蹤目標和相似目標的有效區分,則需要在原卷積網絡模塊中附加用于相似目標提取的卷積模塊,這種方法在提高跟蹤成功率的同時會降低跟蹤速度。
本文選取具有較高判別精度且計算量小的顏色直方圖密度估計[16]的方法,在保證目標跟蹤速度的基礎上,建立目標模板與搜索區域的置信度估計,作為模型更新的參考標準,可以最大限度在不降低目標跟蹤速度的基礎上提高模型跟蹤的成功率。

(1)


(2)
式中:h是核函數的帶寬;Ch是基于h的歸一化系數函數。
(3)
式中:y0為搜索區域初始中心坐標。wi計算如下:
(4)
由式(3)可知,置信度值Csiam∈[0,1]。Csiam越接近1,表示目標模板與搜索區域相似度越高;Csiam越接近0,表示搜索區域中越可能存在相似目標,則需要進行預判式學習模塊更新。為保證跟蹤實時性,間隔20幀進行置信度估計及預判式學習模塊更新。
在目標跟蹤過程中,影響跟蹤的三個重要因素是特征、分類器和模型更新策略[17]。孿生全卷積網絡中特征采用的是卷積神經網絡CNN提取到的圖像特征,分類器根據目標模板與搜索區域的相似性進行學習,而整個網絡缺乏有效的模型更新策略。本文給出預判式學習模塊D,在整個模型更新過程中,S為數據集,f是具有卷積層權重的濾波器,預判式學習模塊的作用是給出預測函數f=D(S),用于在特征空間中區分跟蹤目標和背景外觀。
為保證預判式學習更新策略孿生全卷積網絡的穩健性,定義預判式學習的損失函數L(f)為:
(5)

在實際的樣本訓練中,如果單純以圖片的方式進行訓練,傳統的嶺回歸問題只會讓網絡過分注意于優化負樣本的影響,而忽略正樣本特征本身的判別能力。為此引入空間權重系數vc,通過權重系數使得前景和背景之間具有一定的距離,改善分類結果。定義殘差函數r(s,c)為:
r(s,c)=vc(mcs+(1-mc)max(0,s)-yc)
(6)
式中:mc為目標分割系數,具體參數選擇通過網絡學習得到[18],若目標中心在跟蹤目標區域,則mc=1;若目標中心在跟蹤背景區域,則mc=0;s為目標置信度得分;yc是以c=(x0,y0)為中心的二階高斯函數,表示每個位置的目標期望得分。yc具體計算如下:
(7)
式中:σ為高斯函數分布方差。
在用預判式學習更新策略孿生全卷積網絡進行目標跟蹤的過程中,將固定學習率η設為自重啟式學習率ηt,對Ti次已經完成數據集訓練的學習率采用余弦退火,即:
(8)

上述的自重啟隨機梯度下降算法通過給定Ti和Tcur,使得學習率ηt出現衰減變化,當學習率ηt下降到最小值后,再次變為初始值,模擬出現自重啟現象。這種優化策略避免了神經網絡使用固定學習率易于陷入到鞍點中,收斂于局部最優,有效解決了孿生全卷積網絡訓練中的損失誤差和病態函數問題。
傳統的目標跟蹤算法通常在確定跟蹤目標后,再來衡量模型的可靠性,進而采取相應的更新策略。然而這種更新策略存在滯后性,并不能進行動態調整實現提前更新,以應對復雜的目標跟蹤。針對此問題,本文對卷積層權值濾波器f進行了預判式更新。
在預判式學習模塊中,我們引入初始化模塊,該模塊由一個卷積層和一個精確的池化層組成,用來生成初始模型f(0)。初始模型f(0)只提供一個合理的初始估計,用來進一步減少預判式學習模塊的優化遞歸次數,然后由優化器模塊進行處理,以提供最終的識別模型。初始化模塊完成初始化后,對式(5)預判式學習損失函數L(f)求偏導得:
(9)

(10)
令qc=vcmc+(1-mc)·ls,對于qc僅使用點操作,對于正樣本,ls>0,對于負樣本,ls=0。由此得到:
(11)
最終,由式(9)和式(11)推導出卷積權重濾波器f的梯度下降表達式為:
(12)
在得到上述梯度下降值的基礎上,采用3.1節中的自重啟學習率ηt,則濾波器f的更新表達式為:
(13)
綜上,本文算法在卷積網絡獲取目標模板和搜索區域的卷積特征時,每隔20幀同時對目標模板和搜索區域進行了置信度估計,由置信度值Csiam提前預判序列幀中是否存在相似目標。當置信度值Csiam小于給定閾值時,則跟蹤目標周圍可能存在相似目標,進而考慮卷積層權值濾波器f的更新。這種更新策略在確定跟蹤目標區域前進行預判確定是否更新,實現了卷積層權值濾波器f的實時更新,在保證跟蹤的準確性和穩定性的同時,有效解決了相似目標干擾的問題。
本文算法流程描述如下:

步驟2由數據集的給定GT進行模塊初始化,即f(0)←S,得到初始模型f(0)。
步驟3卷積網絡模塊提取目標模板和搜索區域卷積特征。
步驟4間隔20幀計算目標模板及搜索區域置信度值Csiam為:
步驟5判斷置信度值Csiam是否大于閾值,若大于閾值則執行步驟9,否則執行步驟6-步驟8,對濾波器f進行更新。

步驟7采用步驟6中的學習率,計算卷積權重濾波器f的梯度下降值:
▽L(f(i))←(f(i),S)
步驟8卷積層權值濾波器f進行預判式更新:
步驟9對搜索區域和經過濾波器f過濾掉相似目標的目標模板進行卷積操作。
步驟10卷積操作輸出預測分數矩陣,矩陣經線性插值定位到原始圖片的目標位置,實現目標跟蹤。
本文實驗所使用的測試基準是OTB 2013,包含50個長短時序列,視頻序列影響因素包括相似目標干擾、平面內旋轉、光照變化、快速運動等11種類型。預判式學習更新策略孿生全卷積網絡構架采用AlexNet,如表1所示,其中前兩層卷積層后均接有池化層,除了最后一層,每一層均使用ReLU激活函數。

表1 預判式學習更新策略孿生全卷積網絡構架
在實驗中,預判式學習更新策略孿生全卷積網絡初始化參數設置如表2所示。

表2 預判式學習更新策略孿生全卷積網絡初始化參數
為了有效地評估本文所提算法的性能,實驗中的對比算法均來自相應作者的公開代碼。所有實驗都在Inter(R)Core(TM)i5-2450M CPU@ 2.50 GHz、4 GB內存、NVIDIA GeForce GTX 750 Ti臺式機上進行,算法通過MATLAB 2018a、Visual Studio 2015、CUDA 9.0、CUDNN 7.0實現。
實驗從預判式學習更新策略孿生全卷積網絡不同模塊消融對比、數據集訓練識別精度、對比孿生全卷積網絡和跟蹤算法整體性能四個方面進行驗證。
本文采用一次通過測試(One-pass Evaluation,OPE)對預判式學習更新策略孿生全卷積網絡Prl-SiamFC的置信度估計模塊和預判式學習模塊分別進行了測試實驗,結果如表3所示。可以看出,與孿生全卷積網絡SiamFC相對比,預判式學習模塊提高了4.05%的跟蹤成功率。與無置信度估計模塊的Prl-SiamFC相比,置信度估計模塊提高了7.41%的跟蹤精度,置信度估計模塊和預判式學習對跟蹤精度和成功率均有較大提升效果;與孿生全卷積網絡SiamFC的跟蹤速度相比,采用置信度模塊和預判式學習模塊基本上對跟蹤速度沒有太多影響。

表3 預判式學習更新策略孿生全卷積網絡不同模塊消融對比
采用Minist手寫數字數據集進行10 000次迭代,Prl-SiamFC和SiamFC的數據集訓練識別精度效果如圖3所示,(a)為原始識別誤差散點分布情況,(b)為識別誤差擬合曲線。

圖3 Prl-SiamFC與SiamFC數據集訓練識別精度比較
可以看出,與SiamFC相比,采用自重啟式學習率的Prl-SiamFC初始收斂速度更快,收斂過程更加平穩,數據集訓練識別誤差精度平均減少93%且不存在較大波動。因此,Prl-SiamFC比SiamFC學習效果更好。
為了驗證本文所提的Prl-SiamFC在存在相似目標干擾情況下跟蹤性能的優越性,本文將其與SiamFC和三種尺度孿生全卷積網絡(簡稱:SiamFC_3S)對具體幀的跟蹤情況進行比較。如圖4所示,選取4組視頻序列,視頻圖中左上角數字為當前圖像幀數,黑框為Prl-SiamFC,白框為SiamFC和SiamFC_3S。

圖4 相似目標干擾下跟蹤性能比較
可以看出,4組視頻的第10幀均能確定跟蹤目標且跟蹤精度較高,但序列Matrix第50幀、序列Liquor第1 500幀和序列Soccer第350幀以后,SiamFC和SiamFC_3S均出現跟蹤丟失的情況,而Prl-SiamFC始終跟蹤目標,具有較好的跟蹤效果。
對上述4組視頻序列,如圖5所示,采用中心位置誤差進行對比分析,這里的中心位置誤差是指視頻跟蹤結果中心點與真值中心點之間的歐氏距離。

圖5 不同算法在相似目標干擾下中心位置誤差比較
可以看到,Prl-SiamFC的中心位置誤差除了在視頻序列Football中最后幀數出現波動外,序列Matrix、Liquor和Soccer的中心誤差始終保持在較低水平,序列Matrix和Soccer的中心位置誤差平均小于20,在跟蹤過程中有效解決了跟蹤目標周圍存在相似目標干擾問題。
在OTB 2013測試下,采用OPE、空間魯棒性測試(Spatial Robustness Evaluation,SRE)、時間魯棒性測試(Temporal Robustness Evaluation,TRE)三種標準,分別測試Prl-SiamFC與SiamFC的跟蹤效果,如圖6所示。各標準下的整體跟蹤效果提升等于跟蹤精度和成功率提升的平均值。在OPE、SRE、TRE三種標準測試下,Prl-SiamFC與SiamFC相比,整體跟蹤效果分別提升了7.75%、10.14%、8.98%。

圖6 Prl-SiamFC改善SiamFC跟蹤效果曲線
除了整體跟蹤精度和成功率的提升,與SiamFC、SiamFC_3S相比,Prl-SiamFC對于跟蹤目標的變形、遮擋、尺度變化、平面內外旋轉等問題,均有跟蹤效果的明顯提升,如表4所示。特別是對跟蹤目標出現運動模糊和視野外的問題,Prl-SiamFC相比較于SiamFC、SiamFC_3S,跟蹤效果的平均提升效果在20%以上。

表4 Prl-SiamFC在其他方面跟蹤效果的提升 %
除了與SiamFC對比外,本文在OTB 2013上還測試了18種經典的跟蹤算法,其中,前10名算法的跟蹤精度和成功率曲線,如圖7所示。圖中括號里數字表示中心位置誤差取值為20時對應的跟蹤精度和覆蓋閾值取值為0.5時對應的跟蹤成功率。

圖7 不同算法跟蹤性能比較
可以看出,本文的跟蹤算法精度和成功率明顯高于其他算法。在圖7(a)、(c)和(e)中,跟蹤精確度在中心位置誤差閾值為20像素時,在OPE、SRE、TRE下,本文跟蹤精確度高于CF2 0.90%、2.47%、3.76%;當中心誤差閾值小于20像素時,本文算法的精確度值更明顯高于其他算法,這說明在高精度約束下,本文算法的跟蹤效果更好。在圖7(b)、(d)和(f)中,本文算法的跟蹤成功率比深度學習跟蹤算法SRDCFdecon提高了2.21%、4.34%、3.44%;當覆蓋閾值處于0.2~0.8位置時,本文算法的成功率明顯高于其他對比算法;當覆蓋閾值大于0.8時,本文算法也能保證最優性能。
綜上所述,本文所提的預判式學習更新策略孿生全卷積網絡滿足了目標跟蹤的各項性能要求,具有訓練識別誤差小、跟蹤精度高和成功率高的特點,算法整體具有良好的跟蹤性能。
本文提出預判式學習更新策略孿生全卷積網絡目標跟蹤算法,將模型更新策略加入到孿生全卷積網絡的端到端跟蹤架構中,由目標模板和搜索區域模型確定置信度并判別是否進行預判式學習模塊更新,解決了孿生全卷積網絡在目標跟蹤過程中相似目標干擾的問題。預判式學習更新策略孿生全卷積網絡與孿生全卷積網絡相比,數據集識別訓練精度更高,采用Minist數書寫數字據集測試,數據集訓練識別精度誤差平均減少93%。在OTB 2013 的OPE、SRE、TRE標準測試下,目標跟蹤精度提高了10.31%、12.55%、10.42%,成功率提高了5.18%、7.73%、7.53%,整體跟蹤精度和成功率與其他經典算法相比更優,性能表現優異。