ObjecT4:On-line multiple instance learning (MIL)学习
? ? ?? 原文鏈接:http://blog.csdn.net/ikerpeng/article/details/19235391
? ?? ? 用到論文,直接看翻譯。
? ?? ? 文章:Robust object tracking with on-line ?multiple instance learning?? Boris Babenko, Student Member, IEEE, Ming-Hsuan Yang, Senior Member, IEEE?and Serge Belongie, Member, IEEE ;PAMI ,2011.
? ?? ?? 文章開頭就說的明了:本文的tracking只給定了第一幀目標的位置,沒有其余的信息了(上一篇論文是拿了前10幀的圖片來訓練的)。本文解決的問題同樣是on-line tracking出現的漂移的問題(Slight inaccuracies in the tracker can therefore lead to incorrectly labeled sample)。使用的方法是:MIL。特點是:調節的參數少。(BTW:其中提到了一個叫做bootstrap的概念,通俗的將就是對已有的觀測樣本反復的有放回抽樣,通過多次計算這些放回抽樣的結果,獲取統計量的分布。)
? ? ? ? 接下來,文章介紹了跟蹤中當前存在的主要挑戰: 1、形變所產生的巨烈的表觀的變化;2、平面外的旋轉;3、場景光照度的變化。 同時,介紹了典型的跟蹤系統的三個組成部分:1、appearance model,估計跟蹤目標在特定位置的可能性; 2、 motion model ,同跟蹤物體隨時間改變的位置有關;3、a search strategy for finding,找到當前幀中目標最有可能的位置。本文重點放在第一部分,作者想達到的目標是能夠跟蹤到部分遮擋的物體而不出現明顯的漂移,并且只有較少的參數。
? ? ? ? 對于appearance model的設計,一般有兩種考慮。一種是只model 目標;另一種是將目標和背景都model。而后者其他領域已經取得了成功。參見后者,在on-line tracking中,常用的更新自適應appearance model的方法是:將當前tracker的位置作為正樣本(有的時候也擴展非常鄰近的位置作為正樣本),將這個位置周圍的位置作為負樣本來更新appearance model。這也使得漂移的產生成為可能。為了解決這個問題,引入了半監督的方法。如Grabner et al.提出的semi-supervised的方法,將tracker得到的目標都認為是無標簽的樣本,而只有第一幀中的樣本是有標簽的。然后通過聚類的方法給定這些無標簽樣本一個偽標簽,在繼續使用有標簽的方法進行跟蹤。這個方法沒有充分的利用到視頻中有用信息,比如說相鄰的幀之間的變化非常的小等等。tracker所得到的樣本標簽的模糊性促使multiple instance learning(MIL)的提出。MIL的基本思想是,在訓練的過程中,樣本不再是單個的patch塊,而是將多個patch塊放在一個小的樣本集(稱作bag)里。整個小的樣本集(bag)有一個標簽。又規定,若是這個bag里面至少有一個正樣本,那么它的標簽就是正的,反之就是負的。由這些小的樣本集組成整個的training set。這樣做的原因是學習的過程對于找到決策的邊界有更好的靈活性。
? ? ? ?? 對于tracker得到的或是擴展得到的圖像patch塊,計算出每個patch塊的Harr-like特征,對于每一個圖像patch塊x,都由Harr-like特征的feature vector表示。對于每一幀待檢測的圖像,提取一個patch塊的集合,這個集合滿足:。其中,l(x)表示x patch塊的位置,l*t-1表示前一幀的目標位置,s為參數,度量patch塊與前一幀目標位置的最大距離。得到的是一個目標的可能位置的集合。然后計算這個集合里面所有patch塊的概率p(y=1| x),選出概率最高的patch塊作為當前的目標的位置。在得到目標的位置以后,擴展樣本:通過擴展正樣本,放在一個bag里面,標簽為正;通過擴展負樣本(不放在一個bag里面),標簽為負。?每一次的motion model里面只保留似然概率最大的那一個樣本。(這部分是MIL特色的地方)
? ????? 同時也可以考慮引入尺度變換參數,這樣的好處是結果可以更加的準確;壞處是增加了參數的空間維度。可根據需求決定。
? ? ?? 所以問題的關鍵是要求得使得概率最高時的那個bag(集合X),即:argmax(L),? (*)。根據NOR model 知道?,所以求概率的最大值就轉化為求(*)的最大值。但是這種算法不能夠應用到on-line的tracking當中,因為它需要一次得到全部的數據(it needs the entire training dataset at once)。
? ????? 于是,仿造on-line boosting的方法,構造on-line MIL算法。
? ???? 首先,由第一幀得到的信息,擴展正負樣本,形成一組由patch塊集合組成的數據集bags(帶標簽的);
? ? ?? 然后,計算各個patch塊的harr-like特征向量,用它來表示每一個image patch 塊。樣本的特征的條件概率分布滿足高斯分布,均值和方差分別通過新得到樣本更新,再由貝葉斯法則得到它的概率;
? ? ?? 然后,構造一組M個弱分類;通過公式來構造。
? ???? 接下來,(用motion model 根據上一幀目標的位置,擴展目標的可能位置;根據公式:。?)還是從M個弱分類器中選出響應最好的K個強分類器;
? ???? 然后,計算上面得到的目標位置集合中樣本的似然概率的最大值,并將這個樣本作為當前幀目標的位置;概率可以由sigmoid函數表示,又根據NOR model知道,又為了方便計算,對數化這個值在轉化為求的最大值。
? ???? 最后,由上面更新的目標的位置,跟新分類器,如此在迭代上述過程。
? ? ? 個人覺得這篇文章的思想非常的新穎。漂移問題是on-line tracking最主要的問題。引起漂移最主要的原因就是,分類器更新時使用的樣本本身的準確率存在問題。為了解決這個問題。有的作者采取的方式是放棄掉tracker得到的結果。將這些得到的patch塊認為是無標簽的,再通過聚類的方式得到一個偽標簽,再通過有標簽的方式來訓練分類器。很顯然這樣的結果可以很好的解決目標跑出視頻的情況。當目標再一次出現的時候可以繼續跟蹤到。但是,這樣浪費掉了很多的有用信息。同時,增加了偽標簽的求解過程,速度應該比on-line boosting方法還要慢。而本文作者處理的方式是:既然所得到的樣本標簽的準確率有問題,那么對得到的樣本進行擴展,作為一個事件集。選出里面錯誤率最低的時間來更新目標的位置,也由此來更新分類器。準確率和速度都會好很多。
? ?? 問題:
? ? (1)文章中最終的算法(3.4)的數據集是通過tracker的location擴展得到嗎?
? ? (2)文章中3.1提到的 用motion model 根據上一幀目標的位置,擴展目標的可能位置,選出最有可能的位置即為目標的位置。既然已經得到了目標的位置,那為什么還要使用分類器啊?(具體是這樣操作的,依照公式:得到可能的location的集合。再來計算最大似然概率,得到目標的位置。)
總結
以上是生活随笔為你收集整理的ObjecT4:On-line multiple instance learning (MIL)学习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 剑盾如何刷闪
- 下一篇: 云顶之奕光是什么羁绊 云平台基本概念