Tracking算法:Discriminative Correlation Filter (DCF)
2016-10-10 14:30
337 查看
基本框架
Minimum Output Sum of Squared Error Filter (MOSSE)
t个目标区域样本分别为f1,f2,⋯,ft,通过滤波器ht,期望输出gi(通常为二维高斯函数,峰值位于目标区域中心),最小化均方误差:对Ht求导,令导数为0,得:
对于t+1帧,假设其在第t帧的目标区域内提取得到特征图z,那么计算ht与z的相关值
y的最大值的位置即被认为是t+1帧中目标区域的中心点.
我们保持目标区域尺寸不变,将其中心点进行移动相应位置,就得到了在新帧中的目标区域。对该区域进行特征提取,然后加入到训练集中对模型进行更新得到ht+1后,即可进行下一帧
中的目标检测了。
在实际的tracking过程中,一般使用如下方法来更新模型:
其中η为学习率。
缺点
只使用了灰度作为特征,模型所使用的特征维数太低,难以很好地反映目标的特性。
只估算了目标区域中心点在帧间的平移运动,而没有考虑目标在运动过程中反映在画面上的尺度变化,在目标尺度发生改变时难以适应。
Discriminative Scale Space Tracking Filter (DSST)
对MOSSE的改进:使用fHoG替代灰度(通常fHoG为31dims,而DSST实际使用28dims)
考虑目标尺度变化
不考虑尺度变化
设特征维数为d,则特征图可记作fl,l=1,2,⋯,d。滤波器应和特征图匹配,误差函数:引入λ项是为了控制滤波器频域参数求解过程中的除0,另一方面也可以控制滤波器参数变化范围,λ越小,滤波器参数变化范围越大。
对上式做傅里叶变换,求导,令导数为0,得:
在实际操作中,可以用下式更新模型:
新帧预测:
考虑尺度变化
滤波器和特征图由d×M×N改为d×M×N×S,S = num of scales,即构造金字塔。这导致复杂度增大为O(dMNS×logMNS)。改进思路,两组滤波器模板:
d个大小为M×N的二维位置滤波器
d×M×N个大小为S的一维尺度滤波器
位置滤波器的训练方法同前,而尺度滤波器则是在确定了目标区域中心后,对于尺度因子s,提取出其对应区域的d个M×N的二维矩阵后,将其拉成一条向量,作为尺度因子s下的d×M×N维特征,构成尺度滤波器。
完整算法
估算位置
在帧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
复杂度O(dMN×logMN+dMNS×logS)
缺点
难以适应大幅度形变、遮挡等
循环卷积边缘效应
SRDCF对此做出了改进。
Spatially Regularized Discriminative Correlation Filter (SRDCF)
将滤波器模板参数主要集中在一个搜索区域中的目标区域(即中心附近),在目标区域以外的背景区域处滤波器模板参数应尽可能地小或者为0(示意图如下)。定义新的误差函数形式:
其中w是我们指定的权重函数,由于我们希望hlt在目标区域尽可能大,在其他搜索区域尽可能小,因此w的取值应该在目标区域尽可能小,而在其他搜索区域尽可能大,如下图:
一般可取:
对误差函数做傅里叶变换(对于某个变量a,a^表示a的傅里叶变换):
经过一系列变换:
其中,对于某个变量a,a⃗ 表示a向量化的结果。向量化的步骤是:
设a原本为M×N的二维矩阵,经过傅里叶变换得到a^
a^的每一列被依次连接起来,形成一个MN×1维的列向量a⃗
特别地:
f^向量化后,填充在一个MN×MN矩阵的对角线上,构成对角阵D(f^)
w^向量化后,转置填充在矩阵C(w^)的第一行,接下来的每一行是前一行向右循环移动1位的结果
(To be continued…)
相关文章推荐
- 【追踪算法】Discriminative Correlation Filter (DCF)
- Object Tracking Paper(6): MCPF-- Multi-task Correlation Particle Filter for Robust Object Tracking
- Correlation Filter Object Tracking入门简介
- Correlation Filter in Visual Tracking系列一
- Object Tracking Paper(7):ACFN--Attentional Correlation Filter Network for Adaptive Visual Tracking
- Correlation Filter in Visual Tracking系列一:Visual Object Tracking using Adaptive Correlation Filters 论
- 转载——correlation filter tracking,
- Correlation Filter in Visual Tracking系列二:Fast Visual Tracking via Dense Spatio-Temporal Context Lear
- 目标跟踪之CVPR_2017_Attentional Correlation Filter Network for Adaptive Visual Tracking
- <<High-Speed Tracking with Kernelized Correlation Filters>> KCF(核化相关滤波)跟踪算法学习笔记
- 基于粒子滤波的跟踪算法 Particle Filter Object Tracking
- Correlation Filter in Visual Tracking
- Correlation Filter in Visual Tracking系列一:Visual Object Tracking using Adaptive Correlation Filters 论文笔记
- Correlation Filter in Visual Tracking系列二:Fast Visual Tracking via Dense Spatio-Temporal Context Lear
- <<High-Speed Tracking with Kernelized Correlation Filters>> KCF(核化相关滤波)跟踪算法学习笔记
- Correlation Filter in Visual Tracking系列一:Visual Object Tracking using Adaptive Correlation Filters 论
- [CVPR2017]CFNet_End-to-end representation learning for Correlation Filter based tracking
- correlation filter tracking
- Correlation Filter in Visual Tracking系列二:Fast Visual Tracking via Dense Spatio-Temporal Context Lear
- Correlation Filter Object Tracking入门简介