SMITE: Segment Me In Time

在视频理解领域,精确分割视频中的对象是一项挑战,要求每一帧的每个像素都准确标记且保持一致。面对任意粒度的分割,任务变得更加复杂,需要根据少量样本图像定义对象掩码。Deepmind 提出 SMITE 模型,用于实现时间一致性视频分割,旨在使用一张或几张参考图像预测和分割视频帧中的对象。SMITE 能够根据灵活的粒度跟踪和概括未见过的视频序列,即使在遮挡、姿势变化和光照条件下,也能确保分割的精确性和效率。本文是对SMITE的论文阅读记录,感兴趣的话可以参考一下,如果想要进一步了解研究内容详情的话可以移步阅读原英文论文,地址在这里,如下所示:

摘要

在视频中分割对象在计算机视觉和图形学中提出了重大挑战,常用于视觉效果、监控和自动驾驶等应用。然而,分割本身由于单个对象的变异性(尺度、变形等)、对象类别的变异性(形状、外观)以及成像条件(光照、视角)而变得复杂。此外,分割要求(如粒度,即段数)也增加了难度。例如,在面部分割中,一个视觉效果应用可能需要隔离额头以去除皱纹,而另一个应用(如头部跟踪)可能将其视为整个面部的一部分。为每种可能的分割场景创建全面的数据集以开发监督分割技术非常耗时且劳动密集。因此,需要基于参考图像对图像或视频进行分割。我们将这种分割称为灵活粒度分割。

 

当大规模应用灵活粒度分割时,它显著改善了下游任务,如视觉效果制作,涉及管理大量镜头和视频。通过仅对一个或几个参考图像进行一次分割,然后使用这些图像对任何包含相同类别目标对象的视频进行分割,我们可以消除对每个视频进行单独分割的需求,从而使过程更加高效。在本文中,我们使用一个或几个参考图像来解决视频分割的挑战,这些参考图像并非来自视频帧本身。例如,如图1所示,几个带注释的图像作为参考提供给我们的模型,我们的方法SMITE成功地对视频进行了分割,展示了相同类别的对象,并保持了相同的粒度。重要的是,这些视频的帧并未包含在参考图像中,但SMITE能够对展示不同颜色、姿势甚至遮挡的对象进行分割。当处理需要一致分割的大规模视频(如需要相同增强的视觉效果视频)时,这是一个重要特性,因为无需手动干预来分割每个视频的帧。

尽管最近的工作通过利用预训练文本到图像扩散模型的语义知识,探索了图像中对象的灵活粒度分割(Khani et al., 2024),但视频中的复杂性增加了。确保帧间的标签一致性,并管理图像分割可能无法产生准确结果的情况,需要额外的考虑。

为了解决这些挑战并实现帧间一致的分割,我们利用预训练文本到图像扩散模型的语义知识,并配备了额外的时间注意力机制以促进时间一致性。我们还提出了一种时间投票机制,通过在注意力图上跟踪和投影像素来保持每个像素的标签一致性。这种方法与逐帧分割方法相比,显著减少了闪烁和噪声,同时由于我们的低通正则化技术,段仍然遵循参考图像,确保保留注意力图提供的段结构并根据参考图像进行优化。

此外,我们不仅优化每个段的标记(Khani et al., 2024),还微调交叉注意力以提高分割准确性,并更好地与参考图像对齐。因此,我们的方法不仅支持具有时间一致性的视频,而且在分割单个图像时也优于灵活粒度图像分割技术。

我们通过全面的实验验证了我们的设计选择和方法。由于缺乏具有任意语义粒度的现有数据集,我们引入了一个小数据集SMITE-50,以展示我们的方法相对于基线的优越性能。此外,我们还进行了用户研究,突出了我们的方法在分割准确性和时间一致性方面的有效性。

图1:SMITE。仅使用一个或几个具有细粒度的分割参考(左),我们的方法学会对不同的未见视频进行分割,同时尊重分割参考。

1 引言

