MobileInst: Video Instance Segmentation on the Mobile

虽然近年来针对视频实例分割的方法取得了良好的效果,但这些方法在移动设备上的实际应用中仍然存在困难,主要存在(1)计算和内存成本高,(2)跟踪对象的启发式复杂。为了解决这些问题,我们提出了MobileInst,一个轻量级和移动友好的框架,用于移动设备上的视频实例分割。

首先,MobileInst采用移动视觉转换器提取多级语义特征,提出了一种高效的基于查询的双转换器掩码实例解码器和一种语义增强的掩码解码器,用于每帧生成实例分割。其次,MobileInst利用简单而有效的内核重用和内核关联来跟踪视频实例分割对象。此外,我们提出了时态查询传递来增强内核的跟踪能力。我们在COCO和YouTube-VIS数据集上进行了实验,证明了MobileInst的优越性,并在没有其他加速方法的情况下评估了Qualcomm Snapdragon-778G移动CPU核心1上的推理延迟。在COCO数据集上,MobileInst在移动CPU上实现了30.5掩码AP和176 ms,与之前的SOTA相比,这将延迟降低了50%。对于视频实例分割,MobileInst在YouTube-VIS 2019上实现了35.0 AP,在YouTube-VIS 2021上实现了30.1 AP。代码将用于促进实际应用和未来的研究。

高通人工智能研究是高通技术公司的一项倡议。

图1:速度和准确性的权衡。我们在COCO test-dev上评估所有模型,并在一个移动CPU(即Snapdragon@778G)上测量推理速度。提出的MobileInst方法在移动设备上的速度和准确性都优于其他方法。

1.  介绍。

视频实例分割(VIS)[48]是一项基本但具有挑战性的视觉任务,它同时识别、分割和跟踪视频序列中的对象。它将图像实例分割扩展到视频,并更专注于聚合时间信息和跨帧跟踪对象。深度卷积神经网络和视觉转换器的进步在视频实例分割方面取得了很大的进展,并取得了巨大的性能[2,1,24]。视频实例分割吸引了广泛的应用,如机器人、自动驾驶汽车、视频编辑和增强现实。然而,许多现实世界的应用程序倾向于要求这些VIS方法在资源受限的设备上运行,例如,移动电话和低延迟的推理。在移动或嵌入式设备上开发和部署有效的视频实例分割方法具有挑战性和紧迫性。

尽管VIS领域已经取得了很大的进展,但仍有几个障碍阻碍了现代VIS框架部署在资源有限的边缘设备上,例如移动芯片组。目前流行的视频实例分割方法可以分为两类:离线方法(剪辑级)和在线方法(帧级)。

离线方法[44,21,51,45,19,24]将视频分割成片段,为每个片段生成实例预测,然后通过跨剪辑的实例匹配来关联实例。

使用变压器的端到端视频实例分割。

利用帧间通信变压器进行视频实例分割。

用于视频实例分割的时间高效视觉转换器。

Seqformer:用于视频实例分割的顺序变压器。

Vita:通过对象令牌关联的视频实例分割。

然而,在计算和内存成本方面,使用剪辑(多帧)的推理在移动设备上是不可行的。

然而,在线方法[48,50,4,14,46]使用帧级输入进行转发和预测,但需要复杂的启发式过程来跨帧关联实例,例如NMS,这在移动设备中效率很低。

交叉学习用于快速在线视频实例分割。

Sipmask:用于快速图像和视频实例分割的空间信息保存。

Compfeat:用于视频实例分割的综合特征聚合。

为视频实例分割的在线模型辩护。

此外,目前的视频实例分割方法往往采用较重的架构,特别是基于变压器的分割方法,计算量和内存消耗较大。直接缩小模型尺寸以降低推理延迟将不可避免地导致严重的性能下降,这限制了最近方法的实际应用。为资源受限的设备设计和部署视频实例分割技术还没有得到很好的探索,这对于现实世界的应用来说不是微不足道的,而是至关重要的。

本文首次引入MobileInst算法在移动设备上实现高性能视频实例分割。MobileInst从两个关键方面来看是高效和移动友好的(1)轻量级架构,用于每帧分割对象;(2)简单而有效的时间建模,用于跨帧跟踪实例。

