您的位置:首页 > 大数据 > 人工智能

论文笔记《Learning Multi-Domain Convolutional Neural Networks for Visual Tracking》

2016-06-06 11:10 429 查看
转载于:http://backnode.github.io/pages/2015/11/02/CNN-for-tracking.html

版权归原作者所有


论文笔记《Learning
Multi-Domain Convolutional Neural Networks for Visual Tracking》


0. 摘要

基于CNN的一个跟踪算法,达到了state-of-art水平,意味着深度学习又占领了一个山头。本文中使用的网络由共享层(shared layers)和许多特定目标分支层组成。每一个分支层对应一个二分类的任务:确定输入样本是不是该分支对应的跟踪目标。当在一个新的图像序列中跟踪一个目标时,用一个新的二分类层连接共享层,作为新的跟踪网络,并实时在线微调。这个网络取名MDNet,具体细节看下文。


1. Multi-Domain Network (MDNet)


1.1 网络结构

相比于AlexNet和VGG-Nets,作者使用了一个相对较小的网络来做跟踪,并解释了理由:

跟踪问题本质上只是个二分类的任务,对模型复杂度要求相对更低。

随着网络越来越深,空间信息越来越稀释,所以:对于图像中精准的目标定位,CNN并不是那么有效。

在跟踪任务中通常目标较小,所以输入大小(input size)也就小,网络结构自然也就更浅。

跟踪通常是一个实时任务,小网络显然更有效率。

下图即MDNet网络结构,由共享层和K个特定目标分支层组成,黄色和蓝色的bounding boxes分别对应每个特定分支层的正样本和负样本。




1.2 Learning Algorithm

SGD迭代,每一次迭代中只涉及一个特定类别。在第i次迭代中,mini-batch中只包含来自第(i mod K)个序列的样本,特定目标分支网络中也只激活第(i mod K)个分支。

通过这个学习过程,类别无关的信息就被学习到并保存在共享层中,这些信息是非常有用的泛化特征表示。


2. Online Tracking using MDNet

完成上述训练过程之后,在测试阶段中用一个新的分支层代替训练阶段的K个分支层连接共享层。测试的时候实时微调共享层和分支层。


2.1 Tracking Control and Network Update

为了兼顾跟踪的鲁棒性和自适应性,采用两种策略更新模型参数:long-term和short-term。

long-term策略:定期微调,使用一段时间内收集到的正样本。

short-term策略:当检测到可能有跟踪失败的情况时执行,使用短期内收集到的正样本。

两种策略中都使用短期内检测到的新鲜负样本,因为旧的负样本对于当前帧通常是多余、不相关的。 为了确定每一帧中目标的状态,在上一帧目标的位置附近sample N个候选目标,用网络模型对这N个候选目标估计,取得分最高的为最佳目标。


2.2 Hard Minibatch Mining

在训练阶段的每一次迭代中,一个mini-batch包含n个正样本和p个困难负样本。如何选择困难负样本?用模型测试M(M >> p)个负样本,取top p个困难负样本。


2.3 Bounding Box Regression

根据给定的第一帧,训练一个线性回归模型(使用目标附近的样本的conv3特征)。在接下来的序列帧中,使用训练好的回归模型在估计好的可靠的候选目标中调整目标位置。

转载请注明出处:BackNode
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tracking CNN