在视频中分割对象在计算机视觉和图形学中提出了重大挑战,常用于视觉效果、监控和自动驾驶等应用。然而,分割本身由于单个对象的变异性(尺度、变形等)、对象类别的变异性(形状、外观)以及成像条件(光照、视角)而变得复杂。此外,分割要求(如粒度,即段数)也增加了难度。例如,在面部分割中,一个视觉效果应用可能需要隔离额头以去除皱纹,而另一个应用(如头部跟踪)可能将其视为整个面部的一部分。为每种可能的分割场景创建全面的数据集以开发监督分割技术非常耗时且劳动密集。因此,需要基于参考图像对图像或视频进行分割。我们将这种分割称为灵活粒度分割。

当大规模应用灵活粒度分割时,它显著改善了下游任务,如视觉效果制作,涉及管理大量镜头和视频。通过仅对一个或几个参考图像进行一次分割,然后使用这些图像对任何包含相同类别目标对象的视频进行分割,我们可以消除对每个视频进行单独分割的需求,从而使过程更加高效。在本文中,我们使用一个或几个参考图像来解决视频分割的挑战,这些参考图像并非来自视频帧本身。例如,如图1所示,几个带注释的图像作为参考提供给我们的模型,我们的方法SMITE成功地对视频进行了分割,展示了相同类别的对象,并保持了相同的粒度。重要的是,这些视频的帧并未包含在参考图像中,但SMITE能够对展示不同颜色、姿势甚至遮挡的对象进行分割。当处理需要一致分割的大规模视频(如需要相同增强的视觉效果视频)时,这是一个重要特性,因为无需手动干预来分割每个视频的帧。

尽管最近的工作通过利用预训练文本到图像扩散模型的语义知识,探索了图像中对象的灵活粒度分割(Khani et al., 2024),但视频中的复杂性增加了。确保帧间的标签一致性,并管理图像分割可能无法产生准确结果的情况,需要额外的考虑。

为了解决这些挑战并实现帧间一致的分割,我们利用预训练文本到图像扩散模型的语义知识,并配备了额外的时间注意力机制以促进时间一致性。我们还提出了一种时间投票机制,通过在注意力图上跟踪和投影像素来保持每个像素的标签一致性。这种方法与逐帧分割方法相比,显著减少了闪烁和噪声,同时由于我们的低通正则化技术,段仍然遵循参考图像,确保保留注意力图提供的段结构并根据参考图像进行优化。

此外,我们不仅优化每个段的标记(Khani et al., 2024),还微调交叉注意力以提高分割准确性,并更好地与参考图像对齐。因此,我们的方法不仅支持具有时间一致性的视频,而且在分割单个图像时也优于灵活粒度图像分割技术。

我们通过全面的实验验证了我们的设计选择和方法。由于缺乏具有任意语义粒度的现有数据集,我们引入了一个小数据集SMITE-50,以展示我们的方法相对于基线的优越性能。此外,我们还进行了用户研究,突出了我们的方法在分割准确性和时间一致性方面的有效性。

2 相关工作

基于部分的语义分割

在计算机视觉中,语义分割是一个重要的任务,其中为图像中的每个像素分配一个类别标签,具有场景解析、自主系统、医学成像、图像编辑、环境监测和视频分析等多种应用(Sohail et al., 2022; He et al., 2016; Chen et al., 2017a; Zhao et al., 2017; He et al., 2017; Chen et al., 2017b; Sandler et al., 2018; Chen et al., 2018; Ravi et al., 2024)。语义部分分割是语义分割的一个更细粒度的衍生任务,旨在划分对象的各个部分,而不是分割整个对象。尽管在这一领域取得了显著进展(Li et al., 2023, 2022),但这些方法的一个局限性是它们依赖于手动策划的特定对象部分的信息。为了解决标注问题,一些工作(Pan et al., 2023; Wei et al., 2024)提出了开放集部分分割框架,通过在训练过程中忽略部分类别标签,实现了类别无关的部分分割。在此基础上,进一步的工作如SAM(Kirillov et al., 2023)、Grounding-SAM(Ren et al., 2024)探索了利用基础模型辅助开放词汇部分分割。然而,大多数这些方法只能分割由文本语义描述的部分。随着基于Stable Diffusion(SD)的生成分割方法的涌现(Khani et al., 2024; Namekata et al., 2024),这些问题在一定程度上得到了解决,允许SD特征在任何细节级别上分割语义部分,即使它们不能由文本描述。尽管取得了这样的进展,但在视频上应用这种细粒度分割仍然具有挑战性且未被探索。我们提出的SMITE首次在视频中进行部分分割,利用预训练SD的部分特征,并将其推广到任何自然视频中。

