目標追蹤綜述
01目標跟蹤簡介
目標跟蹤是計算機視覺領(lǐng)域的一個重要問題,目前廣泛應(yīng)用在體育賽事轉(zhuǎn)播、安防監(jiān)控和無人機、無人車、機器人等領(lǐng)域。下面是一些應(yīng)用的例子。
注1:文末附【目標跟蹤】交流群
注2:整理不易,請點贊支持!
作者:王方浩 | 來源:分子運動微信公眾號
體育賽事轉(zhuǎn)播


車輛跟蹤

02目標跟蹤任務(wù)分類
了解了目標跟蹤的用途,我們接下來看目標跟蹤有哪些研究領(lǐng)域呢?目標跟蹤可以分為以下幾種任務(wù)
單目標跟蹤?- 給定一個目標,追蹤這個目標的位置。
多目標跟蹤?- 追蹤多個目標的位置
Person Re-ID?- 行人重識別,是利用計算機視覺技術(shù)判斷圖像或者視頻序列中是否存在特定行人的技術(shù)。廣泛被認為是一個圖像檢索的子問題。給定一個監(jiān)控行人圖像,檢索跨設(shè)備下的該行人圖像。旨在彌補固定的攝像頭的視覺局限,并可與行人檢測/行人跟蹤技術(shù)相結(jié)合。
MTMCT?- 多目標多攝像頭跟蹤(Multi-target Multi-camera Tracking),跟蹤多個攝像頭拍攝的多個人
姿態(tài)跟蹤?- 追蹤人的姿態(tài)
按照任務(wù)計算類型又可以分為以下2類。
在線跟蹤?- 在線跟蹤需要實時處理任務(wù),通過過去和現(xiàn)在幀來跟蹤未來幀中物體的位置。
離線跟蹤?- 離線跟蹤是離線處理任務(wù),可以通過過去、現(xiàn)在和未來的幀來推斷物體的位置,因此準確率會在線跟蹤高。
03目標跟蹤的困難點
雖然目標追蹤的應(yīng)用前景非常廣泛,但還是有一些問題限制了它的應(yīng)用,我們看下有哪些問題呢?
形態(tài)變化?- 姿態(tài)變化是目標跟蹤中常見的干擾問題。運動目標發(fā)生姿態(tài)變化時, 會導(dǎo)致它的特征以及外觀模型發(fā)生改變, 容易導(dǎo)致跟蹤失敗。例如:體育比賽中的運動員、馬路上的行人。
尺度變化?- 尺度的自適應(yīng)也是目標跟蹤中的關(guān)鍵問題。當目標尺度縮小時, 由于跟蹤框不能自適應(yīng)跟蹤, 會將很多背景信息包含在內(nèi), 導(dǎo)致目標模型的更新錯誤:當目標尺度增大時, 由于跟蹤框不能將目標完全包括在內(nèi), 跟蹤框內(nèi)目標信息不全, 也會導(dǎo)致目標模型的更新錯誤。因此, 實現(xiàn)尺度自適應(yīng)跟蹤是十分必要的。
遮擋與消失?- 目標在運動過程中可能出現(xiàn)被遮擋或者短暫的消失情況。當這種情況發(fā)生時, 跟蹤框容易將遮擋物以及背景信息包含在跟蹤框內(nèi), 會導(dǎo)致后續(xù)幀中的跟蹤目標漂移到遮擋物上面。若目標被完全遮擋時, 由于找不到目標的對應(yīng)模型, 會導(dǎo)致跟蹤失敗。
圖像模糊?- 光照強度變化, 目標快速運動, 低分辨率等情況會導(dǎo)致圖像模型, 尤其是在運動目標與背景相似的情況下更為明顯。因此, 選擇有效的特征對目標和背景進行區(qū)分非常必要。
下圖是上述問題的一些實例。

