1. 程式人生 > >MOSSE相關濾波目標跟蹤論文

MOSSE相關濾波目標跟蹤論文

論文全名:Visual Object Tracking using Adaptive Correlation Filters

論文摘自CVPR 2010,由David S. Bolme、J.Ross Beveridge、Bruce A. Draper與Yui Man Lui撰寫,簡稱MOSSE。

摘要

雖然不常用,但相關濾波器可以通過旋轉,遮擋和其他干擾來跟蹤複雜物體,其速度是當前最先進技術的20倍以上。最舊和最簡單的相關過濾器使用簡單模板,並且在應用跟蹤時通常會失敗。諸如ASEF和UMACE等方法表現優秀,但他們的訓練的需求不太適合跟蹤。視覺跟蹤需要從單個幀訓練強大的濾波器,並在目標物件的外觀發生變化時動態調整。

本文提出了一種新型的相關濾波器,即最小平方誤差輸出和(MOSSE)濾波器,它在使用單幀初始化時產生穩定的相關濾波器。對於光照,縮放,姿勢和非剛性變形的變化時,基於MOSSE濾波器的跟蹤器具有魯棒性,同時以669幀的速度執行。通過計算峰值與旁瓣比來判斷目標是否被遮擋,當目標遮擋後又重新出現時,跟蹤器可以暫停並恢復它停止的位置

注意:本文包含CVPR 2010中排除的其他數字和內容,以滿足長度要求。

 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]的七個視訊序列的實驗結果,最後,第5節將重述本文的主要發現。 

2 回顧

在20世紀80年代和90年代,與相關濾波器相關的變體相繼產生,包括合成判別函式(SDF)[7,6],最小方差合成判別函式(MVSDF)[9],最小平均相關能量(MACE)[11],最優權衡濾波器(OTF)[16]和最小平方誤差綜合判別函式(MSESDF)[10]。這些濾波器在具有不同外觀和強制硬約束的目標物件的示例上進行訓練,使得濾波器總是產生相同高度的峰值。最相關的是MACE,它產生尖峰和高PSR

在[12]中,發現基於SDF(合成判別函式)的濾波器(如MACE)的硬約束導致了失真容限問題。解決方案是消除硬約束,而不是要求濾波器產生高平均相關響應,這種稱為最大平均相關高度(MACH)的新型“無約束”相關濾波器導致稱為UMACE(無約束MACE)的MACE變體。

一種稱為ASEF [3]的新型相關濾波器引入了一種調整特定任務濾波器的方法。早期方法只指定單個峰值,ASEF提出每個訓練影象的整個相關輸出。 ASEF在眼睛定位[3]和行人檢測[4]方面表現良好。但在這兩項研究中,ASEF都需要大量的訓練影象,這使得視覺跟蹤速度太慢本文通過引入適用於視覺跟蹤的ASEF的正則化變體來降低此資料要求。

3 基於跟蹤的相關濾波

基於跟蹤的濾波器原理為,用示例影象上訓練的濾波器來建立目標外觀模型。最初基於以第一幀中的目標為中心的小跟蹤視窗來選擇目標,在此之後,跟蹤和濾波訓練將同時進行,通過在下一幀中的搜尋塊上關聯之前的濾波器來跟蹤目標,該幀中輸出的最大值的位置表示目標的新位置。然後基於該新位置進行線上更新。

為了建立快速跟蹤器,在傅立葉域上進行快速傅立葉變換(FFT)[15]中計算相關性。首先,計算輸入影象的2D傅立葉變換:F=F(f)和濾波器:H=F(h)。卷積定理指出相關性計算傅立葉域中的元素乘法等同。使用⊙符號表示逐元素乘法而*表示複共軛,相關性計算採用以下形式:G=F\odot H^{*}(1)。使用逆FFT將相關計算的輸出變換回空間域。此過程中的瓶頸是計算正向和反向FFT,以便整個過程的上限時間(計算複雜度)為O(PlogP),其中P是跟蹤影象塊的畫素數。

在本節中,我們將討論基於跟蹤的濾波器的組成部分:

3.1節討論在跟蹤視窗上進行的預處理模組;

3.2節介紹MOSSE濾波器,它是從少量影象構建穩定相關濾波器的改進方法;