视频分割

视频分割方法可以分为视频语义分割(VSS)(Zhu et al., 2024; Zhang et al., 2023a; Li et al., 2024; Ke et al., 2023; Wang et al., 2024)、视频实例分割(VIS)(Yang et al., 2019)和视频对象分割(VOS)(Xie et al., 2021; Wang et al., 2021b; Cheng et al., 2021a; Bekuzarov et al., 2023)。VSS和VIS将图像分割扩展到视频中,跨帧分配像素标签,同时保持时间一致性,尽管对象变形和相机运动。VOS则专注于在整个视频中跟踪和隔离特定对象。这两项任务都通过时间注意力(Mao et al., 2021; Wang et al., 2021a)、光流(Xie et al., 2021; Zhu et al., 2017)和时空记忆(Wang et al., 2021b; Cheng & Schwing, 2022)等技术利用时间相关性。最近的努力,如UniVS(Li et al., 2024),提出了用于各种分割任务的统一模型,利用先前帧特征作为视觉提示。然而,这些方法在细粒度部分分割和泛化到未见数据集方面存在困难(Zhang et al., 2023b)。Bekuzarov et al.(2023)利用时空记忆模块和帧选择机制,通过部分注释实现了高质量的视频部分分割。然而,它需要来自同一视频的帧注释,这使得大规模视频分割变得复杂。相比之下,我们只需要几个任意选择的图像的分割参考,就可以对一个未见的给定视频进行分割,尊重分割参考。因此,在我们的方法中不需要每个视频的手动注释。

视频扩散模型

最近,扩散模型(Ho et al., 2020; Song et al., 2020a,b)因其训练稳定性和在各种文本到图像(T2I)方法中的应用(Ramesh et al., 2021, 2022; Saharia et al., 2022; Balaji et al., 2022)而受到欢迎,取得了令人印象深刻的结果。视频生成(Le Moing et al., 2021; Ge et al., 2022; Chen et al., 2023b; Cong et al., 2023; Yu et al., 2023; Luo et al., 2023)可以被视为图像生成的扩展,具有额外的时间维度。最近的视频生成模型(Singer et al., 2022; Zhou et al., 2022; Ge et al., 2023; Nag et al., 2023; Cong et al., 2024)试图通过膨胀T2I UNet将成功的文本到图像生成模型扩展到时空领域。VDM(Ho et al., 2022)采用膨胀的UNet进行去噪,而LDM(Blattmann et al., 2023)在潜在空间中实现视频扩散模型。视频扩散模型可以分为基于反演和无反演的方法。基于反演的方法(Cong et al., 2024; Jeong & Ye, 2023)使用DDIM反演来控制注意力特征,确保时间一致性,而无反演方法(Zhang et al., 2023c)则更注重更灵活的条件、更广泛的兼容性和更好的生成质量。然而,无反演方法可能会因缺乏DDIM反演指导而出现闪烁。最近的工作(Wang et al., 2024; Zhu et al., 2024)探索了无反演的T2V扩散模型以在视频中分割对象,但它们无法生成细粒度的段,并且经常产生闪烁的分割结果。在此基础上,我们的方法解决了视频部分分割的根本问题,结合了无反演模型和点跟踪算法(Karaev et al., 2023),生成一致、可泛化、无闪烁的分割。

3 预备知识