具体来说,MobileInst由一个基于查询的双转换器实例解码器组成,它利用对象查询来分割对象,通过全局上下文和本地细节更新对象查询,然后生成掩码内核和分类分数。为了有效地聚合掩码特征的多尺度特征和全局上下文,MobileInst采用了语义增强的掩码解码器。对象查询被强制以一对一的方式表示对象,我们发现掩码内核(由对象查询生成)在连续的帧中倾向于在时间上一致,即,相同的内核(查询)对应于附近帧中的相同对象,如图2所示。因此,我们利用简单而有效的内核重用和内核关联来跟踪对象,通过重用T-frame剪辑中的内核,并通过内核余弦相似度在剪辑之间关联对象。此外,我们提出了时间查询传递,以增强在视频序列训练过程中对目标查询的跟踪能力。MobileInst可以在移动设备上一次性分割和跟踪视频中的对象。

我们分别在具有挑战性的COCO数据集[27]和YouTube-VIS[48]上评估MobileInst的图像实例分割和视频实例分割。本文的主要贡献可以总结为:

我们提出了一个名为MobileInst的前沿和移动友好的框架,用于移动设备上的视频实例分割,这是我们所知的第一个针对移动设备上的VIS的工作。

为了有效地分割帧中的对象,我们在MobileInst中提出了一个双转换器实例解码器和语义增强掩码解码器。

我们提出了简单有效的跨帧跟踪对象的内核重用和内核关联,以及时序训练策略。

本文提出的MobileInst部署在Snapdragon@778G的CPU上,在不使用混合精度、低位量化或内部硬件加速器进行神经网络推理的情况下,在YouTube-VIS-2019上可以实现35.0 AP和158 ms,在COCO test-dev上可以实现30.5 AP和172 ms。

2. 相关的工作。

2.1. 实例分割。

大多数方法通过为实例掩码扩展带有掩码分支的对象检测器来解决实例分割,例如,mask R-CNN[17]在Faster R-CNN[31]上添加了一个基于roi的全卷积网络来预测对象掩码。类似地,[35,3,47,52]提出了单级实例分割方法,通过使用单级检测器(如FCOS[36])来定位对象并预测卷积核或编码向量以生成分割掩码。一些方法[41,42,9]也提供了简单和高效的无检测器实例分割。最近,基于查询的检测器[5,54,13,8,12]用集合预测重新制定了对象检测,并在实例分割方面显示出有希望的结果。考虑到推理速度,YOLACT[3]和SparseInst[9]提出了实例分割的实时方法,在速度和精度之间取得了很好的平衡。但是,现有的方法由于计算量大、后处理过程复杂,很难部署到移动设备上进行实际应用。MobileInst设计高效的变压器,旨在在移动设备上实现良好的速度和精度性能。

2.2.  视频实例分割。

离线的方法。对于离线VIS,模型[44,21,51,45,19]一次将一个视频片段作为输入,由于其丰富的上下文信息,获得了较好的性能。VisTR[44]首次提出了完全端到端离线VIS方法。然而,自注意机制也带来了巨大的计算成本。后续工作通过构建帧间通信转换器[21],使用信使在骨骼网[51]之间交换时间信息,以及关注帧间实例的时间交互,有效地缓解了这一问题[45,19]。然而,剪辑级输入很难应用于资源受限的移动设备。

对于在线VIS[49, 50, 15, 20, 46, 16, 22],早期模型[49,50,15]经常扩展基于cnn的图像分割模型来处理时间相干性。为了实现这一点,这些模型采用单独的特征嵌入来表示实例和启发式算法来跟踪推理过程。然而,这些模型的密集预测导致了额外的后处理,如NMS,这阻碍了移动设备上的端到端推理。最近,许多优秀的基于变压器的模型被应用到VIS中,它自然提供了一个没有启发式算法的跟踪对象,因为查询嵌入本质上只用图像级数据来区分不同的实例,用于训练[20]。IDOL[46]通过不同帧间实例嵌入的对比学习,获得了与离线VIS相当的性能。InsPro[16]和InstanceFormer[22]分别使用提议和参考点建立实例信息之间的对应关系,实现在线时间传播。不幸的是,现有的模型依赖于大型模型,如Mask2former[7]和Deformable DETR[54],超出了许多移动设备的能力。

2.3. 移动视觉变形金刚。

视觉变压器(ViT)[10]在各种视觉任务中表现出巨大的能力。后续工作[29,40,11]采用层次结构,将空间归纳偏差或局域性纳入视觉转换器,为下游任务提供更好的特征表示。由于多头注意力[38],视觉转换器与卷积网络相比容易消耗资源。为了方便移动应用,MobileViT[30]和TopFormer[53]通过将高效的变压器块集成到MobileNetV2[33]中来设计移动友好型变压器。Mobile-Former[6]提出了一个包含变压器和MobileNet[33]的并行架构,并注重卷积网络和变压器之间的交换特性。最近,Wan等人提出了具有轴向关注的SeaFormer[39],该方法更加高效有效。在本文中,MobileInst的目标是移动设备上的视频实例分割,这比设计移动主干更具挑战性。

