楊海巖 薛擎天
【摘 要】目標(biāo)跟蹤在計(jì)算機(jī)視覺領(lǐng)域有著重要的應(yīng)用,跟蹤的結(jié)果常常會受到光照、遮擋物、相似物的影響,因此算法仍然具有很大的挑戰(zhàn)。TLD(Tracking Learning and Detection)算法是目前復(fù)雜環(huán)境目標(biāo)追蹤的有效算法。本文從框架、追蹤和性能等幾個(gè)方面對TLD算法進(jìn)行了研究與分析。
【關(guān)鍵詞】跟蹤;視頻幀;檢測;特征
0 引言
人類的視覺系統(tǒng)是感知和觀察世界的最主要途徑,運(yùn)動目標(biāo)的檢測與跟蹤一直都是視覺領(lǐng)域的難題之一。目標(biāo)跟蹤主要由三個(gè)部分組成:目標(biāo)檢測、識別和跟蹤。對于一幀獨(dú)立的圖像幀,目標(biāo)的位置、形狀、大小信息標(biāo)識出一個(gè)確定的物體。對于一段完整的視頻,就是通過尋找目標(biāo)的位置形狀等信息來跟蹤目標(biāo),如果目標(biāo)跟丟或者受到障礙物的遮擋,系統(tǒng)能夠指出錯(cuò)誤。對于視頻中未知物體的長期跟蹤,Zdenek Kalal提出了一種新的跟蹤算法—TLD(Tracking Learning and Detection),TLD可以通過整個(gè)的目標(biāo)識別系統(tǒng)來追蹤運(yùn)動的物體目標(biāo)。
1 算法框架
TLD視頻目標(biāo)跟蹤算法,是由跟蹤、學(xué)習(xí)和檢測三個(gè)環(huán)節(jié)構(gòu)成,跟蹤和檢測并行運(yùn)行,其結(jié)果作為學(xué)習(xí)的樣本,學(xué)習(xí)后的模型再反饋給檢測和跟蹤環(huán)節(jié),對其進(jìn)行實(shí)時(shí)更新,最終實(shí)現(xiàn)持續(xù)穩(wěn)定的跟蹤。
該算法需要手動選擇被跟蹤目標(biāo),或者采用其他運(yùn)動目標(biāo)檢測算法實(shí)現(xiàn)自動目標(biāo)識別。假定選定被跟蹤的目標(biāo)后,學(xué)習(xí)模塊和檢測模塊中的參數(shù)同時(shí)也被初始化。在TLD算法中,I1代表著第一幀視頻幀,BB1表示初始幀中的目標(biāo)實(shí)體,也就是我們手動選擇的目標(biāo),類似地,BBK代表在第k幀(IK)中邊界框所包含的目標(biāo)實(shí)體。初始化后,視頻幀被逐幀送入到跟蹤器和檢測器,跟蹤器和檢測器分別計(jì)算出該實(shí)體在下一幀中的區(qū)域,分別用BBti和BBdi表示計(jì)算出的結(jié)果。該集成器結(jié)合了跟蹤和檢測器的結(jié)果來確定該目標(biāo)實(shí)體的位置,學(xué)習(xí)器使用跟蹤結(jié)果來更新檢測器的參數(shù)。TLD的輸出結(jié)果是一個(gè)包含目標(biāo)的邊界框,初始化模塊的輸出結(jié)果是更新后的學(xué)習(xí)器和檢測器的參數(shù)。
2 目標(biāo)跟蹤
TLD跟蹤模塊采用重疊塊跟蹤策略,主要使用光流算法,如Lucas-Kanade光流法。TLD在跟蹤前需要指定待跟蹤的目標(biāo),由一個(gè)矩形框標(biāo)出。最終整體目標(biāo)的運(yùn)動取所有局部塊移動的中值,并結(jié)合正反向誤差分析來選取在連續(xù)視頻幀中的目標(biāo),這種局部跟蹤策略可以解決跟蹤過程中所出現(xiàn)的部分遮擋的問題。
TLD檢測模塊實(shí)際上是一個(gè)分類器,該分類器是在學(xué)習(xí)模塊訓(xùn)練生成。在特征選取上,最初特征是從包含目標(biāo)物體的訓(xùn)練集合中的圖像塊中收集的。所收集的特征點(diǎn)的統(tǒng)計(jì)數(shù)據(jù)用于訓(xùn)練分類器區(qū)分目標(biāo)實(shí)體和背景,然后創(chuàng)建掃描窗口來詳細(xì)地掃描圖像或視頻幀,從每個(gè)掃描窗口中收集的積分圖像特征被用于在檢測器中訓(xùn)練分類器。對于每一幀,分類器需要把掃描窗口判定為目標(biāo)實(shí)體或背景。分類器在具體的設(shè)計(jì)上,采用級聯(lián)形式,即分類器包括三個(gè)子分類器,分別為方差分類器、集成分類器、最近鄰分類器。每個(gè)子分類器標(biāo)簽子窗口為真或假,即當(dāng)子窗口被標(biāo)記為真時(shí),它被分類為包含目標(biāo)實(shí)體。第一個(gè)分類器粗略快速地區(qū)分掃描窗口中的背景,如果目標(biāo)候選區(qū)域沒有通過第一個(gè)分類器,就不會進(jìn)入后面的分類器。在后面的分類器中需要更加復(fù)雜的標(biāo)準(zhǔn)以避免模糊圖像塊的錯(cuò)誤檢測。級聯(lián)分類器使得檢測器可以快速消除背景子窗口和準(zhǔn)確地檢測出目標(biāo)實(shí)體的區(qū)域。
基于視頻的目標(biāo)識別跟蹤技術(shù)有其復(fù)雜的特性,主要體現(xiàn)在運(yùn)動目標(biāo)的外觀會有一定的變化,如相機(jī)焦距的變化,目標(biāo)自身運(yùn)動軌跡的變化,拍攝角度的變化、外界光線的變化,運(yùn)動中其他物品的遮擋等等,這些都會使目標(biāo)的外觀上與初始幀中所選取的目標(biāo)有很大的差異。因此,要想使跟蹤算法具有魯棒的特性,適應(yīng)不同環(huán)境變化,能夠?qū)崿F(xiàn)持續(xù)穩(wěn)定的跟蹤,這就要求跟蹤算法具有一定的學(xué)習(xí)能力。TLD學(xué)習(xí)模塊主要完成這一任務(wù)。
TLD學(xué)習(xí)模塊是建立在在線模型的基礎(chǔ)上。在線模型是一個(gè)大小為15×15的圖像塊的集合,這些圖像塊來自跟蹤和檢測所得的結(jié)果,初始的在線模型為起始跟蹤時(shí)指定的待跟蹤的目標(biāo)圖像。在線模型是一個(gè)動態(tài)模型,其發(fā)展是由兩個(gè)事件來驅(qū)動,分別為增長事件和修剪事件。
在實(shí)際的跟蹤場景中,由于受到環(huán)境和目標(biāo)本身等多因素的影響,使目標(biāo)的外觀不斷發(fā)生變化,這使得由跟蹤器預(yù)測產(chǎn)生的目標(biāo)圖像會包含其他與目標(biāo)無關(guān)的信息。通過對目標(biāo)物體形變的研究來提高檢測器對不同外形物體的識別能力。隨著跟蹤時(shí)間的增加,在線模型中圖像塊的數(shù)量會急劇增加,會導(dǎo)致目標(biāo)的特征空間不斷增大,這一過程就是所說的增長事件。在實(shí)際的目標(biāo)跟蹤過程中我們需要一定數(shù)量的新特征來適應(yīng)目標(biāo)不斷變化的特點(diǎn)。然而,目標(biāo)特征空間的增加會導(dǎo)致計(jì)算量的增大,同時(shí)也會增加一些虛假特征信息,最終影響跟蹤效果。為了防止增長事件帶來的其他非目標(biāo)圖像,采用了與之相對的(下轉(zhuǎn)第17頁)(上接第21頁)修剪事件來平衡。也就是,對在線模型中的圖像塊進(jìn)行篩選,去除增長事件所產(chǎn)生的干擾圖像塊。通過增長事件和修剪事件的動態(tài)平衡來促使在線模型一直保持與當(dāng)前的跟蹤目標(biāo)相一致。
在線模型中的圖像塊集合為TLD的學(xué)習(xí)提供了一個(gè)樣本空間,在TLD算法學(xué)習(xí)訓(xùn)練過程中采用了兩種約束:P約束和N約束。P約束針對目標(biāo)的運(yùn)動路線收集更多的正樣本(規(guī)定與跟蹤軌跡上的目標(biāo)圖像距離近的圖像塊為正樣本),同時(shí)把得到的軌跡進(jìn)行篩選,選出最有可能的目標(biāo)的運(yùn)動軌跡,然后將這些篩選出來的軌跡作為正樣本。而N約束主要是發(fā)現(xiàn)本應(yīng)由檢測器區(qū)分的背景信息。P約束和N約束降低了分類器的錯(cuò)誤率,在一定的范圍內(nèi),其錯(cuò)誤率趨近于零。TLD跟蹤算法主要的實(shí)現(xiàn)步驟如下:
(1)在第一幀中手動選擇要跟蹤的目標(biāo)物體。
(2)初始化分類器和跟蹤器中的參數(shù)。
(3)遍歷掃描每一幀視頻幀,并對掃描窗口內(nèi)的圖像進(jìn)行分類器檢測,檢測出目標(biāo)的位置和大小,同時(shí),跟蹤器通過上一幀的目標(biāo)框進(jìn)行預(yù)測。
(4)根據(jù)檢測器判斷出的目標(biāo)框和跟蹤器預(yù)測出的目標(biāo)框,綜合判斷出最終的跟蹤結(jié)果。
(5)通過P-N學(xué)習(xí)來更新分類器參數(shù)。
(6)用矩形框框出目標(biāo)物體。
(7)判斷視頻幀是否結(jié)束。如果視頻結(jié)束,就結(jié)束整個(gè)跟蹤過程,否則跳轉(zhuǎn)至步驟(3)繼續(xù)執(zhí)行。
3 性能分析
TLD跟蹤算法的性能優(yōu)勢在于可以在在線的狀態(tài)下同時(shí)進(jìn)行在線的學(xué)習(xí)和對新的分類器進(jìn)行訓(xùn)練,而且還能在訓(xùn)練分類器的基礎(chǔ)上更新并矯正。因?yàn)樗惴ńY(jié)合了在線檢測器的功能,所以即使目標(biāo)在脫離監(jiān)視范圍之后再一次出現(xiàn),該算法仍然能夠很好的由于算對目標(biāo)進(jìn)行重新檢測,以便對目標(biāo)繼續(xù)跟蹤。算法存在的不足是該算法目前還不可以自動對跟蹤目標(biāo)進(jìn)行鎖定,也就是不具備自動目標(biāo)檢測功能,需要人工選定對目標(biāo)。當(dāng)目標(biāo)物品被遮擋時(shí)該算法容易失去對目標(biāo)的跟蹤同時(shí)也有可能對錯(cuò)誤的目標(biāo)進(jìn)行跟蹤。在初期階段,當(dāng)目標(biāo)發(fā)生大范圍的旋轉(zhuǎn)之后,會對算法造成丟失目標(biāo)的影響。對弱小目標(biāo)的跟蹤效果較差。TLD算法受光照影響大,當(dāng)光照條件發(fā)生突然的變化時(shí),很容易就會丟失目標(biāo)。行人流型物體的追蹤也是該算法的短板,算法不能同時(shí)追蹤多個(gè)目標(biāo)。
【參考文獻(xiàn)】
[1]Z.Kalal,K.Mikolajczyk,and J.Matas.Tracking-Learning-Detection[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,2011,34(7):1409-1422.
[2]高帆,吳國平,邢晨,等.基于TLD目標(biāo)跟蹤算法研究[J].電視技術(shù),2013,37:11-19.
[3] 張帥領(lǐng).基于TLD的視頻目標(biāo)跟蹤算法的研究[D].西安電子科技大學(xué).2014.endprint