徐 攀,齊文宗
(1. 四川大學(xué)錦江學(xué)院,四川 眉山 620800;2. 四川大學(xué)電子信息學(xué)院,四川 成都 610000)
長(zhǎng)時(shí)間的目標(biāo)追蹤技術(shù)是計(jì)算機(jī)視覺(jué)領(lǐng)域的一個(gè)富有挑戰(zhàn)性的工作[1-2],指定一個(gè)跟蹤目標(biāo)后,在目標(biāo)跟蹤過(guò)程中,經(jīng)常會(huì)出現(xiàn)跟蹤目標(biāo)的角度、幾何外形發(fā)生改變或者被遮擋,跟蹤目標(biāo)的丟失等情況。目前,目標(biāo)跟蹤技術(shù)已廣泛的應(yīng)用在智能視頻監(jiān)控、無(wú)人機(jī)導(dǎo)航、精確制導(dǎo)、軍事以及民事領(lǐng)域等,是一項(xiàng)具有重大意義的研究方向。大量學(xué)者對(duì)此進(jìn)行了廣泛的研究,提出了許多的目標(biāo)跟蹤算法,取得了豐碩的成果,其中最有優(yōu)勢(shì)的算法之一是跟蹤-學(xué)習(xí)-檢測(cè)(TLD)算法。
TLD目標(biāo)跟蹤算法是Z.Kalal[3]首先提出的,結(jié)合了跟蹤器、在線學(xué)習(xí)更新器以及檢測(cè)器三個(gè)模塊部分。TLD算法是一種新型的在線學(xué)習(xí)類型的算法,對(duì)長(zhǎng)時(shí)間跟蹤目標(biāo)具有較強(qiáng)的魯棒性和學(xué)習(xí)恢復(fù)能力。但是算法在目標(biāo)遇到被遮擋的情況時(shí)容易造成目標(biāo)漂移的丟失狀況,并且在長(zhǎng)時(shí)間的目標(biāo)跟蹤下,算法里的正負(fù)樣本會(huì)累積的越來(lái)越多,造成算法跟蹤效率的下降。因此針對(duì)上述問(wèn)題,本文對(duì)TLD算法進(jìn)行了研究,對(duì)目標(biāo)特征的提取方式以及檢測(cè)模塊的分類器進(jìn)行了改進(jìn),加入支持向量機(jī)分類器進(jìn)行分類檢測(cè),并將之與原TLD算法進(jìn)行目標(biāo)跟蹤的實(shí)驗(yàn),比較兩者的跟蹤效果。
TLD跟蹤算法是一種新穎的在線學(xué)習(xí)算法框架,主要分為三個(gè)模塊,分為學(xué)習(xí)器、跟蹤器以及檢測(cè)器。TLD最具特色的是將具有前向-后向誤差檢測(cè)能力的跟蹤器[4]和具有在線學(xué)習(xí)能力的檢測(cè)器[5]并行運(yùn)行。圖像幀輸入到學(xué)習(xí)其中進(jìn)行特征學(xué)習(xí),然后把結(jié)果傳輸?shù)綑z測(cè)器以及跟蹤器當(dāng)中,通過(guò)檢測(cè)器與跟蹤器的同時(shí)工作,將得到的數(shù)據(jù)值又返回到學(xué)習(xí)器模塊中以更新目標(biāo)的特征學(xué)習(xí)模型,從而精確的進(jìn)行目標(biāo)跟蹤。TLD跟蹤算法框架如圖1所示。
圖1 TLD算法框架圖
檢測(cè)器的目的是尋找每一幀圖像中目標(biāo)的大致位置。檢測(cè)器的框架如圖2所示,包括方差濾波器、集成分類器以及最近鄰分類器三個(gè)模塊。
圖2 TLD檢測(cè)器原理圖
圖像塊得到的是通過(guò)滑動(dòng)窗口的方法來(lái)建立網(wǎng)格對(duì)輸入圖像進(jìn)行掃描[6]。目標(biāo)候選區(qū)域以此通過(guò)三個(gè)分類器進(jìn)行判斷,一旦有一個(gè)分類器不通過(guò)則進(jìn)入被拒區(qū)域。當(dāng)都通過(guò)這三個(gè)分類器的判斷時(shí),才有可能檢測(cè)為正確的目標(biāo)區(qū)域。
方差分類器通過(guò)計(jì)算圖像目標(biāo)候選區(qū)域的灰度值方差得到,表達(dá)式為
D(x)=E(x2)-E2(x)
(1)
其中,x表示圖像區(qū)域,D(x)是圖像目標(biāo)區(qū)域的灰度值方差,E(x)為圖像目標(biāo)區(qū)域的灰度值均值,E(x2)代表圖像目標(biāo)區(qū)域灰度值平方的均值。
集成分類器是級(jí)聯(lián)分類器的第二個(gè)判斷模塊,主要是由n個(gè)隨機(jī)蕨[7]分類器構(gòu)成的隨機(jī)森林組成。圖像目標(biāo)區(qū)域進(jìn)入集成分類器模塊后,通過(guò)計(jì)算后驗(yàn)概率判斷是否進(jìn)入到最近鄰分類器,每一個(gè)隨機(jī)蕨的后驗(yàn)概率公式如下
(2)
其中,i表示為第i個(gè)隨機(jī)蕨,x代表候選目標(biāo)區(qū)域圖像特征,y代表學(xué)習(xí)到的樣本類別,pi是正樣本數(shù),ni為負(fù)樣本數(shù)。
最后再通過(guò)最近鄰分類器,選出與樣本中目標(biāo)相似度最高的一個(gè)候選目標(biāo)區(qū)域即可得到目標(biāo)區(qū)域的結(jié)果。相似度度量為
(3)
其中,pi為上一幀目標(biāo)正樣本數(shù)特征,pj為當(dāng)前幀目標(biāo)正樣本數(shù),NCC(pi,pj)為前后幀目標(biāo)區(qū)域的歸一化相關(guān)函數(shù)。
TLD跟蹤算法中跟蹤器使用的是前向后向LK中值光流法跟蹤方法。對(duì)目標(biāo)區(qū)域畫均勻網(wǎng)格,尋找網(wǎng)格中的一些特征點(diǎn),使用光流法軌跡計(jì)算移動(dòng)中值預(yù)測(cè)目標(biāo)接下來(lái)的大致移動(dòng)的位置。再通過(guò)此幀目標(biāo)的區(qū)域?qū)ふ蚁鄳?yīng)的特征點(diǎn)反饋到前一幀的學(xué)習(xí)結(jié)果,提出相似度較小的特征點(diǎn)。再將其余的相似度大的特征點(diǎn)輸出到下一幀的預(yù)測(cè)中,從而更新TLD目標(biāo)的跟蹤機(jī)制。
TLD學(xué)習(xí)器采用的是一種P-N學(xué)習(xí)機(jī)制。P-N學(xué)習(xí)是一種半監(jiān)督的在線學(xué)習(xí)器,主要由P(Positive)約束和N(Negative)約束組成。P約束樣本即正樣本是通過(guò)目標(biāo)軌跡附近的區(qū)域作為正約束,而N約束即負(fù)樣本是沒(méi)有標(biāo)記過(guò)的樣本作為負(fù)約束,通常是原理目標(biāo)軌跡的一些區(qū)域樣本。P-N學(xué)習(xí)器通過(guò)對(duì)每一幀圖像正負(fù)樣本的更新學(xué)習(xí)可以保證目標(biāo)的長(zhǎng)時(shí)間的跟蹤,提高了算法對(duì)目標(biāo)的鑒別能力。
TLD跟蹤算法的跟蹤采用的是LK中值光流法算法,可以向前向后更新跟蹤系統(tǒng),有較強(qiáng)的魯棒性。TLD算法中的檢測(cè)器側(cè)用了三個(gè)分類器,其中有用隨機(jī)蕨組成的隨機(jī)森林分類器,雖然隨機(jī)森林分類器再對(duì)圖像進(jìn)行特征分類時(shí),可以同時(shí)處理分類數(shù)據(jù)和數(shù)值數(shù)據(jù),生成可以理解的規(guī)則,有較直觀的受訓(xùn)模型。但是它不擅長(zhǎng)對(duì)圖像特征的結(jié)果進(jìn)行預(yù)測(cè),而且當(dāng)圖像的特征數(shù)據(jù)非常復(fù)雜的時(shí)候,隨機(jī)森林就會(huì)變得非常龐大,以至于不能對(duì)候選的圖像目標(biāo)區(qū)域做出準(zhǔn)確的決策,從而降低算法跟蹤的精確性。
所以經(jīng)過(guò)研究,本文在TLD算法的基礎(chǔ)上,提出了一種基于SVM的TLD目標(biāo)跟蹤方法。利用SVM分類器算法取代TLD算法中隨機(jī)森林分類器得到一個(gè)新型的檢測(cè)模塊。
支持向量機(jī)[8](Support Vector Machine,SVM)是一種有監(jiān)督學(xué)習(xí)的二分類模型,最早是由Vapnik和Corinna Cortes等人在1995年提出的。SVM分類器的學(xué)習(xí)模型是圖像目標(biāo)特征特征空間間隔最大的分類策略,是一個(gè)分類超平面定義的判別分類器。
首先二維的超平面方程定義為
f(x)=ωTx+b=0
(4)
其中,x為圖像特征樣本,ωT為系數(shù)矩陣的轉(zhuǎn)置,b為常量參數(shù)。
把特征樣本x代入到f(x)中,如果計(jì)算的值大于0,則對(duì)這個(gè)樣本標(biāo)記一個(gè)-1的類別標(biāo)簽yi,大于0則標(biāo)記一個(gè)+1的類別標(biāo)簽yi。然后定義函數(shù)間隔
=|ωTx+b|=yi(ωTx+b)
(5)
然后計(jì)算它們到分類超平面的間隔
(6)
其中,‖ω‖是向量ω的范數(shù)。
如圖3所示,可以把SVM的優(yōu)化問(wèn)題函數(shù)定義為
i=1,2,…,n
(7)
i=1,2,…,n
(8)
這樣就能得到一個(gè)全局的最優(yōu)解。
圖3 超平面最優(yōu)分類面示意圖
另外TLD算法中的Haar特征一般分為4類,分別為:邊緣特征、線性特征、中心特征以及對(duì)角線特征,如圖4所示。Haar特征模板由黑色和白色組成,反映了圖像的灰度變化特征。特征數(shù)值的定義為模板里的白色區(qū)域的像素灰度值之和減去黑色區(qū)域的像素灰度值之和。
在TLD跟蹤算法里只是使用了簡(jiǎn)單的邊緣特征,不鞥呢很好的提取多的圖像目標(biāo)特征信息。本文在Haar特征上使用了多種特征,以及加入一種具有八個(gè)方向的圓形的Haar特征進(jìn)行圖像的特征提取,如圖5所示,這樣可以提取出豐富的目標(biāo)特征信息,提高了跟蹤的精確度。
圖4 Haar特征圖
圖5 圓形的Haar特征圖
基于SVM的改進(jìn)的TLD跟蹤算法的具體實(shí)現(xiàn)過(guò)程如下:
1)人工初始化目標(biāo)跟蹤框。
2)在目標(biāo)區(qū)域?yàn)橹行倪x擇正樣本以及原理目標(biāo)區(qū)域的位置選擇負(fù)樣本進(jìn)入到檢測(cè)器進(jìn)行初始化方差分類器,SVM分類器以及最近鄰分類器,得到目標(biāo)的檢測(cè)結(jié)果以及相似度。
3)進(jìn)行目標(biāo)跟蹤,利用改進(jìn)的TLD算法進(jìn)行跟蹤目標(biāo)并計(jì)算跟蹤的相似度。
4)將檢測(cè)得到的置信度以及下一幀得到的置信度進(jìn)行比較,將相似度最大的位置作為這一幀的目標(biāo)區(qū)域。
5)利用學(xué)習(xí)器對(duì)此處的目標(biāo)區(qū)域進(jìn)行在線學(xué)習(xí),然后將學(xué)習(xí)的結(jié)果對(duì)檢測(cè)器的方差分類器、SVM分類器以及最近鄰分類器進(jìn)行修正,對(duì)跟蹤器中的特征點(diǎn)進(jìn)行更新學(xué)習(xí)。
6)輸入下一幀圖像,然后返回步驟2)進(jìn)入下一幀的目標(biāo)跟蹤。
為了驗(yàn)證本論文的方法的有效性,本文將原TLD跟蹤算法以及本文提出的基于SVM的TLD跟蹤算法進(jìn)行了視頻對(duì)比測(cè)試實(shí)驗(yàn)。實(shí)驗(yàn)環(huán)境:CPU G3250 @ 3.20GHz處理器、4GB RAM 、64位操作系統(tǒng),在visual stdio2013軟件上實(shí)現(xiàn),庫(kù)版本為opencv2.4。
實(shí)驗(yàn)一是跟蹤自行車手的視頻,分辨率為,320X240,視頻目標(biāo)有大小、形態(tài)變化以及快速運(yùn)動(dòng)等。跟蹤效果如下圖6所示,其中紅色目標(biāo)跟蹤框代表的是改進(jìn)的TLD算法跟蹤效果,綠色的目標(biāo)跟蹤框代表的是原TLD算法跟蹤效果。
圖6 自行車手視頻序列圖
從上述可以看出,改進(jìn)的基于SVM的TLD跟蹤算法有著較好的跟蹤能力,相對(duì)于原TLD算法,改進(jìn)的TLD算法跟蹤的目標(biāo)漂移程度比原始TLD算法方法的小。 本文采用平均成功率以及幀率作為對(duì)比評(píng)價(jià)指標(biāo)。平均成功率(Average Success Rate,Average SR)是指算法跟蹤到的目標(biāo)與實(shí)際目標(biāo)的區(qū)域的函數(shù),公式如下
(9)
其中,area(T)是算法跟蹤到的目標(biāo)區(qū)域,area(G)是圖像實(shí)際的目標(biāo)區(qū)域,當(dāng)平均成功率P>0.5時(shí),即可認(rèn)為跟蹤目標(biāo)成功,否則視為不成功。
本文還利用幀率作為評(píng)價(jià)指標(biāo),幀率(Frame Rate)是指每秒視頻顯示圖像的幀數(shù),體現(xiàn)算法跟蹤目標(biāo)的實(shí)時(shí)性程度。實(shí)驗(yàn)一的算法平均成功率以及幀率對(duì)比結(jié)果如表1所示。
表1 算法平均成功率以及幀率對(duì)比表
從圖6以及表1可以看出,在快速運(yùn)動(dòng)的跟蹤目標(biāo)上,原始TLD跟蹤算法到的穩(wěn)定性比本文改進(jìn)的算法要差,這是由于本文的改進(jìn)算法中SVM分類器能在少量特征下更好的準(zhǔn)確檢測(cè)目標(biāo)區(qū)域,多種特征模板提取的目標(biāo)特征信息也有利于精確的跟蹤目標(biāo)。在實(shí)時(shí)性上,本文改進(jìn)的TLD跟蹤算法比原TLD跟蹤算法速度也快了許多,對(duì)長(zhǎng)時(shí)間跟蹤目標(biāo)有著更好的穩(wěn)健性。
實(shí)驗(yàn)二是跟蹤小轎車目標(biāo),分辨率為320×240,跟蹤的目標(biāo)有被部分遮擋的情況以及集合形態(tài)的變化。跟蹤效果如圖7所示,其中紅色目標(biāo)跟蹤框代表的是改進(jìn)的TLD算法跟蹤效果,綠色的目標(biāo)跟蹤框代表的是原TLD算法跟蹤效果。
圖7 小轎車視頻序列圖
實(shí)驗(yàn)二的算法平均成功率和幀率對(duì)比結(jié)果如表2所示。
表2 算法平均成功率以及幀率對(duì)比表
從實(shí)驗(yàn)二的結(jié)果數(shù)據(jù)中可以看出,本文改進(jìn)的算法在目標(biāo)被遮擋的情況上跟蹤的精確性要比原始TLD算法的要高,這是由于本文采用了多種新型的Haar特征進(jìn)行目標(biāo)的特征提取,以及采用了檢測(cè)性更好的SVM分類器,當(dāng)出現(xiàn)目標(biāo)被遮擋的情況時(shí),原始TLD算法不能很好地進(jìn)行分類學(xué)習(xí),導(dǎo)致算法跟蹤出現(xiàn)目標(biāo)漂移過(guò)大。而本文改進(jìn)的方法對(duì)這種情況有著很好地魯棒性,并且當(dāng)目標(biāo)恢復(fù)時(shí)能很好地校正學(xué)習(xí)器和跟蹤器,能夠很好地解決目標(biāo)的尺度,外形等變化,從而可以長(zhǎng)時(shí)間的穩(wěn)定跟蹤目標(biāo)。
本文提出了一種基于SVM的TLD目標(biāo)跟蹤算法。算法在原始TLD算法基礎(chǔ)上,采用SVM分類器代替隨機(jī)森林分類器,并且使用多種新型的Haar特征進(jìn)行目標(biāo)的特征提取,比原算法采用的單一Haar特征有著更強(qiáng)的跟蹤穩(wěn)定性。實(shí)驗(yàn)結(jié)果表明,本文改進(jìn)的TLD跟蹤算法比原始TLD算法有著更強(qiáng)的魯棒性,在目標(biāo)尺度、外形的變化一級(jí)部分遮擋的情況下跟蹤精確性變得更高了,改進(jìn)的算法跟蹤速度也比原始TLD算法的要快,實(shí)時(shí)性也提高了。本文算法在總體上對(duì)單個(gè)目標(biāo)的跟蹤已經(jīng)達(dá)到一個(gè)比較理想的效果,可以進(jìn)行長(zhǎng)時(shí)間的穩(wěn)健跟蹤。今后將在此方法基礎(chǔ)上,考慮實(shí)現(xiàn)目標(biāo)的自動(dòng)檢測(cè)跟蹤技術(shù)以及復(fù)雜背景下的多個(gè)目標(biāo)跟蹤方法。