MDNet
一、摘要
本论文提出了基于CNN特征表示的目标跟踪算法,这个算法使用大规模的具有标注框的视频来训练CNN从而得到通用的特征表示。算法的网络结构有两部分组成,一部分是共享层,另一部分是多分支的具有个人特点的全连接层,每个分支负责对目标进行二分类。在训练时,我们用不同的视频序列来训练网络从而得到通用的共享层。在追踪一个新目标时,我们结合共享层和新的全连接层。
二、论文的主要工作
- 提出了基于CNN的多域学习模型,该模型能把多个目标独立的信息从目标中分离开。
- 提出的模型能很好地应用到目标跟踪任务上。(这里先理解成该模型提出不是为了解决跟踪任务而是被应用到这个任务上来的)。
- 在两大公开的基准数据集上有突出的表现。
三、Multi-Doamin Network(MDnet)
3.1、网络结构
黄色代表正样本、蓝色代表负样本。
输入为1071073的三通道RGB图,先经过5个隐藏层(3个卷积层conv1-conv3和2个全连接层fc4、fc5),接着是K个分支的全连接层(fc61-fc6k)。这个模型的卷积层比常用的卷积层简单。之所以选用较简单的卷积层,原因有三:
- 相比于其他多分类问题,目标追踪只需要区分目标和背景
- 过深的CNN对目标定位没有过多的帮助,因为图片的空间信息会随着网络变身而变得稀疏
- 目标在图片中相对于背景会显得较小,所以自然而然不用过深的网络
3.2、学习算法
用随机梯度算法(SGD)来更新网络参数,共享层被每个训练数据更新,但每个分支对应的全连接层用其对应的视频序列来迭代更新。
四、使用MDNet在线(Online)跟踪
4.1、Tracking Control and Network Update
在上一帧周围挑选N个候选框 x 1 , . . . , x N x^1,...,x^N x1,...,xN,计算他们的目标概率 f + ( x i ) f^+(x^i) f+(xi)和背景概率 f − ( x i ) f^-(x^i) f−(xi),选择 f + ( x i ) f^+(x^i) f+(xi)的最高的作为目标框,即 x ∗ = a r g m a x ( x i ) f + ( x i ) x^*=argmax_(x^i)f^+(x^i) x∗=argmax(xi)f+(xi)。
4.2、Hard Minibatch Mining
这个处理主要是解决偏移问题(drift problem),之所以会产生这个问题是因为干扰不足也就是负样本不足,造成网络对目标和背景没有很高的辨别能力。 这里告诉我们负样本对于训练也很重要。
可以把Hard Minibatch Mining整合到minibatch训练序列的挑选当中。在每次迭代时,一个minibatch同时包含
M
+
M^+
M+个正样本(目标样本)和
M
h
−
M_h^-
Mh−个负样本(既含有背景又含有目标的前
M
h
−
M_h^-
Mh−个样本),这样负样本因其含有目标所以较难判断为负样本),这样能使模型对目标和背景又更强的识别能力。
下面是使用了Hard Minibatch Mining的效果图:
4.3、Bounding Box Regression
这个边框回归主要是解决模型定位目标不准确的问题,具体可以参考:
五、总结
本论文提出了基于CNN特征表示的视觉跟踪算法,这个算法使用大规模的具有标注框的视频来训练CNN从而得到通用的特征表示。算法的网络结构由两部分组成, 一部分是共享层,另一部分是多分支的具有个人特点的全连接层,每个分支负责对目标进行二分类。在训练时,文章用不同的视频序列来训练网络从而得到通用的共享层。在追踪一个新目标时,我们结合共享层和新的全连接层。