TLD跟蹤算法介紹
點(diǎn)擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時間送達(dá)
TLD跟蹤算法介紹

TLD(Tracking-Learning-Detection)是一種長時視頻對象跟蹤算法,首先要在視頻一幀中指明對象位置,Tracking完成在視頻的每一幀中跟蹤對象;Dtection完成對象外形與輪廓最小化塑造,需要時用來修正跟蹤對象; Learning完成對Detection的量化評估,通過機(jī)器學(xué)習(xí)方法來減低與避免Detection再發(fā)生類似錯誤,常用為P-N 專家學(xué)習(xí)方法,P是負(fù)責(zé)估算漏檢測模型、N是負(fù)責(zé)虛警率模型估算。以上幾個就是TLD算法簡單概述。下面是TLD算法的相關(guān)細(xì)節(jié)。
跟蹤(Tracking)
長時跟蹤算法常見的有兩種方法一種是基于移動跟蹤,另外一種是基于對象檢測,一般來說基于對象檢測的算法計算耗時都會比基于跟蹤的算法長。跟蹤主要是通過算法來預(yù)測對象移動,一般來說跟蹤需要一個初始化標(biāo)定,然后就會很快速的計算得到移動對象的平滑軌跡,另外一方面跟蹤容易導(dǎo)致每幀之間都會產(chǎn)生累積誤差,最終的結(jié)果就是導(dǎo)致算法錯誤而讓跟蹤對象跑出相機(jī)可視范圍之內(nèi)。對象跟蹤主要任務(wù)是預(yù)估對象移動,常見的方法有基于光流、輪廓、關(guān)鍵特征點(diǎn)、人工模型等。常見的對象跟蹤方法有兩類
基于連續(xù)幀的對象移動
模板跟蹤,其中模板有可以分為靜態(tài)與自適應(yīng)模板兩種
檢測(Detection)
TLD時候工作的對象檢測方法常見的有兩種
局部圖像特征。基于特征的方法主要是分為如下三個子步驟

基于特征的方法,要求首先知道跟蹤對象的幾何位置
基于滑動窗口
基于滑動窗口的方法對輸入每幀圖像進(jìn)行不同窗口尺寸的掃描,檢測每個窗口下覆蓋圖像區(qū)域(Patch)是否包含待檢測目標(biāo)。為了達(dá)到實(shí)時檢測的效果,滑動窗口通常采用級聯(lián)分類策略與積分圖快速計算方法。通常圖像中背景窗口數(shù)目遠(yuǎn)遠(yuǎn)大于對象窗口數(shù)目,級聯(lián)分類器通過不同Stage在早期拒絕超過大多數(shù)的背景區(qū)域,對剩下的區(qū)域(Patch)進(jìn)行更加深入的特征匹配實(shí)現(xiàn)對象分類。基于級聯(lián)分類器方法都要求離線或者在線的一定數(shù)量樣本訓(xùn)練,然后才可以使用。
學(xué)習(xí)(Learning)
可以將跟蹤數(shù)據(jù)分類提供給檢測器,用來提供下一幀的跟蹤精度,同時還可以重新初始化檢測器,從而避免跟蹤過程頻繁失敗的情況發(fā)生。學(xué)習(xí)方法應(yīng)該滿足如下條件
當(dāng)跟蹤失敗時候,要處理相應(yīng)的視頻流幀圖像
絕對不能在視頻幀中沒有跟蹤對象的情況下降低檢測精度
滿足實(shí)時計算條件
對象學(xué)習(xí)的方法分為兩類
機(jī)器學(xué)習(xí)(Machine Learning)常見的方法有EM、Self-Learning、Co-Training等半監(jiān)督學(xué)習(xí)方法。
P-N學(xué)習(xí)(P-N Learning),是一種現(xiàn)在學(xué)習(xí)方法,目的是提供TLD過程中的檢測環(huán)節(jié)性能,在每幀視頻流中,通過估算當(dāng)前的檢測準(zhǔn)確率與錯誤率,然后更新檢測器,避免錯誤的進(jìn)一步發(fā)生。
總結(jié)與更多信息
跟TLD關(guān)系最密切的一個跟蹤算法是Median Flow跟蹤算法,而這兩個算法的作者擁有同一個作者(Zdenek Kalal),TLD跟蹤階段常見的是基于光流或者M(jìn)edian Flow實(shí)現(xiàn)。OpenCV3.1.0在擴(kuò)展模塊中有TLD與Median Flow跟蹤算法實(shí)現(xiàn),此外OpenTLD是個開發(fā)源代碼的c++ TLD算法庫,想進(jìn)一步研究的可以去深入讀一下。TLD最適合在跟蹤對象被遮擋,不連續(xù)出現(xiàn)情況下,進(jìn)行長時跟蹤的應(yīng)用場合。
下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程 在「小白學(xué)視覺」公眾號后臺回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。 下載2:Python視覺實(shí)戰(zhàn)項(xiàng)目52講 在「小白學(xué)視覺」公眾號后臺回復(fù):Python視覺實(shí)戰(zhàn)項(xiàng)目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個視覺實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計算機(jī)視覺。 下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講 在「小白學(xué)視覺」公眾號后臺回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講,即可下載含有20個基于OpenCV實(shí)現(xiàn)20個實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。 交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~

