李均利,尹 寬,儲(chǔ)誠(chéng)曦,汪鴻年
(1.四川師范大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,四川 成都 610101;2.寧波大學(xué) 信息科學(xué)與工程學(xué)院,浙江 寧波 315211)
目標(biāo)跟蹤是在給定的視頻序列中,對(duì)感興趣的目標(biāo)進(jìn)行檢測(cè),并在整個(gè)視頻序列中對(duì)該目標(biāo)的位置進(jìn)行實(shí)時(shí)跟蹤,找到目標(biāo)物體并提取出目標(biāo)位置后進(jìn)行進(jìn)一步的分析應(yīng)用。跟蹤系統(tǒng)通常會(huì)給出目標(biāo)在給定視頻序列初始幀中的位置框,根據(jù)目標(biāo)的初始狀態(tài)進(jìn)而對(duì)其進(jìn)行跟蹤。目標(biāo)跟蹤中主要有以下幾個(gè)模塊:1)目標(biāo)檢測(cè);2)目標(biāo)分類;3)目標(biāo)跟蹤,如圖1所示。目標(biāo)跟蹤在軍事領(lǐng)域、視頻監(jiān)控、人機(jī)交互和交通監(jiān)測(cè)等領(lǐng)域都發(fā)揮著重要的作用[1-2]。在目標(biāo)跟蹤中,由于物體形態(tài)的多變性、運(yùn)動(dòng)速度過(guò)快、光照變化、背景變化以及物體被遮擋或多個(gè)目標(biāo)相互遮擋[3]等復(fù)雜情況,目前尚未找到一個(gè)魯棒的算法能夠完美地解決這些復(fù)雜情形。
經(jīng)典的目標(biāo)跟蹤方法往往分為基于生成式的跟蹤和基于判別式的跟蹤。生成式跟蹤算法是通過(guò)提取目標(biāo)特征找到能夠表征目標(biāo)的外觀模型,利用生成的模型在圖像區(qū)域進(jìn)行匹配,找到與其最匹配的區(qū)域,即為目標(biāo)[4];常見(jiàn)的基于生成式的跟蹤算法有meanshift[5-6]、粒子濾波[7]、卡爾曼濾波[8]以及基于特征點(diǎn)的光流算法。而在目標(biāo)跟蹤的過(guò)程中,經(jīng)常會(huì)有目標(biāo)特征與背景相似的情況出現(xiàn),僅僅對(duì)跟蹤目標(biāo)進(jìn)行建模已經(jīng)不能滿足目標(biāo)跟蹤算法的需求。S Avidan[9]提出了基于判別式的目標(biāo)跟蹤算法,把目標(biāo)跟蹤問(wèn)題轉(zhuǎn)換成為一個(gè)對(duì)目標(biāo)和背景進(jìn)行區(qū)分的二分類問(wèn)題,通過(guò)在線或離線學(xué)習(xí)的檢測(cè)器對(duì)目標(biāo)和背景進(jìn)行區(qū)分,進(jìn)而找到目標(biāo)的位置。判別式算法在跟蹤過(guò)程中能夠很好適應(yīng)復(fù)雜的變化,因此,基于判別式的跟蹤逐漸成為主流。
圖1 目標(biāo)跟蹤主要模塊
Fig.1 Main module of object tracking
Collins和Lin在早期提出過(guò)一種基于檢測(cè)的跟蹤(Tracking by detection)[10],也是一種有效的基于判別式的跟蹤算法。基于檢測(cè)的跟蹤首先要對(duì)目標(biāo)進(jìn)行檢測(cè),提取出目標(biāo)物體的幾何物理信息后對(duì)其進(jìn)行位置的跟蹤,因此,目標(biāo)檢測(cè)和目標(biāo)跟蹤通常都會(huì)聯(lián)系在一起出現(xiàn)。典型的基于檢測(cè)的目標(biāo)跟蹤算法包括基于支持向量機(jī)(SVM)[11]的算法,基于隨機(jī)森林分類器[12]的算法和基于boosting[13-14]的算法。這些算法為了更好的適用于跟蹤,都采取了在線學(xué)習(xí)的策略。為了能夠直接預(yù)測(cè)目標(biāo)的位置,在基于大量圖像特征的情況下,采用了一種Structured Output SVM和Gaussian Kernels策略[15]。
同時(shí),對(duì)于不同的應(yīng)用場(chǎng)景,目標(biāo)跟蹤也有不同的分類:根據(jù)跟蹤視頻背景的不同,可以分為基于靜態(tài)背景的目標(biāo)跟蹤和基于動(dòng)態(tài)背景的目標(biāo)跟蹤;根據(jù)跟蹤目標(biāo)數(shù)量的不同,可以分為單目標(biāo)跟蹤和多目標(biāo)跟蹤;根據(jù)光照強(qiáng)弱不同,可以分為強(qiáng)光照下目標(biāo)跟蹤和弱光照下目標(biāo)跟蹤;根據(jù)是否具有跟蹤目標(biāo)的先驗(yàn)信息,可以分為基于監(jiān)督學(xué)習(xí)、基于半監(jiān)督學(xué)習(xí)和基于無(wú)監(jiān)督學(xué)習(xí)[16]的目標(biāo)跟蹤。
推動(dòng)目標(biāo)跟蹤技術(shù)不斷向前發(fā)展的正是對(duì)于其實(shí)時(shí)性、準(zhǔn)確性和健壯性的不斷追求,在目前的科學(xué)研究和實(shí)際應(yīng)用中,目標(biāo)跟蹤的質(zhì)量還不能達(dá)到我們預(yù)期的設(shè)想,所以研究人員在不斷地改進(jìn)和尋找新方法來(lái)提高目標(biāo)跟蹤的質(zhì)量。為了獲得較好的跟蹤效果,在目標(biāo)跟蹤中就需要選擇合適的特征和高效的分類器,由于環(huán)境的復(fù)雜和目標(biāo)本身的復(fù)雜性,有大量的特征可供選擇,本文將會(huì)介紹幾個(gè)目標(biāo)檢測(cè)中常見(jiàn)的特征,如顏色、紋理和梯度特征[17]。
用于目標(biāo)跟蹤的視頻序列是將3D現(xiàn)實(shí)世界投影到2D圖像平面上,會(huì)有信息損失、噪聲以及成像過(guò)程中的光照變化、場(chǎng)景變化等影響。目標(biāo)跟蹤面臨一系列的挑戰(zhàn),可以將目標(biāo)跟蹤面臨的挑戰(zhàn)和難點(diǎn)總結(jié)為以下十類:1)光照變化;2)遮擋;3)復(fù)雜背景影響;4)尺度變化;5)顏色變化;6)目標(biāo)形變;7)前景/背景變化;8)攝像頭角度變化;9)目標(biāo)身份切換;10)目標(biāo)消失后重現(xiàn)。
目標(biāo)跟蹤中存在著各種挑戰(zhàn)和難點(diǎn),跟蹤技術(shù)的發(fā)展正是圍繞這些挑戰(zhàn)和難點(diǎn)而不斷展開(kāi),使得該領(lǐng)域的研究有著強(qiáng)大的活力,吸引著科研人員不斷為之努力,并且不斷地推動(dòng)其向前發(fā)展。對(duì)于不同的挑戰(zhàn),研究者提出了大量的相關(guān)算法。例如Zdenek Kalal將檢測(cè)器、在線學(xué)習(xí)機(jī)制和跟蹤器有機(jī)結(jié)合在一起,提出一種TLD算法[18],在跟蹤目標(biāo)發(fā)生部分遮擋或全遮擋時(shí),TLD也能準(zhǔn)確快速地跟蹤到目標(biāo),并且魯棒性強(qiáng);Informatik[19]在TLD的檢測(cè)器中引入了滑動(dòng)窗口,對(duì)TLD中檢測(cè)器的方差濾波器、組合分類器和最近鄰分類器三個(gè)階段進(jìn)行了改進(jìn),提高了TLD算法的精度;Zhou[20]利用Kalman濾波器對(duì)TLD檢測(cè)器當(dāng)前幀目標(biāo)的區(qū)域進(jìn)行預(yù)測(cè),再利用馬爾科夫模型對(duì)目標(biāo)運(yùn)動(dòng)方向進(jìn)行預(yù)測(cè),提高了TLD的跟蹤效果。
這些挑戰(zhàn)對(duì)目標(biāo)跟蹤的效果會(huì)產(chǎn)生一定的影響,同時(shí)也激發(fā)了新方法和新技術(shù)的產(chǎn)生,提高了跟蹤的適用范圍和跟蹤精度等。但目前跟蹤技術(shù)還不能完全解決各種難點(diǎn)和挑戰(zhàn)。
通常,每個(gè)目標(biāo)都具有其獨(dú)特的特征,在目標(biāo)檢測(cè)和跟蹤中,通過(guò)檢測(cè)到目標(biāo)特定的特征即可完成對(duì)目標(biāo)的檢測(cè)和跟蹤。特征的選取對(duì)目標(biāo)跟蹤的效果極其重要,若特征選取不當(dāng),可能出現(xiàn)跟蹤不到目標(biāo)或者誤判目標(biāo)的情況。以下是目標(biāo)跟蹤中常用特征。
在對(duì)彩色視頻圖像進(jìn)行目標(biāo)跟蹤時(shí),通常會(huì)選取顏色特征進(jìn)行目標(biāo)檢測(cè)。顏色特征也是目標(biāo)跟蹤中使用最廣泛的一種特征。顏色特征受到圖像質(zhì)量、方向、大小、遮擋的影響較小,在圖像處理中,有RGB、CMYK、LUV、HSV、HSL等顏色空間表征,但在目標(biāo)跟蹤中,常采用RGB和HSV顏色特征。
RGB顏色空間由紅色(R)、綠色(G)、藍(lán)色(B)三個(gè)顏色通道組成[21]。對(duì)于不同目標(biāo)的顏色,其R、G、B取不同的值。RGB可以直接、簡(jiǎn)單地識(shí)別出特定的目標(biāo),但RGB特征對(duì)于光照比較敏感[22],且RGB顏色空間各通道間有一定的相關(guān)性,對(duì)跟蹤效果會(huì)有一定影響。HSV[23]空間通過(guò)色度(H)、飽和度(S)、亮度(V)來(lái)表征圖像的顏色特征,并且相互獨(dú)立,不產(chǎn)生影響,可以處理顏色的相關(guān)性,對(duì)光照和顏色的處理更加方便,對(duì)于光照也具有更強(qiáng)的魯棒性[24-26]。
紋理特征是對(duì)目標(biāo)外觀的微觀變化進(jìn)行表征的一種特征,可描述目標(biāo)圖像中反復(fù)出現(xiàn)的局部模式和排列規(guī)則[27]。如局部二值模式(Local Binary Pattern,LBP)[28]是目標(biāo)跟蹤中一種常見(jiàn)的紋理特征算法,其特點(diǎn)是計(jì)算簡(jiǎn)單、表征效果好,在目標(biāo)檢測(cè)和人臉識(shí)別方面應(yīng)用廣泛。LBP特征首先將圖像灰度化,取中心點(diǎn)像素灰度值為閾值,對(duì)該像素為中心的領(lǐng)域進(jìn)行閾值操作,灰度大于中心像素值的點(diǎn)置為1,反之置為0;再將閾值操作后的鄰域像素點(diǎn)的二進(jìn)制數(shù)按照順時(shí)針的順序轉(zhuǎn)化為十進(jìn)制數(shù),即 LBP 值?;镜腖BP編碼計(jì)算公式為
,
(1)
式中,gc為中心店像素(xc,yc)的灰度值;N為領(lǐng)域像素個(gè)數(shù);gp為鄰域點(diǎn)p的灰度。
研究表明,紋理特征具有對(duì)顏色、亮度不敏感的特點(diǎn),對(duì)噪聲有較強(qiáng)的抵抗力,且具有旋轉(zhuǎn)不變性和灰度不變性。
梯度特征[29]是對(duì)視頻圖像中目標(biāo)的局部梯度分布進(jìn)行統(tǒng)計(jì),進(jìn)而表征物體的外觀。目前使用得比較廣泛的梯度特征是HOG特征[30]。HOG特征的思想是根據(jù)梯度幅值在梯度方向上進(jìn)行分塊統(tǒng)計(jì),利用HOG特征可以很好的表達(dá)目標(biāo)物體的輪廓信息。HOG特征計(jì)算公式為
Gx(x,y)=H(x+1,y)-H(x-1,y),
(2)
Gy(x,y)=H(x,y+1)-H(x,y-1),
(3)
式中,Gx(x,y)、Gy(x,y)、H(x,y)分別表示輸入圖像中像素點(diǎn)(x,y)處的水平方向梯度、垂直方向梯度和像素值,像素點(diǎn)(x,y)處的梯度幅值和梯度方向?yàn)?/p>
(4)
(5)
梯度特征常用在行人檢測(cè)中,它對(duì)于光照、顏色、目標(biāo)形變具有較高的魯棒性,但是無(wú)法表達(dá)出目標(biāo)物體準(zhǔn)確尺寸、角度。
在目標(biāo)檢測(cè)和跟蹤中還有諸如光流[31]、輪廓等特征[16],特征的選擇對(duì)目標(biāo)檢測(cè)的質(zhì)量有著重要的影響,在具體應(yīng)用中,常常會(huì)采取多個(gè)特征同時(shí)進(jìn)行檢測(cè)的方法,在一定程度上會(huì)提高目標(biāo)檢測(cè)的精度,但是帶來(lái)的代價(jià)是計(jì)算開(kāi)銷增大以及實(shí)時(shí)性會(huì)受到一定影響。表1對(duì)幾個(gè)跟蹤特征的優(yōu)缺點(diǎn)進(jìn)行了對(duì)比。
表1 跟蹤特征對(duì)比Tab.1 Tracking feature comparison
連續(xù)兩幀圖像幀之間具有很強(qiáng)的相關(guān)性,靜止的物體在兩幀圖像中幾乎沒(méi)有發(fā)生變化。因此對(duì)兩幀進(jìn)行差分運(yùn)算時(shí),靜止物體的像素灰度值的差值就很小,而運(yùn)動(dòng)物體的像素灰度值的差值就有明顯變化[32]。幀間差分法[33]就是利用這個(gè)原理對(duì)目標(biāo)視頻序列進(jìn)行幀間差分運(yùn)算,通過(guò)與設(shè)定閾值進(jìn)行比較,當(dāng)差分值大于設(shè)定閾值時(shí)判定該物體為運(yùn)動(dòng)物體,即前景目標(biāo);差分值小于設(shè)定閾值時(shí)判定物體為靜止物體,即背景點(diǎn)。幀間差分法計(jì)算公式為
D(x,y)=fT(x,y)-fT-1(x,y),
(6)
式中,fT(x,y)表示第T幀像素值,fT-1(x,y)表示第T-1幀像素值,T表示閾值,當(dāng)D(x,y)比閾值T大時(shí)即判定為前景點(diǎn),反之則為背景點(diǎn)。
幀間差分法方法簡(jiǎn)單,運(yùn)算量小,易于實(shí)現(xiàn),適合于動(dòng)態(tài)變化的情況。但其受閾值選取的影響較大,若閾值設(shè)置過(guò)高,會(huì)出現(xiàn)漏檢運(yùn)動(dòng)物體的情況,若閾值設(shè)置過(guò)低,可能會(huì)誤判運(yùn)動(dòng)物體,閾值的合理選取非常重要,同時(shí)對(duì)于運(yùn)動(dòng)較慢的情況,幀間差分法效果并不理想。
背景差分法[34]適合于靜態(tài)背景的場(chǎng)景。首先提取出目標(biāo)視頻的靜態(tài)背景圖像,然后將當(dāng)前幀與背景圖像進(jìn)行差分運(yùn)算,通過(guò)與設(shè)定的閾值進(jìn)行比較來(lái)判別背景點(diǎn)和運(yùn)動(dòng)點(diǎn)[35]。背景差分法的原理是運(yùn)動(dòng)的物體與背景的像素差值較大,而靜態(tài)物體本身就屬于背景,差分運(yùn)算后像素差值差異小。背景差分法計(jì)算公式為
D(x,y)=fT(x,y)-fb(x,y),
(7)
其中,fT(x,y)表示當(dāng)前幀像素值,fb(x,y)表示背景圖像像素值,T表示閾值,當(dāng)D(x,y)的值大于閾值T時(shí)則判定為前景點(diǎn),反之則為背景點(diǎn)。背景差分法適用于靜態(tài)背景的情況,具有運(yùn)算量小、易于實(shí)現(xiàn)的特點(diǎn);但是對(duì)于場(chǎng)景變化、光照變化等具有很高的敏感性。
光流法[36]是對(duì)圖像中運(yùn)動(dòng)物體進(jìn)行檢測(cè)的一種重要的方法。光流法的原理是用圖像中的光流場(chǎng)來(lái)表征圖像的運(yùn)動(dòng),這類似于空間中用運(yùn)動(dòng)場(chǎng)來(lái)表征物體運(yùn)動(dòng);對(duì)圖像中每個(gè)像素點(diǎn)求得其光流矢量,從而來(lái)得到圖像的運(yùn)動(dòng)場(chǎng),如果圖像中不存在運(yùn)動(dòng)目標(biāo),那么整個(gè)圖像的光流場(chǎng)應(yīng)該是連續(xù)的;若圖像中存在有運(yùn)動(dòng)目標(biāo),則運(yùn)動(dòng)目標(biāo)的光流矢量與周圍背景的運(yùn)動(dòng)矢量應(yīng)該是有顯著的不同,通過(guò)這種方法,即可檢測(cè)出圖像中的運(yùn)動(dòng)目標(biāo)。
光流法在攝像機(jī)運(yùn)動(dòng)的情況下也適用,并且可以計(jì)算出運(yùn)動(dòng)物體的實(shí)時(shí)速度,但是光流法對(duì)光照敏感,若整個(gè)圖像中無(wú)運(yùn)動(dòng)物體,而光照發(fā)生變化,也可觀察到光流,會(huì)誤判運(yùn)動(dòng)物體,而在像素灰度變化較小的區(qū)域,則有可能觀察不到運(yùn)動(dòng)物體。表2總結(jié)了幾個(gè)目標(biāo)檢測(cè)方法的特點(diǎn)。
表2 目標(biāo)檢測(cè)方法對(duì)比
Tab.2 Comparison of object detection methods
優(yōu)點(diǎn)缺點(diǎn)幀間差分法方法簡(jiǎn)單,運(yùn)算量小,適合動(dòng)態(tài)變化對(duì)閾值的依賴強(qiáng)背景差分法運(yùn)算量小,易于實(shí)現(xiàn),適合靜態(tài)變化對(duì)場(chǎng)景變化、光照變化敏感光流法可檢測(cè)物體運(yùn)動(dòng)速度,攝像機(jī)運(yùn)動(dòng)情況仍適用對(duì)光照敏感
基于特征的跟蹤方法是一種不考慮跟蹤目標(biāo)整體情況,將目標(biāo)物體的特征點(diǎn)作為跟蹤目標(biāo)的方法。該方法只對(duì)從目標(biāo)物體上提取出來(lái)的顯著特征進(jìn)行跟蹤,假定目標(biāo)物體可由一定的特征進(jìn)行表達(dá),在跟蹤過(guò)程中,只要跟蹤到了該特征即完成了對(duì)目標(biāo)物體的跟蹤,在目標(biāo)被遮擋的情況下有很好的效果。在選取特征時(shí),通常會(huì)選取具有平移、旋轉(zhuǎn)、縮放不變性的特征,例如顏色、質(zhì)心、角點(diǎn)、hu矩等。在實(shí)際應(yīng)用中,可以采用多個(gè)特征對(duì)同一目標(biāo)進(jìn)行表征,效果更佳,例如在紅外目標(biāo)跟蹤中,由于紅外圖像信噪比低、易受背景影響等特點(diǎn),往往會(huì)采用多特征融合[37-38]的方法進(jìn)行紅外目標(biāo)跟蹤,有效地提高了跟蹤質(zhì)量。
基于特征的跟蹤算法對(duì)目標(biāo)物體的尺度、形狀和光照的變換不敏感;在存在遮擋的情況下,只要有部分特征點(diǎn)可見(jiàn),即可完成對(duì)目標(biāo)的跟蹤。
基于區(qū)域的跟蹤是事先獲得包含跟蹤目標(biāo)的區(qū)域,通常用一個(gè)略大于目標(biāo)的矩形區(qū)域進(jìn)行表征,也可以用不規(guī)則的形狀表征;在獲得目標(biāo)區(qū)域后,利用跟蹤算法對(duì)目標(biāo)進(jìn)行跟蹤。
基于區(qū)域的跟蹤算法在沒(méi)有遮擋的情況下能夠獲得精度較高且穩(wěn)定的跟蹤效果,但是在出現(xiàn)較大遮擋或者目標(biāo)有較大變形時(shí)效果不理想,該算法的計(jì)算量大、耗時(shí)大,尤其是目標(biāo)區(qū)域設(shè)置得過(guò)大時(shí)耗時(shí)尤其嚴(yán)重。
基于輪廓的跟蹤是用一組閉合曲線描述運(yùn)動(dòng)目標(biāo)的方法,該方法通過(guò)粗略勾畫輪廓,以閉合的輪廓曲線作為匹配模板,在圖像中后續(xù)幀圖像進(jìn)行目標(biāo)邊緣提取,匹配兩個(gè)輪廓曲線,以實(shí)現(xiàn)跟蹤目標(biāo)。Snake輪廓算法是目前常見(jiàn)的一種基于輪廓跟蹤的算法,其原理是利用一條可變形的參數(shù)化的曲線來(lái)表征運(yùn)動(dòng)目標(biāo)的輪廓,且能動(dòng)態(tài)迭代,實(shí)現(xiàn)輪廓跟蹤。
基于輪廓的跟蹤計(jì)算量不大,匹配速度快,準(zhǔn)確率也高,但是對(duì)于運(yùn)動(dòng)目標(biāo)形變大、存在遮擋情況會(huì)使提取的輪廓不精準(zhǔn),影響跟蹤效果。
基于模型的跟蹤[39]需要具有一定的先驗(yàn)信息,利用先驗(yàn)信息對(duì)目標(biāo)進(jìn)行建模,并在對(duì)目標(biāo)的匹配跟蹤過(guò)程中不斷地更新模型。這種方法對(duì)于在運(yùn)動(dòng)過(guò)程中幾乎只發(fā)生平移、旋轉(zhuǎn)的剛體來(lái)說(shuō)效果較好,對(duì)于在運(yùn)動(dòng)中會(huì)發(fā)生較大形變、存在遮擋的情況則跟蹤效果不佳。
基于模型的跟蹤算法模型跟蹤匹配精度高,受觀測(cè)視角影響??;但是計(jì)算復(fù)雜、耗時(shí)多,從而導(dǎo)致實(shí)時(shí)性不高。
受到近年來(lái)壓縮感知和稀疏表示技術(shù)在圖像去噪、圖像去模糊和圖像修復(fù)等計(jì)算機(jī)視覺(jué)領(lǐng)域的成功應(yīng)用的啟發(fā),基于稀疏表示的算法在跟蹤領(lǐng)域也得到了成功應(yīng)用。Mei[40]首次提出一種將稀疏表示理論用于跟蹤領(lǐng)域的L1范式最小化的目標(biāo)跟蹤算法。該算法思路是在粒子濾波框架下,將一組目標(biāo)模板和單位模板(單位矩陣的列向量)作為基函數(shù)來(lái)線性表示每一個(gè)候選目標(biāo)。當(dāng)候選目標(biāo)為跟蹤結(jié)果時(shí),其能夠以較低的重構(gòu)誤差僅由基函數(shù)中的目標(biāo)模板進(jìn)行線性表示而獲得,因而基函數(shù)中的單位模板在整個(gè)線性表示中的系數(shù)接近零,在此可以假設(shè)線性表示的系數(shù)是稀疏的,并可利用 L1 范式最小化求解這些系數(shù)。每一個(gè)目標(biāo)候選在粒子濾波下的權(quán)重可以計(jì)算為使用目標(biāo)模板和對(duì)應(yīng)的系數(shù)重構(gòu)該目標(biāo)候選時(shí)所得到的重構(gòu)誤差,并將具有最大權(quán)重的目標(biāo)候選取定為跟蹤結(jié)果。
最常用的算法是利用稀疏表示建模目標(biāo)的外觀,合理地選擇目標(biāo)模板和遮擋模板建模跟蹤目標(biāo)及如何設(shè)計(jì)快速有效的跟蹤算法是這類算法的關(guān)鍵。
貝葉斯濾波(Bayesian Filtering)是在貝葉斯估計(jì)理論的基礎(chǔ)上提出來(lái)的濾波方案[41]。其原理是利用所有已知信息來(lái)構(gòu)造系統(tǒng)狀態(tài)變量的后驗(yàn)概率密度,即:用系統(tǒng)模型預(yù)測(cè)狀態(tài)的先驗(yàn)概率密度,再使用最近的測(cè)量值進(jìn)行修正,得到后驗(yàn)概率密度。比較典型的算法包括卡爾曼濾波(Kalman Filter)和粒子濾波(Partical Filter)。
卡爾曼濾波是一種特殊的貝葉斯濾波,對(duì)于估計(jì)一個(gè)動(dòng)態(tài)系統(tǒng)最優(yōu)狀態(tài)適用,在觀測(cè)到的系統(tǒng)狀態(tài)參數(shù)存在噪聲、觀測(cè)值不準(zhǔn)確的情況下,卡爾曼濾波仍然能夠?qū)崿F(xiàn)對(duì)狀態(tài)真實(shí)值的最優(yōu)估計(jì)??柭鼮V波的基本思路是:首先建立一描述隨機(jī)動(dòng)態(tài)變量隨時(shí)間變化的先驗(yàn)?zāi)P?;然后?duì)隨機(jī)變量進(jìn)行實(shí)時(shí)觀測(cè),利用卡爾曼濾波方程組實(shí)時(shí)獲得目標(biāo)狀態(tài)基于全局信息的最優(yōu)估計(jì)[8,42],卡爾曼濾波只適用于高斯線性系統(tǒng)。對(duì)于非線性系統(tǒng),人們提出來(lái)一種基于蒙特卡羅思想的粒子濾波方法[43-44]。
粒子濾波的基本思想是用一組樣本(或稱粒子)來(lái)近似表示系統(tǒng)的后驗(yàn)概率分布,然后使用這一近似的表示來(lái)估計(jì)非線性系統(tǒng)的狀態(tài)[43-45]。利用這種思想,粒子濾波在濾波的過(guò)程中可以對(duì)任意形式的概率進(jìn)行處理,解決了卡爾曼濾波只能對(duì)線性高斯分布的概率問(wèn)題適用的局限。表3總結(jié)了幾個(gè)跟蹤算法的特點(diǎn)。
在目標(biāo)跟蹤過(guò)程中存在各種復(fù)雜的情況,經(jīng)典的跟蹤算法并不能很好地解決各種復(fù)雜情況。在相關(guān)濾波(Correlation Filter)和深度學(xué)習(xí)(Deep Learning)的方法出現(xiàn)后,由于它們具有更高的魯棒性和解決各種復(fù)雜情況的能力,目標(biāo)跟蹤技術(shù)領(lǐng)域近年來(lái)幾乎被相關(guān)濾波和深度學(xué)習(xí)方法所占領(lǐng),其在目標(biāo)跟蹤中的應(yīng)用得到了飛速的發(fā)展。
相關(guān)濾波在目標(biāo)跟蹤領(lǐng)域的應(yīng)用開(kāi)始于2010年,Bolme提出的誤差最小平方和濾波器(MOSSE)[46]首次將相關(guān)濾波引入到目標(biāo)跟蹤當(dāng)中,MOSSE通過(guò)一個(gè)最小平方和濾波器來(lái)實(shí)現(xiàn)對(duì)目標(biāo)物體的跟蹤,取得了很好的效果,之后基于相關(guān)濾波的跟蹤大都是在此基礎(chǔ)上改進(jìn)的。
表3 跟蹤方法對(duì)比Tab.3 Comparison of tracking methods
基于相關(guān)濾波的目標(biāo)跟蹤框架一般總結(jié)為如下幾點(diǎn):
1) 通過(guò)在第一幀給定目標(biāo)位置。
2) 提取的圖像塊訓(xùn)練得到相關(guān)濾波器。對(duì)于隨后的每一幀,利用從上一幀目標(biāo)位置區(qū)域提取得到的圖像塊用來(lái)進(jìn)行目標(biāo)檢測(cè)。
3) 從原始輸入數(shù)據(jù)中提取圖像塊的特征,利用余弦窗口進(jìn)行邊緣平滑。
4) 利用離散傅里葉變換進(jìn)行相關(guān)濾波操作。
5) 經(jīng)過(guò)傅里葉變換后可得到置信圖,其中具有最大響應(yīng)的位置就是跟蹤目標(biāo)的位置。
6) 提取該位置目標(biāo)外觀,對(duì)濾波器進(jìn)行訓(xùn)練和更新。
基于相關(guān)濾波的目標(biāo)跟蹤具有高效率、高魯棒性的特點(diǎn),相比于經(jīng)典的目標(biāo)跟蹤算法性能有大幅提升,很快就廣泛運(yùn)用在了目標(biāo)跟蹤領(lǐng)域,自從MOSSE方法提出后,大量的相關(guān)濾波方法也相繼提出。Henriques在2010年提出了一種基于檢測(cè)的核循環(huán)結(jié)構(gòu)的CSK[47]算法,Kaihua Zhang在2014年提出了一種利用時(shí)空上下文信息進(jìn)行跟蹤的STC[48]算法。Henriques在2014年又提出了一種將核函數(shù)引入到跟蹤器中的KCF[49]算法,在當(dāng)時(shí)獲得了極大的關(guān)注;除此之外,大量的相關(guān)濾波算法如Danelljan的CN[50]、DSST[51],Zhang的STC[52],Ma的LCT[53]等算法在不同程度上對(duì)相關(guān)濾波算法做出了改進(jìn),取得了不錯(cuò)的效果,使得基于相關(guān)濾波的跟蹤算法不斷地在向前發(fā)展。
在基于相關(guān)濾波的跟蹤中,值得一提的是C-COT[54]算法和ECO[55]算法,它們都是由Danelljan團(tuán)隊(duì)提出的,其中C-COT算法在VOT2016中取得了排名第一的好成績(jī)。傳統(tǒng)的相關(guān)濾波跟蹤模型多采用單一分辨率的手工特征或CNN特征,但由于目標(biāo)尺度變化等因素影響,單一分辨率特征輸出結(jié)果可能會(huì)存在擾動(dòng),影響跟蹤效果。C-COT使用深度神經(jīng)網(wǎng)絡(luò)VGG-Net提取特征,通過(guò)立方插值,將不同分辨率的特征圖插值到連續(xù)空間域,再應(yīng)用Hessian矩陣求得亞像素精度的目標(biāo)位置。C-COT的核心過(guò)程可以總結(jié)為:1)對(duì)于跟蹤目標(biāo),利用VGG-Net提取不同分辨率的特征,如圖2(a);2)利用訓(xùn)練得到的多個(gè)連續(xù)卷積操作濾波器分別對(duì)特征圖進(jìn)行卷積運(yùn)算,如圖2(b);3)經(jīng)過(guò)步驟2)后得到響應(yīng)圖,如圖2(c);4)將圖2(c)的響應(yīng)圖進(jìn)行加權(quán)平均,得到多個(gè)分辨率置信度之和,即為最終的置信圖,置信圖極大值的位置即為目標(biāo)預(yù)測(cè)位置,如圖2(d)。
ECO算法是Dnelljan在其C-COT算法的基礎(chǔ)上進(jìn)行改進(jìn)而成的,對(duì)于影響相關(guān)濾波跟蹤算法效率和導(dǎo)致過(guò)擬合情況的3個(gè)主要因素:模型大小、訓(xùn)練集大小和模型更新策略,ECO算法提出了3個(gè)對(duì)應(yīng)的解決措施。對(duì)于模型大小,ECO提出了對(duì)卷積操作進(jìn)行因式分解(Factorized Convolution Operator)的辦法,通過(guò)提取特征子集進(jìn)行降維,從而減少模型參數(shù);對(duì)于訓(xùn)練集冗余的問(wèn)題,提出了生成樣本空間模型(Generative Sample Space Model)的策略,將類似的樣本歸并到一個(gè)Component,訓(xùn)練樣本從多個(gè)Component中選擇;在模型更新策略選擇上,ECO選擇了一種稀疏更新的策略,摒棄了在每一幀中進(jìn)行更新的辦法,將更新間隔設(shè)置為6,有效避免了模型漂移問(wèn)題。ECO創(chuàng)新性的改進(jìn)使其獲得了更加優(yōu)秀的跟蹤效果,目前為止ECO在相關(guān)濾波跟蹤算法中仍處于領(lǐng)先地位。
圖2 C-COT主要結(jié)構(gòu)
Fig.2 Main structure of C-COT
深度學(xué)習(xí)近年來(lái)是計(jì)算機(jī)科學(xué)的一個(gè)研究熱點(diǎn),作為機(jī)器學(xué)習(xí)的一個(gè)新的研究方向,在人工智能領(lǐng)域的許多問(wèn)題上都有較大突破。在計(jì)算機(jī)視覺(jué)、自然語(yǔ)言處理、音視頻處理等領(lǐng)域都有所應(yīng)用且取得了很好的效果。
深度學(xué)習(xí)的概念是來(lái)源于對(duì)人工神經(jīng)網(wǎng)絡(luò)的研究,是大數(shù)據(jù)時(shí)代對(duì)神經(jīng)網(wǎng)絡(luò)的一種新的發(fā)展。1988年Rumelhart、Hinton和Williams提出了基于反向傳播的神經(jīng)網(wǎng)絡(luò)算法(BP)[56],但這個(gè)網(wǎng)絡(luò)在隨著層數(shù)增加會(huì)出現(xiàn)過(guò)擬合或者陷入局部最小現(xiàn)象,此后神經(jīng)網(wǎng)絡(luò)的研究進(jìn)展相對(duì)比較緩慢,直到2006年,Hinton在國(guó)際頂尖學(xué)術(shù)刊物《Science》發(fā)表了他在深度置信網(wǎng)絡(luò)領(lǐng)域的研究成果[57],首次提出了深度網(wǎng)絡(luò)與深度學(xué)習(xí)的概念,至此深度學(xué)習(xí)的研究逐漸開(kāi)始火熱起來(lái),很快在學(xué)術(shù)界和工業(yè)界都變得如火如荼,不斷地取得顯著的成果。
科研人員在2011年將深度學(xué)習(xí)技術(shù)應(yīng)用在語(yǔ)音識(shí)別問(wèn)題上,將其準(zhǔn)確率提高了20%~30%,取得了突破性的進(jìn)展[58],僅一年后,研究人員又將基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)技術(shù)使用在大規(guī)模圖像分類問(wèn)題上,性能上取得了很大的突破[59];鑒于此,國(guó)內(nèi)外科研工作者開(kāi)始嘗試將深度學(xué)習(xí)技術(shù)引入目標(biāo)檢測(cè)[60-61]和視頻分類[62-63]領(lǐng)域,最終也取得了顯著的效果。
深度學(xué)習(xí)技術(shù)首次運(yùn)用在目標(biāo)跟蹤領(lǐng)域是在2013年,由王乃巖提出的DLT[64]算法表明了深度學(xué)習(xí)技術(shù)在目標(biāo)跟蹤中能夠取得比傳統(tǒng)方法更加準(zhǔn)確的效果。由于深度學(xué)習(xí)在訓(xùn)練階段需要大量樣本,而在目標(biāo)跟蹤過(guò)程中僅僅提供第一幀中的bounding-box數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),樣本嚴(yán)重不足,DLT算法突破性地采用了“離線預(yù)訓(xùn)練+在線微調(diào)”的策略,即先使用棧式降噪自編碼器(SDAE)在大規(guī)模的自然圖像數(shù)據(jù)集上進(jìn)行無(wú)監(jiān)督預(yù)訓(xùn)練來(lái)獲得通用的物體表征能力,預(yù)訓(xùn)練的網(wǎng)絡(luò)結(jié)構(gòu)如圖3(b)所示,一共堆疊了4個(gè)降噪自編碼器,降噪自編碼器對(duì)輸入加入噪聲,通過(guò)重構(gòu)出無(wú)噪聲的原圖來(lái)獲得更魯棒的特征表達(dá)能力。然后在跟蹤過(guò)程中根據(jù)跟蹤物體的情況進(jìn)行微調(diào),從而解決了訓(xùn)練樣本的缺失問(wèn)題,在線跟蹤部分結(jié)構(gòu)如圖3(c)所示,取離線SDAE的encoding部分疊加sigmoid分類層組成了分類網(wǎng)絡(luò),利用第一幀獲取正負(fù)樣本,對(duì)分類網(wǎng)絡(luò)進(jìn)行微調(diào)獲得對(duì)當(dāng)前跟蹤目標(biāo)和背景更有針對(duì)性的分類網(wǎng)絡(luò)。在跟蹤過(guò)程中,對(duì)當(dāng)前幀采用粒子濾波(particle filter)的方式提取一批候選的patch,這些patch輸入分類網(wǎng)絡(luò)中,置信度最高的成為最終的預(yù)測(cè)目標(biāo)。DLT算法在CVPR2013中的29個(gè)跟蹤器中排名第五,自此深度學(xué)習(xí)在目標(biāo)跟蹤領(lǐng)域中的應(yīng)用拉開(kāi)了大幕,此后越來(lái)越多的深度神經(jīng)網(wǎng)絡(luò)模型例如自動(dòng)編碼機(jī)(ADE)[65]、卷積神經(jīng)網(wǎng)絡(luò)(CNN)[66]、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)[67]等都開(kāi)始在目標(biāo)跟蹤領(lǐng)域嶄露頭角,并取得了不錯(cuò)的效果。
圖3 DLT主要結(jié)構(gòu)
Fig.3 Mainstructure of C-COT
DLT算法在離線預(yù)訓(xùn)練階段的訓(xùn)練目標(biāo)是圖片重構(gòu),這與在線跟蹤要區(qū)分目標(biāo)和背景的需求相差較大,H Nam在2016年使用針對(duì)分類的卷積神經(jīng)網(wǎng)絡(luò)提出了一種MDNet[68]算法,提出了分域訓(xùn)練,針對(duì)每一類目標(biāo)單獨(dú)構(gòu)建一個(gè)用于對(duì)應(yīng)類別進(jìn)行二分類的全連接層。王乃巖在2015年也對(duì)他的DLT算法提出了一種改進(jìn)的SO-DLT[69]算法,這是Large-Scale CNN網(wǎng)絡(luò)在目標(biāo)跟蹤中的一次成功應(yīng)用;同年,Wang也將CNN特征應(yīng)用在物體跟蹤中,提出了FCNT[70]算法;C Ma[71]等人提出了一種將深度學(xué)習(xí)與相關(guān)濾波結(jié)合的目標(biāo)跟蹤方法,也取得了顯著的效果;David[72]在2016年提出一個(gè)深度學(xué)習(xí)框架,第一次將基于深度學(xué)習(xí)的目標(biāo)跟蹤做到了100 fps以上,Chu[73]等人在2017年提出一個(gè)基于CNN的多目標(biāo)跟蹤框架,取得了很好的效果;Huang等人也提出了一種只在經(jīng)歷外觀變化較大情況下才利用深度特征進(jìn)行定位而通常情況下只利用簡(jiǎn)單特征進(jìn)行定位的EAST[74]算法,在一定程度上減少了計(jì)算量,提高了算法的實(shí)時(shí)性。A He[75]等人在Luca Bertinetto的SiamFC算法基礎(chǔ)上,將圖像分類任務(wù)中的語(yǔ)義特征與相似度匹配任務(wù)中的外觀特征互補(bǔ)結(jié)合,提高了跟蹤的效果;J Choi[76]等人提出了一種訓(xùn)練了多個(gè)自編碼器來(lái)進(jìn)行數(shù)據(jù)壓縮的算法,提高了算法的魯棒性,且跟蹤速度也令人十分滿意。
隨著神經(jīng)網(wǎng)絡(luò)研究的深入,目標(biāo)跟蹤的效果也得到了極大的提升,但其需要大量的訓(xùn)練數(shù)據(jù)作為支撐,通常在目標(biāo)跟蹤中數(shù)據(jù)存在兩個(gè)問(wèn)題:1)每一幀中正樣本高度重疊,它們無(wú)法捕獲物體豐富的變化表征;2)正負(fù)樣本之間存在嚴(yán)重的不均衡分布的問(wèn)題;Y Song等人提出了一種VITAL[77]算法,利用生成對(duì)抗網(wǎng)絡(luò)(GAN)在特征空間進(jìn)行正樣本擴(kuò)增,使其能夠捕獲目標(biāo)物體在一定時(shí)間范圍內(nèi)的外觀變化,獲得更加魯棒的跟蹤效果;對(duì)于正負(fù)樣本不均衡的問(wèn)題,提出了一個(gè)高階敏感損失來(lái)減小簡(jiǎn)單負(fù)樣本對(duì)于分類器訓(xùn)練的影響。VITAL核心結(jié)構(gòu)如圖4所示,在最后一層卷積層和全連接層之間加入GAN,用來(lái)生成不同時(shí)序的一系列mask,作用在特征上可以獲得不同外觀變化的特征,mask的學(xué)習(xí)是通過(guò)選擇masks中l(wèi)oss最大的作為最終mask,這樣可以降低具有判別力特征的影響從而獲得魯棒的效果。
從2015年以來(lái)的三年,深度學(xué)習(xí)在目標(biāo)跟蹤中掀起了一場(chǎng)熱潮,大量基于深度學(xué)習(xí)的目標(biāo)跟蹤方法不斷地提出,ICCV、ECCV、CVPR三大計(jì)算機(jī)視覺(jué)頂級(jí)會(huì)議中目標(biāo)跟蹤領(lǐng)域的論文呈現(xiàn)出了被深度學(xué)習(xí)占領(lǐng)的趨勢(shì),深度學(xué)習(xí)在目標(biāo)跟蹤中帶來(lái)了極大的突破,其強(qiáng)大的特征表達(dá)能力可以自動(dòng)學(xué)習(xí)到反映目標(biāo)的良好特征,而不再需要耗時(shí)耗力的進(jìn)行手工設(shè)計(jì),在跟蹤精度方面也有顯著提高。然而其仍然有一系列問(wèn)題存在,例如在訓(xùn)練階段缺少數(shù)據(jù),深度學(xué)習(xí)模型在訓(xùn)練時(shí)需要大量的數(shù)據(jù),而在目標(biāo)跟蹤中訓(xùn)練的數(shù)據(jù)往往只有第一幀中提供的bounding-box作為訓(xùn)練數(shù)據(jù),數(shù)據(jù)的量級(jí)最多也就只有幾百個(gè),遠(yuǎn)不滿足深度學(xué)習(xí)數(shù)據(jù)量級(jí);其次就是深度學(xué)習(xí)模型難以滿足目標(biāo)跟蹤的實(shí)時(shí)性要求,目標(biāo)跟蹤對(duì)實(shí)時(shí)性的期待極高,深度學(xué)習(xí)模型由于其規(guī)模龐大的深度網(wǎng)絡(luò),在計(jì)算上帶來(lái)了很大的開(kāi)銷,運(yùn)算的速度難以達(dá)到目標(biāo)跟蹤的要求,且深度學(xué)習(xí)模型對(duì)硬件(如GPU)也有一定的要求。所以深度學(xué)習(xí)在目標(biāo)跟蹤中的應(yīng)用也并不是一帆風(fēng)順,還有一系列的問(wèn)題需要去解決??v觀目前深度學(xué)習(xí)在目標(biāo)跟蹤中帶來(lái)的顯著提升,其依然是一個(gè)令人有所期待的發(fā)展趨勢(shì),也有顯著的研究空間。
圖4 VITAL主要結(jié)構(gòu)
Fig.4 Main structure of VITAL
本文概述了目標(biāo)跟蹤的發(fā)展、技術(shù)流程以及常用的技術(shù)方法。目前目標(biāo)跟蹤技術(shù)的發(fā)展中,現(xiàn)有的傳統(tǒng)方法已經(jīng)不能很好地適用于當(dāng)前需求。由于現(xiàn)實(shí)生活中,跟蹤目標(biāo)自身形態(tài)的變化、運(yùn)動(dòng)的復(fù)雜,背景環(huán)境的復(fù)雜,各種遮擋現(xiàn)象的存在以及在多目標(biāo)跟蹤中各個(gè)目標(biāo)之間的相互遮擋等等復(fù)雜的情況,一個(gè)能夠適應(yīng)各種復(fù)雜情況的跟蹤算法亟待提出,當(dāng)前存在的各種算法大多只在特定的環(huán)境條件下能夠發(fā)揮出理想的效果,目前所提各種方法是在理想實(shí)驗(yàn)環(huán)境中獲得的,應(yīng)用于工業(yè)生產(chǎn)還有一段很長(zhǎng)的路。目前目標(biāo)跟蹤的發(fā)展方向是朝著設(shè)計(jì)一種能夠自動(dòng)提取目標(biāo)特征、自動(dòng)檢測(cè)運(yùn)動(dòng)目標(biāo)、自動(dòng)跟蹤運(yùn)動(dòng)目標(biāo)并能夠?qū)Ω櫮繕?biāo)的信息及行為進(jìn)行一定的預(yù)測(cè)分析的跟蹤器所進(jìn)行的。
當(dāng)前基于相關(guān)濾波和深度學(xué)習(xí)的目標(biāo)跟蹤成為了一個(gè)研究熱點(diǎn),其不論是在精度或是魯棒性上,表現(xiàn)都比經(jīng)典的跟蹤方法有顯著提升。在最近兩年的各類挑戰(zhàn)中,基于深度學(xué)習(xí)和相關(guān)濾波的跟蹤器表現(xiàn)突出,性能遙遙領(lǐng)先其他算法,但是其仍然還有很長(zhǎng)的路要走,其跟蹤效果仍然不能夠完美地適應(yīng)各種復(fù)雜變化。特征的合理選取、網(wǎng)絡(luò)結(jié)構(gòu)的合理構(gòu)造,對(duì)于深度學(xué)習(xí)和相關(guān)濾波在目標(biāo)跟蹤中的表現(xiàn)有著極大的影響,在人工智能、機(jī)器學(xué)習(xí)等技術(shù)飛速發(fā)展的背景下,相信目標(biāo)跟蹤能夠從中獲得技術(shù)上的新突破,并反之能推動(dòng)其更深入的發(fā)展。