『壹』 關於TLD目標跟蹤演算法的問題
跟蹤是一個很混亂的方向。
比如TLD、CT、Struct這些效果不錯的Tracker其實都不是單純的Tracker了。09年的時候我記得比較流行的是Particle Filtering, 或者一些MeanShift/CamShift的變形,比如特徵變了,比如對問題的假設變了。
後來突然出現一些tracking by detection的方法,之前的很多朋友就覺得這是耍流氓。比如TLD,嚴格的跟蹤演算法也許只是裡面的Forward/Backward Opitcal Flow的部分,但是效果很Impressive,所以不管怎樣,一下就火了。
之後所謂的跟蹤就不再是一個傳統的跟蹤問題,而是一個綜合的工程問題。online learning,random projection ,sparse learning的東西都加進來,大家其實到底是在做跟蹤還是在做檢測或者online learning,其實已經不重要,因為衡量的標準是你在某些public dataset上的精度。
但這些對實際的項目有沒有幫助呢?
這是個很有意思的地方,在很多時候,我們之所以需要跟蹤演算法,是因為我們的檢測演算法很慢,跟蹤很快。基本上當前排名前幾的跟蹤演算法都很難用在這樣的情況下,因為你實際的速度已經太慢了,比如TLD,CT,還有Struct,如果目標超過十個,基本上就炸了。況且還有些跟蹤演算法自己drift掉了也不知道,比如第一版本的CT是無法處理drift的問題的,TLD是可以的,究其原因還是因為檢測演算法比較魯棒啊……
實際中我覺得速度極快,實現也簡單的純跟蹤演算法居然是NCC和Overlap。
NCC很簡單,這個是對點進行的,對於區域也有很多變種,網上有一些相關的資源。
Overlap是我取的名字,一般用在裡面,假如你的攝像頭是靜止的,背景建模之後出來的前景可以是一個一個的blob,對相鄰兩幀的blob檢測是否Overlap就可以得到track。在一些真實場景下,這個演算法是非常有效的。關於背景template的問題在真實的裡面也是很好解決的。
坐在電腦前面調試代碼tuning 各種閾值讓跟蹤演算法在某一個幀下面不要drift的事情我是再也不想幹了。
順祝你2015幸福快樂。
『貳』 TLD的介紹
TLD(Tracking-Learning-Detection)是英國薩里大學的一個捷克籍博士生Zdenek Kalal在其攻讀博士學位期間提出的一種新的單目標長時間跟蹤(long term tracking)演算法。該演算法與傳統跟蹤演算法的顯著區別在於將傳統的跟蹤演算法和傳統的檢測演算法相結合來解決被跟蹤目標在被跟蹤過程中發生的形變、部分遮擋等問題。同時,通過一種改進的在線學習機制不斷更新跟蹤模塊的「顯著特徵點」和檢測模塊的目標模型及相關參數,從而使得跟蹤效果更加穩定、可靠。
『叄』 計算機視覺中,目前有哪些經典的目標跟蹤演算法
跟蹤是一個很混亂的方向。
比如TLD、CT、Struct這些效果不錯的Tracker其實都不是單純的Tracker了。09年的時候我記得比較流行的是Particle Filtering, 或者一些MeanShift/CamShift的變形,比如特徵變了,比如對問題的假設變了。
後來突然出現一些tracking by detection的方法,之前的很多朋友就覺得這是耍流氓。比如TLD,嚴格的跟蹤演算法也許只是裡面的Forward/Backward Opitcal Flow的部分,但是效果很Impressive,所以不管怎樣,一下就火了。
之後所謂的跟蹤就不再是一個傳統的跟蹤問題,而是一個綜合的工程問題。online learning,random projection ,sparse learning的東西都加進來,大家其實到底是在做跟蹤還是在做檢測或者online learning,其實已經不重要,因為衡量的標準是你在某些public dataset上的精度。
但這些對實際的項目有沒有幫助呢?
這是個很有意思的地方,在很多時候,我們之所以需要跟蹤演算法,是因為我們的檢測演算法很慢,跟蹤很快。基本上當前排名前幾的跟蹤演算法都很難用在這樣的情況下,因為你實際的速度已經太慢了,比如TLD,CT,還有Struct,如果目標超過十個,基本上就炸了。況且還有些跟蹤演算法自己drift掉了也不知道,比如第一版本的CT是無法處理drift的問題的,TLD是可以的,究其原因還是因為檢測演算法比較魯棒啊……
實際中我覺得速度極快,實現也簡單的純跟蹤演算法居然是NCC和Overlap。
NCC很簡單,這個是對點進行的,對於區域也有很多變種,網上有一些相關的資源。
Overlap是我取的名字,一般用在視頻裡面,假如你的攝像頭是靜止的,背景建模之後出來的前景可以是一個一個的blob,對相鄰兩幀的blob檢測是否Overlap就可以得到track。在一些真實場景下,這個演算法是非常有效的。關於背景template的問題在真實的視頻裡面也是很好解決的。
坐在電腦前面調試代碼tuning 各種閾值讓跟蹤演算法在某一個視頻幀下面不要drift的事情我是再也不想幹了。
順祝你2015幸福快樂。
『肆』 車輛檢測與跟蹤 用Vibe演算法提取前景後,再用均值漂移跟蹤 行得通嗎
kalman只是一個預測方法(預測物體下一幀的可能位置), 一般後面要有一個其他方法在預測區域內進行搜索驗證, 比如先用kalman預測,再用mean-shift在預測區域內搜索, 這兩步驟在一起完成跟蹤過程.
至於速度問題, mean-shift, KLT, template match都可以很快, 當然效果上各有優缺點, 似乎TLD也早就做到了實時
『伍』 德雲系:擴展模塊的目標跟蹤演算法有哪些
你好,分為了以下四種:
1. KCF:TrackerKCF 使用目標周圍區域的循環矩陣採集正負樣本,利用脊回歸訓練目標檢測器,並成功的利用循環矩陣在傅里葉空間可對角化的性質將矩陣的運算轉化為向量的Hadamad積,即元素的點乘,大大降低了運算量,提高了運算速度,使演算法滿足實時性要求.
2.MIL:TrackerMIL 以在線方式訓練分類器將對象與背景分離;多實例學習避免魯棒跟蹤的漂移問題
3. OLB:TrackerBoosting 基於AdaBoost演算法的在線實時對象跟蹤.分類器在更新步驟中使用周圍背景作為反例以避免漂移問題.
4.MedianFlow:TrackerMedianFlow 跟蹤器適用於非常平滑和可預測的運動,物體在整個序列中可見.
5.TLD:TrackerTLD 將長期跟蹤任務分解為跟蹤,學習和檢測.跟蹤器在幀之間跟蹤對象.探測器本地化所觀察到的所有外觀,並在必要時糾正跟蹤器.學習估計檢測器的錯誤並進行更新以避免再出現這些錯誤.追蹤器能夠處理快速運動,部分遮擋,物體缺失等情況.