简述Visual Tracking with Fully Convolutional Networks

来源:互联网 发布:算法第四版目录 编辑:程序博客网 时间:2024/05/22 14:17

Visual Tracking with Fully Convolutional Networks

  • 背景
  • 研究意义
  • 整体结构
  • 算法实现
  • 实验结果

一、背景:
1.现有的跟踪方法多数采用生成或区分模型,并将不同类别的但同时发生的对象分开。
2.它们依赖于低级别的手工特征,这些特征不能捕捉到目标的语义信息,对外观显著变化的物体效果不好,只有有限的区分能力。
3.在处理重大外观变化,姿态变化,严重遮挡和背景混乱方面仍然存在巨大的挑战。
二、研究意义:
1.该算法并不是像以往那样,将CNN作为黑盒模式的特征提取器。
2.而是,在对海量的图像数据进行离线预训练,并对基于VGG网络对ImageNet上的分类任务进行深入研究,发现了三个特点
3.提出了一种基于全卷积网络的视频目标追踪方法
4.发现不同卷积层在描述目标时表现不同。顶层的卷积层更能够体现目标的类别特征,可作为类别检测器。而相对底层的卷积层,带有更多的局部特征信息,能够更好的将相似的事物分辨出来。
5.还发现对于追踪目标,只有一部分神经元是相关的。开发了一种特征图选取方法,去除噪声和不相关的特征图,减少计算冗余,提高跟踪精度。
作者的特征分析是基于16层的VGG网络进行预先训练的ImageNet图像分类任务,它由13个卷积层和3个完整的连接层组成。 我们主要集中在conv4-3层(第10卷积层)和conv5-3层(第13卷积层),他们都会产生512张特征图。
VGG-16结构图

三、算法结构

1、整体结构

第一步,对于给定的target,对VGG网络的conv4-3和conv5-3层执行feature map selection,目的是选出最相关的feature maps,具体原因就是构建一个L1范数的正则化目标函数。
第二步,在conv5-3的feature maps基础上,构造一个通用网络GNet,用来捕捉目标的类别信息
第三步,在conv4-3的feature maps基础上,构造一个特定网络SNet,用来将目标从背景中区分出来。
第四步,利用第一帧图像来初始化GNet和SNet,但是两个网络采用不用的更新方法
第五步, 对于新的一帧图像,感兴趣区域(ROI)集中在上一帧的目标位置,包含目标和背景上下文信息,通过全卷积网络传递。
第六步,GNet和SNet网络各自产生一个前景heat map。于是对下一帧目标位置的预测就基于这两个热图。
第七步,干扰项检测用来决定采用上一步产生的哪一个热图,从而决定最后目标的位置。
2.三个观点

Observation 1
Although the receptive field 1 of CNN feature maps is large, the activated feature maps are sparse and localized. The activated regions are highly correlated to the regions of semantic objects .
观察1:尽管CNN特征图的感受野较大,但激活的特征图是稀疏的和局部的。激活的区域与目标对象的区域高度相关。
意思就是说CNN的feature map来定位目标位置是可行的,这个是基础。
这里写图片描述
如图所示,自左向右分别是输入图像(上),真实的foreground mask(下),图b表示conv4-3层的(与背景干扰有区别的)特征图(上),相关的saliency maps(显著图/着色图)(下);
注:The saliency maps(显著图) (bottom row) present spatial information of the category. saliency maps 表示种类的空间信息;
图c表示conv5-3层(目标和背景有干扰)的特征图(上),相关的saliency maps(下);
从图上可以看出特征图只有少量非0值,这些非0值是位置确定的且与目标区域有关。
也就是说,这些特征图获得了目标的可视化描述。
因此,CNN的特征图可用于确定目标位置。

Observation 2
Many CNN feature maps are noisy or un-related for the task of discriminating a particular target from its background.
观察2:许多特征图对于特定任务而言是不相关的。
这里写图片描述
图3显示了对象区域内所有特征图的激活值的直方图。
注:特征图的激活值被定义为其在目标对象区域中的响应的总和。
如图3所示,横坐标表示特征图的激活值,纵坐标表示特征图数量
所以,大多数特征图在对象区域内具有小值或零值。因此,有很多与目标对象无关的特征图。
这个属性为我们提供了只选择少量跟踪性能比较好的特征图的可能。
在CNN上预先训练的特征可以描述大量的通用对象,因此它们可以用大量的神经元来检测丰富的视觉模式。但是,在跟踪特定目标对象时,应该把重点放在一个小得多的可视化模式子集上,这样可以很好地将目标与背景分开。
所以,我们应该丢弃在目标区域和背景区域都具有高响应的特征图,使得跟踪器不漂移到背景区域。
用ImageNet训练的CNN特征能描述大量的目标,但当跟踪时,应当只关注小部分的目标,只需将目标与背景区分即可,这就要求我们选择好的特征。
对于一个特定的目标来说,并不是所有的特征对于跟踪都是有用的。某些特征图可能会成为噪音。
请看下图:
这里写图片描述
请看下图:自左至右分别为输入图像,真实的目标forground mask图,
使用未经选择的con5-3(上)和conv4-3(下)特征图生成的forground mask,
使用经过选择的con5-3(上)和conv4-3(下)特征图生成的forground mask,
看以看出,如果使用所有的特征图,则很难区分目标对象和背景。
相比之下,通过适当的特征选择,清除与目标表示无关的特征图,剩余的特征图可以更精确地突出目标,减小背景的干扰。
因此作者提出了一个方法来选择特征图,并丢弃与跟踪对象不相关的特征图。

