非深度特征CF目标跟踪算法发展(从底部到顶部的顺序)

今年还没有更新博客,不能犯懒,之前整理的东西还是要及时放上来,以便之后查阅。

相关资料:

@H Hakase维护的相关滤波类资源

github:https://github.com/HakaseH/TBCF#scale

②@Qiang Wang维护的资源benchmark_results:大量顶级方法在OTB库上的性能对比,各种论文代码应有尽有,大神自己C++实现并开源的CSK, KCF和DAT

github:https://github.com/foolwood/benchmark_results

知乎专栏:https://zhuanlan.zhihu.com/visual-tracking


ECO(CVPR2017)

特征降维
分类训练样本,使其更加多样化

不再每帧更新(固定间隔更新)

题目:ECO: Efficient Convolution Operators for Tracking

介绍

      ECO在特征提取上做了简化。用了原来特征的子集,从D维的特征中选了其中的C维。C-COT是每个维度的特征对应一个滤波器,D维的特征就有D个滤波器,其实很多滤波器的贡献很小。如图一所示,C-COT的大部分滤波器的能量很小。而ECO只选择其中贡献较多的C个滤波器,C<D,然后每一位特征用这C个滤波器的线性组合来表示。


      ECO简化了训练集。下面一行是传统的训练集,每更新一帧就加一个进来,那么连续的数帧后训练集里面的样本都是高度相似的,即容易对最近的数帧样本过拟合。上面一行是ECO的做法,ECO用了高斯混合模型(GMM)来生成不同的component,每一个component基本就对应一组比较相似的样本,不同的component之间有较大的差异性。这样就使得训练集具有了多样性。


      设置每隔Ns帧更新一次模型,但样本库的更新是每一帧都要做的。模型更新频率降低,节约了时间,并且可以避免模型的漂移问题。

结果

      用传统特征HOG+CN的版本速度有60+FPS,用CNN+HOG+CN的速度有8FPS。




CSR-DCF(CVPR2017)

抑制背景信息

题目:Discriminative Correlation Filter with Channel and Spatial Reliability

介绍

      由于CF算法引入了循环矩阵,导致滤波器的训练数据并不真实,而且,当前的相关滤波算法,只能支持矩形目标,与真实世界不符。所以作者利用图像分割方法产生适应能力更好的蒙版(mask)。用先验概率图与似然概率图进行的某种图像卷积而形成的滤波过程,最终实现了对不规则形状的物体的自适应。没有深度特征但加入了颜色直方图,还考虑了边界效应,在VOT上超过C-COT,速度勉强实时13fps。

      对C-COT的滤波器加了一个权重矩阵,并对每个通道增加了权重。

      用空间置信图来调整滤波器,决定在学习滤波器参数的过程中,哪些像素应该被忽略。效果是:学习到滤波器有响应的区域与空间置信图的相应区域相同,如图。


      总结:直接用一个空间置信图使最后学习到的滤波器参数只是集中在置信分数高的地方,其他区域几乎为0。(w相当于权重,把非目标区域直接略过了),这样的话,搜索区域可以任意大,也不影响。

结果