04目標跟蹤方法
既然目標跟蹤領(lǐng)域有這么多困難,那么我們采用什么樣的方法來進行目標跟蹤呢?目標跟蹤的方法按照模式劃分可以分為2類。
生成式模型 -?早期的工作主要集中于生成式模型跟蹤算法的研究, 如光流法[23-24]、粒子濾波[8]、Meanshift算法[9-10]、Camshift[11]算法等.此類方法首先建立目標模型或者提取目標特征, 在后續(xù)幀中進行相似特征搜索.逐步迭代實現(xiàn)目標定位.但是這類方法也存在明顯的缺點, 就是圖像的背景信息沒有得到全面的利用.且目標本身的外觀變化有隨機性和多樣性特點, 因此, 通過單一的數(shù)學(xué)模型描述待跟蹤目標具有很大的局限性.具體表現(xiàn)為在光照變化, 運動模糊, 分辨率低, 目標旋轉(zhuǎn)形變等情況下, 模型的建立會受到巨大的影響, 從而影響跟蹤的準確性; 模型的建立沒有有效地預(yù)測機制, 當出現(xiàn)目標遮擋情況時, 不能夠很好地解決。
鑒別式模型 -?鑒別式模型是指,?將目標模型和背景信息同時考慮在內(nèi), 通過對比目標模型和背景信息的差異, 將目標模型提取出來, 從而得到當前幀中的目標位置.文獻在對跟蹤算法的評估中發(fā)現(xiàn)[25], 通過將背景信息引入跟蹤模型, 可以很好地實現(xiàn)目標跟蹤.因此鑒別式模型具有很大的優(yōu)勢. 2000年以來, 人們逐漸嘗試使用經(jīng)典的機器學(xué)習(xí)方法訓(xùn)練分類器, 例如MIL[26]、TLD[27]、支持向量機[28]、結(jié)構(gòu)化學(xué)習(xí)[29]、隨機森林[30]、多實例學(xué)習(xí)[31]、度量學(xué)習(xí)[32]. 2010年, 文獻[12]首次將通信領(lǐng)域的相關(guān)濾波方法引入到目標跟蹤中.作為鑒別式方法的一種, 相關(guān)濾波無論在速度上還是準確率上, 都顯示出更優(yōu)越的性能.然而, 相關(guān)濾波器用于目標跟蹤是在2014年之后.自2015年以后, 隨著深度學(xué)習(xí)技術(shù)的廣泛應(yīng)用, 人們開始將深度學(xué)習(xí)技術(shù)用于目標跟蹤。
按照時間順序,目標跟蹤的方法經(jīng)歷了從經(jīng)典算法到基于核相關(guān)濾波算法,再到基于深度學(xué)習(xí)的跟蹤算法的過程。
經(jīng)典跟蹤算法
基于核相關(guān)濾波的跟蹤算法
基于深度學(xué)習(xí)的跟蹤算法
05經(jīng)典跟蹤算法
早期的目標跟蹤算法主要是根據(jù)目標建?;蛘邔δ繕颂卣鬟M行跟蹤。
基于目標模型建模的方法 通過對目標外觀模型進行建模, 然后在之后的幀中找到目標.例如, 區(qū)域匹配、特征點跟蹤、基于主動輪廓的跟蹤算法、光流法等.最常用的是特征匹配法, 首先提取目標特征, 然后在后續(xù)的幀中找到最相似的特征進行目標定位, 常用的特征有: SIFT[3]特征、SURF[4]特征、Harris角點[5]等。
基于搜索的方法 隨著研究的深入, 人們發(fā)現(xiàn)基于目標模型建模的方法[6]對整張圖片進行處理, 實時性差.人們將預(yù)測算法加入跟蹤中, 在預(yù)測值附近進行目標搜索, 減少了搜索的范圍.常見一類的預(yù)測算法有Kalman[7]濾波、粒子濾波[8]方法.另一種減小搜索范圍的方法是內(nèi)核方法:運用最速下降法的原理, 向梯度下降方向?qū)δ繕四0逯鸩降? 直到迭代到最優(yōu)位置.諸如, Meanshift[9-10]、Camshift[11]算法
光流法
光流法(Lucas-Kanade)的概念首先在1950年提出, 它是針對外觀模型對視頻序列中的像素進行操作.通過利用視頻序列在相鄰幀之間的像素關(guān)系, 尋找像素的位移變化來判斷目標的運動狀態(tài), 實現(xiàn)對運動目標的跟蹤.但是, 光流法適用的范圍較小, 需要滿足三種假設(shè):圖像的光照強度保持不變; 空間一致性, 即每個像素在不同幀中相鄰點的位置不變, 這樣便于求得最終的運動矢量; 時間連續(xù).光流法適用于目標運動相對于幀率是緩慢的, 也就是兩幀之間的目標位移不能太大。
Meanshift
Meanshift 方法是一種基于概率密度分布的跟蹤方法,使目標的搜索一直沿著概率梯度上升的方向,迭代收斂到概率密度分布的局部峰值上。首先 Meanshift 會對目標進行建模,比如利用目標的顏色分布來描述目標,然后計算目標在下一幀圖像上的概率分布,從而迭代得到局部最密集的區(qū)域。Meanshift 適用于目標的色彩模型和背景差異比較大的情形,早期也用于人臉跟蹤。由于 Meanshift 方法的快速計算,它的很多改進方法也一直適用至今。
粒子濾波
粒子濾波(Particle Filter)方法是一種基于粒子分布統(tǒng)計的方法。以跟蹤為例,首先對跟蹤目標進行建模,并定義一種相似度度量確定粒子與目標的匹配程度。在目標搜索的過程中,它會按照一定的分布(比如均勻分布或高斯分布)撒一些粒子,統(tǒng)計這些粒子的相似度,確定目標可能的位置。在這些位置上,下一幀加入更多新的粒子,確保在更大概率上跟蹤上目標。Kalman Filter 常被用于描述目標的運動模型,它不對目標的特征建模,而是對目標的運動模型進行了建模,常用于估計目標在下一幀的位置。
可以看到,傳統(tǒng)的目標跟蹤算法存在兩個致命的缺陷:
沒有將背景信息考慮在內(nèi), 導(dǎo)致在目標遮擋, 光照變化以及運動模糊等干擾下容易出現(xiàn)跟蹤失敗.
跟蹤算法執(zhí)行速度慢(每秒10幀左右), 無法滿足實時性的要求.
06基于核相關(guān)濾波的跟蹤算法
接著,人們將通信領(lǐng)域的相關(guān)濾波(衡量兩個信號的相似程度)引入到了目標跟蹤中.一些基于相關(guān)濾波的跟蹤算法(MOSSE[12]、CSK[13]、KCF[14]、BACF[15]、SAMF[16])等, 也隨之產(chǎn)生, 速度可以達到數(shù)百幀每秒, 可以廣泛地應(yīng)用于實時跟蹤系統(tǒng)中.其中不乏一些跟蹤性能優(yōu)良的跟蹤器, 諸如SAMF、BACF在OTB[17]數(shù)據(jù)集和VOT2015[18]競賽中取得優(yōu)異成績。
MOSSE
本文提出的相關(guān)濾波器(Correlation Filter)通過MOSSE(Minimum Output Sum of Squared Error (MOSSE) filter)算法實現(xiàn),基本思想:越是相似的兩個目標相關(guān)值越大,也就是視頻幀中與初始化目標越相似,得到的相應(yīng)也就越大。下圖所示通過對比UMACE,ASEF,MOSSE等相關(guān)濾波算法,使輸出目標中心最大化。
07基于深度學(xué)習(xí)的跟蹤算法
隨著深度學(xué)習(xí)方法的廣泛應(yīng)用, 人們開始考慮將其應(yīng)用到目標跟蹤中[71].人們開始使用深度特征并取得了很好的效果.之后, 人們開始考慮用深度學(xué)習(xí)建立全新的跟蹤框架, 進行目標跟蹤。
在大數(shù)據(jù)背景下,利用深度學(xué)習(xí)訓(xùn)練網(wǎng)絡(luò)模型,得到的卷積特征輸出表達能力更強。在目標跟蹤上,初期的應(yīng)用方式是把網(wǎng)絡(luò)學(xué)習(xí)到的特征,直接應(yīng)用到相關(guān)濾波或 Struck 的跟蹤框架里面,從而得到更好的跟蹤結(jié)果,比如前面提到的 DeepSRDCF 方法。本質(zhì)上卷積輸出得到的特征表達,更優(yōu)于 HOG 或 CN 特征,這也是深度學(xué)習(xí)的優(yōu)勢之一,但同時也帶來了計算量的增加。
08目標跟蹤方法總結(jié)
目標跟蹤的方法主要分為2大類,一類是相關(guān)濾波、一類是深度學(xué)習(xí)。

