动机
1、实例分割是计算机视觉的基本任务之一。 虽然在图像分割方面取得了重大进展,在视频中分割实例方面,还需要额外做更多的研究进行攻克。
2、最先进的方法通常是开发复杂的流程来解决这项任务。自上而下的方法遵循逐检测跟踪的范式,严重依赖于图像级别的实例分割模型复杂的人工设计规则来关联实例。 自下而上的方法通过聚类学习的像素嵌入来分离对象实例。 因为严重依赖在密集的预测质量上,这些方法通常需要多个步骤来迭代生成掩码,这使得它们变慢。 因此,为了解决VIS任务,使用一个简单的、端到端可训练的VIS框架是大势所趋。
方法简介
视频帧包含比单一图像更丰富的信息,如运动模式和实例的时间一致性,提供有用的线索,例如分割和分类。同时,学习更好的实例特征有利于跟踪实例。本质上,实例分割和实例跟踪都涉及了相似性学习,即实例分割是学习像素级的相似性,实例跟踪是学习相似性实例之间的关系。因此,在同一实例分割的框架下,可以无缝而自然地实现了实例跟踪。 Transformers以自注意力为核心,旨在基于它们之间的所有配对相似性学习和更新特征。Transformers在NLP被广泛地应用于序列学习,并也逐渐应用于视觉领域中。因此,将图像、视频等模式(如点云处理)放到Transformers框架中,统一大多数不同的视觉任务成为可能。Transformers能够建模远程依赖关系,因此可以很自然地应用于视频来学习跨多个帧的时间信息。由于Transformers提供了构建块,它能够为VIS设计一个简单和端到端的框架,因此,本论文提出了一种新的基于Transformers的视频实例分割框架VisTR,不仅你能够解决这两个子任务并相互受益,而且有利于任务的执行效果。该框架将VIS任务视为一个直接的端到端并行序列解码/预测问题。给定一个由多个图像帧组成的视频剪辑作为输入,VisTR直接按顺序输出视频中每个实例的掩码序列。其核心是一种新的、有效的实例序列匹配和分割策略,该策略将实例作为一个整体在序列级进行监督和分割。与现有的方法有很大的不同,VisTR将实例分割和跟踪用相似度学习的概念来描述,大大简化了整个流水线。
方法细节
整个VisTR的流水线如下图所示:在第一阶段,给定一个视频帧序列,由标准的CNN模块提取单个图像帧的特征,然后将多个图像特征按帧顺序级联,形成剪切级特征序列。在第二阶段,Transformers将剪切级特征序列作为输入,以顺序输出一个目标预测序列。如下图所示,相同的形状表示对同一图像的预测,相同的颜色表示不同图像的相同实例。预测的顺序遵循输入图像的顺序,并且每个图像的预测遵循相同的实例顺序。这样,在相同的实例分割框架下,实现了无缝、自然的实例跟踪。
为了实现上述目标,将面临两个挑战:1)如何保持输出的顺序;2)如何从Transformer网络中获取每个实例的掩码序列。 本文引入了实例序列匹配策略和实例序列分割模块来解决这两个挑战。实例序列匹配策略是在输出实例序列和实际实例序列之间形成二部图匹配,并将该序列作为一个整体来进行。这样就可以直接维持输出的顺序。实例序列分割模块通过自注意力机制在多个帧上累积每个实例的掩码特征,并通过3D卷积对每个实例的掩码序列进行分割。
总体VisTR架构如下图所示。它主要由四个模块组成:一个用于提取多帧紧凑特征表示的CNN主干、一个用于建模像素级和实例级特征相似性的编码器-解码器转换器、一个用于监督模型的实例序列匹配模块和一个实例序列分割模块。

