Kernel Correlation Filter
目标跟踪算法的基本分类
近20年, 涌现出大量的目标跟踪算法, 根据其工作原理, 我们将其分为生成式模型和鉴别式模型两种。
生成式模型
早期的工作主要集中于生成式模型跟踪算法的研究, 如光流法[23-24]、粒子滤波[8]、Meanshift算法[9-10]、Camshift[11]算法等.此类方法首先建立目标模型或者提取目标特征, 在后续帧中进行相似特征搜索.逐步迭代实现目标定位.但是这类方法也存在明显的缺点, 就是图像的背景信息没有得到全面的利用.且目标本身的外观变化有随机性和多样性特点, 因此, 通过单一的数学模型描述待跟踪目标具有很大的局限性.具体表现为在光照变化, 运动模糊, 分辨率低, 目标旋转形变等情况下, 模型的建立会受到巨大的影响, 从而影响跟踪的准确性; 模型的建立没有有效地预测机制, 当出现目标遮挡情况时, 不能够很好地解决.
鉴别式模型
鉴别式模型是指, 将目标模型和背景信息同时考虑在内, 通过对比目标模型和背景信息的差异, 将目标模型提取出来, 从而得到当前帧中的目标位置.文献在对跟踪算法的评估中发现[25], 通过将背景信息引入跟踪模型, 可以很好地实现目标跟踪.因此鉴别式模型具有很大的优势. 2000年以来, 人们逐渐尝试使用经典的机器学习方法训练分类器, 例如MIL[26]、TLD[27]、支持向量机[28]、结构化学习[29]、随机森林[30]、多实例学习[31]、度量学习[32]. 2010年, 文献[12]首次将通信领域的相关滤波方法引入到目标跟踪中.作为鉴别式方法的一种, 相关滤波无论在速度上还是准确率上, 都显示出更优越的性能.然而, 相关滤波器用于目标跟踪是在2014年之后.自2015年以后, 随着深度学习技术的广泛应用, 人们开始将深度学习技术用于目标跟踪.
KCF 是一种鉴别式追踪方法,这类方法一般都是在追踪过程中训练一个目标检测器,使用目标检测器去检测下一帧预测位置是否是目标,然后再使用新检测结果去更新训练集进而更新目标检测器。而在训练目标检测器时一般选取目标区域为正样本,目标的周围区域为负样本,当然越靠近目标的区域为正样本的可能性越大。
KCF 的主要贡献:
使用目标周围区域的循环矩阵采集正负样本,利用脊回归训练目标检测器,并成功的利用循环矩阵在傅里叶空间可对角化的性质将矩阵的运算转化为向量的 Hadamad 积,即元素的点乘,大大降低了运算量,提高了运算速度,使算法满足实时性要求。
将线性空间的脊回归通过核函数映射到非线性空间,在非线性空间通过求解一个对偶问题和某些常见的约束,同样的可以使用循环矩阵傅里叶空间对角化简化计算。
给出了一种将多通道数据融入该算法的途径
参考链接:
目标跟踪算法综述
请多多指教。
文章标题:Kernel Correlation Filter
本文作者:顺强
发布时间:2015-04-18, 23:59:00
原始链接:http://shunqiang.ml/cnn-kcf/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。