2.3.           移动视觉变形金刚。

视觉变压器(ViT)[10]在各种视觉任务中表现出巨大的能力。后续工作[29,40,11]采用层次结构,将空间归纳偏差或局域性纳入视觉转换器,为下游任务提供更好的特征表示。由于多头注意力[38],视觉转换器与卷积网络相比容易消耗资源。为了方便移动应用,MobileViT[30]和TopFormer[53]通过将高效的变压器块集成到MobileNetV2[33]中来设计移动友好型变压器。Mobile-Former[6]提出了一个包含变压器和MobileNet[33]的并行架构,并注重卷积网络和变压器之间的交换特性。最近,Wan等人提出了具有轴向关注的SeaFormer[39],该方法更加高效有效。在本文中,MobileInst的目标是移动设备上的视频实例分割,这比设计移动主干更具挑战性。

一张图像值16x16个单词:用于大规模图像识别的变形金刚。

Swin transformer:使用移位窗口的分层视觉转换器。

金字塔视觉转换器:一个通用的骨干密集预测没有卷积。

Msg-transformer:通过操作信使令牌交换本地空间信息。

注意力就是你所需的一切

Mobilevit:轻量级、通用、移动友好的视觉转换器。

Topformer:用于移动语义分割的令牌金字塔转换器。

Mobilenetv2:倒残差和线性瓶颈。

Mobileformer:连接mobilenet和变压器。

Seaformer:用于移动语义分割的挤压增强轴向变压器。

3.MobileInst。
3.1.   总体的结构。

我们提出了MobileInst,一个为移动设备量身定制的视频实例分割框架。图3给出了我们的框架的说明。对于给定的输入图像,MobileInst首先利用移动变压器骨干网提取多级金字塔特征。根据[53,39],我们的骨干网由一系列卷积块和变压器块组成。它以图像为输入,同时生成局部特征(即图3中的X3、X4和X5)和全局特征(即X6)。我们在补充材料中提供了骨干网络结构的详细信息,如需更多细节,请参阅[53,39]。

考虑到全局特征X6包含丰富的高级语义信息,我们提出了(1)双变形实例解码器,它采用基于全局图像特征和局部图像特征的基于查询的变形解码器,生成实例预测,即实例核和分类分数;(2)语义增强掩码译码器,利用主干网的多尺度特征和语义增强器,用语义信息丰富多尺度特征。

3.2.     双变压器实例解码器。

查询是很好的跟踪器。带有对象查询的检测变压器[5,54]在对象检测方面取得了很大的进展。与之前的密集检测器相比[32,26,37],基于查询的检测器生成稀疏的预测集,并摆脱了启发式的重复删除后处理。此外,之前的方法[49,50]通过设计启发式匹配来跨帧关联实例,扩展了用于视频实例分割的密集检测器,这在移动设备上效率低且难以优化。

更快的R-CNN:使用区域提议网络实现实时目标检测。

用于密集物体检测的焦损。

FCOS:一个简单而强大的无锚对象检测器。

然而,如图2所示,对象查询是很好的跟踪器,可以用来关联视频中的对象,原因有三:(1)对象查询被训练成分割相应视觉实例的前景,因此自然包含上下文化的实例特征;(2)强制对象查询以一对一的方式匹配对象,抑制重复查询;(3)对象查询具有时间一致性,在连续帧中表示同一实例,这可以归因于相邻帧的时间平滑性。因此,使用对象查询作为跟踪器可以省略关联对象的复杂启发式后处理,并且在移动设备上更有效。

然而,像[5,34]这样直接在移动骨干上附加检测变压器解码器会导致移动设备无法承受计算预算,而简单地减少解码器层数或参数会导致性能不理想。保持平衡并设计适合移动设备的架构对于现实应用来说非常重要。为了提高效率,我们提出了双变压器实例编码器,将[5,54]中常用的6级译码器简化为2级双译码器,即全局实例译码器和局部实例译码器,其中全局特征XG和局部特征XL作为键和值用于更新对象查询。我们遵循[7],对全局特征和局部特征都采用正弦位置嵌入。对象查询Q是可学习的和随机初始化的。

稀疏R-CNN:具有可学习建议的端到端对象检测。