- 一个用于提取多帧紧凑特征表示的CNN主干:主干是用来提取输入视频剪切的原始像素级特征序列。首先,一个标准的CNN主干为每一帧生成一个较低分辨率的激活图,然后对每一帧的特征进行串联,形成剪切级特征映射。
- 一个用于建模像素级和实例级特征相似性的编码器-解码器转换器:首先对上述特征图进行1×1卷积,将维数做降级处理,得到新的特征图。
- 编码器:为了形成可输入Transformers编码器的剪切级特征序列,将新得到的特征图的空间维和时间维flatten为一维,得到降了维的二维特征图。请注意,时间顺序始终与初始输入的顺序一致。每个编码器层都有一个标准体系结构,它由一个多头自注意机制和一个完全连接的前馈神经网络(FFN)组成。
- 位置编码:Transformers结构是排列不变的,而序列任务需要精确的位置信息。为了补偿这一点,用固定的位置编码信息来补充特征,该信息包含剪切中的三维(时间、水平和垂直)位置信息。在这里,将原Transformers中的位置编码调整为3D情况。对于每个维度的坐标,分别使用不同频率的正弦和余弦函数。因为三维的位置编码应该被级联以形成最终的多通道位置编码。这些编码被添加到每个注意力层的输入中。
- 解码器:Transformers解码器旨在解码能够代表每帧实例的顶部像素特征,称为实例级特征。在DETR的基础上,还引入了固定数量的输入嵌入来查询像素特征中的实例特征,称为实例查询。实例查询由模型学习,并与像素特征具有相同的尺寸。取编码器输出E和N个实例查询Q作为输入,Transformers解码器输出N个实例特征。整体预测遵循输入帧顺序,不同图像的实例预测顺序相同。这样,通过直接链接对应索引的项,就可以实现对不同帧中实例的跟踪。
- 一个用于监督模型的实例序列匹配模块:VisTR在一次通过解码器的过程中推断出N个预测的固定大小序列。该框架的一个主要挑战是在不同的图像中保持同一实例预测的相对位置。为了找到相应的ground truth,并将实例序列作为一个整体进行监督,我们引入了实例序列匹配策略。
- 二部图匹配:为了找到两个集合之间的一个二部图匹配,使用了一个代价最低的n个元素的组合排列方法。最优分配可以通过Hungarian算法做有效地计算。由于直接计算掩码序列相似度的计算量很大,找到了一个替代方法,即box序列来进行匹配。为了获得box预测,将一个由ReLU激活函数和一个线性投影层组成的三层前馈神经网络(FFN)用于Transformers解码器的目标预测。与DETR的做法相同,FFN预测输入图片的框的归一化中心坐标、高度和宽度,线性层使用softmax函数预测类标签。另外还添加了一个“background”类来表示没有检测到任何目标。基于上述标准,可以通过Hungarian算法找到序列的一对一匹配。给定最优分配,可以计算损失函数,即计算之前所有匹配对的Hungarian损失。匹配损失既考虑了类预测,又考虑了预测框和真实框的相似性。损失是类预测的负对数似然、实例序列的box损失和掩码损失的线性组合。在计算匹配成本和Hungarian损失给边界框评分之后,做序列级L1损失和IOU损失的线性组合。
- 一个实例序列分割模块:例序列分割模块的目的是为每个实例预先指定掩码序列。为了实现这一目标,该模型首先需要对每个实例的多个多帧的掩码特征进行累加,然后对累加的特征进行掩码序列分割。
- 通过计算目标预测与Transformers编码特征之间的相似映射得到掩模特征,为简化计算,对每个目标预测只计算其对应帧的特征。对于每一帧,目标预测和相应的编码特征被馈送到自注意力模块,以获得初始注意力映射。然后遵循DETR的相似做法,将注意力映射与相应帧的初始主干特征以及Transformers编码后的特征进行融合。融合的最后一层是可变形卷积层。这样,就得到了不同帧的每个实例的掩模特征。遵循将实例序列作为一个整体的相同灵感,不同的框架中同一实例的掩码特征应该互相传播和加强。利用三维卷积来实现它。将多个帧的实例掩码特征做特征级联形成实例序列掩码特征,实例序列分割模块以实例序列掩码特征为输入,输出掩码序列直接表示实例。
- 这个模块包含三个三维卷积层和具有ReLU激活函数的组归一化层。在最后一个卷积层之后不进行归一化或激活,最后一层的输出通道号为1。这样,就得到了多帧的实例掩码。监督预测的掩码损失是结合Dice和Focal loss计算的。
CVPR 2021 End-to-End Video Instance Segmentation with Transformers
实验细节
基本参数配置:由于YouTube-VIS中一个视频的最多标注36帧,将输入视频剪切的默认长度设置为36。因此,不需要任何后处理来关联一个视频中的不同片段,这使得用到的模型完全是端到端的训练的。模型为每帧预测10个目标,因此总的目标查询数为360个。对于Transformers,使用6个编码器,6个包含8个宽度为384的注意力头的解码器层。除非另有说明,ResNet-50被用作模型的骨干网,并且使用了与DETR相同的超参数。
训练过程:该模型用Pytorch-1.6实现。通过AdamW对网络进行训练,将初始Transformers的学习速率设为0.0004,主干网的学习速率设为0.0004,权重衰减率设为0.0004。对模型进行了10次训练。用在COCO上预训练的DETR的权重来初始化骨干网。这些模型是在8个32G内存的V100 GPU上训练的,每个GPU有一个视频剪切。帧大小被降采样到300×540以适应GPU内存。
推理过程:在推理过程中,遵循与训练相同的规模配置。相关实例不需要后处理。将保留分数大于0.001的实例。所有帧的平均得分被用作实例得分。对于在不同框架中被分类为不同类别的实例,使用最快速预测的类别作为最终实例类别。
在YouTube-VIS数据集上进行了实验,该数据集包含2238个训练视频、302个验证视频和343个测试视频片段。数据集的每个视频都用每个像素的分割掩码、类别和实例标签进行标注。一共40个目标类别。由于测试集评估是关闭的,在验证集中评估提出的VisTR方法。评价指标为平均精度(AP)和平均召回(AR),以掩码序列的视频交集(IoU)作为阈值。VisTR在所有现有的VIS模型中表现出最高的速度,在YouTube-VIS数据集上使用单一模型的方法中更是表现出最好的效果,在掩码mAP中以27.7FPS(57.7FPS,如果不包括数据加载)的速度实现了35.3%,这是方法中最好和最快的单一个模型方法。首次展示了一个基于Transformers的更简单、更快速的视频实例分割框架,实现了具有竞争力的精确度。
结论
首次展示了一个基于Transformers的更简单、更快速的视频实例分割框架,实现了具有竞争力的精确度。
VisTR从相似性学习的新角度解决了VIS问题。
成功的关键是一个新的策略,即序列匹配和分割。这个策略使VisTR能够在整个序列层面上对实例进行监督和细分。