Obervation3:
Different layers encode different types of features. Higher layers capture semantic concepts on object categories, whereas lower layers encode more discrimina-tive features to capture intra class variations.
观察3:不同的图层编码不同类型的特征。 较高层捕获对象类别的语义概念,而较低层编码更多的区分特征来捕获类内变化。
不同层次之间对于目标的不同表现,请看下图:
这里写图片描述
图1中自左至右每一列分别表示:输入图像、目标图像真实的热度图( target heat map)、使用VGG网络的conv5-3和conv4-3层的特征图预测的目标热度图像。
注:Conv5-3 表示VGG网络的第5卷积层的第3个子层对于整体来说是第13层
Conv4-3 表示VGG网络的第4卷积层的第3个子层对于整体来说是第13层
target heat map?
可以看出,同样处理被遮挡的目标,VGG网络的conv5-3比conv4-3层取得更好的效果;
对于同类相似物体,VGG网络的conv4-3比conv5-3层取得更好的效果;
结论:顶层卷积层捕捉更抽象和高层次的语义特征。它们在识别不同类别的物体方面很强大,并且对变形和遮挡非常有效,如图1(a)所示。
低层提供更详细的局部特征,这有助于将目标与分类(例如同一类别中的其他目标)分离成具有类似外观的特征,如图1(b)所示。
因此,作者建议在目标追踪过程中自动切换两层的使用。
这里写图片描述
图4.第一行和第三行是输入图像。 第二行和第四行是使用conv5-3特征图重构的前景蒙板。
可以看出,在con5-3层特征图能够对于人类以及在被遮挡的情况下和嘈杂的背景下不断旋转的摩托车,都能够识别出。
但是,对于类内的识别却不如con4-3效果更好,这个可以在前面的图像看出来。
为了能够更好证明这一现象,做了以下实验:
实验1是分类面部和非面部。实验2是分类人脸标识:的准确率。
这里写图片描述
3.三个贡献
1)We analyze CNN features learned from the large-scale image classification task and find important properties for online tracking. It facilitates further understanding of CNN features and helps to design effective CNN-based trackers.
1)分析了从大规模图像分类中学到的CNN特征,找出适合于visual tracking的一些属性。也就是不同的computer vision tasks需要 不同的特征。
如何选择特征图?见3.1
2)We propose a new tracking method which jointly con-siders two convolutional layers of different levels so that they complement each other in handling drastic appearancechange and distinguishing target object from its similar dis-tracters. This design significantly mitigate drifts.
2)作者提出了一种新的tracking的方法,同时考虑两个不同卷积层的特征输出,使他们相互补充来处理剧烈的外观变化和区分目标本身。
SNet&GNet网络结构?见3.2
3)We develop a principled method which automatically selects discriminative feature maps and discards noisy or unrelated ones, further improving tracking accuracy.
3)设计了一种方法来自动选择区分性的feature maps,同时忽略掉另外一个以及噪声。
如何实现干扰项决策?见3.3
3.1 特征图的选择?
特征图选择是基于 target heat map regression model,作者称之为:sel-CNN,这个模型,是选择conv5-3和con4-3作为输入预测目标的热度图M,用最小平方所示函数来训练参数:
这里写图片描述
SI是影响力函数,然后将所有的特征图根据,即特征图对目标图像的影响力,排序。然后根据排序选择前 K个特征图。
3.2 SNet&GNet网络?
结构:两个网络使用了同样的结构,
第一层卷积:9*9的卷积核,输出36张特征图,作为下一层的输入。
第二层卷积:5*5的卷积核,输出输入图像的目标热度图。
GNet和SNet都是利用第一帧图像进行初始化,但是两个网络采用不用的更新方法。
而,对于新的一帧图像,感兴趣区域(ROI)集中在上一帧的目标位置,包含目标和背景上下文信息,通过全卷积网络传递。
因此,GNet和SNet网络各自产生一个前景heat map。那么对下一帧目标位置的预测就基于这两个热图。
3.3干扰项检测?
这里写图片描述
分子是背景区域,分母是目标去区域。
当Pd 小于阈值(tresh = 0.2)时,前景区域前景区域越接近目标区域,表明没有与目标同类的干扰事物,则选用GNet产生的目标预测图作为最终结果。
否则,则认为有与目标同类的事物的干扰,选用SNet产生的目标预测图作为最终结果。
这里写图片描述
这里写图片描述
实验说明:
为了证明FCNT比以往的追踪算法具有更好的性能,实验中用目前比较好的9种追踪算法,在11种问题的处理上对成功率做出比较:
(1)总体来说FCNT比之前的跟踪算法效果更好;
(2)其中:FCNTg和FCNTs表示只用GNet或者SNet网络来实现目标跟踪
可以看出,具有复合性质的FCNT比单纯的FCNTg和FCNTs效果要好。
说明,利用VGG网络不同卷积层能够提取不同的语义特征这一属性,能够提高跟踪的成功率。
(3)FCNTk表示,只是用固定值来筛选从VGG网络输出的特征图,其中,k=512表示没有经过筛选的特征图,可以看出经过sel-CNN模型筛选过的特征图,用来完成视频追踪任务具有更高的准确率。
缺点:
在Table2 中可以看到,在低分辨率(LR)的情况下:FCNT具有较高的失败率,
是因为,VGG网络是利用高分辨率的图片进行预训练的
——————————————————————————————
参考文献:
1.http://blog.csdn.net/carrierlxksuper/article/details/48918297
2.https://www.cnblogs.com/573177885qq/p/5343705.html
3.http://blog.csdn.net/u012905422/article/details/52434213
4.Lijun Wang, Wanli Ouyang, Wanli Ouyang, Xiaogang Wang, and Huchuan Lu. “STCT: Sequentially Training Convolutional Networks for Visual Tracking”, In Proc. CVPR 2016.

阅读全文
1 0
原创粉丝点击