CF+CA(CVPR2017 [Oral]

上下文感知相关过滤器

题目:Context-Aware Correlation Filter Tracking


介绍

      这篇论文是对基于相关滤波的算法进行的框架上的改进,所有用相关滤波的算法都可以套用。

      经过循环移动的产生的样本和真实样本是不一样。为了不让跟踪结果出现漂移的意外情况,一般的算法的搜索范围在上一帧目标的2倍左右的大小,能利用的背景信息很少,另外在加了cosine窗之后,背景的信息再次被减少了。这里就是作者要解决的问题。基于CF的跟踪算法通常只有有限的背景信息,对快速运动,遮挡等的跟踪效果会受限制,如何能够合理地增加背景信息,又不带来负面的影响呢?作者增加了上下左右四块context之后,在目标有了明显的旋转变化后,依旧跟的很好,从他们的response map来看,加context之后的相应图的干扰也有较少,判别力更强。

      如下图所示,左边是传统的基于CF的算法,右边是作者提出的context-aware CF(本文简称为CA-CF)的算法。

结果

     在所有的实验中,作者定义的context是在目标周围上下左右四个块,文章说当context块的数量再增加,对效果的改进很小,但是对速度的影响很大。使用的几个baseline如下:


     还与一些其他非深度学习算法进行了比较:


LMCF(CVPR2017)

提出了多峰检测和高置信度更新

题目:Large Margin Object Tracking with Circulant Feature Maps

介绍

      结构化 SVM 作为分类器,有着强大的判别能力,并引入了相关滤波,通过循环采样增加了训练样本的数量同时进行加速。利用多峰检测避免了相似物体和背景干扰。针对模型更新环节,提出了简单有效的模型更新策略,大大减少了模型漂移的情况,同时减少了模型更新的次数,达到了再次加速的效果。不依赖于具体特征,可以根据实际情况使用传统特征或者深度特征。

结果



C-COT(ECCV2016

连续空间域的卷积操作

题目:Beyond Correlation Filters: Learning Continuous Convolution Operators for Visual Tracking


介绍

      单个分辨率的输出结果存在扰动,可能是由于目标尺度变化引起的,如下图。

     所以要融合多个分辨率的特征图。

     C-COT使用深度神经网络VGG-net提取特征,通过立方插值,将不同分辨率的特征图插值到连续空间域,再应用Hessian矩阵可以求得亚像素精度的目标位置(就和SURF、SIFT里面获取亚像素精度特征点的思想类似)。确定插值方程之后,还解决了在连续空间域进行训练的问题。

      最左边的是选取的特征,C-COT使用VGG-Net来提取特征,作者使用了原始的彩色图像(如果原图是灰度,就复制三个通道成为彩色)和两个卷积层的输出通道作为特征。其中分别使用了五个分辨率(代码中是0.96,0.98,1.00,1.02,1.04五种缩放倍率)的图像进行特征提取,最终得到了下图中的数个通道的特征图。第二列,就是训练得到的连续卷积操作滤波器,每个通道对应一个滤波器,原始图像是彩色,有三个通道,对应了三个滤波器,使用这些滤波器对得到的特征图进行卷积操作就得到了第三列的响应图。将第三列的响应图进行加权平均,就得到了第四列的结果,响应图极大值位置就是预测的目标位置。

结果


Staple(CVPR2016)

hog特征和颜色直方图特征的结合

题目:Staple: Complementary Learners For Real-time Tracking Tracking

介绍

     这篇论文主要从特征结合的角度去优化算法,对于目标检测区域而言,HOG特征是基于cell_size的梯度统计特征,局部鲁棒性较好,但是对全局的形变效果不太好,而颜色直方图特征是不考虑像素的位置的全局特征,这在一定程度上可以减少形变带来的影响,但是又不足以将目标和背景区分开,于是就有了本文特征融合的思路:

  • 将HOG特征和颜色直方图特征进行结合,充分地利用了不同特征的特点去优化算法性能.
  • 在利用特征的时候,并不是将两种特征融合去训练一个模型,而是分别独立地使用不同的模型进行训练,最后通过两种模型的得分进行最后结果的融合(在响应阶段融合)。

    可以看成是DSST算法和DAT(非相关滤波)算法的结合,它将滤波响应图和概率图以一定的比例结合,根据结合后的得分图来定位目标。Staple速度上能达到80fps满足实时性的要求,在准确度上和SRDCF相近。


结果


SRDCF(ICCV2015)

通过空间正则化减小由循环移位造成的boundary effects

题目:Learning spatially regularized correlation filters for visual tracking

介绍

     主要解决的问题是DCF算法的boundary effects(由循环矩阵导致的)。

     在loss function中引入惩罚项,期望抑制离中心较远的特征的影响。

     边界效应发生在原始样本目标中心循环移位到边缘附近时,所以越是靠近边缘区域,正则化系数越大,惩罚并抑制这里的滤波器系数,目的是减小边界附近样本的影响。(边界效应:训练阶段,目标中心移动到边缘附近,此时学习到的样本为不合理的样本,在检测阶段,当目标移动到边界附近,此时的目标和训练时使用的负样本是比较接近的,但是此时应当把此作为整样本来使用检测到目标,但是实际算法中不是这样,所以会导致跟踪失败。)还有一点,余弦窗是加在原始图像块上面,之后再进行移位产生样本集,对模板进行训练;而本文的空域正则化则是加在样本集中每个移位样本上的。

      总结:在目标函数中加入一个权重矩阵w,使得学习到的滤波器在背景区域的参数很小,解决了DCF在非目标区域也有响应的缺点(w是中间小边缘大)。

结果


LCT(CVPR2015)

长时跟踪

题目:Long-term correlation tracking

介绍

      LCT在DSST一个平移相关滤波Rc和一个尺度相关滤波的基础上,又加入第三个负责检测目标置信度的相关滤波Rt,检测模块Online Detector是TLD中所用的随机蔟分类器(random fern),在代码中改为SVM。第三个相关滤波类似MOSSE不加padding,而且特征也不加cosine窗,放在平移检测之后。准确度相对于之前的算法大大提高,但是由于每帧都训练随机蕨分类器导致速度过慢。

结果


MUSTer(CVPR2015)

在进行目标跟踪时,使用一种认知心理学的方法的启发式方法。

题目:MUlti-Store Tracker (MUSTer): a Cognitive Psychology InspiredApproach to Object Tracking

介绍

     详细讲解见我的博客:http://blog.csdn.net/sgfmby1994/article/details/68490499

     本文采用一种认知心理学的方法设计了一种灵活的表示方法以适应在跟踪过程中目标外观的变化。受著名的Atkinson-Shiffrin Memory Model的启发,提出了MUSTer,一种可以以长时记忆和短时记忆处理目标记忆的方法。在短时跟踪时,使用一种强有力的ICF的方法用于短期存储。在集成的长期模块,使用的是关键点匹配跟踪和RANSAC估计,能够把长时记忆给集成起来,并且可以为输出控制提供额外的信息。存储的目的是recover from tracking failures。

     ASMM提出记忆分为3个独立的阶段:sensory memory, short-term memory and long-term memory.长时记忆是需要长期存储的。当外界环境是连续且稳定的,短期存储运作is fast,并且可以产生immediate responses.然而,模型在输入的时候遇到一个sudden change的话,长期存储的那部分信息就被唤醒,做一些检索的事情,目的是帮助输出更加稳定。这一操作可以使得人们更好的对周围变化的环境做出反应。


     可以说有的跟踪器在短时跟踪时效果好,有的跟踪器在长时跟踪时效果好。换句话说,一些跟踪器可以看作short-term systems,而另一些跟踪器可以看作是long-term systems。ASMM的作用就是使得这两类跟踪器合作,这样就推动着作者设计a tracker that integrates a short-and long-term system to boost tracking performance.(MULti-Store)

     一种集成CF(KCF和DSST,用于translation estimation and scale estimation)用于处理短时记忆,并且依赖于时空一致性,进行短时跟踪。In addition,整合了一种基于关键点匹配跟踪和RANSAC估计的补充成分,使用长期存储的关键点特征数据库发生作用,并且控制最后的输出和短时记忆的状态。为了维持合理的关键点特征数据库的大小,作者采用了遗忘曲线来进行建模,从而保存了有用的特征。

结果




SAMF(ECCVw2014)

CN+HOG特征 尺度估计

题目:A Scale Adaptive Kernel Correlation Filter Tracker with Feature Integration

介绍

      在KCF的基础上将CN特征和HOG特征串联,并且加入尺度估计,共有7种尺度变换,它与DSST尺度估计的主要区别就是,它将尺度估计和位置估计放在一起用于相关运算,取得最大值的点对应的图像即是位置最佳也是尺度最佳,而DDST是将位置估计和尺度估计分开进行,先求最佳的位置,再在此基础上求最佳的尺度。SAMF的另一个特点是对遮挡具有一定的抵抗能力,这说明好的特征才是目标跟踪的关键,也从侧面反映了目标跟踪的本质还是检测问题。

结果




DSST(CVPR 2014,TPAMI 2014)

在MOSSE的基础上扩展了尺度滤波器(Scale Filter),fDSST通过降维的方式进行加速计算

题目:Adaptive Color Attributes for Real-Time Visual Tracking

介绍

      基于MOSSE提出来的,主要针对的是尺度变化问题(增加了一个 尺度 Correlation Filter),通过两个 Filter 分别跟踪 位置变化(translation)和尺度变化(scale estimation),Translation Filter 专门用于确定新的目标位置,Scale Filter 用来进行尺度估计。

结果

VOT2014的冠军:



CN(CVPR 2014)

在CSK的基础上扩展了多通道颜色的Color Names

题目:Adaptive Color Attributes for Real-time Visual Tracking

介绍

      提取了一种新的特征---ColorNaming。

      CN其实是一种颜色命名方式,与RGB、HSV同属一类,CN的文章中的研究表明,CN空间的效果比其他空间都要好,因而使用了CN颜色空间对CSK进行颜色扩展。CN的拓展思路是先将RGB空间的图像映射到CN空间(CN空间是11通道,分别是black , blue , brown , grey , green , orange , pink , purple , red , white , yellow)。为降低运算,CN的论文中提出使用PCA降维。CN的11个通道的颜色并非均有意义,其中能代表主要颜色的可能只有2维,因而使用PCA降唯,11个通道通过降维矩阵降至2维,其运算量也能提高不少(100 FPS)。

结果


KCF/DCF(ECCV 2012, TPAMI 2015)

在CSK的基础上扩展了多通道梯度的HOG特征

题目:High-speed tracking with kernelized correlation filters

介绍

      和CSK是同一个作者,都是Henriques。

      CSK遗留了输入为灰度图片和循环矩阵产生的边际效应等问题,KCF、DCF算法在多通道特征以及核方法上做了优化。

      CSK的输入的是单通道的灰度图像,本篇论文中输入的为多通道特征图像,特征图像可以为彩色特征也可以是Hog特征,由于卷积在频域是点乘求和,所以将不同通道的特征向量连接在一起成为一个特征向量即可。

      KCF可以说是对CSK的完善,论文中对岭回归,循环矩阵、核技巧、快速检测等有着坚实的理论基础和完整的公式推导。KCF采用的HOG特征,代码中用的是fHOG,将单通道转换成了多通道,核函数有三种高斯核、线性核和多项式核,高斯核的精确度最高,线性核略低于高斯核,但速度上远高于高斯核。

      目标:

结果


CSK(ECCV 2012)

在MOSSE的基础上扩展了密集采样(加padding)和kernel-trick

题目:Circulant Structure of Tracking-by-detection with Kernels

介绍

      在跟踪算法当中最主要的部分是分类器和特征,CSK最大亮点就是提出了利用循环移位的方法进行稠密采样并结合FFT快速的进行分类器的训练。

      CSK(2012)在MOSSE的基础上引入了循环矩阵和核的概念,KCF的原型,但它用的是灰度特征,速度上320fps,精度上比MOSSE大大的提升,它主要是针对传统算法中采用稀疏采样造成样本冗余的问题提出的解决方案,使用了循环结构进行相邻帧的相关性检测。所谓的循环结构,其实质是两帧在频域上进行点乘操作,即两帧在时域上做卷积。在以前的运动跟踪,相关性检测都是使用滑窗法完成的,若窗的滑动步长为1,即可看作是两帧之间做卷积。但在时域上做卷积的运算量是非常惊人的,而在频域上做点乘,运算量则小得多,因而CSK使用的循环结构在频域上做分析,则能很好地提速。从此循环矩阵和核技巧在相关滤波的目标跟踪领域大放异彩。

      看下速度优势:

结果


MOSSE(CVPR 2010)

单通道灰度特征的相关滤波

题目:Visual Object Tracking using Adaptive Correlation Filters

介绍

      第一篇将correlation filter(CF)引入object tracking的论文。

      目标:误差最小平方和

      它采用的是灰度特征,速度达到669fps,远远超出了其他算法,准确度一般,论文中还提到峰值旁瓣比(PSR),用来判断目标是否被遮挡或者跟踪失败。

结果


何为相关滤波? 

      ps:这部分内容的详细解释可以移步我的博客http://blog.csdn.net/sgfmby1994/article/details/68490903

     Correlation Filter 最早应用于信号处理,用来描述两个信号之间的相关性,或者说相似性(有点像早期的概率密度),先来看定义:

     对于两个数据 f 和 g,则两个信号的相关性(correlation)为:

      将CF应用在tracking方面最基本的思想就是,设计一个滤波模板,使得该模板与跟踪目标的候选区域做卷积运算,最大输出响应的位置即为当前帧的目标位置。

      其中g表示响应输出,f表示输入图像,h表示滤波模板。

      我们要是想获得比较获得响应输出,只需确定滤波器模板h即可。上式的计算是进行卷积计算,这在计算机中的计算消耗时很大的,因此作者对上式进行快速傅里叶变换(FFT),这样卷积操作经过FFT后就变成了点乘操作,极大的减少了计算量。上式变成如下形式:

      ps:相关滤波的思想:越是相关的两个目标相关值越大,也就是视频帧中与初始化目标越相似,得到的相应也就越大。卷积定理:时域的卷积相当于频域相乘,频域卷积相当于时域相乘。

      为了方便描述,将上式写成如下形式:

      有了上面的式子,那么后面跟踪的任务就是找到H∗.

      在tracking模型中,我们需要通过不断的修正滤波模板,得到每帧最大的输出响应。

     ps:前几篇的介绍会细致一些。

















猜你喜欢

转载自blog.csdn.net/sgfmby1994/article/details/79850001