赶上最新的AI论文

[任何分割] 零镜头分割模型

[任何分割] 零镜头分割模型

分段

三个要点
✔️ 建立一个可在零镜头中执行分割的模型
✔️ 提供一个由 1,100 万张图像和 11 亿个遮罩构建的大型分割数据集

✔️ 实验显示了新图像分布和各种任务的零镜头性能

Segment Anything
written by Alexander KirillovEric MintunNikhila RaviHanzi MaoChloe RollandLaura GustafsonTete XiaoSpencer WhiteheadAlexander C. BergWan-Yen LoPiotr DollárRoss Girshick
(Submitted on 5 Apr 2023)
Comments: Project web-page: this https URL
Subjects: Computer Vision and Pattern Recognition (cs.CV); Artificial Intelligence (cs.AI); Machine Learning (cs.LG)

code: 

本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。

概述

Segment Anything 项目涉及三个要素:任务、模型和数据,目的是利用 Meta 建立图像分割的基础模型。

该项目提供了一个大型分割数据集 SA-1B,该数据集由 1,100 万张图像和 11 亿个遮罩构建而成。此外,还设计并训练了可提示的 "任意分割模型"(Segment Anything Model,SAM),允许零镜头转换到新的图像分布和任务。

通过在下文所述的一些任务中进行实验,对其潜力进行了评估,发现其零镜头性能非常出色。

工作

鉴于 NLP 通过解决标记预测任务预先学习基本模型,并通过提示工程解决各种下游任务,一个与建立图像分割基本模型功能类似的任务就是可提示分割任务。作为一项任务提出。

可提示分割任务的目标是在给出分割提示时返回有效的分割掩码。这里的提示指的是要对图像进行分割的信息,如前景和背景点组合、边界框、分割掩码和自由格式文本。

这里对有效分割掩码的要求是,即使给定的提示模棱两可(如图 1 所示),可以指示多个对象(如全身、上半身和头部),至少其中一个对象可以输出有效的掩码。

图 1 SAM 从单点输出的掩码。

通过提示创建一个可用于各种现有或新的分割任务的模型,是与以往多任务系统的主要区别。多任务系统执行一组固定的任务,如联合分割、实例分割和全视角分割,但训练和测试任务是相同的。为可提示分割任务训练的模型则是更大系统中的元素,可在推理过程中执行不同的新任务。

模型

如图 2 所示,我们提出了一个由图像编码器、提示编码器和掩码解码器三部分组成的可提示分割模型(SAM)。

图 2 "分段什么都做 "模式概览

第一个图像编码器使用的是带有 MAE(屏蔽自动编码器)的预训练 ViT。这种图像编码器每幅图像运行一次,并在提示模型之前应用。

提示编码器将稀疏提示(即点、边界框和文本)与密集提示(即分割掩码)分开。点和框使用位置编码,文本则使用 CLIP 文本编码器编码。掩码使用卷积法嵌入,并对图像嵌入的每个元素求和。

掩码解码器从图像嵌入、文本嵌入和输出标记生成掩码。转换解码器程序经过修改,使用提示自注意和交叉注意双向更新所有嵌入:提示到图像嵌入,反之亦然。采样,MLP(多层感知器)计算每个图像位置的掩码前景概率。

在单个输出的情况下,如果给出的提示模棱两可,模型会对单个提示做出多个掩码预测,因为它会对多个有效掩码进行平均。在一般情况下,我们发现三个掩码输出--整体、部分和更细粒度--就足够了。(见图 1)

数据集

由于互联网上的分割蒙版并不丰富,因此我们建立了一个数据引擎来收集数据。该数据引擎通过三个阶段对图像进行分割掩码标注,分别是手动阶段、半自动阶段和全自动阶段。数据集 SA-1B 由 1,100 万张图像和 11 亿个分割掩码组成,均来自全自动阶段。

在第一人工阶段,专业标注人员使用基于浏览器的交互式分割工具 SAM,通过点击前景和背景对象点来标注遮罩。他们还使用像素精确的笔刷和橡皮擦来增强遮罩。

在这一阶段的开始,SAM 在一个通用的分割数据集上进行训练,一旦数据集得到充分注释,就使用新注释的数据进行再训练,以改进模型。

下一个半自动阶段旨在增加遮罩的多样性,以提高分割能力。首先,自动检测遮罩,然后注释者对未检测到的对象进行额外注释。与第一阶段一样,这一阶段也会进行定期再学习。