全局和本地查询更新。为全局上下文添加变压器编码器[5,54]将会产生巨大的计算负担。我们观察到高层特征(图3中的X6)对于全局上下文是有益的,它是通过移动骨干中的变压器层获得的,例如TopFormer[53]使用4个标准变压器块[10]作为高层语义特征。受最近的作品[8]的启发,我们采用细粒度的局部特征,即掩码特征Xmask来补偿空间细节,生成掩码内核。为了提高效率,我们通过最大池化将掩码特征降采样到64/1 ×,即XL = fpool(Xmask),这可以保留更多的细节:对象查询的双重更新在Eq.(1)中表示,并且我们在双实例解码器中去除前馈网络以减少计算成本。双转换器实例解码器从全局特征XG获取上下文特征,并使用细粒度的局部特征XL细化查询。

3.3. 语义增强的掩码解码器。

由于自然场景中尺度变化严重,多尺度特征对于实例分割非常重要。此外,生成掩码需要高分辨率的特征,以实现精确的定位和分割质量。为此,流行的方法[8,7]将多尺度变压器[7]堆叠为像素解码器,以增强多尺度表示并生成高分辨率掩码特征。用于高分辨率特征的堆叠变压器会导致大量的计算和内存成本。[9]没有使用变压器,而是采用了4个连续3 × 3卷积的FPN-PPM编码器作为掩码解码器,这也导致了巨大的负担,即7.6 GFLOPs。对于移动设备,我们提出了一种高效的语义增强掩码解码器,如图3所示。掩码解码器采用多尺度特征{X3;X4;X5},输出单级高分辨率掩码特征(18×)。在FPN[25]的激励下,我们使用迭代的自顶向下和自底向上的多尺度融合。此外,我们提出了语义增强子,用全局特征X6加强掩码特征的上下文信息,如图3的绿色块所示。然后对掩码特征Xmask和生成的核K进行M = K·Xmask融合,得到输出分割掩码。

3.4.   利用内核重用和关联进行高效跟踪。

正如第3.2节所讨论的,掩码内核(由对象查询生成)由于相邻帧的时间平滑性而在时间上是一致的。因此,可以直接采用掩码核对相邻帧(如图2所示为11帧)中的同一实例进行分割和跟踪。因此,我们提出了有效的内核重用,采用关键帧的掩码内核来生成连续T−1帧的分割掩码,如下所示:

其中{M_i}_i=t_T-1+t是t帧剪辑中相同实例的分割掩码,Kt是重用的掩码内核。与基于剪辑的方法不同[44,19,45],内核重用执行动态分割和跟踪给定的每帧输入。

然而,内核重用在长时间序列或具有剧烈变化的帧中往往会失败。为了解决这些问题,我们提出了一个简单而有效的核关联,它使用连续关键帧之间的余弦相似度。在一对一通信下,重复查询(内核)往往会被抑制,这使得简单的相似性度量能够将连续关键帧的内核关联起来。与以往基于复杂度量和后处理方法的方法[49,50]相比,本文提出的内核关联方法更加简单,易于在移动设备上部署。
MobileInst可以通过结合所提出的内核重用和关联直接扩展到视频实例分割。实验结果表明,使用T = 3的MobileInst可以获得竞争性能,如表7所示。对于更简单的视频或场景,可以进一步延长重用间隔T,以实现更高效的分割和跟踪。

3.5.    通过查询传递进行时态训练。

如何充分利用视频中的时间背景化信息进行更好的时间分割是VIS长期研究的问题,而增加额外的时间模块会引入额外的参数,不可避免地会修改MobileInst现有的架构。为了利用视频中的时间信息,我们提出了一种新的时间训练策略,通过查询传递来增强时间输入的特征表示,该策略受到[50]的启发。具体来说,我们在训练过程中从视频序列中随机抽取两帧,即帧t和帧t+δ,如图4所示。由于这两帧之间的视觉上下文自然是相同的,我们采用全局实例解码器生成的对象查询Q_t_G作为传递查询。对于帧t+δ,通过正常转发可以得到掩码特征X_t+δ_mask和局部特征XLt+δ。在时间训练中,将传递的q_tg查询q_t +δ _g输入到具有局部特征Xt+δ L的局部实例解码器中,得到核和生成的掩码M_~t+δ。生成的M_~t+δ与M_t+δ共享相同的掩模目标,并受第3.6节中提到的掩模损耗的监督。

3.6.  损失函数。

MobileInst生成一个固定大小的N个预测集,并使用二部匹配进行标签分配。由于时间传播学习没有引入任何额外的模块和特殊的损失,所以我们沿用前面的工作[9],对图像实例分割和视频实例分割使用相同的损失函数,定义如下:

其中Lcls表示用于对象分类的焦点损失,Lmask是骰子损失和用于掩码预测的像素级二进制交叉熵损失的组合,Lobj表示用于欠条感知对象的二进制交叉熵损失。λc、λmask和λobj分别设置为2.0、2.0和1.0以平衡损耗。

