目标跟踪经典论文阅读(1)MOSSE
摘要
雖然不常用,但相關濾波器可以通過旋轉、遮擋和其他干擾來跟蹤復雜的物體,其速度是目前最先進技術的20倍以上。最古老和最簡單的相關濾波器使用簡單的模板,通常在應用于跟蹤時失敗。更現代的方法,如ASEF和UMACE表現更好,但它們的培訓需求不適合跟蹤。視覺跟蹤需要從一幀中訓練出魯棒濾波器,并隨著目標物體外觀的變化而動態調整。
本文提出了一種新型的相關濾波器——最小輸出平方和(Minimum Output Sum of Squared Error, MOSSE)濾波器,該濾波器在使用單幀初始化時產生穩定的相關濾波器?;贛OSSE濾波器的跟蹤器在每秒運行669幀時,對光線、比例、姿態和非剛性變形的變化具有魯棒性。遮擋是根據峰旁瓣比檢測到的,這使跟蹤器暫停和恢復它離開的地方,當對象重新出現
注:本文包含額外的數字和內容,這些數字和內容被排除在CVPR 2010中,以滿足長度要求。
本文提出一種新型的相關濾波器,Minimum Output Sum of Squared Error(MOSSE):輸出的平方差誤差最小濾波器,在初始化時只使用一個單獨的幀就可以產生穩定的相關濾波器,一個基于MOSSE的跟蹤器對光線、比例、姿態和非剛性變化具有魯棒性。遮擋是根據(peak-to-sidelobe ratio)峰旁瓣比檢測到的,這使得跟蹤器能夠在對象重新出現時暫停并恢復到停止的位置。(峰旁瓣比是啥后面再看)
?1.引言
視覺跟蹤在視頻處理中有許多實際應用。當目標在視頻的一幀中被定位時,在隨后的幀中跟蹤該目標通常是有用的。成功跟蹤目標的每一幀都提供了更多關于目標身份和活動的信息。因為跟蹤比檢測更容易,跟蹤算法比在每幀上運行一個對象檢測器可以使用更少的計算資源。
近年來,視覺跟蹤受到了廣泛關注。許多魯棒跟蹤策略已經被提出,容忍目標外觀的變化,并通過復雜的運動跟蹤目標。最近的例子包括:增量視覺跟蹤(IVT)[17],魯棒碎片跟蹤(FragTrack)[1],基于圖的鑒別學習(GBDL)[19]和多實例學習(MILTrack)[2]。這些技巧雖然有效,但并不簡單;它們通常包括復雜的外觀模型和/或優化算法,因此很難跟上許多現代相機產生的每秒25到30幀的速度(見表1)。
在本文中,我們研究了一種更簡單的跟蹤策略。采用自適應相關濾波器對目標外觀進行建模,通過卷積實現跟蹤。創建濾波器的簡單方法,比如從圖像中裁剪模板,會產生目標的強烈峰值,但也會錯誤地響應背景。因此,他們不是特別健壯的變化的目標外觀和失敗的挑戰跟蹤問題。本文介紹的平均合成精確濾波器(ASEF)、無約束最小平均相關能(UMACE)和最小輸出平方和誤差(MOSSE)濾波器對外觀變化具有更強的魯棒性,并能更好地區分目標和背景。如圖2所示,結果是一個更強的峰值,這意味著更少的漂移和更少的丟失軌跡。傳統上,ASEF和UMACE濾波器是離線訓練的,用于目標檢測或目標識別。在這項研究中,我們修改了這些技術,以在線訓練和自適應莊園的視覺跟蹤。結果是跟蹤與狀態的藝術表現,保留了很大程度上的速度和簡單的基礎上的相關性方法。
盡管方法很簡單,但基于改進的ASEF、UMACE或MOSSE濾波器的跟蹤在旋轉、尺度、光照和部分遮擋的變化下表現良好(見圖1)。峰旁瓣比(PSR),衡量相關峰值的強度,可用于檢測遮擋或跟蹤失敗,停止在線更新,并在物體以相似外觀重新出現時重新獲取軌跡。更一般地說,這些高級相關濾波器的性能與前面提到的更復雜的跟蹤器一致;然而,基于濾波器的方法的速度超過20倍,每秒可以處理669幀(見表1)。
本文的其余部分組織如下。第2節回顧了相關的相關濾波技術。第3節介紹MOSSE濾波器,以及如何使用它來創建一個健壯的基于濾波器的跟蹤器。第4節介紹了[17]的7個視頻序列的實驗結果。最后,第5節將回顧本文的主要發現。
目標在某一幀被定位時,對隨后的幀對該目標的定位是有作用的。跟蹤比檢測容易,跟蹤算法比在每一幀上運行一個對象檢測器容易。有些跟蹤策略比如......包含了復雜的外觀模型或優化算法,因此很難跟得上現在每秒25-30幀的速度。
本文研究了一種更為簡單的算法,采用自適應相關濾波器進行建模,通過卷積實現跟蹤。簡單的方法,比如我直接從圖像中裁剪目標的一部分當作對象來跟蹤,確實會保存下對象的很多特征,但是背景信息也會被錯誤的保存下來,ASEF、UMACE和本文介紹的MOSSE對變化具有更強的魯棒性,更能區分目標和背景。前倆是離線的,MOSSE是在線的。速度達到之前的20倍。
峰旁瓣比(PSR):衡量相關峰值的強度,可用于檢測遮擋或跟蹤失敗,然后停止在線更新,并在物體以相似外觀重新出現時重新獲取軌跡。
2.背景?
在20世紀80年代和90年代,相關濾波器的許多變種,包括合成判別函數(SDF)[7,6]、最小方差合成判別函數(MVSDF)[9]、最小平均相關能(MACE)[11]、最優權衡濾波器(OTF)[16]和最小平方誤差合成判別函數(MSESDF)[10]。這些濾波器訓練的目標對象的例子具有不同的外觀和強制硬約束,這樣濾波器將始終產生相同高度的峰值。最相關的是MACE,它產生尖銳的峰值和高psr。
在[12]中,我們發現基于SDF的濾波器(如MACE)的硬約束會導致失真容忍問題。解決方案是消除硬約束,而不是要求濾波器產生高平均相關響應。這種被稱為最大平均相關高度(MACH)的新型“無約束”相關濾波器導致了一種名為UMACE的MACE變體。
一種名為ASEF[3]的新型相關濾波器引入了一種針對特定任務的調整濾波器的方法。以前的方法只指定一個峰值,而ASEF指定每個訓練圖像的整個相關輸出。ASEF在眼睛定位[3]和行人檢測[4]上都表現良好。不幸的是,在這兩項研究中,ASEF都需要大量的訓練圖像,這使得它在視覺跟蹤中速度太慢。本文通過引入一種適用于視覺跟蹤的正則化ASEF,減少了對數據的需求。
3.基于相關濾波器的跟蹤
基于濾波器的跟蹤器使用在示例圖像上訓練的濾波器來建模對象的外觀。目標的初始選擇基于以第一幀目標為中心的小跟蹤窗口。從這一點開始,跟蹤和過濾訓練一起工作。通過下一幀搜索窗口上的相關濾波器跟蹤目標;相關輸出中最大值對應的位置表示目標的新位置。然后根據新位置執行在線更新。
為了創建快速跟蹤器,相關性是在傅里葉域計算快速傅里葉變換(FFT)[15]。首先計算輸入圖像的二維傅里葉變換,濾波器的二維傅里葉變換:。卷積定理表明相關性在傅里葉域中變成了一種線性乘法。使用符號顯式表示元素級的乘法,?表示復合共軛,相關性的形式如下:
?利用反FFT將相關輸出轉換回空間域。該過程的瓶頸在于計算正反fft,使得整個過程的上限時間為O(P log P),其中P為跟蹤窗口中的像素個數。
在本節中,我們討論基于濾波器的跟蹤器的組成部分。第3.1節討論了對跟蹤窗口進行的預處理。第3.2節介紹了MOSSE濾波器,這是一種改進的方法,從少量圖像構建穩定的相關濾波器。第3.3節展示了如何使用正則化來產生更穩定的UMACE和ASEF濾波器。第3.4節討論了用于在線更新濾波器的簡單策略。
目標的初始選擇基于第一幀中以目標為中心的小窗口,目標的跟蹤和過濾器的訓練是一起進行的,目標通過在在下一幀搜索窗口中?correlating the filter來進行跟蹤,輸出中最大值的位置即是目標的新位置,以此類推。
相關性是在傅里葉域計算快速傅里葉變換(FFT)。首先計算輸入圖像的FFT,然后,計算濾波器的FFT,在傅里葉域中用線性乘法就可以表示他們的相關性,然后利用反FFT將輸出變回到空間域。
G就是輸出的相關性,F就是輸入圖像,H*就是他想要找的濾波器。在輸入幀中找到與濾波器相關性最大的即為要跟蹤的目標。
3.1預處理
FFT卷積算法的一個問題是圖像和濾波器映射到一個環面的拓撲結構。換句話說,它連接了圖像的左邊緣到右邊緣,頂部到底部。
在卷積過程中,圖像在環面空間中旋轉,而不是像在空間域中那樣平移。人為地連接圖像的邊界會引入一種影響相關輸出的偽影。
通過執行[3]中概述的預處理步驟,可以減少這種影響。首先,像素值轉換使用日志函數,這有助于低對比度照明情況。像素值被歸一化為平均值0.0和范數1.0。最后,將圖像乘以余弦窗,使邊緣附近的像素值逐漸減少到零。這也有一個好處,它把重點放在靠近目標中心的地方
人為的連接上下,左右邊界會對原來的信息造成影響,預處理的作用就是減少邊緣的影響,把關注的重心放在靠近目標中心的地方。
3.2 MOSSE濾波器
MOSSE是一種算法,用于從較少的訓練圖像中產生類ASEF的濾波器。首先,它需要一組訓練圖像fi和訓練輸出gi。一般來說,gi可以是任何形狀。在這種情況下,gi是由真實值生成的,這樣它在訓練圖像fi中有一個以目標為中心的緊湊(σ = 2.0) 2D高斯形峰值。訓練是在傅里葉域進行的,以利用簡單的元素之間的輸入和輸出的關系。在上一節中,我們將大寫變量Fi 、Gi和濾波器H定義為它們的小寫對應變量的傅里葉變換。按元素執行除法。
為了找到一個將訓練輸入映射到期望訓練輸出的濾波器,MOSSE找到一個濾波器H,使卷積的實際輸出和期望輸出之間的平方和誤差最小。最小化問題的形式如下:
?對輸出最小化平方和誤差(SSE)的想法并不是新的。實際上,式3中的優化問題與[10]和[12]中的優化問題幾乎是相同的。不同的是,在這些工作中,它假設目標總是小心地以fi為中心,輸出(gi)對整個訓練集是固定的,而定制每個gi是ASEF和MOSSE背后的基本思想。在跟蹤問題中,目標不總是居中的,在目標跟蹤中峰值會跟隨目標運動。在更一般的情況下,gi可以有任何形狀。例如,在[4]中,fi包含多個目標,gi有多個對應的峰值。
解決這個優化問題并不是特別困難,但確實需要一些小心,因為被優化的函數是一個復變量的實值函數。首先,H的每個元素(由ω和ν索引)都可以獨立求解,因為傅里葉域中的所有操作都是按元素執行的。這涉及到把函數寫成和的形式。然后,部分W.R.T. 設為零,同時把當作自變量[13]。
?通過求解,可以找到MOSSE濾波器的封閉形式表達式:
?完整的推導過程見附錄A。公式5中的術語有一個有趣的解釋。分子是輸入和期望輸出之間的相關性,分母是輸入的能譜。
由式5,我們可以很容易地證明UMACE是MOSSE的一個特例。UMACE被定義為H * = D?1m *,其中m是一個向量,包含平均的中心裁剪訓練圖像的FFT, D是一個對角矩陣,包含訓練圖像的平均頻譜[18]。因為D是一個對角線矩陣,與它的逆矩陣的乘法本質上執行了元素的除法。當用當前的表示法重寫時,UMACE的形式如下:
?但是,UMACE要求目標以Fi為中心。再入可以使用相關性進行。如果我們將gi定義為一個克羅內克delta(在目標中心的峰值為1,在其他地方為0),這將本質上使目標重新中心并計算一個UMACE濾波器。這種方法和傳統方法的不同之處在于,在這里我們種植然后轉化,而傳統方法是翻譯然后轉化。
為了證明MOSSE產生比ASEF更好的濾波器,進行了一個實驗,改變用于訓練濾波器的圖像數量。濾波器通過對視頻第一幀的跟蹤窗口應用隨機小仿射擾動來初始化。第二幀的PSR被用來衡量濾波器的質量。圖3顯示,當在少量圖像窗口上訓練時,MOSSE產生更好的濾波器。原因將在下一節中討論。
1.需要一組訓練圖像fi和對應的輸出gi,gi是Ground truth,訓練在傅里葉域里進行。
2.重點就是找到一個合適的濾波器,使他能夠跟蹤目標。作者找到的就是使輸出的誤差平方和最小(Minimum Output Sum of Squared Error)。
3.濾波器H的每個元素可以獨立求解,因為傅里葉域中的所有操作都是按元素執行的。所以我們可以把函數寫成和,ω和ν就是濾波器元素的索引,將公式的偏導等于0即可求出濾波器。詳細過程在這:
?把平方乘開然后對求導:
然后我們在從整體來看就是:
?其實要做的就是求出這個濾波器H,然他能根據輸入圖像輸出更好的響應位置信息。
3.3 ASEF的正則化
ASEF采用了一種略有不同的方法來最小化相關變換中的誤差。事實證明,當只有一個訓練圖像Fi和一個輸出圖像Gi時,存在一個產生零誤差的濾波器。這個過濾器被稱為精確濾波器,可以通過求解方程1找到:
?一個精確的濾波器訓練一個圖像幾乎總是過擬合的圖像。當應用于新圖像時,該濾波器通常會失敗。平均是用來產生一個更一般的濾波器。平均的動機來自Bootstrap Aggregation[5],其中弱分類器的輸出可以平均產生一個強得多的分類器。經過一些處理,ASEF濾波器的方程可以顯示為:
?如果只使用一張圖像進行訓練,MOSSE和ASEF都會產生精確的濾波器(過擬合)。
ASEF濾波器在少量圖像上訓練時是不穩定的,因為當訓練圖像中的頻率包含很少的能量(或分母接近于零)時,方程8中的元素除法變得不穩定。對大量精確濾波器進行平均可以彌補這一問題,并產生魯棒的ASEF濾波器。因為MOSSE的分母是更多圖像上能量的總和,它很少產生小的數字,因此更穩定。
另外,正則化可以用于校正低能量頻率和產生更穩定的ASEF濾波器。這是通過給能譜中的每個元素添加一個小值來實現的。被取代,為正則化參數。
正則化類似于來自OTF理論的結果,通常與UMACE濾波器一起使用。這一結果表明,將背景噪聲的能譜與訓練圖像的能譜相結合,可以得到一個噪聲容忍能力較好的濾波器[16]。這里我們添加了白噪聲
圖4顯示了調整的效果。通過適當的正則化,所有的濾波器都產生了良好的峰值,并且應該足夠穩定,以產生良好的軌跡。
?平均的思想,正則化防止數據太少時過擬合。
3.4初始化濾波器和在線更新?
方程8和5描述了在初始化期間如何構造濾波器。利用隨機仿射變換構造訓練集,生成初始幀中跟蹤窗口的8個小擾動(fi)。訓練輸出(gi)也產生,其峰值對應于目標中心。
在跟蹤過程中,目標通??梢酝ㄟ^改變其旋轉、比例、姿態,通過在不同的光照條件下移動,甚至通過進行非剛性變形來改變外觀。因此,濾波器需要快速適應以跟蹤對象。運行平均值用于此目的。例如,從第i幀學習到的ASEF濾波器計算為:
和從第i幀學習到的MOSSEF濾波器計算為:?
?其中η為學習率。這給最近的幀增加了更多的權重,讓以前幀的效果隨著時間指數衰減。在實踐中,我們發現η = 0.125允許濾波器快速適應外觀變化,同時仍然保持一個健壯的濾波器。
我們訓練mosse,就要通過一些輸入fi和輸出gi,對于初始化第一幀,它本身就是fi,為了防止過擬合,作者利用隨機仿射生成了8個擾動fi,gi由高斯函數給出防止過擬合,然后依次采用10,11,12的更新策略來進行更新,mosse的。由式子可以看出,更新的濾波器是由當前幀和上一幀共同決定的。
3.5失效檢測和PSR?
如前所述,峰強度的簡單測量稱為峰旁瓣比(PSR)。為了計算PSR,將相關輸出g分為峰值和副瓣,其中峰值是最大值,副瓣是峰值周圍除11 × 11窗口外的其余像素。然后將PSR定義為,其中gmax為峰值,μsl和σsl為副瓣的均值和標準差。
根據我們的經驗,正常跟蹤條件下UMACE、ASEF和MOSSE的PSR通常在20.0到60.0之間,這表明峰值非常強。我們已經發現當PSR下降到7.0左右時,這是一個對象被遮擋或跟蹤失敗的跡象。對于Naive實現,PSR范圍在3.0到10.0之間,對于預測軌跡質量沒有幫助。
?4.評價
最初,我們創建了一個基于MOSSE的實時跟蹤系統,并在網絡攝像頭的實時視頻上進行評估。實時反饋可以很容易地測試跟蹤器配置的小變化,并對各種目標和跟蹤條件下的跟蹤器性能進行定性分析。這些測試為跟蹤器的操作提供了有價值的見解,并幫助產生本文中提出的快速和健壯的跟蹤器。
可以從http://www.cs.toronto.edu/~dross/ivt/免費下載的7個常用測試視頻進行了更有針對性的評價。測試視頻都是灰度的,包括具有挑戰性的燈光變化、姿勢和外觀。在所有的視頻中,攝像機本身都在移動,這增加了目標的不穩定運動。這七個序列包括兩個車輛跟蹤場景(car4, car11),兩個玩具跟蹤場景(魚,sylv),和三個人臉跟蹤場景(davidin300, dudek,和trellis70)。
4.1濾波器比較
本節評估UMACE、ASEF和MOSSE濾波器的跟蹤質量。與簡單濾波器相比,簡單濾波器是基于在線更新的平均預處理跟蹤窗口。跟蹤輸出被手工標記為良好跟蹤、偏離中心的跟蹤或丟失的跟蹤(見圖5)
定性地說,所有的濾鏡,包括簡單濾波器,都能夠在測試集中發現的所有尺度、旋轉和照明變化的范圍內,以很小的漂移跟蹤物體。大多數漂移和故障發生在目標經歷大的面外旋轉時。有關davidin300序列的示例,請參見圖6。濾波器傾向于跟蹤目標中心的一個點,隨著目標的旋轉,該點向目標邊界移動,跟蹤器最終處于跟蹤窗口被背景覆蓋的狀態。濾波器適應這個半背景窗口,當目標旋轉回一個正面姿態,濾波器有時會轉移到一個新的位置,或者他們可能會失去目標和跟蹤背景。
這些結果表明,先進的相關濾波器比樸素方法跟蹤目標的時間更長。尖銳的峰值也有好處,PSR是一個很好的跟蹤質量預測器,而PSR不是特別為樸素濾波器提供信息。對于高級濾波器,漂移和故障總是與較低的psr有關。如圖7所示,這表明MOSSE PSR可以定位該視頻中最具挑戰性的部分。
對于基于濾波器的跟蹤器,很難斷言任何一種濾波器類型明顯優于另一種類型。在7個視頻序列中的4個,相關濾波器表現完美。在davidin300上,所有的濾鏡在同一平面外旋轉過程中從臉部中心漂移到眼睛,在sylv中,濾鏡在該序列中相同困難的部分漂移。這兩個序列表明濾波器類型的選擇不是特別重要,因為濾波器以完全相同的方式失敗。
只有在dudek序列上,三個濾波器之間有顯著的差異。雖然MOSSE完美地完成了這一序列,但UMACE和ASEF在具有挑戰性的視頻部分出現了問題。即使在第3節中提出的證據表明MOSSE可能是這項任務的最佳濾波器,一個視頻序列上的單個失敗不足以支持一個強有力的主張;還需要更多的研究。
4.2與其他跟蹤器的比較
為了評估算法維護軌跡的能力,我們將我們的輸出與IVT[17]和MILTrack[2]作者發布的視頻進行了比較(參見第4.1節)。這些視頻還包含了健壯在線外觀模型(漫游)[8],在線Ada-Boost (OAB)[14]和FragTrack[1]的樣本結果。我們考慮過下載其他算法的代碼,但我們選擇研究作者自己的視頻,這些視頻代表了這些算法的最佳性能,這也緩解了我們未能正確實現或調整這些算法的爭論。在這些比較中,我們的方法能夠與那些算法保持相同或更好的軌跡。本著這種精神,我們還將我們的結果發布在我們的網站/Y ouTube (http://youtube.com/users/bolme2008),以便其他人進行相同的比較。圖8描述了視頻中的格式和注釋。
在[17]中,IVT[17]和ROAM[8]在圖5的四個序列上進行比較。其中,davidin300和dudek序列成功完成。sylv在620幀附近IVT失敗,trellis70在330幀附近IVT失敗。在發布的視頻序列中,漫游跟蹤器表現完美;然而,sylv和trellis70的視頻在IVT失敗后不久就停止了,目前尚不清楚“漫游”是否成功完成了這些序列。這兩種跟蹤器的一個特點是基于濾波器的跟蹤器所缺乏的,即它們估計目標的規模和方向,從而提供更多的目標在空間中的位置信息。
在[2]中,在davidin300和sylv序列上比較MILTrack[2]、OAB[14]和FragTrack[1]。所有的追蹤器都顯示出顯著的漂移,OAB和FragTrack在davidin300上失敗。這些追蹤器的漂移與使用過濾器看到的非常不同。在這些視頻中,跟蹤窗口在目標上來回移動。當濾鏡漂移時,當目標姿態發生變化時,它們往往會偏離中心,然后鎖定在一個新的中心點上。
4.3實時性能
在一臺2.4Ghz酷睿2雙核MacBook Pro的單處理器上進行了測試。本文中測試的跟蹤器是使用PyVision庫、OpenCV和SciPy.1用Python編寫的當使用64 × 64跟蹤窗口時,最初的Python實現平均每秒大約250個跟蹤更新。為了更好地測試跟蹤器的運行時性能,代碼中一些較慢的部分被用C重新實現,其中包括更好的內存管理和更有效地計算耗時任務,如規范化、fft和PSRs。這些優化的結果是幀率中值為每秒669次更新,如圖9所示。
?基于濾波器的跟蹤計算復雜度為O(P log P),其中P為濾波器中的像素個數。這來自于相關操作和在線更新期間使用的fft。跟蹤初始化的一次代價為O(N P log P),其中N是用于初始化第一個濾波器的仿射擾動的數量。雖然這比在線更新慢很多倍,但初始化仍然比實時更新快,每秒66.32次更新。
5.總結
本文表明,視覺跟蹤問題,傳統的解決方法是使用重權重分類器,復雜的外觀模型和隨機搜索技術,可以取代高效和更簡單的MOSSE相關濾波器。其結果是一個易于實現的算法,可以同樣準確,而且速度快得多。
在本文中,保持跟蹤器簡單,以評估濾波器的跟蹤能力和適應困難的跟蹤場景。有許多簡單的方法可以改進這個跟蹤器。例如,如果目標的外觀是相對穩定的,漂移可以通過基于初始幀偶爾重新進入濾波器來緩解。跟蹤器還可以擴展到估計規模和旋轉的變化,通過過濾的對數變換跟蹤窗口后更新。
總結
以上是生活随笔為你收集整理的目标跟踪经典论文阅读(1)MOSSE的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第六章 参数估计
- 下一篇: [Bugku][Web][CTF] 9-