Efficient Video Object Segmentation via Network Modulation《CVPR》

摘要

  • 基于深度学习的方法实现了高精度,但是微调过程效率低并且不能满足现实世界应用的要求。本文提出了一种新方法,该方法使用单个前向传递来使分割模型适应特定对象的外观。 具体地,在给定目标对象的有限视觉和空间信息的情况下,学习称为调制器的第二元神经网络来操纵分割网络的中间层。在保持和其他方法精确度相似下,速度快70倍。

引言

  • 以最小的监督(例如,一个带注释的帧)执行精确的像素级视频分割的能力可以促进大量的应用,诸如用于视频理解的精确对象跟踪,交互式视频编辑,增强现实和基于视频的广告等。当监督仅限于一个带注释的框架时,研究人员将此场景称为一次性学习。近年来,用于视频分割的一次性学习的兴趣不断增加。
  • 大多数这些工作都有类似的两阶段范式:首先,培养一个通用目的完全卷积网络(FCN)用于分割前景对象; 其次,根据视频的第一帧微调这个网络,进行数百次前后迭代,使模型适应特定的视频序列。
  • 为了减轻半监督分割的计算成本,我们提出了一种新方法,使通用分割网络适应单个前馈传递中特定对象实例的外观。通过从被注释对象的图像和对象的空间先验中提取信息,调制器生成一个参数列表,这些参数被注入到分割模型中以进行逐层特征操作。没有一次微调,我们的模型 能够使用来自目标对象的最少提取信息来改变分割网络的行为。 我们将此过程称为网络调制。
  • 我们提出的模型是有效的,仅需要来自调制器的一个前向传播来产生分割模型所需的所有参数以适应特定的对象实例。由空间先验引导的网络调制有助于模型即使存在多个类似实例也能跟踪对象。 整个过程是可区分的,可以使用标准随机梯度descen进行端到端学习。

相关工作

半监督视频分割 :半监督视频对象分割的目的是在整个视频剩余部分跟踪从第一注释帧给出的对象掩码。文献中已经提出了许多方法,包括传播超像素、补丁、对象建议或在双边空间中的方法,并且通常执行基于图形模型的优化以同时考虑多个帧。
低学习的元学习:目前深度学习的成功依赖于通过梯度下降优化从大规模标记数据集中学习的能力。 但是,如果我们希望我们的模型能够学习适应许多环境的许多任务,那么从头开始学习每个设置的每个任务是不可能的。我们的方法与元学习共享相似之处,它学会了用另一个元学习器快速更新分割模型。
网络操纵:之前的几项工作试图结合模块来操纵深度神经网络的行为,或者操纵数据的空间排列[16]或过滤连接[5]。 我们的方法也受到条件批量标准化[8,11,14,26]的强烈推动,其中深度模型的行为由基于指导输入的批量标准化参数操纵.

网络架构图