图2:SMITE管道。在推理过程中(a),我们通过迭代添加噪声将给定视频反转为噪声潜在表示。然后,我们使用膨胀的U-Net去噪器(b)以及训练好的文本嵌入作为输入来去噪段。一个跟踪模块通过时空指导确保生成的段在空间和时间上保持一致。视频潜在表示zt通过跟踪能量Etrack(c)进行更新,使段在时间上保持一致,并通过低频正则化器(d)Ereg引导模型实现更好的空间一致性。

潜在扩散模型和WAS图

膨胀UNet

T2I扩散模型(如LDM(Rombach et al., 2022))通常使用UNet(Ronneberger et al., 2015)架构,包括下采样阶段,随后是带有跳跃连接的上采样。该架构由分层的2D卷积残差块、空间注意力块和结合文本提示嵌入的交叉注意力块组成。为了将T2I模型扩展到T2V任务,卷积残差块和空间注意力块被膨胀。根据早期方法(Cong et al., 2024; Wu et al., 2022),残差块中的3×3卷积核调整为1×3×3,通过引入伪时间通道。为了增强时间一致性,我们将空间自注意力机制进一步扩展到时空域。原始的空间自注意力方法关注单帧内的补丁。然而,在膨胀的UNet中,我们使用整个视频的所有补丁嵌入作为查询、键和值。这允许对视频上下文进行全面理解。此外,我们在新的密集时空注意力块中重用原始空间注意力块的参数。

4 方法

在这里,我们首先介绍并形式化我们的方法(SMITE),该方法旨在通过一个或多个参考图像实现具有不同粒度的时间一致视频分割(第4.1节)。为了实现这一点并捕捉细粒度段,我们首先提出了一种应用于膨胀UNet的新训练策略(第4.2节)。从膨胀UNet获得的分割可能缺乏时间一致性。为了解决这个问题,我们采用了一种由跟踪方法引导的投票机制,该方法投影到注意力图上。然而,仅依赖跟踪来调整段可能会导致偏离提供的样本。为了缓解这个问题,我们结合了一种基于频率的正则化技术,以保持帧间详细的分割(第4.3节)。由于跟踪和基于频率的正则化可能会将分割拉向不同的方向,我们使用基于能量的指导优化技术来平衡这两种方法(第4.4节)。

问题设置

我们的框架:我们使用Stable Diffusion(SD)的语义知识来学习由少数图像定义的段,然后将它们推广到任何姿势、颜色或大小的对象视频中。这意味着模型需要在帧之间共享信息以强制时间一致性。与Khani et al.(2024)中使用的UNet结构不同,我们在时间维度上对T2I模型进行膨胀(Wu et al., 2022),以实现所有视频帧之间的时间注意力。此外,我们结合了一个跟踪模块和低频正则化,以增强帧间的时空一致性。我们模型的整体推理管道SMITE如图2所示。

学习可泛化的段

我们首先通过优化每个参考图像段的文本嵌入来学习参考图像提供的段,这些嵌入可用于分割给定的视频。我们还微调SD的交叉注意力,以更好地匹配提供的段,因为仅文本嵌入可能无法完全捕捉掩码的细节。

时间一致性

为了增强时间一致性,我们在SMITE的膨胀UNet去噪器中使用时间注意力。尽管与独立帧处理相比,它提高了时间一致性(图3(a)),但由于需要在不同粒度上进行分割,通常具有不精确的边界,这些不一致性可能导致闪烁或不自然的过渡(图3(b))。

图3:最佳查看方式为Adobe Acrobat。

图4:段跟踪模块确保段在时间上保持一致。它使用cotracker跟踪对象段(这里是鼻子)的每个点,然后在不同时间步找到该段的点对应关系(用蓝点表示)。当跟踪点属于不同类别(例如,面部)时,通过使用时间投票来恢复。然后,误分类的像素被相邻帧的邻近像素的平均值替换。这导致时间上一致的段,没有可见的闪烁。