相比于光流法、Kalman、Meanshift等傳統(tǒng)算法,相關(guān)濾波類算法跟蹤速度更快,深度學(xué)習(xí)類方法精度高.
具有多特征融合以及深度特征的追蹤器在跟蹤精度方面的效果更好.
使用強大的分類器是實現(xiàn)良好跟蹤的基礎(chǔ).
尺度的自適應(yīng)以及模型的更新機制也影響著跟蹤的精度.
09數(shù)據(jù)集
主要的數(shù)據(jù)集數(shù)據(jù)對比如下

10論文
1. Wenhan Luo, Junliang Xing, Anton Milan, Xiaoqin Zhang, Wei Liu, Xiaowei Zhao, Tae-Kyun Kim
Multiple Object Tracking: A Literature Review arXiv:1409.7618v4 (2017). [pdf]
本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。
3D視覺工坊-目標跟蹤交流群
已建立3D視覺工坊-目標跟蹤微信交流群!想要進目標跟蹤學(xué)習(xí)交流群的同學(xué),可以直接加微信號:CV_LAB。加的時候備注一下:目標跟蹤+學(xué)校+昵稱,即可。然后就可以拉你進群了。
強烈推薦大家關(guān)注3D視覺工坊知乎賬號和3D視覺工坊微信公眾號,可以快速了解到最新優(yōu)質(zhì)的3D視覺與SLAM論文。