基本框架
Minimum Output Sum of Squared Error Filter (MOSSE)
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對此做出了改進。
Spatially Regularized Discriminative Correlation Filter (SRDCF)
將濾波器模板參數主要集中在一個搜索區域中的目標區域(即中心附近),在目標區域以外的背景區域處濾波器模板參數應儘可能地小或者爲0(示意圖如下)。
定義新的誤差函數形式:
其中
一般可取:
對誤差函數做傅里葉變換(對於某個變量
經過一系列變換:
其中,對於某個變量
- 設
a 原本爲M×N 的二維矩陣,經過傅里葉變換得到a^ a^ 的每一列被依次連接起來,形成一個MN×1 維的列向量a⃗
特別地:
f^ 向量化後,填充在一個MN×MN 矩陣的對角線上,構成對角陣D(f^) w^ 向量化後,轉置填充在矩陣C(w^) 的第一行,接下來的每一行是前一行向右循環移動1位的結果
(To be continued…)