段跟踪和投票:确保段一致性的第一步是跨时间跟踪段。点跟踪方法如CoTracker(Karaev et al., 2023)非常适合我们的方法,因为它们使用点对应关系来最小化像素随时间的漂移。然而,由于我们的段来自注意力图,跟踪需要直接在这些图上进行。由于CoTracker是在空间域上训练的,我们首先在视频V的帧上使用滑动窗口应用它,通过简单缩放将结果投影到注意力图上,然后相应地更新注意力图。注意力图上的像素标签根据其在窗口内可见帧中接收到的最频繁标签进行更新。形式上,对于时间步tt的帧潜在上的坐标为(xt​,yt​)的像素,其在窗口内所有后续帧潜在上的坐标可以通过跟踪器推导。坐标被链接,轨迹序列可以表示为:

其中CE(.)表示交叉熵目标。这种优化确保在整个视频中纠正段漂移,使其在时间上保持一致且闪烁较少。

低通正则化:当应用跟踪时,标签修改应在多个去噪步骤中重复,以确保完整的时间标签传播并实现更好的一致性。此过程可能会导致偏离初始去噪步骤中由参考图像捕获的段(S)。我们的目标是保留WAS图中段S的整体结构,同时通过跟踪平滑边界过渡以实现时间一致性。低通滤波器(LPF)在视频生成中有效保持时间相关性和空间帧结构(Wu et al., 2023; Si et al., 2024)。因此,我们在最终去噪段S上使用LPF,确保初始去噪步骤中预测的段Sref​的结构得到尊重,由以下函数表示:

时空指导

我们的总体能量函数通过反向传播扩散过程进行最小化,如Chen et al.(2023a);Safaee et al.(2023)所述,更新潜在表示以实现时间上更一致的分割:

5 结果和实验

数据集和基准

为了评估我们的方法,我们引入了一个名为SMITE-50的基准数据集,主要来源于Pexels。SMITE-50具有多粒度注释,包括姿势变化和遮挡等视觉挑战场景。据我们所知,现有数据集没有专门关注多粒度和多段注释。虽然PumaVOS数据集(Bekuzarov et al., 2023)包含有限数量的多部分注释视频,涵盖了多样化的范围,但它没有提供特定粒度和类别的多个视频。

图5:SMITE-50数据集样本。

我们关注三个主要类别:(a)马,(b)人脸,和(c)汽车,共包含41个视频。每个子集包括十个用于训练的分割参考图像和用于测试的密集注释视频。粒度从人眼到动物头部不等,适用于各种应用,如视觉效果(见图5)。所有段均与现有数据集中使用的部分名称一致标注。此外,我们提供了九个具有无法用自然语言描述部分的挑战性视频,如图3(非文本)所示。总体而言,我们的数据集包含50个视频剪辑,每个剪辑至少五秒长。对于密集注释,我们采用了与Ding et al.(2023);Bekuzarov et al.(2023)类似的方法,每第五帧创建掩码,平均每帧包含六个部分,跨三种粒度类型(更多信息见附录)。虽然PumaVOS数据集(Bekuzarov et al., 2023)有8%的注释,但我们的SMITE-50数据集有20%的密集注释。

评估协议

在我们的设置中,每个类别使用少数参考图像训练SMITE,然后在训练数据中但不是同一对象的视频上进行评估。对于所有情况,我们报告标准指标(越高越好):平均交并比(mIOU)和轮廓准确性Fmeasure​。

定量比较

由于没有适用于我们设置的少样本视频部分分割方法,我们构建了以下两个最先进的基线进行定量比较:(1)基于少样本图像分割的方法,其中SLiMe(Khani et al., 2024)逐帧应用于视频。我们称之为Baseline-1。(2)Grounded SAM2(Ren et al., 2024;Ravi et al., 2024),一种最近引入的用于视频分割的零样本基础模型方法,直接应用于视频。对于Baseline-1,我们应用相同的训练程序并使用SMITE-50数据集。如表1所示,我们的方法在所有类别和所有指标上均产生了最准确的结果。

图6:与其他方法的视觉比较表明,SMITE在段的运动一致性上表现更好,并提供了更干净、更准确的分割。GSAM2和Baseline-I都难以准确捕捉马的鬃毛,GSAM2还漏掉了一条腿(左),而我们的方法产生了更精确的结果。此外,两种替代技术在下巴周围产生了伪影(右),而SMITE则提供了更干净的分割。

