萌新的机器学习

计算机视觉-目标追踪

2018-06-11  本文已影响3人  初七123

什么是目标追踪

我们首先看上方给出的3张图片,它们分别是同一个视频的第1,40,80帧。在第1帧给出一个跑步者的边框(bounding-box)之后,后续的第40帧,80帧,bounding-box依然准确圈出了同一个跑步者。以上展示的其实就是目标跟踪(visual object tracking)的过程。目标跟踪(特指单目标跟踪)是指:给出目标在跟踪视频第一帧中的初始状态(如位置,尺寸),自动估计目标物体在后续帧中的状态。

MOSSE相关滤波器

KCF

KCF是一种判别式追踪方法,这类方法一般都是在追踪过程中训练一个目标检测器,使用目标检测器去检测下一帧预测位置是否是目标,然后再使用新检测结果去更新训练集进而更新目标检测器。而在训练目标检测器时一般选取目标区域为正样本,目标的周围区域为负样本,当然越靠近目标的区域为正样本的可能性越大。

回归
设训练样本集

那么其线性回归函数 w是列向量表示权重系数,可通过最小二乘法求解 写成矩阵形式如下 其中 的每一行表示一个向量,y 是列向量,每个元素对应一个样本的标签,于是令导数为0,可求得 因为后面实在傅里叶域内计算,牵涉到复数矩阵,所以我们将结果都统一写成复数域中形式 其中

表示复共轭转置矩阵。

循环矩阵
KCF中所有的训练样本是由目标样本循环位移得到的,向量的循环可有排列矩阵得到,比如

当然对于二维图像的话,可以通过x轴和y轴分别循环移动实现不同位置的移动

举例 所以由一个向量 可以通过不断的乘上排列矩阵得到n个循环移位向量,将这n个向量依序排列到一个矩阵中,就形成了x生成的循环矩阵,表示成

如图所示


循环矩阵傅氏空间对角化
所有的循环矩阵都能够在傅氏空间中使用离散傅里叶矩阵进行对角化

其中X是循环矩阵,x^是原向量x的傅里叶变换,F是傅里叶变换矩阵为常量,上标H表示共轭转置:XH=(X)T
换句话说,X相似于对角阵,X的特征值是x^的元素。

另一方面,如果一个矩阵能够表示成两个傅里叶矩阵夹一个对角阵的乘积形式,则它是一个循环矩阵。其生成向量是对角元素的傅里叶逆变换: 将对角化的循环矩阵代入回归方程中求解得

根据循环矩阵傅氏空间对角化

对上式两边同时傅氏变换得 于是

这样就可以使用向量的点积运算取代矩阵运算,特别是求逆运算,大大提高了计算速度。

核函数
我们希望找到一个非线性映射函数,使映射后的样本在新空间中线性可分,那么在新空间中就可以使用回归来寻找一个分类器

所以这时候得到的权重系数为 w是

行向量张成的空间中的一个向量,所以可以令



上式就变为

该问题称为w的对偶问题

令关于列向量a的导数为0 那么我们令K表示核空间的核矩阵,由核函数得到,那么 于是 若K是循环矩阵,则

快速检测
首先由训练样本和标签训练检测器,其中训练集是由目标区域和由其移位得到的若干样本组成,对应的标签是根据距离越近正样本可能性越大的准则赋值的,然后可以得到

待分类样本集,即待检测样本集,是由预测区域和由其移位得到的样本集合


那么就可以选择 最大的样本作为检测出的新目标区域,由zj判断目标移动的位置。 定义 是测试样本和训练样本间在核空间的核矩阵

于是得到各个测试样本的响应


《KCF目标跟踪方法分析与总结》
https://www.cnblogs.com/YiXiaoZhou/p/5925019.html

上一篇下一篇

猜你喜欢

热点阅读