论文原创笔记:Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
2017-04-09 20:54
711 查看
最近刚看的一篇文章,看了很多遍,觉得应该记录下来,也方便以后查阅了吧。
源码GitHub - HyeonseobNam/MDNet: Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
https://github.com/HyeonseobNam/MDNet
首先文章标题就提出了本文的主旨,训练一个新的网络Muti-Domain Networks,以下简称MDNet。说一下为什么要训练这样一个网呢,原因有三:1.虽然所有的目标跟踪,目标类别各不相同,但它们之间应给存在某种共性,这就是需要由网络学习提取的东西。说到学习共性特征,首先想到的就是表达能力超强的CNN网,然而事实上,CNN在tracking中用的并不多,主要原因在于训练数据不足(原因我也不知道。。。),目前已经提出的解决方法就是用一个large scale classification dataset来做训练,但是由于分类和追踪的本质区别,效果并不好,文章中的网络还是用的专门用来做visual
tracking的数据集来训练网络;2.目前已提出的大多数跟踪算法都是基于low level和hand crafted features,不能很好的应对光照变化,遮挡,变形的问题;3.目前很多训练好的网络都过大,作者认为,只用来区分目标和背景这两种分类的网络不必那么大。由此,提出了MDNet这种网络,并用它来做视频跟踪。
一.MDNet网络
1.结构
这个网络有5个hidden layers,包括三个卷积层和两个全连接层,其中卷积层与VGG-M中的对应层相同,并且在训练的初始化中直接使用以训练好的VGG-M的参数(在imagenet)。这个网络最大的特点在于它的fc6,这是一个带有K个分支的Domain-specific layers,当训练不同视频时,只有对应的分支被使用,其它分支不起作用,并且这个层带有softmax交叉熵损失函数。网络的输入尺寸为107*107,经过网络后输出一个二维向量,分别表示输入的bounding box的目标与背景的得分概率。
2.训练数据
作者提出这个网是为了在多个视频中提取出共性的特征,文中称为domain-independent information。训练的数据是对于某一视频,从中随机截取若干帧(具体多少没找到)图片,再从每一帧图片上取50个正样本和200个负样本,最终从这全部的正负样本中取32个正样本和96个负样本(利用了hard negative mining)组成一个mini-batch,也就是说每个视频都只训练一个mini-batch。
3.训练过程
利用迭代方法,文中假设一共有K个训练视频,那么就一共做100K次迭代。可以这么理解,每做一次循环,就是fc6从第一个分支到最后一个分支都分别训练一次,一共做100次这样的循环。前三层卷积层直接迁移使用VGG-M训练好的参数,后面的全连接层随机初始化。
经过这种训练,最终确定w1-w5。同时,由于共性已被提取,fc6的分支的作用也已经完成,可以功成身退了。
4.测试
当开始进行测试,原来fc6的那些分支全被取消,而再重新建立一个fc6,w1-w3固定,w4-w6在测试中被微调。
二.利用MDNet在线跟踪
1.网络在线更新
网络的在线更新有两种方法,分别是long-term和short-term更新。其中,长期更新是在固定时间间隔做一次更新,文中介绍是10帧一次;短期更新是每当目标得分低于0.5时就会进行。其中,更新用的是正负样本S+,S-。更新的是参数w4-w6。
2.正负样本的提取
在离线训练网络时:以ground-truth bounding box为准,得分高于0.7的为正样本,低于0.5的为负样本;
在线跟踪时:以estimated target bounding box为准,得分高于0.7的为正样本(50个),低于0.3的为负样本(200个);特别的,第一帧图片给出目标位置,在其周围选取500个正样本,5000个负样本。
3.在线跟踪
给出一个视频,其中选取的第一帧标记好目标位置,其后每新来的一帧图片,都以上一帧图片的目标位置为中心,用(宽,高,尺度)的形式选取256个candidates,记为xi,i=1,2,...,256(i为上角标),再将它们的大小统一为107*107,作为输入输进网络,输出得分概率,选出其中得分概率最高的那个candidate作为目标(estimated target bounding box)
然而,这里得到的x*并不能直接作为结果,还要做一个bounding box regression,以此来提高精确度。
4.其他的一些说明
T s and T l are frame index sets in short-term(τ s = 20) and long-term (τ l = 100) periods, respectively.
5.跟踪算法
三.实验结果
1.OTB
2.VOT2014
四.结论
源码GitHub - HyeonseobNam/MDNet: Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
https://github.com/HyeonseobNam/MDNet
首先文章标题就提出了本文的主旨,训练一个新的网络Muti-Domain Networks,以下简称MDNet。说一下为什么要训练这样一个网呢,原因有三:1.虽然所有的目标跟踪,目标类别各不相同,但它们之间应给存在某种共性,这就是需要由网络学习提取的东西。说到学习共性特征,首先想到的就是表达能力超强的CNN网,然而事实上,CNN在tracking中用的并不多,主要原因在于训练数据不足(原因我也不知道。。。),目前已经提出的解决方法就是用一个large scale classification dataset来做训练,但是由于分类和追踪的本质区别,效果并不好,文章中的网络还是用的专门用来做visual
tracking的数据集来训练网络;2.目前已提出的大多数跟踪算法都是基于low level和hand crafted features,不能很好的应对光照变化,遮挡,变形的问题;3.目前很多训练好的网络都过大,作者认为,只用来区分目标和背景这两种分类的网络不必那么大。由此,提出了MDNet这种网络,并用它来做视频跟踪。
一.MDNet网络
1.结构
这个网络有5个hidden layers,包括三个卷积层和两个全连接层,其中卷积层与VGG-M中的对应层相同,并且在训练的初始化中直接使用以训练好的VGG-M的参数(在imagenet)。这个网络最大的特点在于它的fc6,这是一个带有K个分支的Domain-specific layers,当训练不同视频时,只有对应的分支被使用,其它分支不起作用,并且这个层带有softmax交叉熵损失函数。网络的输入尺寸为107*107,经过网络后输出一个二维向量,分别表示输入的bounding box的目标与背景的得分概率。
2.训练数据
作者提出这个网是为了在多个视频中提取出共性的特征,文中称为domain-independent information。训练的数据是对于某一视频,从中随机截取若干帧(具体多少没找到)图片,再从每一帧图片上取50个正样本和200个负样本,最终从这全部的正负样本中取32个正样本和96个负样本(利用了hard negative mining)组成一个mini-batch,也就是说每个视频都只训练一个mini-batch。
3.训练过程
利用迭代方法,文中假设一共有K个训练视频,那么就一共做100K次迭代。可以这么理解,每做一次循环,就是fc6从第一个分支到最后一个分支都分别训练一次,一共做100次这样的循环。前三层卷积层直接迁移使用VGG-M训练好的参数,后面的全连接层随机初始化。
经过这种训练,最终确定w1-w5。同时,由于共性已被提取,fc6的分支的作用也已经完成,可以功成身退了。
4.测试
当开始进行测试,原来fc6的那些分支全被取消,而再重新建立一个fc6,w1-w3固定,w4-w6在测试中被微调。
二.利用MDNet在线跟踪
1.网络在线更新
网络的在线更新有两种方法,分别是long-term和short-term更新。其中,长期更新是在固定时间间隔做一次更新,文中介绍是10帧一次;短期更新是每当目标得分低于0.5时就会进行。其中,更新用的是正负样本S+,S-。更新的是参数w4-w6。
2.正负样本的提取
在离线训练网络时:以ground-truth bounding box为准,得分高于0.7的为正样本,低于0.5的为负样本;
在线跟踪时:以estimated target bounding box为准,得分高于0.7的为正样本(50个),低于0.3的为负样本(200个);特别的,第一帧图片给出目标位置,在其周围选取500个正样本,5000个负样本。
3.在线跟踪
给出一个视频,其中选取的第一帧标记好目标位置,其后每新来的一帧图片,都以上一帧图片的目标位置为中心,用(宽,高,尺度)的形式选取256个candidates,记为xi,i=1,2,...,256(i为上角标),再将它们的大小统一为107*107,作为输入输进网络,输出得分概率,选出其中得分概率最高的那个candidate作为目标(estimated target bounding box)
然而,这里得到的x*并不能直接作为结果,还要做一个bounding box regression,以此来提高精确度。
4.其他的一些说明
T s and T l are frame index sets in short-term(τ s = 20) and long-term (τ l = 100) periods, respectively.
5.跟踪算法
三.实验结果
1.OTB
2.VOT2014
四.结论
相关文章推荐
- 论文笔记《Learning Multi-Domain Convolutional Neural Networks for Visual Tracking》
- 论文笔记之:Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
- 论文阅读笔记-learning multi-domain convolutional neural networks for visual tracking
- 深度学习笔记(一):Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
- Learning Multi-Domain Convolutional Neural Networks for Visual Tracking 笔记
- 【计算机视觉】《Learning Multi-Domain Convolutional Neural Networks for Visual Tracking》
- 目标跟踪算法五:MDNet: Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
- 论文笔记之:Spatially Supervised Recurrent Convolutional Neural Networks for Visual Object Tracking
- Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
- earning Multi-Domain Convolutional Neural Networks for Visual Tracking
- 论文笔记 STCT: Sequentially Training Convolutional Networks for Visual Tracking
- 论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning
- 论文笔记 《Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition》
- 深度学习论文笔记-Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
- 论文笔记 Visual Tracking with Fully Convolutional Networks
- [深度学习论文笔记][Semantic Segmentation] Recurrent Convolutional Neural Networks for Scene Labeling
- 论文笔记之Learning Convolutional Neural Networks for Graphs
- 【论文笔记】Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
- Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition--SPP-net论文笔记
- [深度学习论文笔记][Video Classification] Long-term Recurrent Convolutional Networks for Visual Recognition a