表1:在SMITE-50数据集上的定量评估。结果针对每个类别(面部、马、汽车、非文本)在训练期间使用10个参考图像进行展示。

一般来说,XMem++(Bekuzarov et al., 2023)无法在我们的设置中使用,因为我们不想使用提供的视频的任何帧。然而,在附录中,我们在其提出的数据集PUMaVOS的一个子集上与XMem++进行了比较,以提供对比,并展示我们的方法在SMITE-50之外的数据集上的有效性。尽管XMem++是一种半监督技术,但我们的方法在较少帧数(例如,单次拍摄)下表现相当甚至优于它。当XMem++每视频提供更多帧(例如,10帧)时,其性能略高于我们,这是预期的,因为SMITE不需要任何实质性的视频预训练。然而,在较少帧数(例如,一帧或五帧)下,我们的方法要么优于或匹配XMem++的性能。此外,我们在附录中报告了图像分割任务的性能,显示我们优于SLiMe(Baseline-I),突出了我们设计选择的有效性,包括交叉注意力优化。

表2:损失消融。当两种损失结合时,达到最佳性能。
表3:交叉注意力优化提高了分割质量。

定性比较

定性比较如图6所示。GSAM2难以准确定位边界并产生粗糙的段。SLiMe通常可以准确分割第一帧,但难以保持时间一致性。我们的方法在分割质量和时间一致性方面产生了最佳的分割图。地图具有更清晰的边界和干净的聚类,优于其他方法。我们的SMITE在性能上优于其SLiMe对应方法。在图7中,我们展示了其他类别的结果,展示了我们的模型在处理各种对象类别时的多功能性。如图所示,尽管视频和注释图像之间在姿势、表情、性别和其他属性上存在显著差异,我们的方法仍能提供高质量的结果。这在菠萝示例中尤为明显,尽管对象被切成两半,但方法仍能成功跟踪并生成准确的分割。对于更具挑战性的情况,我们在图8中提供了来自其他困难视频的结果。在一个实例中,冰淇淋筒被纸巾遮挡,冰淇淋本身被面部遮挡和混合,但SMITE仍能生成正确的结果。此外,乌龟几乎与背景在颜色和视觉模式上融合,但我们的方法成功跟踪了段。

消融研究

为了展示我们设计选择的有效性,我们进行了三次消融研究。汽车数据集上的第一次消融(表2)表明,结合ETracking和EReg提高了结果。重要的是,没有低通正则化的跟踪会导致不满意的结果,因为结果往往过于接近投票方法。表3显示了交叉注意力调优对汽车数据集的影响。通过优化交叉注意力和文本嵌入,我们实现了最高的准确性,展示了我们调优策略的有效性。我们还消融了用于训练我们少样本设置的图像数量k=1/5/10。尽管随着更多训练图像,我们的性能有所提高,但我们在单次设置下仍表现良好(表4)。

表4:在SMITE-50中对汽车进行少样本消融。随着更多训练图像,性能提高,但在单次设置下仍表现良好。
表5:用户研究。我们在文本和非文本类别中均排名最佳。

用户研究

我们进行了一项用户研究,因为人类的判断在评估感知时是最好的,当时间和分割的忠实度都很重要时。我们收集了16个分割视频(4个来自非文本类别),并要求40名参与者根据分割质量和运动一致性对方法进行排名(即1最好,3最差),鼓励他们在运动一致性相同时优先考虑分割质量。我们没有报告非文本段上GSAM2的分数,因为视频中的段无法用文本描述。表5显示,SMITE在文本和非文本分割方面都获得了更高的偏好。

图7:额外结果。我们展示了SMITE模型(在参考图像上训练)在各种具有挑战性的姿势、形状,甚至在切割形状中的泛化能力。

图8:在具有挑战性的场景中的分割结果。SMITE准确地分割出被遮挡(“冰淇淋”)或伪装(“乌龟”)的对象,突显了我们分割技术的鲁棒性。

6 结论

