1. 程式人生 > >CVPR 2015 In Defense of Color-based Model-free Tracking 閱讀筆記

CVPR 2015 In Defense of Color-based Model-free Tracking 閱讀筆記

轉載至:http://blog.csdn.net/yuhq3/article/details/78197703

摘要:

這是15年CVPR的一篇paper,它使用的跟蹤方法是統計顏色特徵,最大的亮點是distractor-aware tracking(DAT),即在跟蹤過程中預先探測出與目標相似的干擾區域,與正確的目標區域結合表示(加權結合)。這樣的做法能夠有效降低傳統顏色特徵方法常出現的“漂移”現象。同時,在支援尺度變換的前提下仍然能有較高的FPS,在原文中就提到了該演算法可供實時線上目標跟蹤使用。接下來就將我認為的一些tricks及文章中的主要內容大致介紹下。

一、介紹及相關工作:

1、曾經顏色分佈直方圖是常用的方法,然而後來被一些卓越的特徵所取代,例如HOG,相關濾波和更復雜的顏色特徵。作者大概不服輸,覺得我單純的顏色特徵仍有作為,於是才有下文。

2、初始化的矩形框中存在部分背景資訊,導致跟蹤運算元常常缺乏分辨目標與背景的判別能力。文章中就提到這樣一句話,我認為這也是顏色特徵吃虧的地方,它不像紋理特徵、形狀特徵等等其他能夠在初始化階段有效分辨出目標與背景,而需要連同不需要的框內多餘背景資訊一起計算。可能這也是江湖吧,總要融合其他門派的武功才能日益壯大,一枝獨秀是不符合“合久必分,分久必合”的觀念的。

3、產生式模型混合判別式方法通常有驚人的效果。與上一點提到的一樣,融合起來的功夫才會更加強大,例如加入SVM,多例項學習等等的跟蹤演算法將會與其他單打獨鬥的演算法拉開差距。

二、干擾感知的線上跟蹤(主體內容):

作者基於以下兩個主要需求來提出後面的內容: 
a)對於連續幀,有用的模型必須能從背景中區分出目標。(前後景分離) 
b)干擾區域需要被預先檢測出來並被抑制。

1、判別式目標模型表示法:

對於作者提出的a),實現的方法有很多,例如幀間差分法、混合高斯模型、光影法等等,但又基於(一)中提到的產生式混合判別式的模型具有高準確性的原因,作者使用了基於貝葉斯定理的顏色直方圖,因此首先可以得到每一幀影象中每個畫素點對應的顏色區間,(在文中沒有提到使用的顏色空間是哪一種,這裡預設為RGB顏色空間,即256維。)

然後再根據貝葉斯公式得到在搜尋區域內屬於目標區域的概率: 
這裡寫圖片描述 
其中,這裡寫圖片描述這裡寫圖片描述

則公式(1)可以被簡化為: 
這裡寫圖片描述

下圖(a)就是由(2)式得到的分離目標與背景的概率圖。

這裡寫圖片描述

值得注意的是,原文中提到(2)式可以由查詢表來實現,可以節省許多時間開銷的同時,預先識別出潛在的干擾區域(如同上圖(a)的其他運動員)。我還沒有從程式碼上求證是否將公式轉換成了查詢表,但理論上應該行得通。

同樣的,可以得到類似(2)的干擾等式(3): 
這裡寫圖片描述

由(2)(3)可得: 
這裡寫圖片描述這裡寫圖片描述

這也是兩者(目標區域和干擾區域)結合後的公式,如上圖(c)所示。

最後,為了適應形變和光照,有: 
這裡寫圖片描述這裡寫圖片描述

2、目標定位

原文中作者使用了被廣泛使用的tracking-by-detection去定位目標,得到如下公式:

這裡寫圖片描述

其中,(6)是用於懲罰幀間移動距離過大的搜尋框,與高斯、餘弦等其他度量方法類似。

在本節中,原文還有這樣一段話,我認為也是目標定位的重要步驟之一:

“We densely sample overlapping candidate hypotheses Ot,i within the search region and compute both the vote and distance scores for each candidate. This allows us to efficiently obtain the new object location O* t as well as visually similar distractors, as such regions yield a high vote score, too. We consider a candidate Ot,i to be a distractor if 這裡寫圖片描述. To prevent selecting ambiguous distractors (e.g. located on the object itself due to increased scale) we follow an iterative nonmaximum suppression strategy, i.e. after selecting a candidate (either O* t or a distractor) overlapping hypotheses are discarded. After obtaining both the new object location and the set of distractors, the object model is updated according to Eqs. (2) and (3) to suppress the background and identified distracting regions and thus reduce the risk of drifting at a later time step.”

“我們在搜尋區域裡密集地取樣候選Ot,i(目標區域),並且計算每個候選區域的模型得分和相似性度量。因為干擾區域必然也會獲得高分(與目標區域相似),所以使得我們可以高效地同時得到新的目標區域和視覺相似的干擾區域。我們認為一個候選Ot,i如果滿足這裡寫圖片描述,那麼它屬於干擾區域。為了防止選擇了具有二義性的干擾區域(由於目標尺度增大而導致干擾區域與目標部分重疊),我們採用迭代非最大值抑制策略,例如選擇了一個候選之後(O* t或干擾區域),與之重疊的其他假設(區域)都捨棄。在獲得了新的目標區域和一系列干擾區域後,需要根據等式(2)(3)更新目標模型,這樣可以抑制背景和識別出的干擾區域,從而減小了在下一幀或之後漂移的機率。”

3、尺度估計

和其他state-of-the-art(當時)相似,為了尺度估計,原文將目標模型按閾值進行分段。然而,預定義好的閾值可能會由於複雜的背景或劇烈的光照變化而對尺度變化造成不好的影響。所以作者需要自適應的一種閾值。

這裡寫圖片描述

如上圖所示,L表示通過融合干擾感知公式得到的概率圖,然後分別計算目標區域O和周圍區域S的累計直方圖: 
這裡寫圖片描述這裡寫圖片描述

使用以上累計直方圖得到新的自適應分段閾值: 
這裡寫圖片描述

在式(7)後緊接著描述其作用的這樣一段話:

This formulation penalizes thresholds within flat regions of the cumulative object histogram cL O, e.g. thresholds within the range [0:2; 0:3]. 
這裡寫圖片描述

結合圖表,我認為這段話的意思是:“得到的閾值需要在減少背景噪聲的同時得到足夠多的目標畫素,但要避開那些‘平滑’的區域,如上背景與目標接近的區域。”

為了適應新的假設目標區域O* t,定義一個安全前景區域(O* t中的80%),然後使用得到的閾值做連通域分段分析,與目標概率圖極相似的連通域與安全區域相交的部分即作為目標區域。

最後計算當前尺度大小,與上一幀尺度做對比,若超過合理值則捨棄,否則則更新目標的維度(這裡不是很清楚維度代表的意思,或許是目標區域框的大小?)這裡寫圖片描述

最後的最後,作者特意在原文中提出,該方法的尺度是沒有固定的寬高比的,即不會有多餘的背景資訊被強制框進來,這樣就減小了冗餘資訊。

三、實驗結果與評價:

這裡就不贅述了,直接放原文截圖對比吧。

這裡寫圖片描述

這裡寫圖片描述

可以看到DAT演算法是非常優越的,在當時VOT測試用例上與Struck、KCF等多個著名的跟蹤演算法不相上下,也體現了干擾感知演算法的強大,即使是配合單純的顏色直方圖特徵也能有不錯的跟蹤效果。同時,在本機上我使用VOT2015的測試用例,跑出來平均每一組測試用例(大概100~200幀影象)的FPS是15左右,比之前跑過的粒子濾波演算法、MeanShift、CamShift等傳統演算法都提升了許多(平均5,6幀)。

然而,它仍有許多可以改進的地方,待研究了原始碼後再仔細討論。如有謬處,請多指教。