这篇文章介绍了一个名为 Semantic-SAM 的通用图像分割模型,旨在实现以任意粒度级别进行分割和识别。该模型通过整合多粒度数据集、改进模型架构和训练策略,实现了语义感知和粒度丰富性的双重优势。以下是文章的主要研究内容总结:
1. 研究背景与动机
-
通用图像分割的挑战:现有的图像分割模型在语义感知和粒度多样性方面存在局限性。例如,大多数模型只能处理单一粒度的分割任务(如对象级或部件级),且难以在不同粒度之间迁移知识。
-
数据集的局限性:现有的分割数据集要么缺乏细粒度的语义注释,要么数据量有限,难以支持大规模训练。
-
模型架构的限制:传统的单输入单输出模型架构限制了模型对多粒度分割的预测能力。
2. Semantic-SAM 模型的核心贡献
-
语义感知(Semantic-Awareness):通过整合多个数据集(包括通用分割、部件分割和多粒度掩码数据),模型能够学习丰富的语义信息,并在不同粒度级别之间进行知识迁移。
-
粒度丰富性(Granularity-Abundance):提出了一个多选择学习方案,使得模型能够从单个用户点击生成多个粒度级别的掩码,从而支持多粒度分割任务。
-
联合训练:首次将 SA-1B 数据集与其他经典分割数据集(如 COCO、Pascal Part 等)联合训练,显著提升了模型在多粒度分割任务上的性能。
3. 模型架构与方法
-
多选择学习:通过为每个用户点击生成多个查询,每个查询对应不同的粒度级别,模型能够同时预测多个粒度的掩码。
-
解耦的对象和部件分类:利用共享的文本编码器分别对对象和部件进行分类,从而实现对不同粒度语义的独立学习。
-
多对多匹配策略:在训练过程中,采用匈牙利算法实现多对多匹配,确保单个点击能够生成高质量的多粒度掩码。
4. 实验与结果
-
性能提升:通过在 COCO 和 Pascal Part 数据集上的实验,验证了 Semantic-SAM 在通用分割和部件分割任务上的性能提升。例如,在 COCO 数据集上,与仅使用 SA-1B 数据训练的模型相比,联合训练的模型在框 AP 和掩码 AP 上分别提高了 2.2 和 1.3。
-
多粒度分割能力:在多粒度交互式分割任务中,Semantic-SAM 的 1-IoU@All Granularity 指标显著优于 SAM,表明其能够生成更丰富、更高质量的多粒度掩码。
-
数据集联合训练的优势:实验表明,使用 SA-1B 数据集与其他数据集联合训练可以显著提升模型在小目标检测和部件分割任务上的性能。
5. 可视化与分析
-
多级掩码输出:Semantic-SAM 能够生成从细粒度到粗粒度的多样化掩码,而 SAM 的输出往往较为单一。
-
掩码质量:Semantic-SAM 输出的掩码质量更高,尤其是在处理大掩码时,能够避免 SAM 中常见的伪影问题。
-
语义粒度学习:通过可视化分析,发现模型中的每个内容提示嵌入能够学习到特定的语义粒度级别,从而支持多粒度分割。
6. 结论
Semantic-SAM 是一个能够以任意粒度级别进行分割和识别的通用图像分割模型。通过整合多粒度数据集、采用多选择学习和解耦分类策略,模型在语义感知和粒度丰富性方面表现出色。此外,联合训练 SA-1B 数据集与其他经典分割数据集显著提升了模型的性能,为未来多粒度图像分割任务提供了新的方向。
7. 创新点与意义
-
多粒度分割能力:Semantic-SAM 是首个能够从单个用户输入生成多个粒度掩码的模型,为交互式分割和多粒度理解提供了新的可能性。
-
数据集联合训练:通过整合 SA-1B 和其他经典数据集,模型在多种分割任务上表现出色,展示了大规模多粒度数据集在提升模型泛化能力方面的潜力。
-
语义感知与粒度丰富性的结合:模型不仅能够识别对象和部件的语义信息,还能在不同粒度级别上进行分割,为图像理解提供了更全面的支持。
这篇文章为图像分割领域带来了新的突破,特别是在多粒度分割和语义感知方面,为未来的研究和应用提供了重要的参考。这里是自己的论文阅读记录,感兴趣的话可以参考一下,如果需要阅读原文的话可以看这里,如下所示:
官方项目地址在这里,如下所示:
摘要
本文介绍了 Semantic-SAM,这是一个通用图像分割模型,能够在任何所需的粒度级别上实现分割和识别。我们的模型具有两个关键优势:语义感知和粒度丰富性。为了实现语义感知,我们将多个不同粒度的数据集整合在一起,并在解耦的对象和部件分类上进行训练。这使得我们的模型能够在丰富的语义信息之间实现知识迁移。对于多粒度能力,我们提出了一个多选择学习方案,使得每个点击点能够生成多个级别的掩码,这些掩码对应于多个真实掩码。值得注意的是,这项工作是首次尝试将 SA-1B、通用和部件分割数据集联合训练。实验结果和可视化表明,我们的模型成功实现了语义感知和粒度丰富性。此外,将 SA-1B 训练与其他分割任务(如全景和部件分割)相结合,可以提高性能。
1 引言
遵循人类意图的通用和交互式人工智能系统在自然语言处理 [46, 47] 和可控图像生成 [52, 66] 中已经展现出其潜力。然而,对于像素级图像理解的通用系统,研究仍然较少。我们认为,一个通用的分割模型应该具备以下重要属性:通用表示、语义感知和粒度丰富性。无论具体的图像领域或提示上下文如何,该模型都能够获得多功能的表示,以多粒度预测分割掩码,并理解每个分割区域背后的语义含义。
以往的研究 [31, 70, 58] 尝试探索这些属性,但只实现了部分目标。阻碍这种通用图像分割模型发展的主要障碍可以归因于模型架构灵活性和训练数据可用性的限制。
-
模型架构:现有的图像分割模型架构主要由单输入单输出流程主导,这种流程丢弃了任何歧义。尽管这种流程在基于锚点的 CNN 架构 [24] 和基于查询的 Transformer 架构 [4, 11] 中都很常见,并且在语义、实例和全景分割任务 [39, 68, 30] 中表现出色,但它本质上限制了模型以端到端的方式预测多粒度分割掩码。尽管聚类后处理技术 [13] 可以为单个对象查询生成多个掩码,但它们既不是高效也不是有效的多粒度感知分割模型的解决方案。
-
训练数据:扩展既具有语义感知又具有粒度感知的分割数据集是一项成本高昂的工作。现有的通用对象和分割数据集,如 MSCOCO [39] 和 Objects365 [53],提供了大量的数据和丰富的语义信息,但仅在对象级别。另一方面,部件分割数据集,如 Pascal Part [9]、PartImageNet [23] 和 PACO [49],提供了更细粒度的语义注释,但其数据量有限。最近,SAM [31] 成功地将多粒度掩码数据扩展到数百万张图像,但它不包括语义注释。为了实现语义感知和粒度丰富性的双重目标,迫切需要统一各种数据格式的分割训练,以促进知识迁移。然而,不同数据集在语义和粒度上的固有差异对联合训练工作构成了重大挑战。
在本文中,我们介绍了 Semantic-SAM,这是一个通用图像分割模型,旨在以任何所需的粒度级别实现分割和识别。用户给出一个点击点,我们的模型通过预测多个粒度级别的掩码来解决空间歧义,同时在对象和部件级别提供语义标签。如图 1 所示,我们的模型生成从人物头部到整个卡车的多级分割掩码。
多粒度能力是通过在解码器架构中引入多选择学习设计 [37, 22] 实现的。每个点击被表示为多个查询,每个查询包含不同级别的嵌入。这些查询被训练以从代表不同粒度的所有可用真实掩码中学习。为了建立多个掩码和真实值之间的对应关系,我们采用多对多匹配方案,以确保单个点击点能够生成多个粒度的高质量掩码。
为了以泛化能力实现语义感知,我们引入了解耦的对象和部件分类方法,利用共享的文本编码器独立编码对象和部件。这使我们能够分别进行对象和部件分割,同时根据数据类型调整损失函数。例如,通用分割数据缺乏部件分类损失,而 SAM 数据则不包括分类损失。
为了在我们的模型中丰富语义和粒度,我们将七个数据集整合到三种粒度级别上,包括通用分割的 MSCOCO [39]、Objects365 [53]、ADE20k [68],部件分割的 PASCAL Part [9]、PACO [49]、PartImagenet [23] 和 SA-1B [31]。它们的数据格式被重新组织以符合我们的训练目标。经过联合训练后,我们的模型在各种数据集上表现出色。值得注意的是,我们发现从交互式分割中学习可以改善通用和部件分割。例如,通过联合训练 SA-1B 可提示分割和 COCO 全景分割,我们实现了 2.3 个框 AP 和 1.2 个掩码 AP 的增益。此外,通过综合实验,我们证明了我们的粒度完整性比 SAM 更好,超过 3.4 个 1-IoU。
2 数据统一:语义和粒度
为了实现多级语义,我们包括了七个包含不同粒度级别掩码的数据集。这些数据集是 SA-1B、COCO 全景、ADE20k 全景、PASCAL 部件、PACO、PartImageNet 和 Objects365。其中,COCO 和 ADE20k 全景数据集包含对象级别的掩码和类别标签。PASCAL 部件、PACO 和 PartImageNet 包含部件级别的掩码和类别标签。SA-1B 包含多达 6 级掩码,但没有标签,而 Objects365 包含丰富的对象级别实例的类别标签。这些数据集的详细信息如表 1 所示。我们进一步在图 2 中可视化了不同类型数据的数据分布。
表 1:Semantic-SAM 中的数据统计
类型 | 数据 | #图像 | 语义概念 | 粒度级别 | ||
---|---|---|---|---|---|---|
部件 | PACO-LVIS | 45K | 201 | 75 | ✓ | ✓ |
部件 | PartImageNet | 16K | 13 | 11 | ✓ | ✓ |
部件 | Pascal Part | 5K | 30 | 20 | ✓ | ✓ |
类别不可知 | SA-1B | 11B | ✗ | ✗ | ✓ | ✓ |
对象级别 | Objects365 | 1.7M | ✗ | 365 | ✗ | ✓ |
对象级别 | COCO | 110K | ✗ | 133 | ✗ | ✓ |
对象级别 | ADE20K | 20K | ✗ | 150 | ✗ | ✓ |
图 2:语义-粒度二维图
3 Semantic-SAM
3.1 模型
我们的 Semantic-SAM 遵循 [33],利用基于查询的掩码解码器生成语义感知和多粒度掩码。除了通用查询外,它还支持两种类型的提示,包括点和框,类似于 SAM [31]。整体流程如图 3 所示。
我们将点击和框提示表示为锚框的统一格式。特别是,我们将用户点击点 (x, y) 转换为具有较小宽度 w 和高度 h 的锚框 (x, y, w, h),以便锚框能够紧密近似该点。为了捕获不同粒度的掩码,每个点击首先被编码为位置提示,并与 K 个不同的内容提示相结合,每个内容提示被表示为给定粒度级别的可训练嵌入向量。在这里,我们经验性地选择 K = 6,考虑到在 SA-1B [31] 中,大多数图像的每个用户点击最多有 6 级掩码。更具体地说,点击/框 b = (x, y, w, h) 被编码为 K 个内容嵌入和一个位置嵌入,分别表示为 Q = (q1, · · · , qK)。对于第 i 个查询,
3.2 训练
图 4:解耦的对象和部件分类
识别任何事物。由于我们使用具有不同语义注释的多种类型的数据进行训练,其中一些包含对象级别的注释(COCO),一些包含对象和部件级别的注释(Pascal Part),而 SA-1B 没有语义注释,但包含所有语义级别的掩码。注意,许多部件概念在不同对象之间是共享的,例如,所有动物的头部。我们的目标是在仅使用对象级别注释的对象上训练时,将部件概念知识跨对象迁移。为了解决语义注释之间的这种差异,并更好地迁移不同粒度的语义,我们提出了解耦对象和部件识别。如图 4 所示,我们使用共享的文本编码器对对象和部件进行编码,这些编码用于分别执行对象和部件分割。
重要的是,尽管所有类型的分割数据共享统一的格式,但不同数据类型的损失各不相同。我们在表 2 中总结了构建 Semantic-SAM 训练目标的损失项目。正是部件级别的数据弥合了在对象和部件级别之间识别语义概念的差距,而 SAM 数据在匈牙利匹配中的使用则弥合了在任何粒度级别上分割掩码的差距。
表 2:Semantic-SAM 中的训练目标损失项目
数据 | 识别任何事物 | 在任何粒度级别上进行分割 | |||
---|---|---|---|---|---|
部件级别数据 | ✓ | ✓ | ✓ | ✓ | 一个 |
对象级别数据 | ✗ | ✓ | ✓ | ✓ | 一个 |
SAM 数据 | ✗ | ✗ | ✓ | ✓ | 多个 |
在任何粒度级别上进行分割。为了使模型具有多粒度分割能力,我们在训练期间提出了一个多对多匹配方法。我们发现,SAM 在单次点击时无法提供良好的多级分割结果,因为 SAM 在训练中使用了多对一匹配。换句话说,SAM 预测的每个点击的三个掩码仅与一个真实掩码匹配。根据我们的观察,位于小级别掩码中的点无法以高质量预测大掩码。相比之下,为了使模型能够通过单次点击预测多级掩码,我们充分利用了数据和算法的结构。首先,我们通过聚类共享相同点击的多个不同级别真实掩码来重新组织数据。为了允许同一点击的多个预测与真实掩码匹配,我们采用匈牙利算法实现多对多匹配。相似性矩阵和分数根据不同分割数据组件的可用性而变化。
对于框输入和通用分割,我们遵循现有方法。具体来说,为了从输入框生成掩码,我们遵循去噪训练(DN)[33] 的类似想法。我们向真实框添加噪声,以模拟用户提供的不准确框输入,这些带有噪声的框作为解码器的空间提示。模型被训练以从带有噪声的框重构原始框和掩码。对于框提示的内容部分,我们采用可学习的标记作为通用提示。注意,这与 DN 的唯一区别在于,DN 使用真实标签嵌入作为内容提示。对于通用分割,我们遵循 Mask DINO [33] 的相同流程。
讨论。如图 5 所示,与以往的交互式分割模型相比,SemanticSAM 在两个方面与以往的分割模型不同。首先,我们训练模型以通过一次点击输出所有可能的分割掩码。其次,我们的输出粒度更丰富,能够生成更多样化的输出掩码。
图 5:交互式学习策略比较
a) 一对一:传统的交互式分割模型,专注于对象级别,例如 SEEM;
b) 多对一:单粒度的多选择学习,例如 SAM;
c) 多对多:我们的方法。我们强制模型预测单次点击的所有可能粒度,以实现更可控的分割;
d) 因此,我们的输出粒度更丰富,能够生成更多样化的输出掩码。
4 实验
4.1 实验设置
实现细节。在我们的实验中,我们联合训练了三种类型的数据,如表 1 所示。我们基于 Mask DINO [33] 实现了我们的模型。Mask DINO 是一个统一的检测和分割框架,同时预测框和掩码。我们遵循 [33] 使用 300 个潜在查询和九层解码器来处理所有分割任务。对于视觉骨干网络,我们默认采用预训练的 Swin-T/L [41]。对于语言骨干网络,我们采用 UniCL [62] 中的预训练基础模型。由于 SA-1B [31] 占据了数据的主导地位,因此在训练期间,我们首先仅在 SA-1B 数据上进行训练。然后,我们将对象和部件级别数据添加到联合训练中。在训练期间,所有数据的图像分辨率均为 1024×1024。我们使用 AdamW [43] 作为优化器。我们对对象和部件级别数据使用大规模抖动,而对 SA-1B 数据则不使用数据增强,因为 SA-1B 图像数量丰富。我们将学习率设置为 0.0001,该学习率在总步数的 0.9 和 0.95 分数处衰减 10 倍。
评估。我们主要评估两个数据集,包括 COCO Val2017 和 SA-1B [31] 的一个子集(包含 1000 张图像)。对于评估指标,我们对通用和部件分割数据集评估 PQ 和 AP。对于单粒度交互式分割,我们报告点(最大值)和点(Oracle)。最大值表示我们选择置信度分数最高的输出掩码。Oracle 表示我们选择通过计算预测掩码和目标掩码之间的 IoU 来选择 IoU 最大的输出掩码。对于多粒度交互式分割,我们报告 1-IoU@All Granularity,该指标将单次点击的所有可能真实掩码与多粒度预测匹配,然后计算所有粒度的平均 IoU。
4.2 通用语义分割
通用分割。如表 3 所示,为了验证多粒度交互式分割与通用分割的兼容性,我们联合训练了 SA-1B [31](1/10 数据)和 COCO 全景分割。结果显示,与 SAM 的交互式分割可以显著帮助实例级检测和分割,性能分别提高了 +2.2 AP(框)和 +1.3 AP(掩码)。值得注意的是,OpenSeed [65] 和 Semantic-SAM 都基于 Mask DINO [33]。我们与 SA-1B 的联合训练甚至优于 OpenSeed,后者使用 Object365 [53] 进行训练。此外,添加 SA-1B 主要改善了小目标检测(APs 和 APm),因为 SA-1B 中存在大量小目标。
部件分割。我们还验证了联合训练 SA-1B(1/10 数据)和部件分割的兼容性。如表 4 所示,添加 SA-1B 在 Pascal Part [15] 上带来了显著的性能提升。
单粒度交互式分割。在表 5 中,我们在 COCO Val2017 上评估了 SAM 和我们模型的 1 次点击 mIoU(记作 1-IoU)。在相同设置下,我们的模型优于 SAM。
多粒度交互式分割。在表 6 中,我们比较了 SAM [31] 和我们模型在单次点击的输出粒度。我们采用匈牙利匹配将所有可能的目标掩码与点击的预测掩码匹配,并计算平均 IoU 分数。由于 SAM 仅使用三个提示,我们还从单个掩码中采样两个点击以生成六个输出掩码,以进行公平比较。值得注意的是,SAM 已经在该验证集上进行了训练,而我们没有。
表 3:COCO val2017 上的 Semantic-SAM 与其他全景分割模型的比较
方法 | 类型 | 训练数据 | PQ | mIoU | AP | APs | APm | APl | |||
---|---|---|---|---|---|---|---|---|---|---|---|
Mask2Former (T) [11] | 闭集 COCO | 53.2 | 63.2 | 46.1 | 43.3 | - | - | - | - | ||
X-Decoder (T) [69] | 开集 COCO+VL | 52.6 | 62.4 | 43.6 | 41.3 | - | - | - | - | ||
OpenSeed (T) [65] | 开集 COCO+O365 | 55.4 | 63.8 | 51.2 | 47.1 | 345 | 274 | 54.3 | 50.4 | 66.2 | 66.8 |
Semantic-SAM (T) (ours) | 开集 COCO | 54.6 | 63.2 | 50.1 | 46.1 | 34.4 | 27.1 | 53.2 | 49.4 | 66.1 | 66.1 |
Semantic-SAM (T) (ours) | 开集 COCO+SAM | 55.2 | 63.4 | 52.3(+2.2) | 47.4(+1.3) | 36.1(+1.7) | 28.3(+1.2) | 55.6(+2.4) | 50.7(+1.3) | 67.3 | 66.2 |
表 4:Pascal Part 上的 Semantic-SAM 与其他部件分割模型的比较
方法 | 类型 | 训练数据 | AP | APs | APm | APl | |||
---|---|---|---|---|---|---|---|---|---|
VLPart [55] | 开集 Pascal Part | - | 27.4 | - | - | - | - | ||
Semantic-SAM (ours) | 开集 Pascal Part | 27.0 | 30.5 | 16.6 | 19.1 | 38.1 | 41.6 | 43.8 | 49.1 |
Semantic-SAM (ours) | 开集 Pascal Part+SAM | 28.0 | 31.4 | 17.3 | 19.9 | 40.0 | 42.5 | 45.7 | 49.7 |
表 5:点交互比较
方法 | COCO | 点(最大值) | 点(Oracle) |
---|---|---|---|
SAM (B) | 52.1 | 68.2 | |
SAM (L) | 55.7 | 70.5 | |
Semantic-SAM (T) | 54.5 | 73.8 | |
Semantic-SAM (L) | 57.0 | 74.2 |
表 6:粒度比较
方法 | 粒度 | 1-IoU@All Granularity |
---|---|---|
SAM (B)† | 3 | 75.6 |
SAM (L)† | 3 | 82.5 |
SAM (H)† | 3 | 83.5 |
SAM (B)†∗ | 6 | 79.3 |
SAM (L)†∗ | 6 | 85.6 |
SAM (H)†∗ | 6 | 86.5 |
Semantic-SAM(T) | 6 | 88.1 |
Semantic-SAM(L) | 6 | 89.0 |
4.3 消融实验
匹配策略。如表 7 所示,我们比较了模型中的不同匹配策略。当使用多对多匹配以匹配每个点击的所有可能真实掩码时,1-IoU@All Granularity 性能显著提高。这验证了我们的匹配策略在学习完整的粒度方面是有效的。
框交互评估。我们还在表 8 中评估了给定框的 1-IoU。与对象级别交互式分割模型 SEEM [70] 和多粒度模型 SAM [31] 相比,我们取得了更好的性能。
增加 SA-1B 训练数据。在表 9 中,我们展示了在 COCO Val 2017 上使用更多 SA-1B 数据进行训练时的性能提升。当使用超过 15% 的总数据时,性能趋于饱和。这表明我们不需要使用整个 SA-1B 数据来获得良好的零样本性能。
表 7:不同匹配策略比较
方法 | 匹配 | 1-IoU@All Granularity |
---|---|---|
Semantic-SAM(T) | 多对一 | 73.2 |
Semantic-SAM(T) | 多对多 | 88.1 |
表 8:框 1-IoU 评估
方法 | Box 1-IoU |
---|---|
SAM 31 | 50.7 |
SEEM 70 | 73.7 |
Semantic-SAM(T) | 76.1 |
表 9:使用不同比例的 SA-1B 数据的比较
方法 | SA-1B 数据比例 | COCO | 点(最大值) | 点(Oracle) |
---|---|---|---|---|
SAM (L) | 100% | 55.7 | 70.5 | |
Semantic-SAM (L) | 3% | 55.2 | 73.5 | |
Semantic-SAM (L) | 15% | 56.7 | 73.6 | |
Semantic-SAM (L) | 30% | 55.7 | 73.7 | |
Semantic-SAM (L) | 50% | 55.3 | 73.9 | |
Semantic-SAM (L) | 100% | 57.0 | 74.2 |
4.4 可视化
我们将我们的模型与 SAM 进行比较,以展示我们的模型可以输出更多级别的高质量掩码,如图 6 所示。
多级掩码。我们的模型输出更有意义的粒度掩码。SAM 最多输出三个掩码,不同级别的输出有时是重复的,而我们的模型输出的掩码更加多样化。
掩码质量。这也证明了我们的模型输出的掩码质量更高。当点击位于小规模掩码内时,SAM 有时会输出带有伪影的掩码,例如大掩码中的孔洞或孤岛,而我们的模型为所有级别输出高质量的掩码。
与 SA-1B 真值粒度比较。与原始注释相比,我们在 SAM 数据上输出更有意义的粒度。
查询语义。我们还发现,每个点的内容提示嵌入学会了对应于固定的粒度。如图 7 所示,当我们按照对应的内容提示嵌入的固定顺序可视化掩码时,每行的掩码都从大到小排列。这表明每个内容嵌入在我们的模型中代表一个语义粒度级别。
我们发现所有输出掩码都从大到小排列。这表明每个提示嵌入代表一个语义级别。
5 相关工作
5.1 通用分割
在计算机视觉的广阔领域中,对视觉概念进行分割是一个被广泛研究的课题 [17, 16, 71, 45]。广泛的分割方法包括语义分割、实例分割和全景分割等多个子领域 [24, 6, 30],每个子领域都对应着独特的语义程度。例如,语义分割的目标是检测并为图像中的每个像素分配其对应的语义类别 [7, 11, 42]。相反,实例分割旨在将属于同一语义类别的像素聚合成不同的对象实例 [24, 3, 33]。全景分割则是这两种任务的混合。最近,基于 Transformer 的方法 [56, 4] 在分割任务中取得了显著进展 [38, 11, 33, 26, 64]。通用目标检测和分割的发展催生了大量数据集,例如 MSCOCO [39]、LVIS [21]、Objects365 [53]、PASCAL [15]、CityScapes [12] 和 ADE20k [68] 等。
5.2 部件分割
除了通用分割之外,部件分割旨在实现更细粒度的视觉理解。早期的大多数工作采用自底向上的方法,通过将超像素组合成部件,然后再组合成对象 [1, 20, 2]。后来,基于高性能目标检测网络 [51, 24],自顶向下的方法被开发出来,首先检测对象,然后将其解析为部件分割 [34, 63, 27]。为了在多粒度级别上分割场景,引入了部件感知全景分割 [13]。PPS [13] 通过组合全景分割和部件分割模型建立了基线。JPPF [25] 通过共享图像编码器简化了模型,用于全景分割和部件分割。Panoptic-PartFormer [35] 提出了一种基于 Transformer 的统一架构,将事物、东西和部件表示为对象查询。尽管部件分割数据的成本远高于目标检测和分割数据,但目前已有多个公共数据集可供使用。特定领域的数据集包括汽车 [54]、鸟类 [57] 和时尚 [29]。通用对象包括 Pascal-Part [9]、PartImageNet [23]、ADE20K [67]、Cityscapes-Panoptic-Parts [44] 和 PACO [49]。最近,SAM [31] 提供了一个大规模的多粒度类别不可知分割数据集。我们的工作联合训练了这些数据集,并为多粒度分割模型做出了贡献。
5.3 开放词汇表分割
尽管通用分割和部件分割取得了显著进展,但它们只能在封闭词汇表中进行分割。为了扩大词汇表的规模,最近的研究利用了来自大规模基础模型(如 CLIP [48]、ALIGN [28] 和扩散模型 [60])的视觉-语义知识,应用于各种分割任务。LSeg [32]、OpenSeg [18] 和 GroupViT [59] 在 ADE20K 和 PASCAL 上实现了开放词汇表语义分割能力。DenseCLIP [50] 和 MaskCLIP [14] 在 COCO 数据集上实现了开放词汇表实例和全景分割。最近,X-Decoder [69] 提出了一种统一的方法,用于处理开放词汇表分割的各种分割和视觉语言任务。OpenSeeD [65] 提出使用大量的检测数据和联合训练方法来改进分割。为了在部件级别上进行开放词汇表掩码分割,VLPart [55] 利用了三个部件分割数据集,并从基础对象和新对象之间的密集对应关系 [5] 中学习。我们的工作将这些任务统一到一个架构中,并构建了多粒度的开放词汇表分割。
5.4 交互式分割
交互式分割是指通过积极整合用户输入来分离对象的过程。这一长期挑战已经取得了显著进展 [36, 19, 61, 40, 10, 31]。以往的研究仅关注小规模数据集或语义不可知的实例掩码。最近,SAM [31] 将训练数据从 0.12M COCO 图像扩展到 10M SAM 细粒度图像。SEEM [70] 通过引入语言模态和令人印象深刻的组合性,丰富了通用和基于文本的分割功能。
6 结论
在本文中,我们介绍了 Semantic-SAM,这是一个能够以任何所需的粒度级别进行分割和识别的模型。除了执行通用开放词汇表分割外,Semantic-SAM 还展示了语义感知和粒度丰富性的优势。为了实现这些优势,我们在数据、模型和训练方面都进行了改进,我们利用了来自多个粒度和语义级别的数据集、用于训练的多选择学习以及用于建模的通用框架。全面的实验和可视化验证了我们模型的语义感知和粒度丰富性。此外,Semantic-SAM 是首次成功地将 SA-1B 和其他经典分割数据集联合训练的尝试。实验结果还表明,使用 SA-1B 进行训练可以改善其他任务,如全景和部件分割。