3.3節介紹瞭如何使用正則化計算來生成更穩定的UMACE和ASEF濾波器。

3.4節討論了用於線上更新過濾器的簡單策略。

3.1 預處理模組

FFT卷積演算法的一個問題是影象和濾波器被對映到環面的拓撲結構。 換句話說,它將影象的左邊緣連線到右邊緣,將頂部連線到底部。在卷積時,影象旋轉通過環形空間而不是像在空間域中那樣進行平移。 人為地連線影象的邊界引入了影響相關輸出的偽像,而利用[3]中的預處理步驟可以減少這種影響。 首先,使用對數函式轉換畫素值,這有助於低對比度照明情況。 將畫素值平均歸一化為0.0至1.0的範數。 最後,影象乘以餘弦窗,它會逐漸將邊緣附近的畫素值減小到零。 這也有利於它將更多的重點放在目標的中心附近。

3.2 MOSSE濾波器

MOSSE是一種用於從較少的訓練影象產生類似ASEF濾波器的演算法。 首先,它需要一組訓練影象f_{i}和輸出g_{i}。 通常,g_{i}可以是任何形狀。 在這種情況下,g_{i}是由GT(ground truth)生成的,因此它具有以訓練影象f_{i}中的目標為中心的緊湊(標準差σ= 2.0)2維高斯形狀的峰值。在傅立葉域中進行訓練,通過簡單的元素資訊提取輸入f_{i}和輸出g_{i}之間的關係。 與前一節一樣,我們將大寫變數F_{i}G_{i}和濾波器H定義為它們的小寫對應的傅立葉變換,其中除法是按元素執行的:H_{i}^{*}=\frac{G_{i}}{F_{i}} (2)。

為了找到將訓練輸入對映到所需訓練輸出的濾波器,MOSSE定義了一個濾波器H:最小化卷積的實際輸出期望輸出的平方誤差之和。這種最小化問題採用以下形式:\min_{H^{*}}\sum_{i}\left |F_{i}\odot H^{*}-G_{i} \right |^{2} (3)。

在輸出上最小化平方誤差和(SSE)的想法並不是最新提出的。 事實上,(3)式中的優化問題幾乎與[10]和[12]中提出的優化問題相同。 不同之處在於,在這些工作中都是假設目標始終以f_{i}為中心並且輸出(g_{i})對於整個訓練集是固定的,其中每個g_{i}是基於ASEF和MOSSE建立的。 在跟蹤問題中,目標並不總是在影象框中心,並且g_{i}的峰值隨f_{i}的目標移動。 在更一般的情況下,g_{i}可以具有任何形狀。 例如,在[4]中,當f_{i}包含多個目標時,g_{i}具有多個相應的峰值。

被優化的函式是復變數的實值函式。 首先,H的每個元素(由wv索引)可以獨立求解(傅立葉域中的所有操作都是逐元素進行),部分關於H_{wv}^{*}為零,同時將H_{wv}視為獨立變數[13]。通過求解H^{*},找到MOSSE濾波器的閉合表示式(附錄A):

最優化問題-->將多變數優化轉為獨立優化每個元素

 

對等式右側函式取極值即為所求值
將等式右端(元素)分解
對等式右端合併求偏導

 

將Hwv提取
將其轉化為向量形式
共軛轉置

 

 可以看出,分子是輸入和輸出之間的相關性,分母是輸入的能譜。從公式5中,我們可以很容易地證明UMACE是MOSSE的一個特例。其中,UMACE濾波器的閉合表示式為:

 為了表明MOSSE比ASEF效能更好,我們在實驗中改變了進行濾波器訓練的影象數量。在初始化濾波器時,對視訊的第一幀的跟蹤patch加入一些隨機小仿射擾動,在第二幀時用峰值與旁瓣比PSR作為衡量濾波器好壞的標準。圖3表明在少量影象進行訓練的前提上,MOSSE表現更好,原因將在下一節中討論。

3.3 ASEF正則化

事實證明,當只有一個訓練影象Fi和一個輸出影象Gi時,存在產生零誤差的濾波器,但會造成過擬合現象,而該過濾器被稱為精確過濾器,其公式為:。建立一個平均濾波器的動機來自Bootstrap Aggregation [5],其中一些弱分類器的輸出可以用平均法產生更強的分類器。 通過一些操作,ASEF濾波器為:

當訓練少量影象時,ASEF濾波器不穩定,因為(8)式分母接近於零。作者提出在(8)式的分母中的每個元素加入正則化引數\epsilon,以產生更具魯棒效果的ASEF濾波器,正則化類似於OTF理論的結果,該理論通常與UMACE濾波器結合使用。該結果表明,將背景的噪聲新增到訓練影象中將產生更好的濾波器[16],這裡我們添加了白噪聲。圖4顯示了調整大小\epsilon變化的效果,通過適當的正則化,所有濾波器都能產生良好的峰值。

3.4 濾波器的初始化與更新

在初始幀中,對跟蹤窗進行八個隨機仿射變換的小擾動f_{i},構造訓練集,同時生成訓練輸出g_{i},其峰值對應於目標中心。在跟蹤期間,目標通常可以通過改變其旋轉,比例,姿勢,通過在不同的光照條件下移動,或者甚至通過非剛性變形來改變外觀。 因此,過濾器需要快速適應以跟蹤物件。 用平均值可達到此目的。 例如,從第i幀學習的ASEF濾波器與MOSSE濾波器分別為:

 

 其中,\eta為學習率,在最初幾幀的權重較大,之前幀的結果隨時間推移,呈指數衰減。 作者發現\eta= 0.125時,濾波器快速適應目標變化,並同時保持良好的魯棒性。

 3.5 誤檢與PSR(峰值與旁瓣比)

如前所述,峰值強度的簡單測量稱為峰值與旁瓣比(PSR)。 為了計算PSR,對於除了峰值周圍的11×11視窗之外的其餘畫素,相關輸出g分為兩類:一是作為最大值的峰值,二是旁瓣。 PSR定義為:,其中gmax是峰值,μs1和σsl分別是旁瓣的平均值和標準差。

在正常跟蹤條件下,UMACE,ASEF和MOSSE的PSR通常介於20.0和60.0之間。 我們發現當PSR下降到7.0左右時,表示目標遮擋或跟蹤失敗。 而PSR在3.0到10.0之間時,對於預測目標運動無效。

4 評估

最初,基於實時MOSSE的跟蹤系統在網路攝像頭視訊上建立和評估。通過實時反饋,可以輕鬆測試跟蹤器配置的微小變化,並對各種跟蹤器效能進行定性分析。這些測試為跟蹤器的操作提供了有價值的見解,並有助於生成本文中介紹的快速而穩定的跟蹤器。

對七種常用的測試視訊進行了更加可控的評估,這些視訊可以從http://www.cs.toronto.edu/~dross/ivt/免費下載。測試視訊都是灰度級的,包括照明,姿勢和外觀,都具有挑戰性。相機本身的移動增加了目標的不穩定性。七個序列包括兩個車輛跟蹤場景(car4,car11),兩個玩具跟蹤場景(fish,sylv)和三個面部跟蹤場景(davidin300,dudek和trellis70)。

4.1 濾波器對比

在本節,將評估UMACE,ASEF和MOSSE濾波器的跟蹤效果。這些與基於具有線上更新的平均預處理跟蹤視窗Naive濾波器進行比較,跟蹤輸出被手動標記為良好的跟蹤,跟蹤框偏離中心或丟失(參見圖5)。

該圖顯示了對所有七個視訊序列的跟蹤效能。 其中 綠色表示跟蹤良好, 黃色表示跟蹤偏離目標中心, 紅色表示跟蹤失敗。
黑線表示PSR縮短到範圍[0,20]。

當目標變化較小時,所有濾波器都能準確跟蹤。當目標經歷大的平面外旋轉時,大多數目標偏離和跟蹤失敗會發生(圖6有關davidin300序列的示例)。濾波器傾向於跟蹤目標中心的點。當目標旋轉時,該點朝向目標邊界移動,並且跟蹤器的大部分跟蹤框最終由背景代替(即跟蹤失敗)。濾波器適應半個背景窗,當目標旋轉回正面姿勢時,過濾器有時會移動到新位置,或者一直跟蹤背景。