在这项工作中,我们介绍了SMITE,一种支持视频中对象灵活粒度分割的技术。SMITE利用预训练文本到图像扩散模型的语义知识,通过最少量的额外训练(即仅几个图像)对视频进行分割,同时利用视频的时间一致性来保持段内的运动一致性。值得注意的是,SMITE可以训练几个不一定来自视频的图像,但仍能有效地分割未见视频中的对象。为了更好地展示我们方法的能力,我们还收集了一个名为SMITE-50的灵活粒度数据集,该数据集将与我们的代码一起公开发布。通过各种定量和定性实验以及用户研究,我们展示了我们方法及其组件的有效性。然而,我们的方法仍面临一些限制,这为未来的工作提供了有趣的方向。具体来说,当目标对象或段太小时,SMITE的表现不佳,并且在处理低视频分辨率时性能下降。解决这些问题为未来的研究提供了有趣的方向。此外,虽然我们使用Co-tracker来跟踪段,但探索其他跟踪系统并评估其性能将是有价值的。

附录

SMITE-50数据集

SMITE-50是一个视频数据集,涵盖了具有多个对象部分在困难场景中分割的挑战,如遮挡。它包含50个视频,最长20秒,从24帧到400帧不等,具有不同的纵横比(垂直和水平)。数据集的帧样本在主论文的图5中提供。我们的数据集主要包含四个不同的类别:“马”、“人脸”、“汽车”和“非文本”。在这些序列中,“马”和“汽车”的视频是在户外拍摄的,因此具有挑战性的场景包括遮挡、视点变化和快速移动的对象与动态背景场景。“人脸”序列则具有遮挡、尺度变化和更细粒度的部分,这些部分在时间上难以跟踪和分割。“非文本”类别包含无法用自然语言提示描述部分的视频。因此,这些视频对于依赖文本词汇进行分割的零样本视频分割方法(Ren et al., 2024)来说是困难的。SMITE-50是一个正在进行的工作,我们打算将其扩展到目前包含的内容之外,并公开发布。

额外消融

在PUMaVOS上的性能和与XMem++的比较:在这里,我们在其提出的数据集PUMaVOS上与XMem++进行了比较,以展示我们的方法在SMITE-50之外的数据集上的有效性。对于此评估,我们考虑了以下七个视频分割:ChairFull face 1Full face 2Half face 1Half face 2Long Scene scale_和_Vlog。我们选择了这些类别,因为这些视频中的对象部分不太小,并且具有灵活的粒度。请注意,XMem++是一种半监督视频分割技术,这意味着它已经在大规模视频分割数据集(如DAVIS(Pont-Tuset et al., 2017)或YoutubeVOS(Xu et al., 2018))上进行了训练。尽管如此,SMITE在较少帧数(例如,单次拍摄)下表现相当甚至优于它(见表6)。当XMem++每视频提供更多帧(例如,10帧)时,其性能略高于我们,这是预期的,因为SMITE不需要任何实质性的视频预训练。然而,在较少帧数(例如,一帧或五帧)下,我们的方法要么优于或匹配XMem++的性能。参见表6和表7,了解定量比较。

额外定性结果

我们在项目网页上包含了定性比较视频,以提供更多视频格式的示例。实际视频分辨率更高,我们压缩了视频以便轻松上传到网站。

实现细节和设计选择解释

所有实验均在单个NVIDIA RTX 3090 GPU上进行。在训练阶段,我们首先仅优化文本嵌入100次迭代。在后续迭代中,我们优化交叉注意力的to_k和to_v参数。对于马、汽车、人脸和非文本类别,我们使用SMITE-50基准的10个参考图像进行训练。

关于跟踪模块中的窗口大小,我们发现快速移动的对象受益于较小的窗口大小以减少潜在偏差。因此,我们将马的窗口大小设置为7,其他类别的窗口大小设置为15。为了更好地处理较小的对象,我们采用两步方法。首先,我们的模型生成初始分割估计。然后,我们裁剪图像围绕此初始估计,并重新应用我们的方法以获得更细粒度的分割。

