码迷,mamicode.com
首页 > 其他好文 > 详细

DCF_tracking

时间:2016-05-12 15:10:07      阅读:3892      评论:0      收藏:0      [点我收藏+]

标签:

上次介绍了SRDCF算法,发展历史轨迹为CSK=>>KCF/DCF/CN.鄙人首先介绍最基本的CSK算法,其实在上一篇已经提过,但是原理,思路讲的不清晰,这次争取把思路讲清楚。

CSK:[paper:Exploiting the Circulant Structure of Tracking-by-detection with Kernels(作者和KCF/DCF同一个作者)]

一,文章特点:

    1. 输入:整个候选search区域的raw pixel(作为特征,并不是每个候选框),label(y_i),label为符合Gauss分布的连续取值

    2. 目的:训练一个分类器,学习分类器的权重W。

    3. 求解分类器的权重W,探究了subimage_window和circular struct以及kernel的关系,利用这个关系引入kernel Trick.

    4. 利用cirlular matrix和来求解分类器的权重,利用FFT以及循环矩阵的性质,避免了求W时的矩阵逆运算。

    5. 输出:响应向量,每一个响应值会与循环矩阵对应的location对应,响应值最大的作为目标位置。

缺点:

    1.scale问题。

    2.循环矩阵bounding效应。

    3.输入为raw gray pixel.


二,details

    1. 首先,候选框subimage_window存在很多重合,计算特征导致冗余。所以为了满足一定的速度要求,无法Dense sampling,只能random sampling少许,导致结果不好。

    2. 发现,所有subimage_window可以有候选区域和循环矩阵来表示。设候选区域的特征连接为vector:V,循环矩阵为如下:

技术分享

    all_subimage_window = C(u)V,其实就是一个kernel变换,从候选区域中得到子区域

    其实C(u_i),为(1,1,0. ...)等。

    3. 有了2中的发现,则回到tracking问题,跟踪其实就是训练一个分类器SVM:

技术分享

    其中w为分类器的系数,需要学习。引入kernel trick(get the subimage_window):

技术分享

    如果式(1)中的loss function:L取二范数距离,则求解的结果为:

技术分享

    进而转化为求a_i,而a_i的求解表达式为:

技术分享

    其中,K为循环矩阵,从而选择好对应的核变换函数(线性核,高斯核,多项式核),即可求取a_i,从而求取分类器的权重。利用FFT变换,将卷积变换为频域的dot-product,加快速度。

    4. 核函数的选举有多种,具体看原paper.所以通过这一步一步从而求解出分类器。


KCD/DCF[paper:High-Speed Tracking with Kernelized Correlation Filters],和CSK是同一个作者

一,在CSK的基础上解决了如下几个问题:

    1.输入为multi-channels(可以是彩色,可以是Hog),并定义了multi-channel特征的连接方法。

    2. 采用不同函数,Gauss核函数,paper叫KCF,采用linear kernel时,paper取名叫DCF,其中DCF由于采用的linear-kernel,所以multi-channel合并时有优势,速度比KCF快,效果差一点点。


二,detail

    1.多通道特征连接,由于卷积在频域是dot-product的求和,所以将不同channels的特征vector连接在一起为一个vector即可。multi-channel特征可以是彩色,也可以时Hog和及其方向的不同channel.如果时Gauss核(KCF)则核函数计算如paper中式(31),如果时线性核(DCF)则根据式(32)计算。paper中分析了速度方面的影响,linear-kernel的DCF更简单,所以速度更快。


CN[paper:Adaptive Color Attributes for Real-Time Visual Tracking]

在CSK的基础上,将输入变为11个颜色空间,具体略


SRDCF见以前的博文

在kcf上解决scale[多尺度搜索]和bounding effect[加入惩罚项]


DeepSRDCF

在SRDCF基础上 用CNN来提取特征[CNN第一层输出作为特征]


DCF_tracking

标签:

原文地址:http://blog.csdn.net/ben_ben_niao/article/details/51364323

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!