Segment Anything Model (SAM):来自 Meta AI 的新 AI 模型,只需单击一下即可“切出”任何图像中的任何对象
SAM 是一种可提示的分割系统,可以对不熟悉的对象和图像进行零样本泛化,无需额外训练。
以前,要解决任何类型的分割问题,有两类方法。第一种是交互式分割,允许分割任何类别的对象,但需要一个人通过迭代细化掩码来指导该方法。第二种,自动分割,允许分割提前定义的特定对象类别(例如,猫或椅子),但需要大量的手动注释对象来训练(例如,数千甚至数万个分割猫的例子),连同计算资源和技术专长一起训练分割模型。这两种方法都没有提供通用的、全自动的分割方法。
SAM 是这两类方法的概括。它是一个单一的模型,可以轻松地执行交互式分割和自动分割。该模型的可提示界面(稍后描述)允许以灵活的方式使用它,只需为模型设计正确的提示(点击、框、文本等),就可以完成范围广泛的分割任务。此外,SAM 在包含超过 10 亿个掩码(作为该项目的一部分收集)的多样化、高质量数据集上进行训练,这使其能够泛化到新类型的对象和图像,超出其在训练期间观察到的内容。这种概括能力意味着,总的来说,从业者将不再需要收集他们自己的细分数据并为他们的用例微调模型。
总而言之,这些功能使 SAM 能够泛化到新任务和新领域。这种灵活性在图像分割领域尚属首创。 - SAM 允许用户通过单击或通过交互式单击点来分割对象以包含和排除对象。还可以使用边界框提示模型。
SAM 可以在面对被分割对象的歧义时输出多个有效掩码,这是解决现实世界中分割问题的重要且必要的能力。
SAM 可以自动查找并屏蔽图像中的所有对象。
SAM 可以在预计算图像嵌入后实时为任何提示生成分割掩码,从而允许与模型进行实时交互。
在自然语言处理和最近的计算机视觉领域,最令人兴奋的发展之一是基础模型的发展,这些基础模型可以使用“提示”技术对新数据集和任务执行零样本和少样本学习。我们从这行工作中汲取了灵感。
我们训练 SAM 为任何提示返回有效的分割掩码,其中提示可以是前景/背景点、粗框或掩码、自由格式文本,或者一般来说,指示图像中要分割的内容的任何信息。有效掩码的要求仅仅意味着即使提示不明确并且可能指代多个对象(例如,衬衫上的一个点可能表示衬衫或穿着它的人),输出也应该是一个合理的掩码这些对象之一。此任务用于预训练模型并通过提示解决一般的下游分割任务。
我们观察到预训练任务和交互式数据收集对模型设计施加了特定的约束。特别是,该模型需要在 Web 浏览器的 CPU 上实时运行,以允许我们的注释者实时交互地使用 SAM 以高效地进行注释。虽然运行时约束意味着质量和运行时之间的权衡,但我们发现简单的设计在实践中会产生良好的结果。
在引擎盖下,图像编码器为图像生成一次性嵌入,而轻量级编码器将任何提示实时转换为嵌入向量。然后将这两个信息源组合在一个预测分割掩码的轻量级解码器中。在计算图像嵌入后,SAM 可以在 50 毫秒内根据网络浏览器中的任何提示生成一个片段。