這些結果表明,作者提出的相關濾波器跟蹤的目標比Naive方法更長。尖峰還具有以下優點:PSR是目標軌道運動的良好預測器,而PSR對於Naive濾波器無感。對於論文提出的濾波器,目標偏離和目標丟失與低PSR有關(圖7)

在七個視訊序列中的四個中,相關濾波器表現完美。在davidin300上,所有濾波器在相同的平面外旋轉期間從面部中心偏移到眼睛,並且在sylv中,濾波器在該序列的相同問題部分也出現了偏移。這兩個序列表明濾波器型別的選擇並不是特別重要。僅在dudek序列上,三個濾波器之間存在顯著差異:MOSSE跟蹤很好,但UMACE和ASEF在挑戰視訊部分時遇到問題。儘管第3節中表明MOSSE可能是此視訊任務的最佳濾波器,但需要之後更多的研究。

4.2 與其他跟蹤器的比較

為了評估演算法跟蹤能力,我們將輸出與IVT [17]和MILTrack [2]的作者釋出的視訊進行了比較(見4.1節)。這些視訊還包含Robust Online Appearance Model(ROAM)[8],Online Ada-Boost(OAB)[14]和FragTrack [1]。基於下載這些其他演算法的程式碼,作者選擇研究論文中提供的視訊,這些視訊代表了這些演算法的最佳效能,並且還減輕了我們未能正確實現或調整這些演算法。在那些比較中,作者提出的方法能與那些演算法一樣好或更好,結果:YouTube(http://youtube.com/users/bolme2008)。

在[17]中,IVT [17]和ROAM [8]也在圖5中的四個序列上進行了比較。其中,davidin300和dudek視訊序列成功跟蹤。對於sylv視訊序列,IVT在幀620附近失敗;對於trellis70視訊序列,IVT在幀330附近失敗。在已釋出的視訊序列中,ROAM跟蹤器表現完美,然而,在IVT在sylv和trellis70視訊系列很快跟蹤失敗。這兩個跟蹤器的一個特徵是它們考慮了目標的比例和方向,提供了關於其在空間中的位置的更多資訊。

在[2]中,MILavck [2],OAB [14]和FragTrack [1]在davidin300和sylv視訊序列上進行了比較。所有跟蹤器都顯示出顯著的偏離,OAB和FragTrack在davidin300上跟蹤失敗。這些跟蹤器的偏離與作者提出的濾波器的偏離截然不同。在這些視訊中,跟蹤窗在目標之間來回徘徊:當目標經歷姿勢變化時,它們傾向於偏離中心,然後它們鎖定到新的中心點。

4.3 實時效能

測試是在2.4Ghz Core 2 Duo MacBook Pro的單個處理器上進行的。本文測試的跟蹤器用了Python中的PyVision庫,OpenCV和SciPy。使用64×64跟蹤視窗時,原始Python實現平均每秒大約250個磁軌更新。為了更好地對跟蹤器的執行時效能進行基準測試,程式碼的一些較慢部分在C中重新實現,其中包括更好的記憶體管理和更高效的計算耗時任務,如規範化,FFT和PSR。這些優化使速率為每秒669幀,如圖9所示。

基於濾波器的跟蹤計算複雜度是O(PlogP),其中P是濾波器中的畫素數,這來自相關操作和線上更新期間使用的FFT。跟蹤初始化導致O(NPlogP),其中N是用於初始化濾波器的仿射擾動的數量。雖然這比線上更新慢很多倍,但初始化(每秒66.32幀)速度仍然比實時快。

5 總結

本文已經表明,傳統上使用高權重分類器,複雜外觀模型和隨機搜尋技術解決的視覺跟蹤問題可以由有效且更簡單的MOSSE相關濾波器代替。 它是一種易於實現的演算法,可以同樣準確,並且速度更快。

在本文中,跟蹤器保持簡單。 有許多簡單的方法可以改進此跟蹤器。 例如,如果目標的外觀相對穩定,則可以通過基於初始幀偶爾重新定位濾波器來減輕偏離。 通過在更新之後對跟蹤視窗的對數進行極座標變換,還可以擴充套件跟蹤器以估計比例和旋轉的變化。