專(zhuān)利名稱(chēng):一種基于tld的視頻目標(biāo)跟蹤方法
技術(shù)領(lǐng)域:
本發(fā)明屬于目標(biāo)檢測(cè)與跟蹤領(lǐng)域,特別涉及一種針對(duì)當(dāng)前新興的視頻跟蹤算法TLD的改進(jìn)。
背景技術(shù):
目標(biāo)跟蹤是計(jì)算機(jī)視覺(jué)研究領(lǐng)域中的關(guān)鍵問(wèn)題,其本質(zhì)是根據(jù)參考圖像幀中選定的目標(biāo)在接下來(lái)的圖像幀中尋找目標(biāo)的最佳位置,并在多個(gè)領(lǐng)域有著重要的研究和應(yīng)用價(jià)值,如民用領(lǐng)域中的智能交通系統(tǒng),軍事領(lǐng)域中的導(dǎo)航、制導(dǎo)、以及防衛(wèi)等系統(tǒng)。一套性能優(yōu)良的跟蹤系統(tǒng)面臨著多方面的挑戰(zhàn),如跟蹤點(diǎn)變化、光照影響、 快速運(yùn)動(dòng)、目標(biāo)遮擋或消失、復(fù)雜背景等。TLD是一種長(zhǎng)期、在線(xiàn)、最少先驗(yàn)信息的目標(biāo)跟蹤方法,主要由三個(gè)部分組成跟蹤器、檢測(cè)器和學(xué)習(xí)模塊。跟蹤器部分由一個(gè)短周期自適應(yīng)跟蹤器構(gòu)成,在幀間運(yùn)動(dòng)有限、目標(biāo)可見(jiàn)的情況下,用來(lái)預(yù)測(cè)目標(biāo)在連續(xù)幀間的運(yùn)動(dòng);檢測(cè)器部分為一個(gè)高效的級(jí)聯(lián)分類(lèi)器,創(chuàng)建使用了簡(jiǎn)單有效圖像特征,可以對(duì)目標(biāo)進(jìn)行實(shí)時(shí)的檢測(cè),同時(shí)在必要的情況下糾正跟蹤器;學(xué)習(xí)模塊評(píng)估跟蹤器和檢測(cè)器的性能,通過(guò)生成有效的訓(xùn)練樣本完成檢測(cè)器的更新,消除檢測(cè)器誤差。TLD算法的框架結(jié)構(gòu)如圖I所示。在跟蹤目標(biāo)的起始幀,通過(guò)給出目標(biāo)的位置和大小,完成對(duì)TLD算法的初始化;在隨后的跟蹤過(guò)程中,對(duì)每一幀圖像用跟蹤器和檢測(cè)器共同進(jìn)行處理,跟蹤器根據(jù)前一幀中目標(biāo)的位置信息來(lái)估計(jì)當(dāng)前幀中目標(biāo)所在的位置,檢測(cè)器對(duì)當(dāng)前幀窗口全局掃描,檢測(cè)出一個(gè)或者多個(gè)可能的目標(biāo)位置,檢測(cè)結(jié)果和跟蹤結(jié)果輸入到融合處理模塊,該模塊給出當(dāng)前幀是否存在目標(biāo)、目標(biāo)位置以及到當(dāng)前幀的跟蹤軌跡是否有效等信息;這些融合處理結(jié)果、聯(lián)合檢測(cè)結(jié)果和跟蹤結(jié)果一起輸入到學(xué)習(xí)模塊,學(xué)習(xí)模塊完成對(duì)跟蹤器和檢測(cè)器的更新。TLD是一套高效的目標(biāo)跟蹤算法,只需要較少的先驗(yàn)信息就可以實(shí)現(xiàn)對(duì)目標(biāo)的長(zhǎng)期在線(xiàn)跟蹤,運(yùn)算速度快,實(shí)時(shí)性高,并且能有效地適用于目標(biāo)被遮擋或者消失的場(chǎng)合和目標(biāo)外表在跟蹤過(guò)程中發(fā)生變化的情況,因此,對(duì)該算法的研究有著極其重要的意義。在對(duì)TLD算法進(jìn)行測(cè)試分析和研究的過(guò)程中,找出了該算法中存在的一些不足,加以改進(jìn),本案由此產(chǎn)生。
發(fā)明內(nèi)容
本發(fā)明的目的,在于提供一種基于TLD的視頻目標(biāo)跟蹤方法,其對(duì)現(xiàn)有的TLD算法進(jìn)行改進(jìn),能夠獲得比TLD算法更理想的視頻目標(biāo)跟蹤算法。為了達(dá)成上述目的,本發(fā)明的解決方案是一種基于TLD的視頻目標(biāo)跟蹤方法,包括如下步驟(I)在跟蹤目標(biāo)的起始巾貞,根據(jù)給出的所跟蹤目標(biāo)的位置和大小信息,生成圖像子窗口,對(duì)檢測(cè)器進(jìn)行訓(xùn)練;
(2)跟蹤器根據(jù)目標(biāo)在上一幀中的位置和大小信息,估計(jì)出目標(biāo)在當(dāng)前幀中所在的區(qū)域;(3)用檢測(cè)器對(duì)當(dāng)前幀進(jìn)行檢測(cè),找出當(dāng)前幀中所有可能的目標(biāo);(4)對(duì)跟蹤器和檢測(cè)器的結(jié)果進(jìn)行融合處理,判斷出當(dāng)前幀是否存在目標(biāo),如果不存在目標(biāo),則返回步驟(3)開(kāi)始對(duì)下一幀的處理;如果存在目標(biāo),則給出目標(biāo)位置以及判斷當(dāng)前幀的跟蹤軌跡是否有效,如果無(wú)效,則返回步驟(2),對(duì)下一幀進(jìn)行處理;如果有效,則進(jìn)入學(xué)習(xí)模塊,通過(guò)P-N Learning完成檢測(cè)器的在線(xiàn)更新,然后回到步驟(2),開(kāi)始對(duì)下一幀進(jìn)行處理。上述步驟(2)的具體內(nèi)容是(21)目標(biāo)在上一幀的目標(biāo)邊界框由其位置和大小信息獲得,由Cell FoT在該邊界框中選擇好的特征點(diǎn),并通過(guò)光流法完成相鄰兩幀間特征點(diǎn)的跟蹤;(22)通過(guò)Σ刪除部分經(jīng)過(guò)一次光流法后跟蹤失敗的局部跟蹤器,所述Σ包括Nh、Mp 和 NCC ;(23)對(duì)經(jīng)由Σ刪除后最終剩余的局部跟蹤器,計(jì)算每個(gè)局部跟蹤器對(duì)應(yīng)的位移以及其距離在相鄰幀間的比例變化值,以位移以及距離比例的中位值分別作為所跟蹤目標(biāo)邊界框在相鄰幀間的位移變化和大小變化,從而估計(jì)得到在當(dāng)前幀上的目標(biāo)區(qū)域。上述步驟(22)的詳細(xì)內(nèi)容是首先,當(dāng)前幀的所有局部跟蹤器通過(guò)NCC進(jìn)行刪選;然后,滿(mǎn)足NCC后的局部跟蹤器加入到Nh進(jìn)行刪選;最后,剩余的局部跟蹤器加入到Mp進(jìn)行最后的刪選,最終得到的局部跟蹤器用來(lái)更新目標(biāo)邊界框。上述步驟(3)的具體內(nèi)容是(31)使用卡爾曼濾波器和Mp對(duì)TLD檢測(cè)區(qū)域進(jìn)行預(yù)測(cè),完成目標(biāo)在當(dāng)前幀中大致區(qū)域的預(yù)測(cè);卡爾曼濾波器根據(jù)之前幀中目標(biāo)的位置,以目標(biāo)的中心點(diǎn)位置為狀態(tài)量,預(yù)測(cè)出當(dāng)前幀中目標(biāo)的中心點(diǎn),以該點(diǎn)為中心劃定一個(gè)矩形區(qū)域,且該矩形區(qū)域的大小為上一幀目標(biāo)面積的4倍,該矩形即為卡爾曼濾波器最終預(yù)測(cè)得到的目標(biāo)區(qū)域;Mp根據(jù)之前幀中目標(biāo)運(yùn)動(dòng)的方向預(yù)測(cè)目標(biāo)在當(dāng)前幀的運(yùn)動(dòng)方向,根據(jù)上一幀目標(biāo)所在位置,可以在當(dāng)前幀中劃定一個(gè)區(qū)域,目標(biāo)假定應(yīng)該出現(xiàn)在該區(qū)域中,該區(qū)域即為Mp預(yù)測(cè)得到的區(qū)域;(32)對(duì)當(dāng)前幀中所有的圖像子窗口,找出其中與經(jīng)由Kalman預(yù)測(cè)得到的目標(biāo)區(qū)域有交集的子窗口 ;再在其中找出包含于經(jīng)由Mp預(yù)測(cè)得到的圖像區(qū)域中的子窗口,這些子窗口即為符合卡爾曼濾波器和Mp共同預(yù)測(cè)結(jié)果的子窗口 ;(33)對(duì)前述符合預(yù)測(cè)結(jié)果的圖像子窗口,加入到檢測(cè)器中以判讀子窗口中的圖像是否為目標(biāo)。上述步驟(4)中,判斷當(dāng)前幀是否存在目標(biāo)及目標(biāo)位置的判據(jù)如下若跟蹤器和檢測(cè)器都沒(méi)有跟蹤得到或者檢測(cè)得到目標(biāo)信息,則認(rèn)為當(dāng)前幀中不含有目標(biāo);若跟蹤器和檢測(cè)器的結(jié)果中都包含目標(biāo)位置信息,且檢測(cè)器認(rèn)為其檢測(cè)到的區(qū)域被認(rèn)為非??赡苁悄繕?biāo),則以檢測(cè)器得到的目標(biāo)區(qū)域?yàn)楫?dāng)前幀上的最終目標(biāo)位置,否則,當(dāng)前幀上最終的目標(biāo)位置為跟蹤器和檢測(cè)器目標(biāo)位置信息的均值;若跟蹤器有目標(biāo)位置信息,而檢測(cè)器沒(méi)有得到目標(biāo)位置信息,則以跟蹤器得到的目標(biāo)區(qū)域作為當(dāng)前幀中最終目標(biāo)的位置;若跟蹤器無(wú)目標(biāo)位置信息,而檢測(cè)器包含目標(biāo)位置信息,則以檢測(cè)器檢測(cè)得到的區(qū)域作為當(dāng)前幀上最終的目標(biāo)位置。
上述步驟(4)中,判斷當(dāng)前幀的跟蹤軌跡是否有效的判據(jù)如下若判讀當(dāng)前幀中存在目標(biāo),則給出當(dāng)前幀的跟蹤軌道是否有效的置信值,該值通過(guò)計(jì)算當(dāng)前跟蹤所得目標(biāo)與已加入到在線(xiàn)模型中圖像區(qū)域之間的相似程度得到,當(dāng)相似程度超過(guò)閾值則判定當(dāng)前所得的跟蹤軌道是有效的。上述步驟(4)中,檢測(cè)器的在線(xiàn)更新的過(guò)程是在P-N Learning中,定義P結(jié)構(gòu)約束和N結(jié)構(gòu)約束,P結(jié)構(gòu)約束用來(lái)表征被分類(lèi)器分類(lèi)為negative但是結(jié)構(gòu)約束卻要求其類(lèi)別應(yīng)該為positive的樣本,要求所有靠近有效跟蹤軌道的圖像區(qū)域其類(lèi)別標(biāo)簽應(yīng)該為positive ;N結(jié)構(gòu)約束表征被分類(lèi)器分類(lèi)為positive但是結(jié)構(gòu)約束卻要求其類(lèi)別為negative的樣本,要求所有包圍有效跟蹤軌道的圖像區(qū)域其類(lèi)別標(biāo)簽為negative ;P_NLearning通過(guò)P結(jié)構(gòu)約束和N結(jié)構(gòu)約束生成有效的訓(xùn)練樣本,形成新 的已標(biāo)簽訓(xùn)練樣本集,把該樣本集加入到檢測(cè)器中,更新檢測(cè)器中的集成分類(lèi)器,同時(shí)更新在線(xiàn)目標(biāo)模型和最近鄰域分類(lèi)器。采用上述方案后,本發(fā)明具有以下改進(jìn)(I)在TLD的跟蹤器中采用Cell FoT+ Σ法進(jìn)行設(shè)計(jì),取代原始TLD算法中的GridFoT+FB+NCC法,該方法不僅具有較強(qiáng)的跟蹤精度和魯棒性,而且也提高了運(yùn)算速度;(2)在TLD的檢測(cè)器中引入Kalman濾波器預(yù)測(cè)TLD在當(dāng)前幀上的目標(biāo)檢測(cè)區(qū)域,從而縮小了 TLD算法中的檢測(cè)范圍,在跟蹤精度基本保持不變的情況下提高TLD算法的處理速度;(3)在TLD的檢測(cè)器中加入了基于馬爾可夫模型的方向預(yù)測(cè)器,提高了 TLD對(duì)相似目標(biāo)交會(huì)后的辨識(shí)能力。
圖I是現(xiàn)有TLD算法的框架結(jié)構(gòu)圖;圖2是Cell FoT示意圖;圖3是鄰域一致預(yù)測(cè)器示意圖;圖4是使用Kalman濾波器對(duì)目標(biāo)運(yùn)動(dòng)預(yù)測(cè)以減小掃描區(qū)域的示意圖;圖5是馬爾可夫模型的示意圖;圖6是根據(jù)圖5所示馬爾可夫模型預(yù)測(cè)當(dāng)前目標(biāo)運(yùn)動(dòng)方向從而確定檢測(cè)區(qū)域的示意圖。
具體實(shí)施例方式以下將結(jié)合附圖,對(duì)本發(fā)明的技術(shù)方案及有益效果進(jìn)行詳細(xì)說(shuō)明。本發(fā)明對(duì)現(xiàn)有的TLD算法進(jìn)行了三個(gè)方面的改進(jìn),以下將進(jìn)行詳細(xì)的介紹。一、基于Cell FoT+ Σ法的TLD跟蹤器設(shè)計(jì)TLD的跟蹤器部分采用Cell FoT+ Σ法進(jìn)行設(shè)計(jì),該方法是一種高效的點(diǎn)跟蹤算法,相比較原始TLD中跟蹤器采用的Grid FoT+FB+NCC法,不僅魯棒性得到加強(qiáng),處理速度也得到很大的提高。Cell FoT選擇好的特征點(diǎn)進(jìn)行跟蹤,每個(gè)特征點(diǎn)賦予一個(gè)局部跟蹤器,允許局部跟蹤器跟蹤好的漂移點(diǎn)。Grid FoT在每次預(yù)測(cè)目標(biāo)全局運(yùn)動(dòng)后,局部跟蹤器需重置到原先位置,若初始選擇的跟蹤點(diǎn)不利于跟蹤,則局部跟蹤器易發(fā)生錯(cuò)誤漂移;而&11 FoT強(qiáng)制每個(gè)局部跟蹤器在其特定的單元中,這些單元覆蓋了整個(gè)目標(biāo)區(qū)域,允許局部跟蹤器在其對(duì)應(yīng)單元內(nèi)發(fā)生漂移,從而在每個(gè)單元中選擇最佳的位置點(diǎn)作為跟蹤點(diǎn),相比較Grid FoT,效果更優(yōu)。Σ是一個(gè)強(qiáng)力高效的預(yù)測(cè)器,用來(lái)刪除部分跟蹤失敗的局部跟蹤器,由 Nh(Neighborhood consistency constraint predictor)、Mp (Markov predictor)和NCC(Normalized Cross Correlation)組成,其中,Nh為一個(gè)鄰域一致預(yù)測(cè)器,其思想是相鄰的局部跟蹤器具有相似的運(yùn)動(dòng);Mp為一個(gè)馬爾可夫預(yù)測(cè)器,其思想是如果局部跟蹤器在過(guò)去的最近時(shí)刻完好跟蹤則在當(dāng)前時(shí)刻仍能完好跟蹤;NCC是一計(jì)算圖像相似程度的方法。Σ預(yù)測(cè)器相比較原始TLD中使用的FB+NCC法具有更強(qiáng)的預(yù)測(cè)效果,魯棒性強(qiáng),同時(shí),計(jì)算高效,相比較FB+NCC中兩次光流法的運(yùn)算,Σ只需運(yùn)算一次光流法,處理速度提高。該算法的整體實(shí)現(xiàn)流程如下在跟蹤的起始幀,目標(biāo)在上一幀的目標(biāo)邊界框由其位置和大小信息獲得,并在該邊界框中初始化一系列的點(diǎn),每個(gè)點(diǎn)賦予一個(gè)局部跟蹤器,接著由光流法完成每個(gè)局部跟蹤器的跟蹤,并由Σ刪除部分跟蹤失敗的局部跟蹤器,剩余的局部跟蹤器則用來(lái)更新目標(biāo)邊界框;在后續(xù)跟蹤過(guò)程中,對(duì)每一幀圖像,由Cell FoT選擇好的局部跟蹤器進(jìn)行跟蹤,并由Σ作為每個(gè)局部跟蹤器跟蹤效果是否優(yōu)良的一種評(píng)估手
段,從而刪除部分跟蹤失敗的局部跟蹤器,最終剩余的局部跟蹤器用來(lái)完成目標(biāo)邊界框的更新。其實(shí)現(xiàn)步驟是I)首先,由Cell FoT選擇好的特征點(diǎn)Cell FoT強(qiáng)制每個(gè)局部跟蹤器在其特定的單元中,這些單元覆蓋了整個(gè)目標(biāo)區(qū)域,允許局部跟蹤器在其對(duì)應(yīng)單元內(nèi)發(fā)生一定的漂移,從而在每個(gè)單元中選擇最佳的位置點(diǎn)作為跟蹤點(diǎn)。圖2為Cell FoT示意圖,cw和ch分別表示單元的寬和高,該參數(shù)選擇的好壞直接影響局部跟蹤器的獨(dú)立性,從而對(duì)跟蹤結(jié)果的造成影響,但考慮方法實(shí)現(xiàn)的簡(jiǎn)單性,選擇cw和ch與網(wǎng)格大小一致。在初始幀,所有的局部跟蹤初始化到每個(gè)網(wǎng)格的中心位置;接下來(lái)的每一幀,每個(gè)局部跟蹤器由光流法進(jìn)行跟蹤,其位置發(fā)生漂移,同時(shí)記錄每個(gè)局部跟蹤器當(dāng)前幀位置與上一幀單元中心位置的位移偏差值;對(duì)每一個(gè)局部跟蹤器,若超出其對(duì)應(yīng)單元,則重新初始化到對(duì)應(yīng)單元的中心位置。2)接著,通過(guò)Σ刪除部分經(jīng)過(guò)一次光流法后跟蹤失敗的局部跟蹤器。①首先,當(dāng)前幀的所有局部跟蹤器通過(guò)NCC進(jìn)行刪選。對(duì)每一個(gè)局部跟蹤器,在當(dāng)前幀以及上一幀以其為中心分別取一個(gè)大小為10X10的圖像區(qū)域,計(jì)算兩圖像區(qū)域的相似度。取所有局部跟蹤器相似度的中位值,并以此作為刪選標(biāo)準(zhǔn),將相似度小于該中位值的局部跟蹤器予以刪除。②接著,滿(mǎn)足NCC后的局部跟蹤器加入到鄰域一致預(yù)測(cè)器(Nh)進(jìn)行刪選。對(duì)每一個(gè)點(diǎn)(局部跟蹤器)i,其鄰域定義為Ni, Ni是一個(gè)四鄰域結(jié)構(gòu)(若點(diǎn)i在邊緣,則該點(diǎn)的鄰域上存在3個(gè)點(diǎn);若點(diǎn)i在角落,則該點(diǎn)的鄰域上存在2個(gè)點(diǎn))。該點(diǎn)的鄰域一致系數(shù)定義為Di,為該局部跟蹤器i與其鄰域中其余局部跟蹤器具有相似位移的總個(gè)數(shù),其計(jì)算公式為A = Σ WaJ - 4 If < P⑴
J.喝L」
「十、丄 μ.-ι fi其中[表達(dá)式]=&,β為位移差閾值,設(shè)為O. 5個(gè)像素值,Ai為局部跟蹤器i的位移。SDi的值不小于1,則該局部跟蹤器i予以保留。圖3為Nh具體實(shí)現(xiàn)過(guò)程的一個(gè)例子。圖中,局部跟蹤器a、b (較大黑色實(shí)心圓)的鄰域?yàn)橐粓A形區(qū)域,該局部跟蹤器以及鄰域邊緣上4個(gè)局部跟蹤器(較小黑色實(shí)心圓)的位移值由實(shí)線(xiàn)箭頭表示。局部跟蹤器a與其鄰域中其余局部跟蹤器中的兩個(gè)有相似的運(yùn)動(dòng),則認(rèn)為該局部跟蹤器與其鄰域有相同的運(yùn)動(dòng)趨勢(shì),予以保留;局部跟蹤器b與其鄰域中其余所有局部跟蹤器的運(yùn)動(dòng)趨勢(shì)相悖,則認(rèn)為該局部跟蹤器與其鄰域沒(méi)有相同的運(yùn)動(dòng)趨勢(shì),予以舍棄。③最后剩余的局部跟蹤器加入到馬爾可夫預(yù)測(cè)器(Mp)進(jìn)行最后的刪選,最終得到的局部跟蹤器用來(lái)更新目標(biāo)邊界框。Mp為一個(gè)馬爾可夫預(yù)測(cè)器,其思想是局部跟蹤器在過(guò)去的 最近時(shí)刻完好跟蹤則在當(dāng)前時(shí)刻仍能完好跟蹤。對(duì)每一個(gè)局部跟蹤器i,馬爾可夫模型的狀態(tài)空間定義為{inlier=l,outlier=0},inlier=l表示該局部跟蹤器在當(dāng)前時(shí)刻能夠完好跟蹤,反之亦然。當(dāng)前預(yù)測(cè)狀態(tài)只與上一時(shí)刻的狀態(tài)以及狀態(tài)轉(zhuǎn)移矩陣有關(guān)。首先,定義局部跟蹤器i在t時(shí)刻的狀態(tài)向量[Pi (xt=l) Pi (Xt=O) ]τ。其中Xt為任一局部跟蹤器在t時(shí)刻的狀態(tài)。Pi (Xt=I)表示局部跟蹤器i在t時(shí)刻能夠完好跟蹤的概率,該值大于O. 5,則該局部跟蹤器i予以保留,Pi(Xt=O)為其在t時(shí)刻跟蹤失敗的概率。Pi(Xt=I)與Pi (Xt=O)兩者之和等于I。接著由馬爾可夫遞推預(yù)測(cè)下一時(shí)刻的狀態(tài)值
「 PU I T, |V(易=1)=T X(2) lp'(xM =0)J IjZ(Xi=O)-其中I;為局部跟蹤器i在t時(shí)刻的狀態(tài)轉(zhuǎn)移矩陣,定義為
Ti P (Χ +ι = 1= O P (xtu =ι|λ( = O) 、T; = .U)
I= 0|x. = I) P1 (X,., = 0|xf =0)馬爾可夫模型的更新即為狀態(tài)轉(zhuǎn)移矩陣的計(jì)算,而該狀態(tài)轉(zhuǎn)移矩陣每列之和等于1,因此該狀態(tài)轉(zhuǎn)移矩陣的計(jì)算即是P1Uw=I I Xt=I)和P1 (xt+1=l I Xt=O)的計(jì)算
I7P ( +! = I\^t = I) = r , P (^7' = I= O) = ~—(4)
K O其中,η: (nQ)表示局部跟蹤器i在(O t)時(shí)刻中為inlier (outlier)的次數(shù),nn表示局部跟蹤器i在(O t)時(shí)刻中上一時(shí)刻和當(dāng)前時(shí)刻都為inlier的次數(shù),n01表示局部跟蹤器i在(O t)時(shí)刻中上一時(shí)刻為outlier而當(dāng)前時(shí)刻為inlier的次數(shù)。最終,若Pi(Xw=I)的值大于O. 5,則認(rèn)為該局部跟蹤器i在(t+Ι)時(shí)刻能夠完好跟蹤,予以保留。3)最后,對(duì)經(jīng)由Σ刪除后最終剩余的局部跟蹤器,計(jì)算每個(gè)局部跟蹤器對(duì)應(yīng)的位移以及其距離在相鄰幀間的比例變化值,以位移以及距離比例的中位值分別作為所跟蹤目標(biāo)邊界框在相鄰幀間的位移變化和大小變化,從而估計(jì)得到在當(dāng)前幀上的目標(biāo)區(qū)域。二、基于Kalman濾波器的TLD目標(biāo)檢測(cè)區(qū)域預(yù)測(cè)該處改進(jìn)是在TLD的檢測(cè)器中引入Kalman濾波器來(lái)對(duì)當(dāng)前幀目標(biāo)存在的大致區(qū)域進(jìn)行預(yù)測(cè),將所預(yù)測(cè)的目標(biāo)區(qū)域作為T(mén)LD的目標(biāo)檢測(cè)區(qū)域,從而減少TLD算法中的檢測(cè)范圍,解決原始TLD算法需掃描整幅圖像的圖像子窗口所帶來(lái)的耗時(shí)問(wèn)題,可以在跟蹤精度基本保持不變的情況下提高TLD算法的處理速度。其具體實(shí)現(xiàn)步驟如下I)基于Kalman的目標(biāo)運(yùn)動(dòng)預(yù)測(cè)Kalman濾波器(卡爾曼濾波器)是一種以狀態(tài)變量的線(xiàn)性最小方差遞推估算的方法,它基于系統(tǒng)以前的狀態(tài)序列對(duì)下一個(gè)狀態(tài)做最優(yōu)估計(jì),同時(shí)利用當(dāng)前測(cè)量值修正估計(jì)的狀態(tài),具有無(wú)偏、穩(wěn)定、最優(yōu)的特點(diǎn)。其數(shù)學(xué)模型描述為狀態(tài)方程Xk=AXk-Jwk-I (5)觀測(cè)方程zk=Hxk+vk(6)其中,Xk為k時(shí)刻的系統(tǒng)狀態(tài)向量,Zk為k時(shí)刻的系統(tǒng)觀測(cè)向量,A為系統(tǒng)狀態(tài)轉(zhuǎn)移矩陣,H為觀測(cè)矩陣,Wk^1和Vk是兩個(gè)相互獨(dú)立的零均值高斯白噪聲,分別表示狀態(tài)轉(zhuǎn)移噪聲和觀測(cè)噪聲,其概率分布分別表示為P (w) N (O, Q)、P (V) N (O, R)。矩陣Q和R分別為狀態(tài)轉(zhuǎn)移噪聲和觀測(cè)噪聲的協(xié)方差矩陣。選取每幀圖像中目標(biāo)中心的位置信息來(lái)構(gòu)建卡爾曼濾波器中k時(shí)刻的的狀態(tài)變量和觀測(cè)值。系統(tǒng)狀態(tài)向量Xk= [px Py vx vy]τ (7)觀測(cè)向量zk = [zx zy]T(8)其中,Px和Py分別代表目標(biāo)中心在水平方向和豎直方向上的坐標(biāo)分量,Vx和Vy分別表示目標(biāo)在水平方向和豎直方向上的速度。Zx和Zy分別表示在當(dāng)前幀中觀測(cè)到的目標(biāo)中心在水平方向和豎直方向上的坐標(biāo)信息。在實(shí)際視頻序列中,相鄰兩幀間的時(shí)間間隔很短,則認(rèn)為目標(biāo)在相鄰兩幀間做勻速運(yùn)動(dòng),系統(tǒng)為線(xiàn)性模型。其狀態(tài)轉(zhuǎn)移陣和觀測(cè)矩陣分別為
—I O Ts O]
0 10/A=I , 「,
0 0 10 「10 0 0
H —(y)
0 0 0 1」 L0 I O O其中,Ts表示相鄰兩幀間的時(shí)間間隔。狀態(tài)轉(zhuǎn)移噪聲和觀測(cè)噪聲的協(xié)方差矩陣Q和R分別設(shè)為Q=10_5I4,R=KT1I2,其中I4為4X4的單位矩陣,I2為2X2的單位矩陣。接著,把上一幀目標(biāo)跟蹤最終處理得到的目標(biāo)位置以及當(dāng)前幀由跟蹤器得到的目標(biāo)位置加入Kalman濾波器,通過(guò)Kalman迭代完成目標(biāo)位置的預(yù)測(cè)。迭代過(guò)程分為兩個(gè)階段預(yù)測(cè)階段和校正階段。①預(yù)測(cè)階段負(fù)責(zé)向前推算當(dāng)前時(shí)刻的狀態(tài)變量以及誤差協(xié)方差估計(jì)值。以上一幀的目標(biāo)跟蹤處理結(jié)果構(gòu)建系統(tǒng)狀態(tài),該系統(tǒng)狀態(tài)包含目標(biāo)中心在水平方向和豎直方向上的位置以及目標(biāo)在水平方向和豎直方向上的速度四個(gè)分量。接著由該系統(tǒng)狀態(tài)向前推算當(dāng)前時(shí)刻狀態(tài)變量和誤差協(xié)方差估計(jì)值。首先,由上一幀目標(biāo)跟蹤處理結(jié)果構(gòu)建的狀態(tài)變量Xlri向前推算當(dāng)前時(shí)刻狀態(tài)變量的先驗(yàn)估計(jì),即Xk = Axk_x + W^1C 10)其中,XiT為在已知k時(shí)刻以前狀態(tài)情況下當(dāng)前k時(shí)刻的先驗(yàn)狀態(tài)估計(jì),Xlri為已知測(cè)量變量Zlri時(shí)在(k-Ι)時(shí)刻的后驗(yàn)狀態(tài)估計(jì)(即(k-Ι)時(shí)刻的系統(tǒng)狀態(tài)變量)。接著根據(jù)上一時(shí)刻的誤差協(xié)方差向前推算當(dāng)前時(shí)刻的誤差協(xié)方差,其方法為Pk =APk—'AT +QUD
其中,if為k時(shí)刻先驗(yàn)估計(jì)誤差的協(xié)方差,Plri為(k-Ι)時(shí) 刻后驗(yàn)估計(jì)誤差的協(xié)方差。設(shè)起始的協(xié)方差Ptl為4X4的單位矩陣。②校正階段根據(jù)當(dāng)前時(shí)刻的觀測(cè)值以及先驗(yàn)估計(jì)來(lái)校正后驗(yàn)概率。以跟蹤器結(jié)果構(gòu)建當(dāng)前時(shí)刻的觀測(cè)向量,該觀測(cè)向量包含目標(biāo)中心在水平方向和豎直方向上的位置信息兩個(gè)分量。接著由當(dāng)前時(shí)刻的觀測(cè)值以及先驗(yàn)估計(jì)來(lái)校正后驗(yàn)概率。首先,計(jì)算k時(shí)刻的卡爾曼增益Kk,即Kk = P-Ht (HPkHr +R)(12)接著,根據(jù)跟蹤器得到的目標(biāo)位置信息構(gòu)建的觀測(cè)向量Zk更新當(dāng)前時(shí)刻狀態(tài)變量的后驗(yàn)估計(jì)xk,該后驗(yàn)估計(jì)即為當(dāng)前時(shí)刻的系統(tǒng)狀態(tài)值,且該系統(tǒng)狀態(tài)值中包含當(dāng)前時(shí)刻最終的目標(biāo)中心位置信息,即Xk = -Tfr + Kk {zk — Hxk )(13)最后完成誤差協(xié)方差的更新,以便進(jìn)入下一次迭代,即Pk=(I-KkH)Pk(14)2)結(jié)合Kalman的TLD目標(biāo)跟蹤算法TLD所用的實(shí)時(shí)檢測(cè)器是基于窗口掃描的,這種方法需要對(duì)整幅圖像區(qū)域中所有圖像子窗口進(jìn)行掃描匹配,耗時(shí)相對(duì)較多。因此,通過(guò)加入Kalman濾波器預(yù)測(cè)當(dāng)前幀中目標(biāo)可能出現(xiàn)的大致區(qū)域來(lái)減小窗口掃描區(qū)域。具體講,首先由Kalman濾波器預(yù)測(cè)當(dāng)前幀中目標(biāo)中心點(diǎn)位置,以該點(diǎn)為中心劃定一個(gè)矩形區(qū)域。該矩形區(qū)域的大小根據(jù)上一幀目標(biāo)的大小來(lái)定,一般為上一幀目標(biāo)面積的4倍。接著,對(duì)所有的圖像子窗口,找出其中與劃定的矩形區(qū)域有交集的部分,加入到檢測(cè)器。最后,檢測(cè)器對(duì)加入的圖像子窗口判斷目標(biāo)存在與否。如圖4所示,(a)圖中,通過(guò)Kalman濾波器預(yù)測(cè)目標(biāo)存在的大致區(qū)域,圖中由點(diǎn)畫(huà)線(xiàn)框表示。圖中A、B、C為部分圖像子窗口,其中子窗口 A和B與點(diǎn)畫(huà)線(xiàn)框有重疊我們予以保留并送入到檢測(cè)器中進(jìn)行檢驗(yàn)(即判斷子窗口中的圖像內(nèi)容是否為所要跟蹤的目標(biāo)),而子窗口 C與Kalman預(yù)測(cè)的區(qū)域無(wú)重疊,將被舍去,不予以檢驗(yàn)。把得到的所有與Kalman預(yù)測(cè)區(qū)域重疊的子窗口加入到TLD檢測(cè)器中,檢測(cè)出可能存在目標(biāo)的子窗口,將其與TLD的跟蹤器得到的目標(biāo)位置信息進(jìn)行融合處理,得到真實(shí)的目標(biāo)區(qū)域,如圖4(b)中實(shí)線(xiàn)框所示。三、基于馬爾可夫的目標(biāo)運(yùn)動(dòng)方向預(yù)測(cè)TLD能夠很好地適用于多種嚴(yán)峻場(chǎng)景,但仍存在一些弊端。當(dāng)視頻中存在兩個(gè)或兩個(gè)以上過(guò)分相似的目標(biāo),這些目標(biāo)在運(yùn)動(dòng)過(guò)程中發(fā)生交會(huì)形成遮擋,TLD對(duì)這些交會(huì)后的相似目標(biāo)的正確辨識(shí)能力不強(qiáng)。因此,針對(duì)這種特殊場(chǎng)景,引入基于馬爾可夫的目標(biāo)運(yùn)動(dòng)方向預(yù)測(cè)模型。馬爾可夫預(yù)測(cè)器具有時(shí)域一致性,即可以由上一時(shí)刻目標(biāo)的運(yùn)動(dòng)趨勢(shì)預(yù)測(cè)當(dāng)前時(shí)刻的運(yùn)動(dòng)趨勢(shì)。I)首先,設(shè)計(jì)馬爾可夫預(yù)測(cè)模型,由上一時(shí)刻目標(biāo)的運(yùn)動(dòng)趨勢(shì)預(yù)測(cè)當(dāng)前時(shí)刻的運(yùn)動(dòng)趨勢(shì),即根據(jù)目標(biāo)在t時(shí)刻的運(yùn)動(dòng)趨勢(shì)預(yù)測(cè)其在(t+i)時(shí)刻的運(yùn)動(dòng)趨勢(shì)。在視頻序列中,目標(biāo)運(yùn)動(dòng)是一種2自由度的運(yùn)動(dòng),即水平方向和豎直方向上的運(yùn)動(dòng)。因此,對(duì)水平方向和豎直方向的運(yùn)動(dòng)趨勢(shì)分別設(shè)計(jì)一個(gè)馬爾可夫預(yù)測(cè)器。以水平方向?yàn)槔?,其狀態(tài)空間定義為{右=1,左=0},馬爾可夫模型如圖5所示。①首先,定義目標(biāo)在t時(shí)刻的狀態(tài)向量[P (st=l)p (St=O) ]τ。其中,St表示當(dāng)前目標(biāo)運(yùn)動(dòng)趨勢(shì)的狀態(tài),P(St=I) (P(St=O))表示目標(biāo)在t時(shí)刻向右(左)運(yùn)動(dòng)的概率,且兩者之和為I。②接著,由上一時(shí)刻的狀態(tài)值預(yù)測(cè)當(dāng)前時(shí)刻的狀態(tài)
「… >(^+1=1)1 = ) =i,(15)
1_跑+1=o)J L 池=°)J其中,Tt為t時(shí)刻的狀態(tài)轉(zhuǎn)移矩陣,定義為
「 T 「池+, =1 丨丨=1) p(si+, =11^=0)1Tt^, 、,(16)
_Pist+i = ο I ^ = I) p(st+l = 014 = 0)馬爾可夫模型的更新即為狀態(tài)轉(zhuǎn)移矩陣的計(jì)算,是增量的。而狀態(tài)轉(zhuǎn)移矩陣Tt每列之和為1,因此狀態(tài)轉(zhuǎn)移矩陣的計(jì)算即是p(st+1=l|st=l)和p(st+1|st=0)的計(jì)算
/Jh(IhΡ(βΜ = 11 ^ = I) = -JTl * p(sr+l = I h, = O) = —^U7)
QhlahQ其中,dhi (dhQ)表示在0 t時(shí)刻中目標(biāo)向右(左)運(yùn)動(dòng)的次數(shù);dhn表示在0 t時(shí)刻中目標(biāo)上一時(shí)刻和當(dāng)前時(shí)刻都向右運(yùn)動(dòng)的次數(shù)Mhtll表示在O t時(shí)刻中目標(biāo)上一時(shí)刻向左運(yùn)動(dòng)但當(dāng)前時(shí)刻向右運(yùn)動(dòng)的次數(shù),其中目標(biāo)向右(左)運(yùn)動(dòng)的判別依據(jù)是相鄰兩幀中目標(biāo)中心坐標(biāo)在水平方向上的差值。③最終,若p(st+1=l)值大于O. 5,則認(rèn)為目標(biāo)在(t+Ι)時(shí)刻有向右的運(yùn)動(dòng)趨勢(shì),反之亦然。2)目標(biāo)在當(dāng)前時(shí)刻的運(yùn)動(dòng)方向由馬爾可夫模型預(yù)測(cè)得到,接著根據(jù)上一時(shí)刻目標(biāo)確切的位置,可以在當(dāng)前幀中劃定一個(gè)區(qū)域,目標(biāo)出現(xiàn)在該區(qū)域中才符合馬爾可夫模型對(duì)目標(biāo)運(yùn)動(dòng)方向的預(yù)測(cè)。圖6為馬爾可夫預(yù)測(cè)當(dāng)前時(shí)刻檢測(cè)區(qū)域的效果示例圖,運(yùn)動(dòng)的人在上一時(shí)刻的位置區(qū)域由實(shí)線(xiàn)矩形框表示,并在當(dāng)前時(shí)刻由馬爾可夫預(yù)測(cè)器得到有向左運(yùn)動(dòng)的趨勢(shì)。因此,則認(rèn)為虛線(xiàn)左側(cè)的區(qū)域?yàn)楫?dāng)前時(shí)刻需要加入檢測(cè)器的檢測(cè)區(qū)域,而虛線(xiàn)右側(cè)的區(qū)域則不必再去檢測(cè)。以上實(shí)施例僅為說(shuō)明本發(fā)明的技術(shù)思想,不能以此限定本發(fā)明的保護(hù)范圍,凡是按照本發(fā)明提出的技術(shù)思想,在技術(shù)方案基礎(chǔ)上所做的任何改動(dòng),均落入本發(fā)明保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種基于TLD的視頻目標(biāo)跟蹤方法,其特征在于包括如下步驟 (1)在跟蹤目標(biāo)的起始幀,根據(jù)給出的所跟蹤目標(biāo)的位置和大小信息,生成圖像子窗口,對(duì)檢測(cè)器進(jìn)行訓(xùn)練; (2)跟蹤器根據(jù)目標(biāo)在上一幀中的位置和大小信息,估計(jì)出目標(biāo)在當(dāng)前幀中所在的區(qū)域; (3)用檢測(cè)器對(duì)當(dāng)前幀進(jìn)行檢測(cè),找出當(dāng)前幀中所有可能的目標(biāo); (4)對(duì)跟蹤器和檢測(cè)器的結(jié)果進(jìn)行融合處理,判斷出當(dāng)前幀是否存在目標(biāo),如果不存在目標(biāo),則返回步驟(3)開(kāi)始對(duì)下一幀的處理;如果存在目標(biāo),則給出目標(biāo)位置以及判斷當(dāng)前幀的跟蹤軌跡是否有效,如果無(wú)效,則返回步驟(2),對(duì)下一幀進(jìn)行處理;如果有效,則進(jìn)入學(xué)習(xí)模塊,通過(guò)P-N Learning完成檢測(cè)器的在線(xiàn)更新,然后回到步驟(2),開(kāi)始對(duì)下一幀進(jìn)行處理。
2.如權(quán)利要求I所述的一種基于TLD的視頻目標(biāo)跟蹤方法,其特征在于所述步驟(2)的具體內(nèi)容是 (21)目標(biāo)在上一幀的目標(biāo)邊界框由其位置和大小信息獲得,由CellFoT在該邊界框中選擇好的特征點(diǎn),并通過(guò)光流法完成相鄰兩幀間特征點(diǎn)的跟蹤; (22)通過(guò)Σ刪除部分經(jīng)過(guò)一次光流法后跟蹤失敗的局部跟蹤器,所述Σ包括Nh、Mp和NCC ; (23)對(duì)經(jīng)由Σ刪除后最終剩余的局部跟蹤器,計(jì)算每個(gè)局部跟蹤器對(duì)應(yīng)的位移以及其距離在相鄰幀間的比例變化值,以位移以及距離比例的中位值分別作為所跟蹤目標(biāo)邊界框在相鄰幀間的位移變化和大小變化,從而估計(jì)得到在當(dāng)前幀上的目標(biāo)區(qū)域。
3.如權(quán)利要求2所述的一種基于TLD的視頻目標(biāo)跟蹤方法,其特征在于所述步驟(22)的詳細(xì)內(nèi)容是首先,當(dāng)前幀的所有局部跟蹤器通過(guò)NCC進(jìn)行刪選;然后,滿(mǎn)足NCC后的局部跟蹤器加入到Nh進(jìn)行刪選;最后,剩余的局部跟蹤器加入到Mp進(jìn)行最后的刪選,最終得到的局部跟蹤器用來(lái)更新目標(biāo)邊界框。
4.如權(quán)利要求I所述的一種基于TLD的視頻目標(biāo)跟蹤方法,其特征在于所述步驟(3)的具體內(nèi)容是 (31)使用卡爾曼濾波器和Mp對(duì)TLD檢測(cè)區(qū)域進(jìn)行預(yù)測(cè),完成目標(biāo)在當(dāng)前幀中大致區(qū)域的預(yù)測(cè);卡爾曼濾波器根據(jù)之前幀中目標(biāo)的位置,以目標(biāo)的中心點(diǎn)位置為狀態(tài)量,預(yù)測(cè)出當(dāng)前幀中目標(biāo)的中心點(diǎn),以該點(diǎn)為中心劃定一個(gè)矩形區(qū)域,且該矩形區(qū)域的大小為上一幀目標(biāo)面積的4倍,該矩形即為卡爾曼濾波器最終預(yù)測(cè)得到的目標(biāo)區(qū)域;Mp根據(jù)之前幀中目標(biāo)運(yùn)動(dòng)的方向預(yù)測(cè)目標(biāo)在當(dāng)前幀的運(yùn)動(dòng)方向,根據(jù)上一幀目標(biāo)所在位置,可以在當(dāng)前幀中劃定一個(gè)區(qū)域,目標(biāo)假定應(yīng)該出現(xiàn)在該區(qū)域中,該區(qū)域即為Mp預(yù)測(cè)得到的區(qū)域; (32)對(duì)當(dāng)前幀中所有的圖像子窗口,找出其中與經(jīng)由Kalman預(yù)測(cè)得到的目標(biāo)區(qū)域有交集的子窗口 ;再在其中找出包含于經(jīng)由Mp預(yù)測(cè)得到的圖像區(qū)域中的子窗口,這些子窗口即為符合卡爾曼濾波器和Mp共同預(yù)測(cè)結(jié)果的子窗口 ; (33)對(duì)前述符合預(yù)測(cè)結(jié)果的圖像子窗口,加入到檢測(cè)器中以判讀子窗口中的圖像是否為目標(biāo)。
5.如權(quán)利要求I所述的一種基于TLD的視頻目標(biāo)跟蹤方法,其特征在于所述步驟(4)中,判斷當(dāng)前幀是否存在目標(biāo)及目標(biāo)位置的判據(jù)如下若跟蹤器和檢測(cè)器都沒(méi)有跟蹤得到或者檢測(cè)得到目標(biāo)信息,則認(rèn)為當(dāng)前幀中不含有目標(biāo);若跟蹤器和檢測(cè)器的結(jié)果中都包含目標(biāo)位置信息,且檢測(cè)器認(rèn)為其檢測(cè)到的區(qū)域被認(rèn)為非??赡苁悄繕?biāo),則以檢測(cè)器得到的目標(biāo)區(qū)域?yàn)楫?dāng)前幀上的最終目標(biāo)位置,否則,當(dāng)前幀上最終的目標(biāo)位置為跟蹤器和檢測(cè)器目標(biāo)位置信息的均值;若跟蹤器有目標(biāo)位置信息,而檢測(cè)器沒(méi)有得到目標(biāo)位置信息,則以跟蹤器得到的目標(biāo)區(qū)域作為當(dāng)前幀中最終目標(biāo)的位置;若跟蹤器無(wú)目標(biāo)位置信息,而檢測(cè)器包含目標(biāo)位置信息,則以檢測(cè)器檢測(cè)得到的區(qū)域作為當(dāng)前幀上最終的目標(biāo)位置。
6.如權(quán)利要求I所述的一種基于TLD的視頻目標(biāo)跟蹤方法,其特征在于所述步驟(4)中,判斷當(dāng)前幀的跟蹤軌跡是否有效的判據(jù)如下若判讀當(dāng)前幀中存在目標(biāo),則給出當(dāng)前幀的跟蹤軌道是否有效的置信值,該值通過(guò)計(jì)算當(dāng)前跟蹤所得目標(biāo)與已加入到在線(xiàn)模型中圖像區(qū)域之間的相似程度得到,當(dāng)相似程度超過(guò)閾值則判定當(dāng)前所得的跟蹤軌道是有效的。
7.如權(quán)利要求I所述的一種基于TLD的視頻目標(biāo)跟蹤方法,其特征在于所述步驟(4)中,檢測(cè)器的在線(xiàn)更新的過(guò)程是在P-N Learning中,定義P結(jié)構(gòu)約束和N結(jié)構(gòu)約束,P結(jié)構(gòu)約束用來(lái)表征被分類(lèi)器分類(lèi)為negative但是結(jié)構(gòu)約束卻要求其類(lèi)別應(yīng)該為positive的樣本,要求所有靠近有效跟蹤軌道的圖像區(qū)域其類(lèi)別標(biāo)簽應(yīng)該為positive ;N結(jié)構(gòu)約束表征被分類(lèi)器分類(lèi)為positive但是結(jié)構(gòu)約束卻要求其類(lèi)別為negative的樣本,要求所有包圍有效跟蹤軌道的圖像區(qū)域其類(lèi)別標(biāo)簽為negative ;P_N Learning通過(guò)P結(jié)構(gòu)約束和N結(jié)構(gòu)約束生成有效的訓(xùn)練樣本,形成新的已標(biāo)簽訓(xùn)練樣本集,把該樣本集加入到檢測(cè)器中,更新檢測(cè)器中的集成分類(lèi)器,同時(shí)更新在線(xiàn)目標(biāo)模型和最近鄰域分類(lèi)器。
全文摘要
本發(fā)明公開(kāi)一種基于TLD的視頻目標(biāo)跟蹤方法,步驟是(1)在跟蹤目標(biāo)的起始幀,根據(jù)給出的位置和大小信息生成圖像子窗口,對(duì)檢測(cè)器進(jìn)行訓(xùn)練;(2)跟蹤器根據(jù)目標(biāo)在上一幀中的位置和大小信息,估計(jì)出目標(biāo)在當(dāng)前幀中所在的區(qū)域;(3)用檢測(cè)器對(duì)當(dāng)前幀進(jìn)行檢測(cè),找出當(dāng)前幀中所有可能的目標(biāo);(4)對(duì)跟蹤器和檢測(cè)器的結(jié)果進(jìn)行融合處理,判斷當(dāng)前幀是否存在目標(biāo),不存在則返回步驟(3)對(duì)下一幀進(jìn)行處理;存在則給出目標(biāo)位置以及判斷當(dāng)前幀的跟蹤軌跡是否有效,無(wú)效則返回步驟(2)對(duì)下一幀進(jìn)行處理;有效則完成檢測(cè)器的在線(xiàn)更新,回到步驟(2)對(duì)下一幀進(jìn)行處理。此種方法對(duì)現(xiàn)有的TLD算法進(jìn)行改進(jìn),獲得比TLD算法更理想的視頻目標(biāo)跟蹤算法。
文檔編號(hào)G06T7/20GK102881024SQ20121030374
公開(kāi)日2013年1月16日 申請(qǐng)日期2012年8月24日 優(yōu)先權(quán)日2012年8月24日
發(fā)明者周鑫, 錢(qián)秋朦, 王從慶, 葉永強(qiáng) 申請(qǐng)人:南京航空航天大學(xué)