唐國(guó)智,李頂根
華中科技大學(xué) 能源與動(dòng)力工程學(xué)院,武漢 430074
行人跟蹤一直是計(jì)算機(jī)視覺的一個(gè)重要領(lǐng)域,在很多的場(chǎng)景中都有所應(yīng)用。在簡(jiǎn)單的無遮擋和無大幅度目標(biāo)尺寸變化的場(chǎng)景中,傳統(tǒng)的行人跟蹤算法取得了較好的成績(jī),如STC[1]、CSK[2]、KCF[3]、OCT-KCF[4]等。但是在以往的傳統(tǒng)方法中,一旦目標(biāo)行人在復(fù)雜的自然場(chǎng)景中被遮擋,或是因?yàn)槟繕?biāo)行人逐漸遠(yuǎn)離和接近攝像頭而導(dǎo)致行人尺寸發(fā)生變化時(shí),均會(huì)出現(xiàn)跟蹤不準(zhǔn)的問題。這是由于傳統(tǒng)方法的搜索機(jī)制都是由上一幀所檢測(cè)出的目標(biāo)位置作為下一幀的檢測(cè)目標(biāo),所以一旦出現(xiàn)了遮擋和尺寸變化的情況,就會(huì)導(dǎo)致目標(biāo)的匹配模板逐漸失真,以至于最終跟蹤出現(xiàn)較大的誤差而失敗[5]。最近,提出了一種自適應(yīng)模板更新的魯棒目標(biāo)跟蹤算法[6]將目標(biāo)模板及其仿射變換得到的圖像放入候選模板庫(kù)中,使得該算法進(jìn)一步提升了對(duì)目標(biāo)變現(xiàn)變化的魯棒性,但是當(dāng)跟蹤序列中存在多個(gè)相似行人目標(biāo)或目標(biāo)行人被完全遮擋時(shí)時(shí)表現(xiàn)不佳,為了解決遮擋、目標(biāo)尺寸變化及相似目標(biāo)干擾的問題,引入了深度學(xué)習(xí)加時(shí)空約束的行人跟蹤方法。
深度學(xué)習(xí)的目標(biāo)跟蹤方法主要基于孿生網(wǎng)絡(luò)的方法,孿生網(wǎng)絡(luò)通過學(xué)習(xí)模板和當(dāng)前幀的相似度,判斷目標(biāo)最可能出現(xiàn)的位置,來達(dá)到跟蹤的效果。最有代表性的孿生網(wǎng)絡(luò)跟蹤方法為SiamFC[7],然后又提出了SiamRPN[8]、SiamRPN++[9]等,孿生網(wǎng)絡(luò)中的模板就是第一幀中給出的要跟蹤的目標(biāo),其他后序幀通過與模板進(jìn)行相似性計(jì)算來尋找跟蹤目標(biāo),但是孿生網(wǎng)絡(luò)同樣具有缺點(diǎn),一旦目標(biāo)發(fā)生了很大的形變,或者嚴(yán)重的遮擋,甚至和第一幀的給定目標(biāo)從外觀上已經(jīng)看不出是一個(gè)目標(biāo)了,這個(gè)時(shí)候仍借助模板去匹配目標(biāo)就出現(xiàn)跟蹤漂移。如果恰好出現(xiàn)了和目標(biāo)相似類別的另一個(gè)背景目標(biāo)出現(xiàn),網(wǎng)絡(luò)很可能出現(xiàn)誤差漂移現(xiàn)象。所以提出了GradNet[10],此算法通過挖掘目標(biāo)模板的梯度信息來不斷更新模板信息,達(dá)到連續(xù)適應(yīng)目標(biāo)的動(dòng)態(tài)外觀變現(xiàn)。此方法在一定程度上解決了目標(biāo)被遮擋的問題,但是在跟蹤序列中存在多個(gè)高度相似目標(biāo)時(shí),它們的相似度得分會(huì)超過正確目標(biāo),從而產(chǎn)生跟蹤漂移,所以提出了一個(gè)基于深度學(xué)習(xí)和時(shí)空約束的方法來解決上訴問題。為得到較高的處理速度,深度學(xué)習(xí)的跟蹤機(jī)制為先使用處理速度較快的SSD[11]神經(jīng)網(wǎng)絡(luò)檢測(cè)出圖片中所有的行人目標(biāo)組成一個(gè)行人池,然后再把行人池中的行人與行人模板通過一種基于領(lǐng)域差異[12]的深度學(xué)習(xí)方法計(jì)算相似度,相似度最高的為目標(biāo)行人。但是經(jīng)過試驗(yàn)發(fā)現(xiàn),單純深度學(xué)習(xí)的方法雖然在解決了遮擋和尺寸變化的問題,但是也會(huì)產(chǎn)生漂移現(xiàn)象,特別是在低像素的圖片中,這是由于目前最好的神經(jīng)網(wǎng)絡(luò)在自然場(chǎng)景下的行人檢測(cè)的準(zhǔn)確率為83%,行人匹配的準(zhǔn)確率為95%,但是由于整個(gè)跟蹤過程由兩個(gè)部分串聯(lián)形成,所以跟蹤準(zhǔn)確率只有78.85%,這還只是在指定數(shù)據(jù)集上得到的結(jié)果,用于大量自然場(chǎng)景下的泛化誤差會(huì)更高,所以引入時(shí)空約束的后處理,解決了上訴問題。
提出的算法的主要改進(jìn)及創(chuàng)新點(diǎn):
(1)根據(jù)實(shí)際工況優(yōu)化了SSD網(wǎng)絡(luò)結(jié)構(gòu);
(2)領(lǐng)域差異用于行人跟蹤后端網(wǎng)絡(luò);
(3)提出的時(shí)空約束極大提升了算法在多個(gè)相似目標(biāo)干擾情況下的魯棒性。
目標(biāo)檢測(cè)是計(jì)算機(jī)視覺中一個(gè)重要問題,在行人跟蹤、車牌識(shí)別、無人駕駛等領(lǐng)域都具有重要的研究?jī)r(jià)值。行人跟蹤的第一步驟即為行人檢測(cè),高效快速的檢測(cè)出圖片中所有行人是至關(guān)重要的。目前準(zhǔn)確率最高的檢測(cè)框架為Faster R-CNN[13],但是其速度較慢,每秒只有7幀左右,YOLO[14]框架現(xiàn)在更新到了YOLO V3[15]版本,速度超過60 幀,但是準(zhǔn)確率不高,而且對(duì)于小物體不敏感。最近提出一種PCNN的行人檢測(cè)方法,使用推薦候選區(qū)及多尺度并行卷積來提升對(duì)于行人目標(biāo)檢測(cè)的方法[16],還有一種專用于熱圖像檢測(cè)行人的算法[17],根據(jù)實(shí)際使用情況,本文選擇的檢測(cè)框架為SSD,它的速度也達(dá)到了每秒58 幀左右,這對(duì)于做行人跟蹤完全夠用,準(zhǔn)確率也接近Faster R-CNN的水準(zhǔn)。
下面介紹SSD的檢測(cè)原理。SSD的底層特征提取網(wǎng)絡(luò)采用去除全連接層的VGG16[18],也可以替換為ResNet[19]等基礎(chǔ)網(wǎng)絡(luò)。這些基礎(chǔ)網(wǎng)路都是經(jīng)過ImageNet[20]數(shù)據(jù)集預(yù)訓(xùn)練的。經(jīng)過基礎(chǔ)網(wǎng)絡(luò)的特征提取后再進(jìn)行一系列卷積和池化操作直到最后一層,其中的每層的卷積和池化的操作尺寸這里不詳細(xì)說明。然后選取其中的一些卷積層的輸出feature map 再通過各自的anchor layer,得到深度卻不一樣的最終結(jié)果。如圖1所示,原本的SSD框架會(huì)在每一個(gè)anchor point上產(chǎn)生系列長(zhǎng)寬比不同的default box,由于在道路監(jiān)控場(chǎng)景中行人的檢測(cè)框都為豎直的矩形框,而平放的矩形檢測(cè)框不會(huì)出現(xiàn),所以可對(duì)此處優(yōu)化,刪除平放的default box,以達(dá)到加快模型處理速度的目的。且SSD 采用了多尺度特征融合的處理方法,越往后的feature map的尺寸越小,但感知視野也就越大,所以靠后的特征預(yù)測(cè)大物體,而靠前的特征預(yù)測(cè)小物體,在實(shí)際的場(chǎng)景中,行人目標(biāo)屬于中小型目標(biāo),所以如圖2 所示,完全可以把最后三層的feature map刪除。
行人匹配采用一種計(jì)算領(lǐng)域差異的算法,其算法框架如圖3。首先采用兩層綁定卷積(共享權(quán)重的卷積層)卷積圖片然后再通過最大池化從每張圖片提取出37×25×12 的feature map,接下來計(jì)算交叉領(lǐng)域差異,令fi和gi分別表示來自第一和第二視圖的第i 個(gè)特征圖(1 ≤i ≤25)。交叉輸入鄰域差異層計(jì)算圍繞每個(gè)特征位置的鄰域的兩個(gè)視圖的特征值的差異,產(chǎn)生一組25 個(gè)鄰域差異映射??偟膩碚f,5×5 矩陣Ki(x,y)是兩個(gè)5×5 矩陣的差值,在第一個(gè)矩陣中,每個(gè)元素都是標(biāo)量fi(x,y)的副本,第二個(gè)是gi的5×5 鄰域以(x,y)為中心。在鄰域中獲取差異背后的動(dòng)機(jī)是增加兩個(gè)輸入圖像對(duì)應(yīng)特征中的位置差異的魯棒性。由于操作是不對(duì)稱的,還考慮了鄰域差異圖K"i,其運(yùn)算過程互換fi和gi。這產(chǎn)生50 個(gè)鄰域差異圖,和,每個(gè)大小為12×37×5×5。然后通過一個(gè)補(bǔ)丁匯總層來總結(jié)這些領(lǐng)域差異,具體操作為把每個(gè)5×5塊中的元素相加,經(jīng)過匯總后feature map 尺寸變?yōu)?7×12×50。最后通過全連接層和softmax 層得出相應(yīng)結(jié)果得分。該計(jì)算領(lǐng)域差異的算法的兩個(gè)輸入分別為基準(zhǔn)跟蹤圖片和由行人檢測(cè)網(wǎng)絡(luò)輸出的候選行人圖片,主要關(guān)注點(diǎn)為輸入圖像與基準(zhǔn)圖像在各點(diǎn)(x,y)周圍5×5 領(lǐng)域的特征距離,增強(qiáng)了對(duì)特征點(diǎn)位置差異的魯棒性,使用的綁定卷積在各個(gè)不同場(chǎng)景下的數(shù)據(jù)集經(jīng)過訓(xùn)練,用于提取兩個(gè)輸入的高維特征,使得適用于不同場(chǎng)景下的行人匹配。
圖1 去除冗余default box
圖2 優(yōu)化SSD算法框架圖
圖3 行人匹配算法框架圖
單純使用深度學(xué)習(xí)的行人檢測(cè)和匹配來實(shí)現(xiàn)目標(biāo)跟蹤是的效果并不理想,雖然有效解決了遮擋與尺寸變化的問題,但是也出現(xiàn)了在一些場(chǎng)景下跟蹤漂移的問題。經(jīng)過實(shí)驗(yàn)發(fā)現(xiàn),這種問題基本出現(xiàn)在低像素圖片中有多個(gè)相似的行人和漏檢目標(biāo)行人情況下,特別是當(dāng)目標(biāo)行人遠(yuǎn)離攝像機(jī)從而在圖片所占像素減小時(shí),深度學(xué)習(xí)模型更加難以區(qū)分目標(biāo)與相似行人。如圖4 給出一些漂移案例。綠色粗體框?yàn)檎_的標(biāo)簽,紫色細(xì)框?yàn)樯疃葘W(xué)習(xí)跟蹤模型跟蹤結(jié)果。可以明顯看出,圖中的行人基本都是穿著黑衣,在目標(biāo)的像素比較大時(shí)(前兩張圖),跟蹤效果良好,但是當(dāng)目標(biāo)像素比減小到一定程度后,深度學(xué)習(xí)模型無法區(qū)分目標(biāo)與較遠(yuǎn)處的相似行人,從而產(chǎn)生誤判。為了抑制這種漂移現(xiàn)象,下面提出幾種方法來解決這個(gè)問題。
普通攝像機(jī)的幀率為25~30 f/s之間,行人移動(dòng)的速度在相鄰幾幀之間是不會(huì)產(chǎn)生較大的變化的,因此相鄰幾幀的幀間位移應(yīng)該是近似的,如有較大的幀間位移差異,則視為跟蹤產(chǎn)生漂移,算法拋棄當(dāng)前行人池中匹配得分最高的行人目標(biāo),選出得分次高且超過閾值的目標(biāo)進(jìn)行幀間位移計(jì)算,計(jì)算幀間位移方法如下:
式(1)中c為深度學(xué)習(xí)目標(biāo)行人檢測(cè)框中心的坐標(biāo)集合;式(2)中xn,yn,wn,hn分別為框左上角坐標(biāo)和框的寬高;式(3)中S為目標(biāo)行人幀間位移集合;式(4)中計(jì)算相鄰中心點(diǎn)的歐式距離;式(6)是計(jì)算相鄰3 次位移的加權(quán)和,ω為設(shè)定的權(quán)值,設(shè)定的依據(jù)為行人目標(biāo)當(dāng)前的運(yùn)動(dòng)狀態(tài)與其前一時(shí)刻的運(yùn)動(dòng)狀態(tài)相關(guān)性最高,依次類推,越早的運(yùn)動(dòng)狀態(tài)與當(dāng)前運(yùn)動(dòng)狀態(tài)相關(guān)性越低,這里使用的ω值是通過多次試驗(yàn)得到的經(jīng)驗(yàn)值。
目標(biāo)在圖片中檢測(cè)框尺寸隨著與攝像機(jī)的相對(duì)距離的變化而不斷改變,但是相鄰幀之間的檢測(cè)框不會(huì)發(fā)生較大的尺寸變化,選取相鄰幀之間檢測(cè)框尺寸變化比例來作為衡量標(biāo)準(zhǔn),選取一個(gè)閾值,如果變化比例超過閾值,則算法拋棄當(dāng)前行人池中匹配得分最高的行人目標(biāo),選出得分次高且超過閾值的目標(biāo)進(jìn)行尺寸變化比例計(jì)算。尺寸變化比例計(jì)算公式如下:
式(8)中K為深度學(xué)習(xí)目標(biāo)行人檢測(cè)框?qū)挾群透叨鹊募?;式?)計(jì)算了相鄰兩幀幀間寬和高的變化比例,取較大的為判別依據(jù),式中γ為比例變化閾值,本文中γ的取值為前3幀的幀間寬高變化比例的加權(quán)值,考慮到在目標(biāo)行人被半遮擋時(shí)檢測(cè)框比例變化較大的情況,且通常情況下幀間寬高比變化比例不會(huì)超過0.1,所以加權(quán)權(quán)值在這里是非常規(guī)的,設(shè)置為(2,1.7,1.5),也可以直接使用經(jīng)過多次實(shí)驗(yàn)得到的經(jīng)驗(yàn)值γ=0.25。
當(dāng)目標(biāo)行人被遮擋或是被漏檢,行人檢測(cè)無法檢測(cè)到,此時(shí)目標(biāo)行人在這些遮擋幀和漏檢幀中消失,行人池中就不包含有目標(biāo)行人圖片,由上兩種約束遍歷完整個(gè)行人池也不會(huì)發(fā)現(xiàn)目標(biāo),也就無法得到目標(biāo)行人有效的跟蹤框坐標(biāo),且上述兩種約束算法都是迭代進(jìn)行的,即計(jì)算時(shí)需要依賴上一幀的信息,所以這里提出一種由跟蹤目標(biāo)運(yùn)動(dòng)慣性來預(yù)測(cè)遮擋和漏檢時(shí)目標(biāo)跟蹤框位置的算法。當(dāng)遍歷完整個(gè)行人池也沒有發(fā)現(xiàn)符合約束的目標(biāo)時(shí),判斷為目標(biāo)行人被遮擋或是漏檢,此時(shí)取前3幀中幀間位移矢量做加權(quán)求和來預(yù)測(cè)當(dāng)前幀的跟蹤框位置。由于目標(biāo)行人在被長(zhǎng)時(shí)間遮擋時(shí)其移動(dòng)狀態(tài)是不可知的,而上述兩種約束算法在時(shí)間上都具有連續(xù)性,所以本文設(shè)定當(dāng)目標(biāo)行人連續(xù)60 幀不被檢測(cè)到出現(xiàn)在行人池中則不再加以約束,此時(shí)只有深度學(xué)習(xí)算法單獨(dú)進(jìn)行檢測(cè)匹配,直到目標(biāo)行人再次出現(xiàn)。計(jì)算方法如下:
圖4 漂移示例
本文算法將在OTB[21]、TC128[22]、UAV123[23]數(shù)據(jù)集上進(jìn)行測(cè)試,OTB數(shù)據(jù)集中有大量包含相似目標(biāo)干擾的視頻跟蹤序列數(shù)據(jù),這對(duì)于跟蹤算法是一個(gè)嚴(yán)峻的考驗(yàn)。TC128 數(shù)據(jù)集包含有彩色和灰度視頻序列以檢驗(yàn)傳統(tǒng)方法使用灰度信息與深度學(xué)習(xí)使用色彩信息對(duì)跟蹤效果的影響,UAV123 包含了無人機(jī)拍攝的視頻序列,有大量攝像頭角度切換的的視頻序列,可以檢驗(yàn)?zāi)繕?biāo)角度和尺寸變化對(duì)于跟蹤算法的影響。在上述的數(shù)據(jù)中進(jìn)行了算法的測(cè)試,并與優(yōu)秀的傳統(tǒng)算法以及未加時(shí)空約束的深度學(xué)習(xí)算法進(jìn)行比較,主要解決遮擋和自適應(yīng)尺寸變化,以及在有多個(gè)相似目標(biāo)時(shí)單純的深度學(xué)習(xí)算法產(chǎn)生漂移的問題。如圖5 為各個(gè)算法在各個(gè)數(shù)據(jù)集中不同的子集上的運(yùn)行結(jié)果圖,分別展示了多個(gè)相似目標(biāo)、目標(biāo)尺寸變化以及目標(biāo)遮擋場(chǎng)景下的不同算法的跟蹤效果。
圖5 算法運(yùn)行效果圖
為了便于算法之間的分析對(duì)比,給出了上述7種場(chǎng)景中不同算法跟蹤目標(biāo)的3D散點(diǎn)圖(圖6至圖8);散點(diǎn)圖中x、y為每幀圖像中跟蹤框的幾何中心坐標(biāo),frame number為幀序列。性能評(píng)判采用文獻(xiàn)[24]中提出的的評(píng)價(jià)指標(biāo),這里給出了兩個(gè)評(píng)價(jià)指標(biāo):中心位置誤差(CLE)和重疊(OP)。圖6 展示了對(duì)于目標(biāo)尺寸變化的場(chǎng)景跟蹤,對(duì)應(yīng)圖5(a)的算法運(yùn)行效果,可見OCT-KCF算法從初始幀就選擇了錯(cuò)誤的基準(zhǔn)特征從而導(dǎo)致跟蹤全程都產(chǎn)生漂移,而其他兩種傳統(tǒng)跟蹤算法初期跟蹤良好,但由于對(duì)目標(biāo)的尺寸變化不魯棒而產(chǎn)生漂移。目標(biāo)尺寸變化如圖9 所示,本文提出的算法預(yù)測(cè)框面積與Label基本符合,圖中在180 幀時(shí)CSK 與Label 的面積差達(dá)到了最大值,所以結(jié)合圖6可明顯發(fā)現(xiàn)此時(shí)跟蹤發(fā)生了漂移,STC 算法在60 幀到130 幀期間框的尺寸增大,而Label的框的尺寸減小,導(dǎo)致特征匹配模板被噪聲干擾,所以產(chǎn)生漂移,這是由于傳統(tǒng)算法對(duì)于尺寸變化不魯棒導(dǎo)致的。而單純深度學(xué)習(xí)算法在此場(chǎng)景中由于受到有多個(gè)相似目標(biāo)的存在且圖片分辨率較低的影響,跟蹤也產(chǎn)生大幅度的漂移,但是加入了本文提出的時(shí)空約束后,深度學(xué)習(xí)產(chǎn)生的漂移得到了很好的抑制,跟蹤點(diǎn)云基本與標(biāo)簽點(diǎn)云重合。GradNet算法在150幀左右時(shí),由于存在多個(gè)相似目標(biāo)聚集在一起從而發(fā)生跟蹤漂移。
圖6 Bolt跟蹤算法3D散點(diǎn)圖
圖7 Walk跟蹤算法3D散點(diǎn)圖
圖8 Girl跟蹤算法3D散點(diǎn)圖
圖9 目標(biāo)尺寸變化圖
圖7對(duì)應(yīng)于圖5(c)的算法運(yùn)行效果,在此場(chǎng)景中,也存在多個(gè)相似目標(biāo),而且途中還出現(xiàn)了跟蹤目標(biāo)被半遮擋的情況,傳統(tǒng)算法在目標(biāo)被半遮擋后,特征模板被噪聲污染,而且由于跟蹤目標(biāo)是逐漸遠(yuǎn)離鏡頭的,尺寸發(fā)生變化,跟蹤產(chǎn)生漂移。由于在場(chǎng)景中存在一個(gè)高度相似的行人,所以單純的深度學(xué)習(xí)跟蹤算法無法準(zhǔn)確分辨目標(biāo)行人,頻繁產(chǎn)生漂移。本文提出的算法在深度學(xué)習(xí)的基礎(chǔ)上加入時(shí)空約束,極大地抑制了相似漂移,取得了較好的效果,從圖7 可看出,跟蹤點(diǎn)與標(biāo)簽點(diǎn)基本重合。
圖8 對(duì)應(yīng)于圖5(d)的算法運(yùn)行效果,在此場(chǎng)景中,出現(xiàn)了跟蹤目標(biāo)完全被遮擋的情況。傳統(tǒng)的跟蹤算法在目標(biāo)被遮擋之后,特征模板被噪聲污染,導(dǎo)致下一幀產(chǎn)生跟蹤漂移。而單純的深度學(xué)習(xí)在跟蹤目標(biāo)被遮擋時(shí),目標(biāo)不在行人池中及喪失了目標(biāo)所有的像素信息,算法即使遍歷整個(gè)行人池也無法得出目標(biāo)被遮擋時(shí)的跟蹤框,從而產(chǎn)生漂移。本文提出的算法加入了目標(biāo)被遮擋時(shí)的位置預(yù)測(cè),可以根據(jù)目標(biāo)被遮擋前幾幀的運(yùn)動(dòng)慣性推測(cè)出被遮擋時(shí)的位置。由圖8可看出,本文提出的算法很好地抑制了在目標(biāo)本遮擋時(shí)深度學(xué)習(xí)算法產(chǎn)生的漂移。
基于中心位置誤差(CLE)和重疊(OP)的算法性能對(duì)比的算法性能對(duì)比,如圖10和圖11所示。
下面重點(diǎn)分析提出方法對(duì)相似漂移和漏檢漂移的抑制能力。如圖12、13舉例說明如何避免相似漂移。
在圖12、13 中紫紅色框?yàn)椴患訒r(shí)空約束的深度學(xué)習(xí)算法結(jié)果,紅色框?yàn)樘岢龅膸r(shí)空約束的算法結(jié)果,白色框?yàn)樯弦粠_跟蹤結(jié)果。由于場(chǎng)景中存在高度相似目標(biāo)的干擾,相似目標(biāo)的最終跟蹤得分比正確目標(biāo)要高,造成了相似漂移,加入時(shí)空約束后計(jì)算幀間位移,得分最高幀間位移超過90,遠(yuǎn)遠(yuǎn)超出了計(jì)算得出的閾值2.062 0 和0.707 1,所以高度相似目標(biāo)被時(shí)空約束算法濾除,避免了相似漂移。
圖10 圖5中7場(chǎng)景下不同跟蹤算法的CLE
圖11 圖5中7場(chǎng)景下不同跟蹤算法的OP
圖12 Bolt相似漂移標(biāo)示圖
如圖13 所示,舉例說明如何避免遮擋漏檢漂移。圖14中紫紅色框?yàn)椴患尤霑r(shí)空約束的深度學(xué)習(xí)算法結(jié)果,紅色框?yàn)楸疚奶岢龅乃惴ǖ母櫧Y(jié)果。四個(gè)白色框?yàn)榍?幀的正確跟蹤結(jié)果。在當(dāng)前場(chǎng)景中,要跟蹤的目標(biāo)被完全遮擋,孿生網(wǎng)絡(luò)中的行人檢測(cè)網(wǎng)絡(luò)無法檢測(cè)跟蹤目標(biāo),造成了漏檢,在不加入時(shí)空約束的網(wǎng)絡(luò)中,由于漏檢而喪失了跟蹤目標(biāo)的全部信息,為了跟蹤的連續(xù)性,會(huì)找到當(dāng)前幀中得分最高的目標(biāo)來當(dāng)做跟蹤結(jié)果,造成漏檢漂移。加入時(shí)空約束后會(huì)以漏檢前的4 幀正確跟蹤結(jié)果的幀間位移矢量加權(quán)計(jì)算出當(dāng)前幀的位移矢量,達(dá)到預(yù)測(cè)漏檢時(shí)目標(biāo)位置的效果,避免了漏檢漂移。
圖13 Walk相似漂移標(biāo)示圖
圖14 Girl遮擋漏檢標(biāo)示圖
具體給出各個(gè)算法在數(shù)據(jù)集中的理論CLE 和OP數(shù)值表,如表1和表2所示。
由圖10 和表1 可以明顯看出,傳統(tǒng)的跟蹤算法,在目標(biāo)尺寸發(fā)生變化和目標(biāo)被遮擋時(shí)會(huì)產(chǎn)生漂移。在有多個(gè)高度相似目標(biāo)存在的跟蹤場(chǎng)景中,如Bolt 和Basketball,不加時(shí)空約束的深度學(xué)習(xí)算法DL、GradNet 的像素中心偏移(CLE)比使用了時(shí)空約束的方法DLSTC高4.8~19倍。
橫軸重疊率的計(jì)算方法為算法運(yùn)算得出的跟蹤框與標(biāo)簽框的交集除以兩框的并集,公式為:
其中Ro為跟蹤框,Rd為標(biāo)簽框??v軸為當(dāng)前重疊率幀數(shù)占總幀數(shù)比值,曲線與兩軸間的面積與算法性能成正比。由圖11和表2可以得出,在一些沒有相似目標(biāo)的跟蹤場(chǎng)景中,如Walk、Girl、Woman、Person 中,沒有加時(shí)空約束的深度學(xué)習(xí)方法GradNet表現(xiàn)良好,本文提出的DLSTC方法比GradNet略微遜色,但也取得了良好的效果,但在Bolt 和Basketball 這些有相似目標(biāo)的跟蹤場(chǎng)景中DLSTC 比GradNet 的OP 高了3.5~8.6 倍。本文提出的深度學(xué)習(xí)加時(shí)空約束的方法較好地解決了目標(biāo)形變、被遮擋以及相似干擾的問題。
表1 不同算法CLE對(duì)比
表2 不同算法OP對(duì)比
在目標(biāo)跟蹤的場(chǎng)景中,傳統(tǒng)跟蹤算法的難點(diǎn)為目標(biāo)被遮擋和尺寸變化所導(dǎo)致的特征模板被噪聲所污染而產(chǎn)生漂移,而不加時(shí)空約束的深度學(xué)習(xí)方法容易被相似目標(biāo)干擾,此處引入深度學(xué)習(xí)的跟蹤算法,解決目標(biāo)遮擋和尺寸變化的問題。提出一種時(shí)空約束的算法,良好的抑制了相似漂移和漏檢漂移,得到了較好的運(yùn)行效果,性能超過了傳統(tǒng)算法以及單純的深度學(xué)習(xí)算法。
本文提出的時(shí)空約束是基于攝像頭不會(huì)發(fā)生劇烈抖動(dòng)和大幅度移動(dòng)的。下一步工作可以加入圖像防抖算法提高算法的魯棒性,也可以使用更好的行人檢測(cè)框架,從根本上提高跟蹤的準(zhǔn)確率。