【目标跟踪】KCF高速跟踪详解
来源:互联网 发布:期货 操盘软件 编辑:程序博客网 时间:2024/05/20 06:07
Henriques, João F., et al. “High-speed tracking with kernelized
correlation filters.” Pattern Analysis and Machine Intelligence, IEEE
Transactions on 37.3 (2015): 583-596.
本文的跟踪方法效果甚好,速度奇高,思想和实现均十分简洁。其中利用循环矩阵进行快速计算的方法尤其值得学习。另外,作者在主页上十分慷慨地给出了各种语言的实现代码。
本文详细推导论文中的一系列步骤,包括论文中未能阐明的部分。请务必先参看这篇简介循环矩阵性质的博客。
思想
一般化的跟踪问题可以分解成如下几步:
1. 在
2. 在
3. 响应最强的采样作为本帧位置
循环矩阵表示图像块
在图像中,循环位移操作可以用来近似采样窗口的位移。
训练时,围绕着当前位置进行的一系列位移采样可以用二维分块循环矩阵
这样的
线性回归训练提速
此部分频繁用到了循环矩阵的各类性质,请参看这篇博客。
线性回归的最小二乘方法解为:
根据循环矩阵乘法性质,
根据循环矩阵求逆性质,可以把矩阵求逆转换为特征值求逆。
利用
分号表示用1进行对位相除。
反用对角化性质:
利用循环矩阵卷积性质
由于
论文中,最后这一步推导的分子部分写成
x̂ ∗⊙ŷ ,是错误的。但代码中没有涉及。
线性回归系数
核回归训练提速
不熟悉核方法的同学可以参看这篇博客的简单说明。核回归方法的回归式为:
其中
设核相关矩阵的生成向量是
利用循环矩阵卷积性质
这里
两者都是同一个向量和自身位移结果进行运算。因为所有涉及到的核函数都只和位移的绝对值有关,所以
举例:
x0=[1,2,3,4] ,x1=[4,1,2,3] ,x3=[2,3,4,1] 。使用多项式核κ(x,y)=xTy ,容易验证κ(x0,x1)=κ(x0,x3) 。
对称向量的傅里叶变换为实数,有:
论文中,利用
k 的对称性消除共轭的步骤没有提及。
线性回归系数
核回归检测提速
所有待检测样本和所有训练样本的核相关矩阵为
利用循环矩阵的转置性质性质,
利用循环矩阵的卷积性质:
两边傅里叶变换:
论文中,利用转置消除共轭的步骤没有提及。
所有侯选块的检测响应可以通过向量的傅里叶变换和对位乘法计算得到。
核相关矩阵计算提速
无论训练还是检测,都需要计算核相关矩阵
多项式核
其中
RBF核
其中
由于
其他核
有一些核函数,虽然能保证
多通道
在多通道情况下(例如使用了HOG特征),生成向量
注:非常感谢GX1415926535和大家的帮助,发现原文一处错误。(21)式中不应有转置,应为:
- 【目标跟踪】KCF高速跟踪详解
- 【目标跟踪】KCF高速跟踪详解
- 【目标跟踪】KCF高速跟踪详解
- KCF高速跟踪详解
- KCF高速跟踪详解
- 目标跟踪:KCF
- KCF目标跟踪算法笔记
- KCF目标跟踪算法学习
- KCF目标跟踪算法介绍
- 目标跟踪算法——KCF入门详解
- 目标跟踪算法——KCF入门详解
- 目标跟踪算法——KCF入门详解
- 目标跟踪算法学习笔记之一:KCF
- KCF目标跟踪方法分析与总结
- KCF目标跟踪方法分析与总结
- KCF目标跟踪方法分析与总结
- 目标跟踪:KCF运行流程图(matlab版本)
- KCF目标跟踪方法分析与总结
- 常用正则表达式
- Java 程序员 必备基础知识 温故而知新
- 一个不错的shell 脚本教程 入门级
- 【FFmpeg】Windows下FFmpeg编译
- Java直接控制打印机打印
- 【目标跟踪】KCF高速跟踪详解
- win7设置打开文件夹默认以列表浏览文件
- Scala环境配置以及IDE安装
- 2017浙江省选二试第三天游记
- 【bzoj1084】 [SCOI2005]最大子矩阵
- 查看Windows Management Framework版本
- int main(int argc,char*argv[])
- cocos2dx 关于节点缩放
- Linux之ssh无密码登录