基于网络调制的视频对象分割

  • 视频对象分割有两个重要提示:视觉外观和空间连续运动。
    Conditional batch normalization:我们的方法受到最近使用条件批量归一化(CBN)的工作的启发,其中每个批量归一化层的规模和偏差参数由第二个控制器网络产生

    Visual and spatial modulation:CBN层是特征图上更一般的缩放和移位操作的特殊情况。 在每个卷积层之后,我们定义一个新的调制层,其中包含由联合训练的视觉和空间调制器生成的参数。 我们设计了两个调制器,使得视觉调制器产生通道方向尺度参数以调整特征图中不同通道的权重,而空间调制器产生元素方向偏置参数以在调制特征之前注入空间。调制层可以表示为:
  • 全卷积主分割网络,视觉调制器网络和空间调制器网络。 视觉调制器网络是CNN,其将带注释的视觉对象图像作为输入并且为所有调制层产生尺度参数的矢量,而空间调制器网络是基于空间先验输入产生偏置参数的非常有效的网络。
    Visual modulator:视觉调制器用于使分割网络适应于关注特定对象实例,该特定对象实例是第一帧中的注释对象。 为方便起见,以下将注释对象称为视觉引导。视觉调制器从视觉指南中提取类别、颜色、形状和纹理等语义信息,并生成相应的通道权重,从而重新获得分割网络以分割对象。我们使用VGG16神经网络作为视觉调制器的模型。我们修改其最后一层训练用于ImageNet分类,以匹配用于分割网络的调制层中的参数数量。
  • 视觉调制器隐含地学习不同类型对象的嵌入。 它应该产生类似的参数来调整类似对象的分割网络,同时为不同的对象调整不同的参数。调制器输出的嵌入很好地与对象的外观相关。使用这种视觉化调制器的一个大优点是,为了学习好的嵌入,我们可以潜在地转移利用大量对象类(例如ImageNet)学习的知识,以便学习良好的嵌入.
    Spatial modulator:我们的空间调制器将图像中对象的先前位置作为输入。 由于对象在视频中连续移动,我们将先前设置为前一帧中对象掩码的预测位置。具体而言,我们将位置信息编码为在图像平面上具有二维高斯分布的热图。 高斯分布的中心和标准偏差是根据前一帧的预测掩模计算的。为方便起见,此热图在下文中称为空间引导。空间调制器将空间指导下采样到不同的比例,以匹配分割网络中的不同特征图的分辨率,然后对每个下采样的热图应用缩放和移位操作以生成相应调制层的偏置参数。
  • 我们认为前一帧中的粗略位置和大小具有足够的信息来推断RGB图像的对象掩模,并且它可以防止模型过度依赖掩模并因此导致错误传播,这可能是灾难性的。 当对象在视频中有大的移动时,而且也可以防止过度拟合。
    Implementation details:直观地说,我们应该在FCN中的每个卷积层之后添加调制层。 然而,我们发现在早期卷积层之间添加调制层实际上使模型表现更差。一个可能的原因是早期层提取的低级特征对调制器引入的缩放和移位操作非常敏感。 在我们的实现中,我们将调制操作添加到VGG16中的所有卷积层,除了前四层,这导致九个调制层。
  • 为了对视觉调制器的输入进行预处理,我们首先使用带注释的掩模裁剪对象,然后将背景像素设置为平均图像值,然后将裁剪后的图像的大小调整为224×224的恒定分辨率。对数据使用了增强:10%的随机缩放和10度的随机旋转。为了对作为空间调制器输入的空间引导进行预处理,我们首先计算掩模的平均值和标准偏差,然后用高达20%的随机移位和40%的随机缩放对掩模进行扩充。对于馈入FCN的整个图像,我们使用从320, 400的随机大小,和480的正方形形状。
  • 视觉调制器和分割网络都是用预先在ImageNet分类任务上构建的VGG16模型初始化的。通过将视觉调制器的最后全连接层的权重和偏置分别设置为零和1,将调制参数r_c初始化为1。空间调制器的权重随机初始化。 我们使用相同的平衡交叉熵损失.
  • 使用Adam训练,beta1=0.9,beta2=0.999,首先训练10 epochs,lr=10e-5,然后再训练5 epoch,lr=10e-6.
  • 此外,为了模拟视频中移动物体的外观变化,可以在视频分割数据集(如DAVIS 2017)上对模型进行微调。为了对外观变化更稳健,我们随机地从整个视频序列中选择前景对象作为每帧的视觉引导。空间引导是从前一帧中的物体的地面真相掩码获得的。

实验

Semisupervised Video Segmentation

  • 我们的模型有两种变体,第一种只在静态图像上训练(第1阶段),第二种在视频数据上精细化(第二阶段)调制器对分割模型的自适应是通过视觉调制器的一个前向传播实现的,因此它比目标视频的模型微调方法更有效。视觉调制器只需要为整个视频计算一次,而空间调制器需要针对每个帧进行计算,但开销可以忽略不计。由于分割模型的权重是固定的,因此精度增益仅来自调制器,这证明视觉调制器能够通过操纵中间特征图的比例来改善不同的模型结构。
  • 我们的模型对于外观变化更加稳健,因为它为注释对象学习了特征嵌入,与单次微调相比,它更能容忍姿势和外观变化。我们的方法可以得到更精确的边界,部分原因是粗糙的空间先验迫使模型探索图像上的更多线索而不是前一帧中的掩模。在未知的对象类中,工作的也很好。

Visualization of the modulation parameters

  • 一个有趣的观察是,对于网络的更深层次,调制参数的变化变得更大。 这表明,在最后几层中,特征图的操纵比在网络的早期层中更为显着。

Ablation Study

  • 从实验结果上看,视觉调制器比空间调制器更重要。结果表明,空间引导增强对性能的影响最显著。在没有扰动的情况下,模型可能过于依赖于空间先验的位置而不能处理真实视频序列中的运动对象。

你可能感兴趣的:(Efficient Video Object Segmentation via Network Modulation《CVPR》)