成正國(guó),潘廣貞
(中北大學(xué) 計(jì)算機(jī)與控制工程學(xué)院,山西 太原030051)
?
基于TLD的動(dòng)態(tài)背景下視覺跟蹤技術(shù)研究
成正國(guó),潘廣貞
(中北大學(xué) 計(jì)算機(jī)與控制工程學(xué)院,山西 太原030051)
隨著科學(xué)技術(shù)的不斷發(fā)展,具有攝像功能的移動(dòng)設(shè)備越來越多,這給動(dòng)態(tài)場(chǎng)景下的視覺跟蹤技術(shù)開辟了廣闊的應(yīng)用前景。TLD(Tracking-Learning-Detection)算法是一種新穎、高效的長(zhǎng)時(shí)間視覺跟蹤算法。在該算法的基礎(chǔ)上對(duì)動(dòng)態(tài)場(chǎng)景下的視覺跟蹤技術(shù)進(jìn)行研究。首先對(duì)TLD算法的主要特點(diǎn)、框架流程進(jìn)行了總結(jié);然后重點(diǎn)分析了TLD算法綜合模塊的機(jī)制,針對(duì)原算法在跟蹤過程中出現(xiàn)漂移甚至跟蹤失敗的問題,對(duì)算法綜合模塊的整合機(jī)制提出改進(jìn);最后經(jīng)實(shí)驗(yàn)論證,改進(jìn)算法取得了預(yù)期的效果,在不影響運(yùn)行速度的情況下提高了跟蹤的穩(wěn)定性和識(shí)別率。
視覺跟蹤算法;動(dòng)態(tài)背景;TLD;綜合模塊
隨著科學(xué)技術(shù)的不斷發(fā)展,具有攝像功能的移動(dòng)設(shè)備越來越多,如各種手持設(shè)備[1]、車載設(shè)備[2]、機(jī)器人(包括UAV)[3]、PTZ攝像機(jī)[4]等。這些設(shè)備上的攝像頭就如同它們的“眼睛”,如果利用智能視頻分析算法,賦予這些設(shè)備思考的“大腦”,那將給生產(chǎn)、生活的很多方面提供便捷。但是,視頻分析的首要前提是對(duì)其中的特定目標(biāo)實(shí)現(xiàn)跟蹤[5-8]。目前,靜態(tài)背景下的視覺跟蹤技術(shù)已經(jīng)日趨成熟。然而,很多實(shí)際應(yīng)用需要攝像頭運(yùn)動(dòng)才能對(duì)目標(biāo)實(shí)現(xiàn)連續(xù)、有效的跟蹤。但是,移動(dòng)攝像勢(shì)必引起整個(gè)背景的運(yùn)動(dòng),相對(duì)于靜態(tài)背景的情況,這大大增加了視覺跟蹤的復(fù)雜度[9],以至于很多靜態(tài)背景下的方法不再有效。因此研究動(dòng)態(tài)背景下的視覺跟蹤非常必要。
TLD(Tracking-Learning-Detection)是英國(guó)Surrey大學(xué)的Zdenek Kalal在2009—2012年間提出并不斷完善的一種視覺跟蹤算法[10-13]。2013年Yi Wu等人在CVPR上發(fā)表了一篇文章,文中對(duì)二十幾種目標(biāo)跟蹤算法進(jìn)行了比較,TLD算法排在前三,跟蹤效果是目前相對(duì)來說較好的[14]。
由于TLD良好的跟蹤效果,基于該算法的研究也越來越多。本文主要針對(duì)原TLD算法在跟蹤過程中出現(xiàn)目標(biāo)框漂移和跟蹤失敗的情況,對(duì)原算法的綜合模塊提出改進(jìn)。
1.1 TLD跟蹤算法
TLD算法的主要特點(diǎn):
1)將跟蹤和檢測(cè)相結(jié)合,綜合模塊對(duì)跟蹤器與檢測(cè)器的輸出綜合分析以后給出最終結(jié)果;
2)通過一種在線學(xué)習(xí)機(jī)制不斷更新跟蹤器和檢測(cè)器的目標(biāo)模型及相關(guān)參數(shù);
3)一幀初始化,無需線下訓(xùn)練,只需要較少的先驗(yàn)信息就可以實(shí)現(xiàn)對(duì)不確定目標(biāo)的長(zhǎng)期跟蹤;
TLD算法的流程框架:TLD算法主要包含4個(gè)部分——檢測(cè)、跟蹤、綜合以及學(xué)習(xí)。如圖1所示,在起始幀通過文件輸入或者鼠標(biāo)框選的方式指定跟蹤的目標(biāo),用得到的目標(biāo)框和第一幀圖像完成TLD算法的初始化(主要是初始化檢測(cè)器和目標(biāo)模型),隨后開始進(jìn)行跟蹤。
圖1 TLD算法框架圖
跟蹤器基于中值流法根據(jù)目標(biāo)在前一幀中的位置信息來估計(jì)其在當(dāng)前幀中的位置[11]。檢測(cè)器對(duì)當(dāng)前幀全局窗口進(jìn)行掃描,通過級(jí)聯(lián)分類器檢測(cè)出一個(gè)或者多個(gè)可能的目標(biāo)位置。檢測(cè)器和跟蹤器的結(jié)果都輸入到綜合模塊,由該模塊分析、整合后得到最優(yōu)結(jié)果,并決定是否啟動(dòng)學(xué)習(xí)模塊。如果啟動(dòng)學(xué)習(xí)模塊,由學(xué)習(xí)模塊分析后決定是否更新目標(biāo)模型,并對(duì)跟蹤器和檢測(cè)器進(jìn)行更新[12]。
更多關(guān)于原TLD的內(nèi)容請(qǐng)參閱文獻(xiàn)[10-13]。
1.2 綜合模塊的改進(jìn)
本文主要針對(duì)原TLD算法在跟蹤過程中出現(xiàn)目標(biāo)框漂移和跟蹤失敗的情況,對(duì)原算法的綜合模塊提出改進(jìn)。原TLD算法綜合模塊整合機(jī)制見表1。
表1 原TLD算法綜合模塊整合機(jī)制
表1中tbb表示跟蹤器輸出的目標(biāo)框,dbb表示檢測(cè)器輸出的目標(biāo)框集,dt.bb表示檢測(cè)器中集合分類器輸出的目標(biāo)框集,cbb表示對(duì)dbb聚類后的目標(biāo)框集,confident_detections表示與tbb重疊度小于0.5且可信度比tbb的大的cbb數(shù)量,close_detections表示與tbb重疊度大于0.7的dbb數(shù)量,tconf表示tbb的可信度,cconf表示cbb的可信度集。
情況一,當(dāng)跟蹤器和檢測(cè)器都有輸出時(shí),分4種情況:
1)當(dāng)confident_detections=1,用唯一的cbb[didx]作為最終輸出,學(xué)習(xí)模塊不學(xué)習(xí);
2)當(dāng)confident_detections=0時(shí),close_dectections>0,用所有距離tbb很近的dbb和tbb進(jìn)行加權(quán)平均得到最終輸出,其中tbb權(quán)值較大,學(xué)習(xí)模塊學(xué)習(xí);
3)當(dāng)confident_detections>1且close_dectections>0,用所有距離tbb很近的dbb和tbb進(jìn)行加權(quán)平均得到最終輸出,學(xué)習(xí)模塊學(xué)習(xí);
4)當(dāng)confident_detections>1且close_dectections=0,用tbb作為最終結(jié)果輸出,學(xué)習(xí)模塊學(xué)習(xí)。
情況二,當(dāng)跟蹤器有輸出而檢測(cè)器無輸出時(shí),直接把tbb作為最終結(jié)果輸出,學(xué)習(xí)模塊學(xué)習(xí)。
情況三,當(dāng)跟蹤器沒有輸出而檢測(cè)器有輸出時(shí),分兩種情況:
1)當(dāng)dbb聚類后cbb只有一個(gè),則將cbb[0]作為最終輸出,學(xué)習(xí)模塊不學(xué)習(xí);
2)當(dāng)dbb聚類后cbb不只一個(gè),則沒有輸出,跟蹤失敗,學(xué)習(xí)模塊不學(xué)習(xí)。
情況四,當(dāng)跟蹤器和檢測(cè)器都沒有輸出時(shí),無最終輸出,跟蹤失敗,學(xué)習(xí)模塊不學(xué)習(xí)。
改進(jìn)算法綜合模塊的機(jī)制如表2所示。
表2 改進(jìn)算法綜合模塊整合機(jī)制
對(duì)于情況一,當(dāng)跟蹤器與檢測(cè)器都有輸出且confident_detections=1,分兩種情況:
1)當(dāng)cbb的數(shù)量等于1,說明檢測(cè)器輸出集中程度高,用cbb[0]作為輸出,學(xué)習(xí)模塊不學(xué)習(xí);
2)當(dāng)cbb的數(shù)量大于1,說明檢測(cè)器大部分輸出與跟蹤器輸出接近,用所有距離tbb很近的dbb和tbb進(jìn)行加權(quán)平均得到最終輸出,學(xué)習(xí)模塊學(xué)習(xí)。
對(duì)于情況三,當(dāng)cbb的數(shù)量不等于1,按可信度排序,找出其中可信度最高的cbb[didx]。學(xué)習(xí)模塊不學(xué)習(xí)。
對(duì)于情況四,當(dāng)檢測(cè)器和跟蹤器都沒有輸出,原算法就跟蹤失敗了。而實(shí)際上檢測(cè)器是由方差分類器、集合分類器和最近鄰分類器級(jí)聯(lián)而成。實(shí)驗(yàn)發(fā)現(xiàn),當(dāng)檢測(cè)器沒有輸出的時(shí)候,即處于檢測(cè)器最后一級(jí)的最近鄰分類器沒有輸出的時(shí)候,中間級(jí)的集合分類器總是存在輸出的,而且這些輸出已經(jīng)很接近目標(biāo)位置了。在這個(gè)情況下可以將該結(jié)果輸出,對(duì)其進(jìn)行聚類,找出其中比較集中的目標(biāo)框,取它們的外接矩形框作為最終輸出。因?yàn)樵摻Y(jié)果不是很精確,所以學(xué)習(xí)模塊不進(jìn)行學(xué)習(xí)。
2.1 實(shí)驗(yàn)環(huán)境
硬件環(huán)境:Dell Precision T3500計(jì)算機(jī),Intel(R) Xeon(R) CPU W3503 @ 2.40 GHz雙核處理器,NVIDIA Quadro FX 580 (Microsoft Corporation - WDDM v1.1) 雙顯卡,6 Gbyte內(nèi)存。
軟件環(huán)境:64位Ubuntu 12.04操作系統(tǒng),opencv2.3。
測(cè)試視頻:本文采用TLD標(biāo)準(zhǔn)測(cè)試數(shù)據(jù)集中的視頻序列進(jìn)行測(cè)試[13]。測(cè)試集中的運(yùn)動(dòng)目標(biāo)共4類:人臉、行人、車和動(dòng)物,其中人臉和車是相對(duì)剛性的目標(biāo),行人和動(dòng)物則是非剛性的。測(cè)試集中相機(jī)的運(yùn)動(dòng)模式共4類:旋轉(zhuǎn)、平移、縮放和傾斜。表3列出了所選測(cè)試視頻的屬性,基本涵蓋了目標(biāo)檢測(cè)與跟蹤過程中經(jīng)常會(huì)遇到的一些場(chǎng)景變化。
表3 視頻序列屬性
2.2 實(shí)驗(yàn)結(jié)果分析
實(shí)驗(yàn)結(jié)果的定量比較如表4所示。第3列和第6列分別表示改進(jìn)前后的正確識(shí)別幀數(shù),第4列和第7列分別表示改進(jìn)前后處理整個(gè)視頻需要的總時(shí)間,第5列和第8列分別表示改進(jìn)前后平均處理一幀所需的時(shí)間。
2.2.1 識(shí)別率分析
1)通過縱向比較改進(jìn)前后的正確識(shí)別幀數(shù),可以看出,對(duì)綜合模塊進(jìn)行改進(jìn)之后,總體目標(biāo)識(shí)別率有所提高,對(duì)非剛性目標(biāo)的識(shí)別率提高較為明顯。
2)通過橫向比較不同數(shù)據(jù)集的識(shí)別率,可以看出,對(duì)于非剛性目標(biāo)的識(shí)別率相對(duì)低些;剛性目標(biāo)因?yàn)槠湓谶\(yùn)動(dòng)過程中變化較小,所以識(shí)別率相對(duì)高些。
表4 實(shí)驗(yàn)結(jié)果分析
另外,相機(jī)的運(yùn)動(dòng)模式對(duì)視覺跟蹤的識(shí)別率也有一定的影響??s放、傾斜這兩種運(yùn)動(dòng)模式對(duì)目標(biāo)識(shí)別的影響較小;而旋轉(zhuǎn)、平移這兩種運(yùn)動(dòng)模式下的目標(biāo)識(shí)別率較低。這主要是因?yàn)榭s放和傾斜過程中,目標(biāo)特征在相機(jī)平面上的投影變化較小,而在旋轉(zhuǎn)和平移的過程中,目標(biāo)特征變化較大。
2.2.2 運(yùn)算速度分析
通過比較改進(jìn)前后的運(yùn)行時(shí)間,可以看出:
1)綜合模塊的改進(jìn)沒有對(duì)算法的運(yùn)算速度造成大的影響。
2)TLD算法的實(shí)時(shí)性還不夠高,若要移植到嵌入式平臺(tái),還有待改進(jìn)。
3)不同視頻序列平均每幀消耗的時(shí)間有差異。這主要是因?yàn)槟繕?biāo)的大小和圖像的大小不同。另外,當(dāng)背景中出現(xiàn)跟蹤對(duì)象的相似目標(biāo)或者相似特征,也會(huì)影響處理的速度。
改進(jìn)算法實(shí)驗(yàn)效果截圖如圖2所示。
本文基于TLD算法對(duì)動(dòng)態(tài)背景下的視覺跟蹤技術(shù)進(jìn)行了研究,針對(duì)原算法在跟蹤目標(biāo)過程中出現(xiàn)漂移甚至跟蹤失敗的問題,對(duì)算法綜合模塊的整合機(jī)制進(jìn)行了分析和改進(jìn)。
最后通過實(shí)驗(yàn)對(duì)改進(jìn)的算法和原算法進(jìn)行了比較分析,改進(jìn)的算法在穩(wěn)定性和識(shí)別率方面都有所提升,取得了不錯(cuò)的效果。
下一步的研究準(zhǔn)備從兩方面進(jìn)行。首先,改進(jìn)算法的學(xué)習(xí)機(jī)制,進(jìn)一步提高算法的識(shí)別率;另外,從實(shí)時(shí)性方面對(duì)算法進(jìn)行改進(jìn),提高算法的運(yùn)算速度,爭(zhēng)取早日將該算法應(yīng)用到嵌入式機(jī)器視覺系統(tǒng)中。
圖2 不同情況下改進(jìn)算法的跟蹤效果
[1]DELL N, FRANCIS I, SHEPPARD H, et al.Field evaluation of a camera-based mobile health system in low-resource settings[C]//Proc.16th International Conference on Human-computer Interaction with Mobile Devices & Services.New York: ACM Press, 2014: 33-42.
[2]鹿文浩, 王生進(jìn).魯棒的車載攝像頭對(duì)向車輛檢測(cè)與跟蹤方法[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版, 2013, 53(11):1509-1514.
[3]KURNIAWAN M N, WIDIYANTO D.Implementation of image processing algorithms and GLVQ to track an object using AR Drone camera [J].Journal of Computer Science and Information, 2014, 7(2): 111-118.
[4]CHANG Faliang, ZHANG Guoqiang, WANG Xiaolin, et al.PTZ camera target tracking in large complex scenes[C]//Proc.2010 8th World Congress on Intelligent Control and Automation.Jinan: IEEE Press, 2010: 2914-2918.
[5]SHAN C F, PORIKLI F, XIANG T, et al.Video analytics for business intelligence[M].Berlin Heidelberg: Springer, 2012.
[6]YANG Hanxuan, SHAO Ling, ZHENG Feng, et al.Recent advances and trends in visual tracking: a review[J].Neurocomputing, 2011, 74(18): 3823-3831.
[7]YILMAZ A, JAVED O, SHAH M.Object tracking: a survey[J].ACM Computing Surveys, 2006, 38(4): 1-45.
[8]白曉方, 楊衛(wèi), 陳佩珩.一種改進(jìn)的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤方法[J].電視技術(shù), 2014, 38(1):180-182.
[9]孫斌,黃神治.移動(dòng)背景下運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤技術(shù)研究[J].電子測(cè)量與儀器學(xué)報(bào), 2011, 25(3): 206-210.
[10]KALAL Z, MATAS J, MIKOLAJCZYK K.Online learning of robust object detectors during unstable tracking [C]//Proc.IEEE On-line Learning for Computer Vision Workshop.New York:IEEE Press, 2009:1417-1424.
[11]KALAL Z, MIKOLAJCZYK K, MATAS J.Forward-backward error: automatic detection of tracking failures [C]//Proc.International Conference on Pattern Recognition.New York: IEEE Press, 2010:23-26.
[12]KALAL Z, MATAS J, MIKOLAJCZYK K.P-N learning: Bootstrapping binary classifiers by structural constraints [C]//Proc.IEEE Conference on Computer Vision and Pattern Recognition.San Francisco: IEEE Press, 2010:49-56.
[13]KALAL Z, MIKOLAJCZYK K, MATAS J.Tracking learning detection [J].IEEE Trans.Pattern Analysis and Machine Intelligence, 2012, 34(7): 1409-1422.
[14]WU Y, LIM J, YANG M H.Online object tracking: a benchmark[C]//Proc.IEEE Conference on Computer Vision and Pattern Recognition.Portland: IEEE Press, 2013: 2411-2418.
Study of Visual Tracking Technology in Dynamic Background Based on TLD
CHENG Zhengguo, PAN Guangzhen
(SchoolofComputerandControlEngineering,NorthUniversityofChina,Taiyuan030051,China)
With the continuous development of science and technology, more and more mobile devices are equipped with camera, which creates a broad application prospect for the dynamic background visual tracking technology.The TLD (Tracking-Learning-Detection) algorithm is a novel, efficient and long-term visual tracking algorithm.In this paper, the visual tracking technology is studied based on this algorithm.First of all, the main characteristics and framework of TLD are summarized.Secondly, the mechanism of TLD′s integrator is analyzed.Moreover, aiming at the original algorithm′s problems, such as drifting and failure, the improvement on integration mechanism of integrator is proposed.Finally,the experiment demonstrates that the developed algorithm obtains expected effects, and it improves the stability and recognition rate without affecting the operation speed.
visual tracking algorithm; dynamic background; TLD; integrator
TP391.4
B
10.16280/j.videoe.2015.07.026
2014-10-11
【本文獻(xiàn)信息】成正國(guó),潘廣貞.基于TLD的動(dòng)態(tài)背景下視覺跟蹤技術(shù)研究[J].電視技術(shù),2015,39(7).
成正國(guó)(1988— ),碩士生,主研計(jì)算機(jī)仿真、圖形圖像處理;
潘廣貞(1969— ),博士,副教授,碩士生導(dǎo)師,主研圖形圖像處理、無人機(jī)航跡規(guī)劃。
責(zé)任編輯:薛 京