摘要
我们推出了Segment Anything Model 2(SAM 2),这是一个用于解决图像和视频中可提示视觉分割的基础模型。我们构建了一个数据引擎,通过用户交互来提升模型和数据质量,从而收集到迄今为止最大的视频分割数据集。我们的模型是一个简单的带有流式记忆的Transformer架构,用于实时视频处理。在我们的数据上训练的SAM 2在各种任务中表现出色。在视频分割方面,我们观察到更高的精度,且与以往方法相比,交互次数减少了3倍。在图像分割方面,我们的模型比Segment Anything Model(SAM)更准确,速度提高了6倍。我们相信,我们的数据、模型和见解将成为视频分割及相关感知任务的一个重要里程碑。我们将发布我们的主模型、数据集以及模型训练和演示的代码。
引言
Segment Anything(SA)于2023年引入了一个用于图像可提示分割的基础模型(Kirillov等人,2023)。然而,图像只是现实世界的一个静态快照,其中视觉分割对象可能会表现出复杂的运动。随着多媒体内容的快速增长,其中很大一部分现在是以时间维度记录的,特别是在视频数据中。许多在AR/VR、机器人技术、自动驾驶汽车和视频编辑等领域的关键应用都需要超越图像级分割的时间定位。我们相信一个通用的视觉分割系统应该能够同时适用于图像和视频。
视频中的分割旨在确定实体的时空范围,这带来了图像分割所没有的独特挑战。由于运动、变形、遮挡、光照变化和其他因素,实体的外观可能会发生显著变化。由于相机运动、模糊和分辨率较低,视频的质量通常比图像低。此外,高效处理大量帧是一个关键挑战。尽管SA成功地解决了图像分割问题,但现有的视频分割模型和数据集在提供“在视频中分割任何内容”的能力方面仍存在不足。
我们介绍了Segment Anything Model 2(SAM 2),这是一个用于视频和图像分割的统一模型(我们将图像视为单帧视频)。我们的工作包括一个任务、一个模型和一个数据集(见图1)。
图1 我们介绍了Segment Anything Model 2(SAM 2),旨在解决可提示视觉分割任务。通过我们的基础模型(b)进行训练,该模型基于我们通过数据引擎收集的大型SA-V数据集(c)。SAM 2能够通过在单个或多个视频帧上利用提示(点击、框或掩码)进行交互式区域分割,它使用流式记忆来存储之前的提示和预测。
我们专注于将图像分割推广到视频领域的可提示视觉分割(Promptable Visual Segmentation,PVS)任务。该任务以视频的任何一帧上的点、框或掩码作为输入,以定义感兴趣的分割对象,预测其时空掩码(即“掩码片段”)。一旦预测出掩码片段,就可以通过在额外帧中提供提示来迭代细化。
我们的模型(第4节)在单张图像和视频帧中生成感兴趣对象的分割掩码。SAM 2配备了一个存储有关对象和先前交互信息的内存,这使得它能够在整个视频中生成掩码片段预测,并且还可以根据之前观察到的帧中存储的对象记忆上下文有效地纠正这些预测。我们的流式架构是将SAM自然推广到视频领域的结果,一次处理一帧视频,并配备了一个记忆注意力模块,以关注目标对象的先前记忆。当应用于图像时,内存为空,模型表现得像SAM。我们使用一个数据引擎(第5节),通过让标注者与我们的模型交互来生成训练数据,以交互式地标注新的和具有挑战性的数据。与大多数现有的视频分割数据集不同,我们的数据引擎不限制特定类别的对象,而是旨在提供用于分割任何具有有效边界的对象的训练数据,包括部件和子部件。与现有的模型辅助方法相比,我们的带有SAM 2的数据引擎在相当质量下快了8.4倍。我们的最终Segment Anything Video(SA-V)数据集(第5.2节)包含50.9K视频中的3550万个掩码,比任何现有的视频分割数据集多53倍的掩码。SA-V数据集具有挑战性,其中包含在视频中被遮挡和重新出现的小对象和部件。我们的SA-V数据集地理分布广泛,对SAM 2的公平性评估表明,在基于感知性别的视频分割中性能差异最小,在我们评估的三个感知年龄组之间几乎没有差异。
我们的实验(第6节)表明,SAM 2在视频分割体验方面取得了突破性进展。SAM 2可以在使用比以往方法少3倍的交互次数的情况下,产生更好的分割精度。此外,SAM 2在既定的视频目标分割基准测试中,在多种评估设置下超越了以往的工作,并且在图像分割基准测试中,与SAM相比表现更好,速度提高了6倍。通过众多零样本基准测试(包括17个视频分割和37个单图像分割)观察到的各种视频和图像分布,SAM 2被证明是有效的。
我们将在许可的开源许可下发布我们的工作,包括SA-V数据集(CC by 4.0)、SAM 2模型检查点、训练代码(Apache 2.0)以及我们交互式在线演示的代码(Apache 2.0)。
相关工作
图像分割
Segment Anything引入了一个可提示的图像分割任务,目标是根据输入提示(如指向感兴趣对象的边界框或点)输出一个有效的分割掩码。在SA-1B数据集上训练的SAM能够进行零样本分割,这促使其被广泛应用于各种领域。近期的研究对SAM进行了扩展,例如引入高质量输出标记以训练精细掩码,或者提升SAM的效率。更广泛地,SAM被应用于众多领域,包括医学成像、遥感、运动分割和伪装目标检测等。
交互式视频目标分割(iVOS)
交互式视频目标分割作为一种关键任务,能够在用户引导下高效地获取视频中的目标分割(掩码片段),用户引导通常以涂鸦、点击或边界框的形式呈现。一些早期的方法采用基于图的优化来指导分割标注过程。近期的方法通常采用模块化设计,将用户输入转换为单帧上的掩码表示,然后将其传播到其他帧。基于点击的输入对于交互式视频分割来说更容易收集。近期的研究将图像上的SAM与基于掩码的视频跟踪器或基于点的跟踪器相结合。然而,这些方法存在局限性:跟踪器可能无法适用于所有目标,SAM在视频帧上的表现可能不佳,并且除了在每一帧中使用SAM重新标注并从那里重新开始跟踪外,没有机制可以交互式地修正模型的错误。
我们的工作与这些研究的目标一致,即交互式地在视频中分割目标,我们构建了一个强大的统一模型,直接接受用于交互式视频分割的提示,并且为了实现这一目标,我们还构建了一个庞大且多样化的数据集。
视频目标分割(VOS)
VOS任务从第一帧中的目标掩码作为输入开始,该掩码必须在整个视频中被准确跟踪。由于输入掩码可以被视为仅在第一帧可用的目标的监督信号,因此该任务被称为“半监督VOS”。由于与视频编辑或机器人技术等应用相关,该任务受到了广泛关注。
早期基于深度学习的方法通常在第一帧上进行在线微调以适应目标对象。为了实现更快的推理,离线训练的模型仅基于第一帧或结合前一帧进行条件训练。这种多条件训练已扩展到所有帧,使用RNN和Transformer。半监督VOS可以被视为我们的可提示视觉分割(PVS)任务的一个特例,仅在第一帧中有掩码提示。值得注意的是,在VOS中,标注第一帧中所需的高质量目标掩码在实际中具有挑战性且耗时。
视频分割数据集
许多数据集被提出以支持VOS任务。早期的VOS数据集(如DAVIS)包含高质量标注,但其规模限制了基于深度学习的方法。YouTube-VOS是第一个大规模的VOS数据集。随着算法的改进和基准性能的饱和,研究人员通过专注于遮挡、长视频、极端变换、目标多样性和场景多样性来增加VOS任务的难度。
我们发现当前的视频分割数据集在实现“在视频中分割任何内容”的能力方面覆盖不足。它们的标注通常涵盖整个目标(而不是部分),并且数据集通常围绕特定目标类别(如人物、车辆和动物)展开。与这些数据集相比,我们发布的SA-V数据集不仅关注整个目标,还广泛覆盖目标部件,并且包含超过一个数量级更多的掩码。
任务:可提示视觉分割
图2 使用SAM 2进行交互式分割。步骤1(选择):我们在第1帧提示SAM 2以获得目标对象(舌头)的分割。绿色/红色点分别表示正/负提示。SAM 2自动将分割传播到后续帧(蓝色箭头)以形成掩码片段。如果SAM 2在第2帧之后丢失了目标对象,我们可以通过在新帧中提供额外的提示(红色箭头)来纠正掩码片段。步骤2(细化):在第3帧中的一次点击足以重新找回目标对象并将其传播以获得正确的掩码片段。如果采用分离的SAM+视频跟踪器的方法,则需要在第3帧中进行多次点击(如同在第1帧中一样),以正确重新标注目标对象,因为分割是从头开始重新进行的。凭借SAM 2的记忆功能,一次点击就可以找回舌头。
我们的PVS任务允许在视频的任何一帧上向模型提供提示。提示可以是正/负点击、框或掩码,用于定义要分割的对象或细化模型预测的对象。为了提供交互式体验,在特定帧上接收到提示后,模型应立即响应并输出该帧上目标对象的有效分割掩码。在接收到初始提示(无论是在同一帧还是不同帧)后,模型应将这些提示传播到整个视频中,以获得目标对象的掩码片段,并在每一帧上定位目标的分割掩码。可以在任何一帧上向模型提供额外的提示,以在整个视频中细化分割(如图2所示)。关于任务的详细信息,请参见附录B。
SAM 2(第4节)被应用于PVS任务,作为构建我们SA-V数据集(第5节)的数据收集工具。我们通过模拟多帧交互式视频分割场景来评估模型(第6节),这包括在传统半监督VOS设置中仅限于第一帧的标注,以及在SA基准测试中的图像分割。
模型
SAM 2(图3)可以被视为将SAM推广到视频(和图像)领域的模型,它在单个帧上接受点、框和掩码提示,以在时空维度上定义要分割对象的空间范围。在空间上,模型的行为与SAM类似。一个可提示且轻量级的掩码解码器接收图像嵌入和提示(如果有),并输出该帧的分割掩码。可以在一帧上迭代添加提示,以细化掩码。
SAM 2解码器所使用的帧嵌入并非直接来自图像编码器,而是基于过去的预测和提示帧的记忆进行条件化的。提示帧也可以相对于当前帧“来自未来”。帧的记忆由记忆编码器根据当前预测创建,并存储在记忆库中,供后续帧使用。记忆注意力操作将图像编码器的每帧嵌入与记忆库进行条件化,然后掩码解码器将其摄取以形成预测。
我们在下面描述各个组件及其训练过程,并在附录D中提供更多详细信息。
图像编码器。为了实时处理任意长度的视频,我们采用流式处理方法,随着视频帧的可用性逐帧处理。图像编码器在整个交互过程中只运行一次,其作用是为每一帧提供未经过条件化的标记(特征嵌入)。我们使用了一个经过MAE(He等人,2022)预训练的Hiera(Ryali等人,2023;Bolya等人,2023)图像编码器,该编码器是分层的,这使得我们能够在解码过程中使用多尺度特征。
图3 SAM 2架构。对于给定的一帧,分割预测是基于当前提示和/或之前观察到的记忆进行条件化的。视频以流式方式处理,图像编码器逐帧消费帧,并将它们与之前帧中目标对象的记忆进行交叉注意力操作。掩码解码器(可选地也接收输入提示)预测该帧的分割掩码。最后,记忆编码器将预测和图像编码器嵌入(图中未显示)转换,以便在后续帧中使用。
记忆注意力。记忆注意力的作用是将当前帧的特征基于过去帧的特征和预测以及任何新提示进行条件化。我们堆叠了L个Transformer块,第一个块以当前帧的图像编码作为输入。每个块执行自注意力操作,随后对存储在记忆库(见下文)中的(提示/未提示)帧的记忆和目标指针(见下文)进行交叉注意力操作,最后通过一个MLP。我们使用标准的注意力操作来进行自注意力和交叉注意力,这使我们能够受益于最近在高效注意力内核方面的进展。
提示编码器和掩码解码器。我们的提示编码器与SAM的完全相同,可以通过点击(正或负)、框或掩码来定义给定帧中对象的范围。稀疏提示通过位置编码与每种提示类型的学习嵌入相加来表示,而掩码则通过卷积嵌入并与帧嵌入相加。
我们的解码器设计在很大程度上遵循SAM。我们堆叠了“双向”Transformer块,用于更新提示和帧嵌入。与SAM一样,对于模糊提示(即单次点击),可能存在多个兼容的目标掩码,我们预测多个掩码。这种设计对于确保模型输出有效掩码至关重要。在视频中,模糊性可能会跨越多个视频帧,模型在每一帧上都预测多个掩码。如果没有后续提示解决这种模糊性,模型仅传播当前帧预测的最高IoU的掩码。
与SAM不同,在SAM中,给定一个正提示时总有一个有效的对象可以分割,但在PVS任务中,某些帧上可能不存在有效的对象(例如,由于遮挡)。为了支持这种新的输出模式,我们增加了一个额外的头部,用于预测当前帧上是否存在感兴趣的对象。
另一个新特性是从我们的分层图像编码器(绕过记忆注意力)添加跳跃连接,以引入用于掩码解码的高分辨率嵌入(见第D节)。
记忆编码器。记忆编码器通过使用卷积模块对输出掩码进行下采样,并将其逐元素与图像编码器的未条件帧嵌入相加(图3中未显示),随后通过轻量级卷积层融合信息,从而生成记忆。
记忆库。记忆库通过维护最多N个最近帧的记忆的先进先出队列以及最多M个提示帧的提示信息的先进先出队列,保留视频中目标对象的过去预测信息。例如,在VOS任务中,初始掩码是唯一的提示,记忆库始终保留第一帧的记忆以及最多N个最近(未提示)帧的记忆。这两组记忆都以空间特征图的形式存储。
除了空间记忆外,我们还存储一个轻量级向量的对象指针列表,用于基于每帧掩码解码器输出标记的目标的高级语义信息。我们的记忆注意力同时对空间记忆特征和这些对象指针进行交叉注意力操作。
我们将时间位置信息嵌入到N个最近帧的记忆中,使模型能够表示目标的短期运动,但不嵌入到提示帧的记忆中,因为提示帧的训练信号更稀疏,且在推理设置中,提示帧可能来自与训练期间看到的非常不同的时间范围,因此更难泛化。
训练。模型在图像和视频数据上联合训练。类似于之前的研究,我们模拟了对模型的交互式提示。我们采样包含8帧的序列,并随机选择最多2帧进行提示,并且在训练过程中根据真实掩码片段和模型预测,以概率方式接收用于修正的点击。训练任务是顺序地(并且“交互式地”)预测真实掩码片段。
模型的初始提示可以是真实掩码(概率为0.5)、从真实掩码中采样的正点击(概率为0.25),或者是一个边界框输入(概率为0.25)。更多细节请见附录D。
数据
为了开发在视频中“分割任何内容”的能力,我们构建了一个数据引擎,用于收集一个庞大且多样化的视频分割数据集。我们采用了一个与人类标注者协作的交互式模型循环设置。类似于Kirillov等人(2023)的研究,我们不对标注的掩码片段施加语义约束,而是专注于整个对象(例如一个人)和部分对象(例如一个人的帽子)。我们的数据引擎经历了三个阶段,每个阶段根据为标注者提供的模型辅助程度进行分类。接下来,我们将描述每个数据引擎阶段以及我们的SA-V数据集。
1)data engine
阶段1:SAM逐帧标注。初始阶段使用基于图像的交互式SAM来辅助人工标注。标注者使用SAM以及像素级手动编辑工具(如“画笔”和“橡皮擦”)以每秒6帧(FPS)的速度为视频中的每一帧标注目标对象的掩码。在这一阶段,没有跟踪模型参与以辅助掩码在时间维度上的传播。由于这是一个逐帧的方法,所有帧都需要从头开始标注掩码,因此标注过程较慢,在我们的实验中,平均每帧的标注时间为37.8秒。然而,这种方法能够产生高质量的逐帧空间标注。在这一阶段,我们收集了1.4K视频中的16K个掩码片段。我们还使用这种方法标注我们的SA-V验证集和测试集,以减少在评估过程中SAM 2可能出现的潜在偏差。
阶段2:SAM+SAM 2掩码。第二阶段将SAM 2引入循环,SAM 2仅接受掩码作为提示。我们称这一版本为SAM 2掩码。标注者使用SAM和第一阶段中的其他工具在第一帧中生成空间掩码,然后使用SAM 2掩码将标注的掩码在时间维度上传播到其他帧,以获得完整的时空掩码片段。在任何后续视频帧中,标注者可以通过使用SAM从头开始标注掩码、“画笔”和/或“橡皮擦”来空间修改SAM 2掩码所做的预测,并使用SAM 2掩码重新传播,重复这一过程直到掩码片段正确。SAM 2掩码最初在第一阶段的数据和公开可用的数据集上进行训练。在第二阶段,我们使用收集的数据在标注循环中两次重新训练和更新SAM 2掩码。在第二阶段,我们收集了63.5K个掩码片段。标注时间降至每帧7.4秒,比第一阶段快了约5.1倍。尽管标注时间有所改进,但这种方法仍需要在中间帧中从头开始标注掩码,而没有之前的记忆。随后,我们开发了功能完备的SAM 2,它能够在统一模型中实现交互式分割和掩码传播。
阶段3:SAM 2。在最后阶段,我们利用功能完备的SAM 2,它接受各种类型的提示,包括点和掩码。SAM 2能够利用时间维度上对象的记忆来生成掩码预测。这意味着标注者只需要偶尔向SAM 2提供细化点击,以编辑中间帧中预测的掩码片段,而不是使用没有这种记忆上下文的空间SAM从头开始标注。在第三阶段,我们使用收集的标注五次重新训练和更新SAM 2。在第三阶段,每帧的标注时间降至4.5秒,比第一阶段快了约8.4倍。在第三阶段,我们收集了197.0K个掩码片段。
质量验证。为了保持标注的高标准,我们引入了一个验证步骤。另一组标注者负责验证每个标注掩码片段的质量,将其标记为“满意”(正确且一致地跟踪所有帧中的目标对象)或“不满意”(目标对象定义明确且边界清晰,但掩码片段不正确或不一致)。不满意的掩码片段被送回标注流程进行细化。任何跟踪未明确定义对象的掩码片段都被完全拒绝。
自动掩码片段生成。确保标注的多样性对于实现我们模型的“分割任何内容”能力至关重要。由于人类标注者通常更关注显著对象,我们通过自动生掩码片段(称为“Auto”)来补充标注。这既增加了标注的覆盖范围,也有助于识别模型的失败案例。为了生成自动掩码片段,我们在第一帧中使用规则点网格提示SAM 2,生成候选掩码片段。然后将这些候选掩码片段发送到掩码片段验证步骤进行筛选。标记为“满意”的自动掩码片段被添加到SA-V数据集中。被识别为“不满意”(即模型失败案例)的掩码片段会被采样并呈现给标注者,以便在数据引擎的第三阶段中使用SAM 2进行细化。这些自动掩码片段不仅覆盖了大的显著中心对象,还覆盖了背景中大小和位置各异的对象。
分析。表1通过一个对照实验(详细信息见第E.2.2节)展示了每个数据引擎阶段的标注协议的比较。我们比较了每帧的平均标注时间、每个掩码片段的手动编辑帧的平均百分比以及每个点击帧的平均点击次数。为了评估质量,我们定义了阶段1掩码对齐分数,即与阶段1中相应掩码的IoU超过0.75的掩码的百分比。选择阶段1的数据作为参考,因为它具有逐帧高质量的手动标注。在循环中使用SAM 2的阶段3提高了效率并且质量相当:它比阶段1快8.4倍,具有最低的手动编辑帧百分比和每帧点击次数,并且实现了更好的对齐。在表2中,我们展示了在每个阶段结束时在可用数据上训练的SAM 2的性能比较,保持迭代次数固定,因此仅衡量额外数据的影响。我们在我们自己的SA-V验证集上进行评估,并且还在9个零样本基准测试(详细信息见第F.1节)上使用标准的J&F准确度指标(越高越好)进行评估,当在第一帧上提示3次点击时。我们注意到,在迭代地包含每个阶段的数据后,不仅在领域内的SA-V验证集上,而且在9个零样本基准测试上都有一致的改进。
2)SA-Vdataset
SA-V数据集:通过我们的数据引擎收集的SA-V数据集包含50.9K个视频,共有642.6K个掩码片段。在表3中,我们将SA-V数据集的构成与常见的VOS数据集在视频数量、掩码片段数量和掩码数量方面进行了比较。值得注意的是,标注的掩码数量比任何现有的VOS数据集都要多53倍(如果不包括自动标注的掩码,则为15倍),为未来的研究提供了丰富的资源。我们将在一个宽松的许可下发布SA-V数据集。
视频:我们收集了一组由众包工作者拍摄的50.9K个新视频。这些视频包括54%的室内场景和46%的室外场景,平均时长为14秒。这些视频展示了“野外”的多样化环境,并涵盖了各种日常场景。
掩码片段:标注包括190.9K个手动标注的掩码片段和451.7K个使用我们的数据引擎收集的自动标注掩码片段。图4展示了带有手动和自动标注掩码片段叠加的示例视频。与最大的VOS数据集相比,SA-V数据集的掩码数量多出了53倍(如果不包括自动标注的掩码,则为15倍)。在SA-V手动数据集中,掩码片段的消失率(Ding等人,2023)为42.5%,即在至少一帧中消失然后重新出现的标注掩码片段的百分比,这一比例在现有数据集中具有竞争力。
SA-V训练、验证和测试划分:我们根据视频作者(及其地理位置)划分SA-V数据集,以确保相似对象的最小重叠。为了创建SA-V验证集和测试集,我们在选择视频时专注于具有挑战性的场景,并要求标注者识别快速移动、被其他物体复杂遮挡以及具有消失/重现模式的挑战性目标。这些目标使用第5.1节中描述的数据引擎第一阶段设置以每秒6帧(FPS)的速度进行标注。SA-V验证集包含293个掩码片段和155个视频,而SA-V测试集包含278个掩码片段和150个视频。
内部数据集:我们还使用了内部可用的授权视频数据来进一步扩充我们的训练集。我们的内部数据集包括在第5.1节中描述的第二阶段和第三阶段标注的62.9K视频和69.6K掩码片段用于训练,以及使用第一阶段标注的96个视频和189个掩码片段用于测试(内部测试集)。更多关于数据引擎和SA-V数据集的详细信息,包括公平性评估,请参见附录E。
零样本实验
在这里,我们将SAM 2与以往在零样本视频和图像任务上的工作进行比较。我们报告视频任务的标准J&F指标(Pont-Tuset等人,2017)和图像任务的mIoU指标。除非另有说明,本节中的结果遵循我们默认的设置,使用分辨率为1024的Hiera-B+图像编码器,并在数据集的完整组合上进行训练,即表6中的SAM 2(Hiera-B+)(详细信息见第D.2节)。
1)可提示视频分割
我们首先评估可提示视频分割,这涉及到模拟一个类似于用户体验的交互式设置。我们有两种设置:离线评估,其中多次遍历视频以选择基于最大模型误差进行交互的帧;在线评估,其中在单次正向遍历视频时对帧进行标注。这些评估在9个密集标注的零样本视频数据集上进行,每帧使用N点击=3次点击(详细信息见第F.1节)。
我们创建了两个强大的基线模型,SAM+XMem++和SAM+Cutie,它们分别基于视频目标分割的两个最新模型XMem++(Bekuzarov等人,2023)和Cutie(Cheng等人,2023a)。
我们使用XMem++根据一个或多个帧上的掩码输入生成视频分割。SAM用于提供初始掩码或细化输出(通过将当前分割作为掩码提示输入到SAM中)。对于SAM+Cutie基线,我们修改了Cutie,使其能够接受多个帧上的掩码输入。
在图5中,我们报告了在Nframe = 1,...,8个交互帧上平均的J&F准确率。SAM 2在离线和在线评估设置中均优于SAM+XMem++和SAM+Cutie。在所有9个数据集(详见第F.1节的每个数据集的结果)中,SAM 2都优于这两种方法,能够从少量点击中生成高质量的视频分割,并允许通过提示继续细化。总体而言,SAM 2能够以超过3倍更少的交互次数生成更好的分割精度。
2) 半监督视频目标分割
方法
我们评估了半监督视频目标分割(VOS)设置(Pont-Tuset等人,2017),仅在视频的第一帧上使用点击、框或掩码提示。当使用点击提示时,我们在第一帧上交互式地采样1、3或5次点击。
实验设置
类似于第6.1节中的交互式设置,我们与XMem++和Cutie进行比较。对于点击和框提示,我们使用SAM;而对于掩码提示,我们使用它们的默认设置。我们报告标准的J&F准确度(Pont-Tuset等人,2017),除了在VOST(Tokmakov等人,2022)上,我们按照其协议报告J指标。结果见表4。
结果
SAM 2在17个数据集上均优于XMem++和Cutie。这些结果强调了SAM 2不仅在交互式任务中表现出色,而且在传统的非交互式VOS任务中也表现优异,尽管这些任务是为其他方法专门设计的。详细信息见第F.1.3节。
3)图像分割
实验设置
我们在37个零样本数据集上评估SAM 2在“分割任何内容”任务上的表现,其中包括SAM之前用于评估的23个数据集。表5报告了1次点击和5次点击的mIoU指标,并展示了按数据集领域划分的平均mIoU以及在单个A100 GPU上的模型速度(以每秒帧数FPS表示)。
结果分析
-
第一列(SA-23 All):展示了SAM在23个数据集上的准确率。SAM 2在1次点击时的准确率(58.9 mIoU)高于SAM(58.1 mIoU),并且在没有使用任何额外数据的情况下,速度提高了6倍。这主要归功于SAM 2中更小但更有效的Hiera图像编码器。
-
最后一行:展示了在我们的SA-1B和视频数据混合训练后,SAM 2在23个数据集上的平均准确率进一步提高到61.4%。我们还在从SA-23(视频数据集作为图像进行评估,与Kirillov等人(2023)相同)以及我们新增的14个视频数据集上看到了显著的性能提升。
-
详细结果:包括按数据集细分的结果,详见第F.3节。
与半监督VOS领域的最新技术比较
虽然我们的主要关注点是通用的、交互式的可提示视觉分割(PVS)任务,但我们也研究了特定的半监督视频目标分割(VOS)设置(提示是第一帧上的真实掩码),因为这是一个历史上常见的协议。我们评估了两种不同图像编码器大小(Hiera-B+和Hiera-L)的SAM 2版本,它们在速度和准确性之间有不同的权衡。我们在单个A100 GPU上,使用批量大小为1时,测量每秒帧数(FPS)。基于Hiera-B+和Hiera-L的SAM 2分别以43.8和30.2 FPS的实时速度运行。
我们在表6中展示了与现有最新技术的比较,按照标准协议报告准确性。SAM 2在准确性方面显著优于现有的最佳方法。我们观察到,使用更大的图像编码器在各个数据集上都带来了显著的准确性提升。
我们还在SA-V验证集和测试集上评估了现有工作,这些数据集衡量了对“任何”目标类别的开放世界片段的性能。在这一基准测试中进行比较时,我们发现大多数先前的方法在准确性方面达到了类似的峰值。先前工作在SA-V验证集和测试集上的最佳表现显著较低,这表明了与“在视频中分割任何内容”能力之间存在差距。最后,我们看到SAM 2在长期视频目标分割方面也带来了显著的改进,这在LVOS基准测试结果中得到了体现。关于数据和模型的消融实验,请参见附录A。