在最后一个阶段,注释工作是自动进行的,因为在前几个阶段已经收集了足够的掩码,而且还开发了一个模型,即使在模棱两可的情况下也能预测有效的掩码。该模型可预测 32 x 32 点网格中 1024 个点的有效对象可能对应的掩码。如果该点是一个部分或更精细的部分,模型将尝试输出三种遮罩:整体、部分和更精细的部分。模型的 IoU 预测模块用于选择置信度高且更稳定的掩膜。最后,模型使用 NMS(非最大抑制)来消除重复。

每个阶段使用的图像和掩膜如下表所示。

表 1 每个阶段的图像和注释掩码数量

  图像数量 面具数量
手动舞台 12 万张 430 万件。
半自动平台 180,000 张。 590 万件。
全自动平台 1100 万件。 11 亿件

试验

实验使用了五种不同的任务。

从单点推断面具的评估。

使用 23 个不同的数据集和不同的图像,评估从单个前景点进行物体分割的效果。评估结果与 RITM 进行了比较。大多数数据集的地面实况并没有列举所有可检测的掩码,因此注释器通过 mIoU 来评估掩码质量,mIoU 是具有预测掩码和地面实况的所有 IoU 的平均值。 在 23 个数据集中,SAM 有 16 个数据集的表现优于 RITM。胜过 RITM。

图 3 SAM 和 RITM 在 23 个不同数据集上的比较

边缘检测

利用 BSDS500 数据集,在边缘检测任务中对 SAM 进行了评估:从一个 16 × 16 的网格中,SAM 预测出 768 个掩码,并通过 NMS 去除多余的掩码。然后通过边缘 NMS 从索贝尔滤波器中计算出边缘图。如图 4 所示,尽管 SAM 没有经过边缘检测训练,但它仍能检测出边缘,包括地面实况中没有的边缘。

图 4 零镜头边缘检测结果(输入图像、地面实况、SAM)。

object proposal

评估在物体检测中发挥重要作用的物体建议任务中的 SAM。我们使用 LVIS 数据集 v1,计算了平均重现率,并在表 2 中将结果与 ViTDet-H 进行了比较。 ViTDet-H 是在 LVIS 上训练出来的,与 SAM 不同不同,因此总体性能更高。不过,在中型和大型物体以及异常物体上,SAM 的表现也优于 ViTDet-H。

表 2 LVIS 数据集的对象建议结果 v1

实例分割

使用 ViTDet 的物体检测边界框作为提示,在 SAM 中进行实例分割:我们使用 COCO 和 LVIS 数据集,将其掩码与 ViTDet 预测的掩码进行比较。表 3 显示,SAM 的掩码 AP 低于 ViTDet。不过,如图 5 所示,与 ViTDet 相比,SAM 往往能生成质量更高、边界更清晰的掩码。从图 6 中还可以看出,在人工评估中,SAM 的表现始终优于 ViTDet。

表 3:实例分割结果

图 5 语义分割检测结果(Grand Truth、ViTDet 和 SAM)。

图 6 人类对面具的评估。

根据文本生成掩码

考虑从自由格式文本中分割的任务。本实验之前使用的是相同的 SAM,但本任务的训练方式是识别文本,而不需要新的文本注释:为每个区域超过 100 像素平方的掩码提取 CLIP 的图像嵌入。然后将训练过程中提取的图像嵌入作为第一次交互提示给 SAM;由于 CLIP 的图像嵌入经过训练与文本嵌入相匹配,因此 SAM 在图像嵌入的基础上进行训练,但使用文本嵌入进行推理。推理使用文本嵌入。这意味着在推理过程中,通过 CLIP 的文本编码器执行文本,并将结果作为提示嵌入到 SAM 中。

图 7 中的结果表明,根据简单的文本(如 "车轮")和短语(如 "海狸的牙齿格栅")进行分段是可行的。即使 SAM 无法仅根据文本提示进行正确的分段,附加点也能让他们修改预测。

图 7 根据文本生成掩码的结果。

摘要

新任务(可提示分割)、新模型(SAM)和新数据集(SA-1B)是 Segment Anything 项目的主要贡献,尽管 SAM 可以用零镜头完成许多任务、虽然 SAM 可以在零拍摄的情况下完成许多任务,但如何设计简单的提示来实现语义和全视角分割尚不清楚。

该论文指出,SAM 是否能获得基本模型的地位将取决于其在社区中的使用情况,但可以看到,自出版以来,它已被纳入各种工具中,预计未来这一趋势将继续下去。

  • メルマガ登録(ver
  • ライター
  • エンジニア_大募集!!

如果您对文章内容有任何改进建议等,请通过 "联系我们 "表格与爱学网编辑部联系。
如果您能通过咨询表与我们联系,我们将非常感激。

联系我们