在推理过程中,我们添加了对应于100个时间步的噪声,并在未使用段跟踪和投票时进行单次去噪传递。当使用段跟踪和投票时,我们在每个去噪步骤中应用时空指导,并进行15次反向传播。对于正则化参数,我们在所有实验中设置λReg。跟踪参数λTracking​对马设置为1,对人脸设置为0.5,对汽车设置为0.2或1。此外,我们应用了阈值为0.4的离散余弦变换(DCT)低通滤波器。

时间投票的伪代码

def temporal_voting(X, W):
    X_s = correspondence of X at frame s (obtained by CoTracker(X, s))
    Vis(X_s, s): visibility of X_s (obtained by CoTracker)
    Visible_Set = {i in range(-W/2, W/2) if Vis(X_s, i) == 1}
    P = Most.Occurrence(S(X_i).argmax(dim=0)) where i in Visible_Set
    total = 0, count = 0
    for p in Visible_Set:
        if S(X_i).argmax(dim=0) == P:
            total += S(X_i)
            count += 1
    S_tracked(X) = total / count

双向跟踪和CoTracker中的分辨率降低:请注意,在查询帧之前,不同帧查询的点跟踪不正确。这是因为CoTracker是一种在线算法,仅在一个方向上跟踪点。然而,我们也可以从查询点向后运行它以双向跟踪。因此,通过将_backward_tracking_设置为True,我们能够在两个方向上跟踪点,这对于我们的投票机制至关重要。还解释了512512和减少到6464。

长视频处理:我们的一个关键目标是使我们的方法能够在较小的GPU上高效工作。与大多数需要高端硬件(如A100 GPU)并通常处理最多24帧的视频编辑技术不同,我们的方法旨在更广泛地适用。我们发现,推理优化期间的梯度计算对资源要求特别高。为了解决这个问题,我们将潜在空间分割成不同时间步的小窗口——例如,(1到k),(k+1到2k),(2k+1到3k),等等——并独立优化每个窗口。这种分割已被证明不会影响最终结果。此外,对于一致分割200帧的任务,我们的方法允许每次处理20帧。然后我们保存最后7帧的WAS,并在新迭代中用参考的WAS替换它们。这些策略使我们的模型能够在具有24 GB VRAM的GPU上有效处理更长的视频。

加速收敛:在代码中加速收敛和简化参数调优的策略涉及使用类似于Adam的优化方法,该方法动态调整潜在变量的学习率和梯度更新。具体来说,代码实现了第一和第二矩估计,分别表示为M1和M2,它们分别累积梯度和平方梯度。

这种自适应方法允许优化器根据梯度的方差在每个参数基础上调整学习率,从而实现更快的收敛。通过使用这种方法,优化器可以在梯度一致时采取较大的步长,在梯度噪声时采取较小的步长,这有助于避免过冲或陷入局部最小值。动量更新和动态学习率缩放的结合使优化过程更加稳健,减少了手动调优超参数(如学习率)的需求,并实现了更高效的收敛。

双向跟踪:我们使用双向跟踪而不是单向跟踪有两个主要原因。首先,为了管理更长的视频,我们实现了一种切片方法,其中第一切片的最后帧保留在第二切片中以确保连续性。双向跟踪通过允许第二切片中的新帧直接引用第一切片中的帧来加速切片之间的一致性,而单向跟踪由于需要更新传播而延迟了这一过程。其次,跟踪方法通常在快速移动的对象上表现不佳,因为距离查询像素越远,准确性越低,存在丢失跟踪的风险。双向跟踪在这些情况下增强了鲁棒性。此外,在遮挡情况下,单向跟踪可能在没有可见像素传播信息时失败。双向跟踪通过利用过去和未来帧的数据来缓解这种情况,即使在遮挡期间也能保持准确性。

图像分割结果

我们在图像数据集(如PASCAL-Part(Chen et al., 2014))上测试了我们的方法,以展示通过修改我们的架构和优化所实现的改进。如表8和表9所示,我们的方法在PASCAL-Part数据集的汽车和马分割上显著优于SLiMe,突出了SMITE中设计选择的有效性,特别是交叉注意力调优。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Together_CZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值