SiamMask论文阅读: Fast Online Object Tracking and Segmentation: A Unifying Approach

CVPR2019论文
论文:ArXiv
代码:GitHub
作者在知乎上的文章:知乎

在这里插入图片描述

对于视频目标跟踪(VOT)领域的任务,在第一帧给定BBox,获得后续帧中的BBox
对于视频目标分割(VOS)领域的任务,在第一帧给定Mask,获得后续帧中的Mask
那么对于VOT,能否通过分割的结果获得更准确的BBox信息?对于VOS,能不能只通过初始帧的BBox,利用跟踪得到快速的分割Mask?

所以,作者的主要思想是提出一个统一的框架:①对于跟踪领域,提供分割得到更精确的预测;②对于视频分割领域,提出使用box这种低成本的初始化,用tracking来引导分割的快速vos框架。

SiamMask框架

在实现上,SiamMask有两种变种:两分支和三分支变种,baseline分别为对SiamFC和SiamRPN。两分支即为在原始的响应图分支外,再加入mask分支,三分支为在原始的得分图和边界框回归分支外,加入mask分支。
再看框架图:在中间互相关后的响应图中,作者对每个位置上的1x1x256称为RoW(response of a candidate window),想要表达的就是,把这个RoW再通过1x1分支编码为一行向量来表示一个mask,产生预测,采用了deepmask的思想。设置成1x1x(63x63)是为了resize到63x63x1然后直接进行上采样到127x127,再通过设置阈值得到最终mask。
按论文中的意思,每个位置的RoW都会产生一个mask,到底选哪个mask是在推断过程中根据score branch来选择的。
在这里插入图片描述

Backbone

前面的主干网络 f θ f_{\theta } fθ为resnet-50的前4个阶段,这部分网络共享参数,输出接不共享参数的1x1卷积来调整通道, ★ d \bigstar _{d} d为depth-wise互相关,因此得分图的通道数还是256。主干网络结构图如下所示:
在这里插入图片描述

Heads

其中两个变种头部网络的mask分支结构都一样,至于为什么是63x63,作者提到:

设置成63x63x1主要是为了节约计算资源。预测127*127需要1w多的channel。太大了。上采样到127是为了和exemplar一样

其他分支卷积核的设置为了改变通道数,具体作用可详见上面两篇论文。两个变种的卷积具体结构如下:
两分支:
在这里插入图片描述
三分支:
在这里插入图片描述
作者提到,直接这样预测mask的方式得到的精度并不太高,所以提出了如下图所示的Refine模块 U U U来提升分割的精度:在原始的响应图上对每个RoW不采用升维到63x63的方式,而是直接对RoW进行deconv上采样得到mask。
在这里插入图片描述
Refine Module借鉴了SharpMask的思路:
在这里插入图片描述

Loss:

mask分支loss:
在这里插入图片描述
其中 θ \theta θ ϕ \phi ϕ分别是主干网络和mask头网络的权重, y n y_n yn是第n个RoW的标签,取 ± 1 \pm 1 ±1,不考虑标签为-1的。 c n i j c_n^{ij} cnij为真实mask上第ij位置的标签,总共有 w h wh wh个,对应的 m n i j m_n^{ij} mnij就是预测的标签。

总loss:
在这里插入图片描述
其中 λ 1 = 32 , λ 2 = λ 3 = 1 \lambda_1=32,\lambda_2=\lambda_3=1 λ1=32λ2=λ3=1

实验

1. 三种根据mask选包围框的策略对跟踪结果的影响

三种策略见下图,具体描述参见文章
在这里插入图片描述
这块主要是想通过实验说明,包围框的选择策略对结果影响很大。
考虑到速度的影响,最终算法选择的是MBR的策略选择包围框。
在这里插入图片描述

2. 跟踪结果比较

在这里插入图片描述

3. 分割结果比较

主要的亮点是保证精度还可以的情况下,速度达到非常快,而且不需要初始mask,只需要初始帧的一个bounding box即可。
在这里插入图片描述

4. Ablation studies

比较了不同的主干网络,有没有采用refine模块,是否采用axis-aligned bounding等做比较。具体描述细节可参见文章
在这里插入图片描述

结尾

整篇论文其实就是在介绍一个概念,还是开头那句话,这个思想是最核心的,具体的实现只是图个方便,期待后续更加精确而高效的工作提出来不断拓展跟踪的新方向。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SiamMOT是一种基于Siamese网络的多目标跟踪算法,它可以同时跟踪多个目标,并且在速度和准确度方面都有很好的表现。该算法使用了深度学习技术,通过学习目标的特征来进行跟踪,具有很强的鲁棒性和适应性。在实际应用中,SiamMOT已经被广泛应用于视频监控、自动驾驶等领域。 ### 回答2: SiamMOT是指SiamMOT算法,是一种基于SiamRPN++和深度学习的多目标追踪算法。它主要通过在目标检测的基础上,根据目标的视觉特征进行跟踪,实现对多个目标同时进行跟踪的功能。 SiamMOT算法采用Siamese网络结构,该网络结构以两个相同的子网络组成,用于学习目标的特征。子网络通过共享权重,实现对同一个目标的不同视角的特征提取。通过特征提取,SiamMOT能够把同一目标的特征映射到相同的空间中,从而实现目标跟踪。 SiamMOT算法主要包含三个主要的步骤:第一步是目标检测,利用目标检测算法进行目标的初步识别,获取目标的位置和尺寸信息;第二步是特征提取,通过Siamese网络提取目标的特征,将不同视角下的特征映射到相同的空间中;第三步是目标跟踪,根据目标的特征匹配策略,利用目标的运动信息和外观特征进行目标的连续跟踪。 SiamMOT算法具有高效、准确的特点,能够在复杂背景下跟踪多个目标,并且能够实现实时运行。它在视频监控、自动驾驶、行人跟踪等领域有着广泛的应用前景,为目标跟踪研究提供了有效的方法和思路。 ### 回答3: SiamMot是一种基于SiamNet的多目标跟踪算法。SiamNet是一种基于孪生网络的方式,用于目标跟踪任务。在SiamMot中,孪生网络首先用于提取目标的特征向量。这些特征向量能够捕捉到目标的关键信息,例如目标的外观和运动。然后,通过计算特征向量之间的相似度,可以将目标在连续帧中进行匹配。 SiamMot采用了一种离线训练和在线跟踪的方式。在训练阶段,使用大量的视频序列进行训练,以学习目标的特征和运动模式。在跟踪阶段,根据目标在第一帧中的位置,使用SiamNet提取目标的特征向量,并与后续帧中的特征进行匹配。通过计算特征之间的相似度,可以确定目标在连续帧中的位置。 相比传统的多目标跟踪算法,SiamMot具有许多优势。首先,它能够在复杂的场景中实现准确的目标跟踪。其次,SiamMot在目标外观变化和运动模式变化的情况下都具有较好的适应性。此外,SiamMot具有较高的实时性能,能够处理高帧率的视频流。 总之,SiamMot是一种基于SiamNet的多目标跟踪算法,通过提取目标的特征向量,并计算特征之间的相似度,实现准确且稳定的目标跟踪。这种算法在目标追踪领域具有广泛的应用前景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值