4.   实验。

在本节中,我们主要在具有挑战性的COCO[27]和Youtube-VIS[49]数据集上评估MobileInst,以演示所提出的架构在速度和准确性方面的效果。此外,我们进行了广泛的消融研究,以揭示MobileInst中成分对COCO的影响。我们还建议读者参阅附录以获得更多的实验和可视化。

4.1.   数据集。

椰子树COCO[27]数据集是实例分割方法的试金石,它分别包含118k、5k和20k图像用于训练、验证和测试。MobileInst在train2017上进行训练,在val2017或test-dev2017上进行评估。

Youtube-VIS。YouTube-VIS 2019[49]是第一个用于视频实例分割的大规模数据集。它包含2883个视频和4883个实例,涵盖40个对象类别。作为扩展,YouTube-VIS 2021将其扩展到1×视频和2×实例,并改进了40个类别。在之前的工作之后,我们在两个数据集的验证集上评估了我们的方法。

4.2.    实现细节。

实例分割。我们使用初始学习率为1 × 10−4的AdamW优化器,并将骨干乘法器设置为0:5。按照训练计划和数据增强[9],所有模型训练270k次迭代,批大小为64,在210k和250k处学习率衰减10。我们应用随机翻转和尺度抖动来增强训练图像。更准确地说,短边在416到640像素之间变化,而长边保持在864像素以下。

视频实例分割。使用在COCO train2017集上预训练的实例分割模型中的权重初始化模型。它将实例分割的学习率设置为一半,即5 × 10−5,并训练12个epoch,第8和第11个epoch的学习率衰减为10×。我们只使用基本的数据增强,比如将图像较短的一侧调整为360,而不使用任何额外的数据或技巧。

推理。MobileInst的推论很简单。MobileInst可以直接输出单帧图像的实例分割结果,无需进行非最大抑制(non-maximum suppression, NMS)。所有模型的推断速度都是在Qualcomm Snapdragon@778G的CPU核心上使用TNN framework3测量的,没有其他的加速方法,输入设置为320 × 640。

4.3.   实例分割实验。

首先,我们在COCO test-dev数据集上评估提出的MobileInst用于移动实例分割。作为第一个专门为移动设备设计的实例分割模型,我们对实时实例分割方法进行了基准测试。表1显示了MobileInst和以前的方法之间的比较。

在所有使用ResNet[18]骨干网的方法中,Mask R-CNN和CondInst自然能实现AP在37以上。然而,Mask R-CNN作为两阶段模型的部署挑战和CondInst的1.1 FPS使它们不太适合移动应用程序。此外,我们观察到MobileInst实现了比基于R-50的流行实时方法YOLACT更高的精度,增加了2.0个AP,速度快了500毫秒。与基于R-18的SOLOv2的轻型版本相比,它的速度也有~ 3倍的优势。

与基于轻量级主干的模型相比,我们的方法在取得竞争结果的同时始终保持着显著的速度优势。值得注意的是,与之前最先进的方法SparseInst相比,我们的模型显示了高达50%的显著速度提升。图1展示了速度和精度之间的权衡曲线,进一步清楚地显示了我们提出的方法的出色性能。

5. 可视化。

在本节中,我们提供了COCO数据集和YouTube-VIS数据集的定性结果。

5.1. 实例分割。

图5显示了MobileInst对COCO进行实例分割的定性结果。MobileInst可以很好地分割具有精细边界的对象。

5.2. 视频实例分割。

图6和图7显示了MobileInst在YouTubeVIS-2021验证集上对视频实例分割的定性结果。很明显,MobileInst可以有效地分割和跟踪实例,从而获得令人印象深刻的结果。如图6所示,在一些运动剧烈的复杂场景下,MobileInst可能会出现边界粗糙的问题,但仍能获得良好的跟踪结果。而MobileInst在没有剧烈运动的场景下表现良好,如图7所示。

6. 结论。

在本文中,我们提出了MobileInst,一个为移动设备精心设计的视频实例分割框架。为了减少计算开销,我们提出了一种高效的基于查询的双转换器实例解码器和一种语义增强的掩码解码器,MobileInst在获得具有竞争力的性能的同时保持了令人满意的推理速度。我们还提出了一种有效的方法,将我们的MobileInst扩展到视频实例分割任务,而无需引入额外的参数。在COCO和Youtube VIS数据集上的实验结果表明,MobileInst在精度和推理速度方面都具有优势。我们希望我们的工作能够促进资源受限设备上实例级视觉识别的进一步研究。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值