【Tracking】【论文阅读随记一】-iccv11-Superpixel Tracking

来源:互联网 发布:excel中一行数据求和 编辑:程序博客网 时间:2024/04/28 16:05

最近一段时间都在阅读有关tracking方面的论文,最近想把阅读过的论文进行整理,如有错误,欢迎指正讨论:-D。这篇文章名字叫做“Superpixel Tracking”,发表在iccv11上,中文可理解为超像素跟踪,下面分为以下几个方面来介绍下论文,并对实验结果进行讨论:

一 背景知识

1.1 超像素

在接触这篇文章之前,对超像素并没有太多了解,既然这篇文章的题目如此突出了Superpixel ,就在网上搜了一下超像素,这里一般是指超像素分割:超像素,即在图像中由一系列位置相邻且颜色、亮度、纹理等特征相似的像素点组成的小区域,这些小区域大多保留了进一步进行图像分割的有效信息,且一般不会破坏图像中物体的边界信息。应用超像素的意义在于:超像素可以把图像分割的足够细碎,从而可以保障每个分割后的图像块都是一块具有独立语义的图像块。

1.2 粒子滤波

粒子滤波在目标跟踪中一直被广泛的应用,开始对粒子滤波也是一头雾水,对于论文中出现的各种概率公式、隐马尔科夫模型、蒙特卡洛、观测模型、运动模型、条件转换概率等都表示不知所云。后来结合本篇论文的代码和网上的资料查找,对这些概念逐渐有了一些自己的理解。用通俗的话来说:粒子滤波(没感觉到跟滤波的联系在哪里)就是用来根据前一帧中的目标位置信息,找出下一帧中最有可能的目标位置(这也是目标跟踪的目的吧==)。一般在当前帧图像中有已给出的目标区域的位置,长度,宽度等信息,将这些信息记为A。在下一帧时,根据给定的方差,以A为中心来生成呈正态分布的N个新粒子,这个新粒子和A(与A信息中的位置,长度,宽度,角度等)很相近,可想象为散落在A的周围的一些点。在前后两帧中的目标不会出现太大差异的前提下,在这些新的N个粒子中,必然有一个粒子所代表的区域信息是该帧中目标最有可能的位置信息。为了找到这个最有可能的粒子,一般计算每个新粒子所代表区域与A所代表区域之间的差异,取差异最小的为最有可能的目标位置。

1.3 仿射变换

在目标跟踪中,仿射变换和粒子滤波似乎是一起玩耍的好基友,一般都是把仿射变换和粒子滤波结合在一起进行目标跟踪的。常用的是六参数的仿射变换模型,包括目标的水平和垂直方向的位移、旋转角度、水平方向的尺寸、高宽比、切变系数。通过这六个参数来描述目标的状态,即t时刻的目标状态可表示为,这个可以作为在上一节粒子滤波中提到的信息A。一般将仿射变换和粒子滤波结合起来使用。

二 主要思路

在Superpixel Tracking文中主要提出了一种对象跟踪器的目标跟踪方法。训练过程和测试过程如下俩图所示:



2.1 对象跟踪器

2.1.1 建立判决性外貌模型

为了构建一个可以表示和区分目标与背景的外貌模型,将图像中的每个超像素设置标签,分别表示属于target或者属于background。

建立模型之前要取前几帧的信息作为训练数据集,论文中是取的前5帧。针对前5帧训练帧,我们定义几个图像区域,其中都是参数,前者的值设为2,后者的值设为1到1.2之间的一个常数。这里第一个区域是指图像中的目标区域(红色区域),其中的参数分别代表该区域的中心点坐标、长度、宽度和矩形角度这五个值。是指以中的中心点为中心,将长宽分别放大两倍后所形成的一个图像区域(绿色区域)。同理,是指将长宽放大倍后形成的同心矩形区域(蓝色区域)。如下图所示:



将图像区域(最大的那个矩形区域)分割为个超像素,并提取这些超像素的特征(文中使用的是HSV颜色特征),将前5帧的超像素集聚合在一起形成特征池并聚类。这样我们就可以得到训练数据:具有不同聚类中心的聚类,每个聚类都有各自的聚类半径、聚类成员(各超像素),且每个聚类都在这前5帧图像中有对应的图像区域。此时,计算每个聚类的两个面积,前者表示该聚类区域与目标区域(黑色区域)重合的面积,后(者表示该聚类区域与图中紫色区域重合的面积。的差值越大,表示该聚类中的超像素成员出现在目标区域(黑色区域)内的概率越大,反之则说明它们出现在目标周围的背景区域的概率越大。文中给出了一个在-1到1之间的置信值来描述这个成员属于背景或前景的程度:

至此,每个聚类都有一个置信值。而构建好的外貌模型包含有四个方面的信息:聚类置信值、聚类中心、聚类半价以及聚类成员。

2.1.2 获得区域置信图

接下来的工作就是获得图像帧的置信图,置信图是由一帧中的所有超像素的置信值得来的,超像素的置信值又是由其所属聚类的置信值和距离权重计算得来的。只有计算区域内的超像素有置信值,其他区域的置信值设为-1。蓝色表示值为-1,红色表示值为1,具体如下图所示:


在跟踪过程中,当新的一帧到来之时(假设该时刻为t时刻),我们对这一帧中取出以上一帧目标中心为中心,以为边长的一个正方形区域,其中S是上一帧中的目标面积,是参数,文中取的是1.5。将该方形区域分割成个超像素,然后为每个超像素计算一个目标/背景置信值。这里超像素的置信值的大小是和该超像素所属聚类的置信值和它到这个聚类中心的距离这两个因素相关的。一般来说,所属聚类的置信值大小表示了这个超像素属于背景或前景的可能性,而超像素到聚类中心的距离越远表示它与这个聚类的相似度越低,也即该聚类的置信值对超像素的影响越小。一般使用如下公式计算超像素的置信值。其中代表的是一个权重,它衡量了第r个超像素到所属聚类中心的距离,是一个归一化项,在实验中设为2。这样就可以得到每一帧的基于超像素的置信图。

2.1.3 对象跟踪器观测模型

引用论文中的一段话,如下:


总得来说,就是在得到置信图后,对每个采样粒子所对应区域的超像素置信值进行求和归一化等操作,统计置信值就是最有可能的能够代表目标区域的采样粒子(置信值范围为1到-1,1代表最有可能属于目标,-1代表最有可能属于背景)。依次类推,找到余下每一帧中的最佳采样粒子,从而得到目标区域。

2.2 帧更新策略

由前5帧所得到的聚类为初始的训练集,后面随着目标的不断变化,最初的聚类必然再不能很好的表达目标,因此需要对聚类训练集进行不断的更新,以适应目标的外观变化。

这里采用的是滑动框跟新策略,可以储存H*U帧的信息,每隔W帧更新一次外观模型(重新聚类一次)。

2.3 遮挡检测策略

对于一个在时刻t的状态来说,置信值的取值有一个范围。其中上限表示对于状态的所有区域内的超像素都属于目标,下限则表示其都属于背景。此处设置一个阈值来检测状态是否发生了严重的遮挡。判断公式为

其中表示已有的H帧中目标估计的平均置信值,表示N个粒子估计中得到的最大的置信值(值越大说明该粒子所代表区域越接近背景),是归一化参数。若左边式子的值过大,则表示两者的置信值相差比较大,即很可能发生了遮挡。此时,直接将前一帧的估计结果作为当前帧的估计结果。并且在更新时,并不删除最前面的一帧信息,反之删除第k帧的信息(如k=8,k<H)。通过这种方式,在长时间的遮挡情况下,跟踪器不会将有用的跟踪信息全部删掉,同时也能一直对遮挡进行学习。将当前帧的所有超像素都看做背景,并将平均值作为当前帧的置信值。

------------------------end--------------------------

参考:

[1]Superpixel Tracking-iccv11

[2]基于中层视觉特征和高层结构信息的互补目标跟踪模型



1 0