Correlation Filter-based Tracking Frame
Discriminative Correlation Filter(DCF),即判別相關濾波器,是Visual Tracking領域應用最爲廣泛的跟蹤算法。其核心思想是:由於每一幀中被良好檢測的目標都提供了描述該目標的信息,因此完全可以通過用每一幀中的目標區域作爲訓練樣本來進行模型的訓練,具體做法是通過已經跟蹤的若干幀中目標的位置,提取出我們關心的特徵,訓練出一個濾波器模板,對於新幀中可能的目標區域,提取出該區域特徵,與濾波器模板作相關,根據相關值得到在新幀中目標的預測位置,並在以該位置爲中心提取出特徵,反過來進一步訓練濾波器模型,並重覆上述步驟進行後續的目標跟蹤與模型訓練。通過這種方法,就實現了模型的在線訓練與目標的實時跟蹤。
Adaptive Correlation Filters
Minimum Output Sum of Squared Error (MOSSE)
Minimum Output Sum of Squared Error (MOSSE) developed by Bolme et al.的提出極大地改善了相關濾波器跟蹤算法的performance,在提升精度的同時降低了求解的複雜度。
t個目標區域樣本分別爲
對
對於t+1幀,假設其在第t幀的目標區域內提取得到特徵圖z,那麼計算
y的最大值的位置即被認爲是t+1幀中目標區域的中心點.
我們保持目標區域尺寸不變,將其中心點進行移動相應位置,就得到了在新幀中的目標區域。對該區域進行特徵提取,然後加入到訓練集中對模型進行更新得到
中的目標檢測了。
在實際的tracking過程中,一般使用如下方法來更新模型:
其中
缺點
- 只使用了灰度作爲特徵,模型所使用的特徵維數太低,難以很好地反映目標的特性。
- 只估算了目標區域中心點在幀間的平移運動,而沒有考慮目標在運動過程中反映在畫面上的尺度變化,在目標尺度發生改變時難以適應。
Discriminative Scale Space Tracking Filter (DSST)
對MOSSE的改進:
- 使用fHoG替代灰度(通常fHoG爲31dims,而DSST實際使用28dims)
- 考慮目標尺度變化
不考慮尺度變化
只考慮單個目標,設特徵維數爲d,則特徵圖可記作
引入
對上式做傅里葉變換,求導,令導數爲0,得:
在實際操作中,可以用下式更新模型:
新幀預測:
考慮尺度變化
濾波器和特徵圖由
改進思路,兩組濾波器模板:
- d個大小爲
M×N 的二維位置濾波器 d×M×N 個大小爲S的一維尺度濾波器
位置濾波器的訓練方法同前,而尺度濾波器則是在確定了目標區域中心後,對於尺度因子s,提取出其對應區域的d個
完整算法
- 估算位置
- 在幀
It 中根據前一幀的位置pt−1 和尺度因子st−1 劃定區域提取特徵zlocat - 在
zlocat 與位置濾波器Alocat−1,Blocat−1 做相關得到ylocat - 將
ylocat 最大值點設爲當前幀的目標中心pt
- 在幀
- 估算尺度
- 在幀
It 中根據位置pt 和前一幀的尺度因子st−1 劃定區域,縮放後得到S個區域,提取特徵zscalet - 將徵
zscalet 與尺度濾波器Ascalet−1,Bscalet−1 做相關得到yscalet - 將
yscalet 最大值點設爲當前幀的目標尺度st
- 在幀
- 更新模型
- 在幀
It 中根據估算出的位置pt 和尺度st 劃定區域提取特徵,得到flocat 和fscalet - 更新位置濾波器得到
Alocat,Blocat - 更新尺度濾波器得到
Ascalet,Bscalet
- 在幀
複雜度
缺點
- 難以適應大幅度形變、遮擋等
- 循環卷積邊緣效應
SRDCF對此做出了改進。
Kernelized Correlation Filters
The overall performance may be limited because the MOSSE filters can be viewed as simple linear classifiers. By taking advantage of kernel trick, correlation filters are supposed to be more powerful.
Building Blocks
Linear Regression
考慮:
在複數域中,上是中的轉置(T)替換爲共軛轉置(H)。
Circulant Matrices
僅考慮一維單通道信號
輪換矩陣
其中
Putting it all together
考慮
定義
Linear regression的解的傅里葉變換可以表示爲:
Non-linear Regression
Kernel Trick
將線性問題轉換爲
- 將解
w 表示爲ϕ(x) 的線性組合:
w=∑iαiϕ(xi)
求解w 的過程變爲對偶空間(Dual Space)中求解α 的過程。 - 將點積表示爲:
ϕT(x)ϕ(x′)=κ(x,x′)
核函數不需要給出高維空間中的向量的具體表達式,就可以實現從低維到高維的映射。
Fast Kernel Regression
核函數迴歸在對偶空間的理論解:
其中
- 定理:Kernel Matrix
K 輪迴的條件 - 給定輪換矩陣
C(x) ,如果核函數對任意的置換陣M 均滿足κ(x,x′)=κ(Mx,Mx′) ,那麼相應的核矩陣K 也是輪迴的。
滿足上述定理的核函數有:
- Ridial Basis Function kernels - e.g., Gaussian.
- Dot-product kernels - e.g., linear, polynomial.
- Additive kernels - e.g., intersection,
χ2 and Hellinger kernels. - Exponentiated additive kernels.
這時可以將
其中
的傅里葉變換。
Fast Detection
我們希望評估的image patch爲
其中
迴歸函數:
它等價於:
Fast Kernel Correlation
Radial Basis Function and Gaussian Kernels
RBF kernels通常具有下列形式:
由於置換陣不影響
特別地,高斯核:
Dot-product and Polynomial Kernels
To be continued.
Multiple Channels
A dotproduct can be computed by simply summing the individual dot-products for each channel. By linearity of the DFT, this allows us to sum the result for each channel in the Fourier domain.
以高斯核爲例:
Algorithms
實際使用中,Tracking模板的更新可以用學習率控制,參考Danelljan, Martin, et al. “Adaptive color attributes for real-time visual tracking.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2014.
分子和分母
Experiments
Benchmark: Y. Wu, J. Lim, and M. H. Yang, “Online object tracking: A benchmark,” in CVPR, 2013.
- KCF=Gaussian Kernel
- DCF=Linear Kernel
Detection-Tracking System
The Combinition of Detection & Tracking
Target Lost
- 定義:Peak to Sidelobe Ratio (PSR)
- 設濾波器模板與目標區域特徵作相關後得到響應爲G,其最大值爲
Gmax ,以Gmax 的位置中心11×11 的區域內響應平均值爲μ ,方差爲σ2 ,則PSR=Gmax−μσ2 。
一般而言,當目標區域和模型較爲相符時,
- 問題:
- 仍然缺少自動學習
PSR 閾值的相關算法。
Re-detection
當目標丟失、重新detect時,對於得到的所有候選區域,用原先的tracking模板與候選區域逐個作相關,取響應值最大值最大的候選區域,若候選區域的PSR大於跟蹤時的PSR閾值,則可以認爲原先跟蹤的目標區域已經重新出現。
Anti-deformation
KCF略優於DSST。
- 問題:
- 可以通過調整核函數的參數,提高Anti-deformation的能力,但是會造成跟蹤到錯誤的目標,通過Colorname Distance解決?
Scale Estimation
KCF只能實現位置追蹤,不能估計尺度變化,目前有兩種解決方案:
- 使用DSST Scale Estimator(Danelljan, Martin, et al. “Accurate scale estimation for robust visual tracking.” British Machine Vision Conference, Nottingham, 2014.)。
- 構建一個三層的金字塔,分別是scale變大、不變、變小,和tracking模板做相關,取最大的Response峯值(或PSR)對應的scale。
後者在scale快速變化時會出現斜率過載,但速度快於DSST Scale Estimator (33 scale proposals)。
- 問題:
- 更好的Scale估計方法?