接上一篇:MOSSE相关滤波跟踪算法(二)
参考博客:
0 基础知识
1. 回顾MOSSE算法:
算法工作流程:
-
手动或者条件给定第一帧目标区域,提取特征,训练相关滤波器;
-
对下一帧输入图像裁剪下预测区域,进行特征提取,做FFT运算,与相关滤波器相乘后将结果做IFFT运算,得到输出的响应点,其中最大响应点为该帧目标的位置;
-
将该帧目标区域加入训练样本中,对相关滤波器进行更新;
-
重复步骤2、3,即可实现目标跟踪。
2. CSK算法:
在MOSSE算法的基础上扩展了密集采样(加Padding)和kernel-trick。密集采样通过循环矩阵似的图片向量位移,在不增加过多内存的基础上增加样本数。使用核技巧可以在低维度空间完成高纬度空间的计算。
创新点:
-
使用线性分类器来求解相关滤波,岭回归的方法;
-
加入了正则项,防止求得的滤波器过拟合;
-
使用核方法是将低维空间转到高维空间,核技巧是寻找一个核函数简便计算高维空间两点的内积,内积的几何意义是一个矢量在另一个矢量上的投影。
-
提出循环矩阵,产生了大量的负样本。
1. KCF算法到来
特点:
KCF在CSK算法的基础上拓展了HOG特征,代替原有的特征能取得更好的效果,对图像进行分块,分成最小单位cell后计算一个cell水平梯度和竖直梯度,并将x个cell组成一个block进行归一化,这样做的好处就是忽略平面内部一些大块非边缘信息,也可以减少光照的影响(像素与像素之之间的向量来作为特征,对全局光照的亮暗鲁棒性强)。
补充:
KCF 和 DCF是在特征上采用了多通道,而两者的不同在于采用了不同核函数,KCF使用的是高斯核,DCF采用的是线性核,所以合并起来有优势,速度比KCF快,但效果差一点。
再优化,DSST算法
主要改进点:
-
引入多特征融合机制,使用的是HOG + CN + 灰度特征;
-
对尺度的改进,通过图像金字塔,增加了尺度滤波器,实现尺度自适应
小结:
从相关滤波整个发展历程来看,KCF是一个跨时代的算法,至今都还是主流;接下来就是代码的研读了。