最近学习了相关滤波类的跟踪算法(MOSSE,KCF),相比于传统的目标跟踪类算法,相关滤波算法在速度上有很大的提高。KCF算法讲解的资源很多,这里不仔细介绍,主要讲解下几种典型的改进算法,SAMF算法是最早出现的一种改进算法。
KCF跟踪算法出现以后,虽然其跟踪速度和精度有了很大的改进,但是针对其缺点人们逐渐提出了改进的算法。SAMF是ECCV2014的workshop,它的贡献主要有两点:(1)将单一的特征扩展为多个特征;(2)利用尺度池的方法实现目标的自适应跟踪。这篇论文中基本没有什么理论推导,比较好理解。
(1)首先看特征的选择。使用好的特征是实现准确跟踪的基础,最早的MOSSE算法使用的是单一的灰度特征,由于特征的单一,MOSSE算法的处理速度非常快,达到669FPS/S,但其精度很低,不到0.5;随后人们开始使用颜色特征(CN),算法在精度上得到了很大的提升;KCF算法使用的是方向梯度直方图(HOG)特征,将精度提高到了0.7左右(因为在不同的数据集有一定的偏差,没有具体准确的数值),速度也达到了172FPS/S;之后,人们也开始寻找高质量的特征表达,但没有明显的成果。因此研究人员考虑将多个特征融合的方法来提高跟踪的精度,SAMF中作者采用的是HOG+CN+灰度的融合特征。文中的多特征融合就是简单的矢量叠加。其公式如下:
x是传统KCF算法中提取的单独特征,而Xc中是三种特征的混合。算法相当于将三种特征进行简单的矢量叠加。
(2)然后是尺度的改进,也是本文的核心部分。KCF算法使用的是单一的尺度,当目标发生形变遮挡等情况时会导致跟踪精度下降。SAMF算法中引入的是尺度池的方法。尺度池为PoolS={0.985,0.99,0.995,1.0,1.005,1.01,1.015}。它的思想很简单,就是在比较的阶段对候选区域的目标做七个尺度的计算,与上一帧目标进行比较,其响应值最大的作为当前帧中的目标。算法的示意图如下:
由图可见,引入尺度池类的方法可以在小范围内实现尺度自适应跟踪,提高跟踪的精度。
接下来是论文中的实验部分。文中用三种改进算法进行对比,分别是SA(仅加入尺度池)、MF(仅加入多特征融合)、SAMF(完整的算法)。与经典算法KCF、CN、CSK算法进行对比。
论文的结构如下:
Abstract:简要介绍了本文的改进思路以及在最新数据集上的结果。
Introduction:介绍视觉跟踪常见问题;相关滤波方法的提出以及优势;文中提出的两种改进策略;文章的篇章结构。
Related Works:介绍了传统CF类算法的发展过程,MOSSE,CSK,CN,KCF。
The tracker:第一部分介绍了KCF关键公式的推导原理;第二部分提出了多特征融合算法;第三部分提出了尺度自适应方法。
Experiments:介绍了硬件环境以及评估标准,进行实验分析结果比较。
论文下载地址:https://link.springer.com/chapter/10.1007%2F978-3-319-16181-5_18
MATLAB代码下载地址:https://github.com/ihpdep/samf