YOLO Vision 2026:

SAM 3:使用概念分割一切#

SAM 3 可提示概念分割概览

SAM 3(分割一切模型 3)是 Meta 发布的、用于可提示概念分割(PCS)的基础模型。在 SAM 2 的基础上,SAM 3 引入了一项全新能力:根据文本提示、图像示例或二者的组合,检测、分割和跟踪视觉概念的所有实例。不同于以往每个提示只能分割单个对象的 SAM 版本,SAM 3 能够在图像或视频的任意位置查找并分割概念的每一次出现,这与现代实例分割中的开放词汇目标一致。



Watch: How to Use Meta Segment Anything 3 with Ultralytics | Text-Prompt Segmentation on Images & Videos

SAM 3 已完全集成到 ultralytics 软件包中,为使用文本提示、图像样本提示和视频跟踪的概念分割提供原生支持。

概述#

SAM 3 在可提示概念分割方面的性能达到现有系统的 2 倍,同时保持并提升了 SAM 2 在交互式视觉分割方面的能力。该模型在开放词汇分割方面表现出色,允许你使用简单的名词短语(例如“黄色校车”“条纹猫”)指定概念,也可以提供目标对象的示例图像。这些能力可与依赖简化版 predicttrack 工作流的生产就绪型流水线配合使用。

SAM 3 文本提示分割示例

什么是可提示概念分割(PCS)?#

PCS 任务以概念提示作为输入,并返回带有唯一身份标识的分割掩码,覆盖所有匹配的对象实例。概念提示可以是:

  • 文本:类似于零样本学习的简单名词短语,例如“红苹果”或“戴帽子的人”
  • 图像示例:围绕示例对象(正例或负例)的边界框,用于快速泛化
  • 组合:同时使用文本和图像示例,以实现精确控制

这不同于传统的视觉提示(点、框、掩码),后者只能分割单个特定对象实例,而最初的 SAM 系列正是以此广为人知。

关键性能指标#

指标SAM 3 成果
LVIS 零样本掩码 AP47.0(相比此前最佳值 38.5,提高 22%)
SA-Co 基准测试比现有系统提升 2 倍
推理速度(H200 GPU)每张图像 30 ms,可检测 100 个以上对象
视频性能约同时处理 5 个对象时接近实时
MOSEv2 VOS 基准测试60.1 J&F(比 SAM 2.1 高 25.5%,比此前 SOTA 高 17%)
交互式细化使用 3 个示例提示后,CGF1 提升 +18.6
与人类性能的差距达到 SA-Co/Gold 估计下限的 88%

如需了解生产环境中的模型指标和权衡,请参阅模型评估洞察YOLO 性能指标

架构#

SAM 3 由一个检测器和一个跟踪器组成,二者共享感知编码器(PE)视觉骨干网络。这种解耦设计避免了任务冲突,同时支持图像级检测和视频级跟踪,并提供与 Ultralytics Python 用法CLI 用法兼容的接口。

核心组件#

  • 检测器基于 DETR 的架构,用于图像级概念检测

    • 用于名词短语提示的文本编码器
    • 用于基于图像提示的示例编码器
    • 用于根据提示调节图像特征的融合编码器
    • 新型存在性头,将识别(“是什么”)与定位(“在哪里”)解耦
    • 用于生成实例分割掩码的掩码头
  • 跟踪器:继承自 SAM 2的基于记忆的视频分割

    • 提示编码器、掩码解码器、记忆编码器
    • 用于存储跨帧对象外观信息的记忆库
    • 在多对象场景中,借助卡尔曼滤波器等技术进行时间消歧
  • 存在性令牌:一种经过学习的全局令牌,用于预测目标概念是否存在于图像或帧中,通过将识别与定位分离来提升检测效果。

SAM 3 模型架构图

关键创新#

  1. 识别与定位解耦:存在性头在全局范围内预测概念是否存在,而候选查询仅关注定位,从而避免目标冲突。
  2. 统一概念提示与视觉提示:在单个模型中同时支持 PCS(概念提示)和 PVS(类似 SAM 2 点击/框的视觉提示)。
  3. 交互式示例细化:你可以添加正例或负例图像示例,以迭代细化结果;模型会泛化到相似对象,而不仅仅是纠正单个实例。
  4. 时间消歧:使用掩码片段检测分数和定期重新提示来处理视频中的遮挡、拥挤场景和跟踪失败,与实例分割和跟踪的最佳实践一致。

SA-Co 数据集#

SAM 3 使用**分割一切与概念(SA-Co)**数据集进行训练。这是 Meta 迄今规模最大、最多样化的分割数据集,扩展了 COCOLVIS 等常见基准的范围。

训练数据#

数据集组件描述规模
SA-Co/HQ来自四阶段数据引擎的高质量人工标注图像数据520 万张图像,400 万个唯一名词短语
SA-Co/SYN由 AI 标注、无需人工参与的合成数据集3800 万个名词短语,14 亿个掩码
SA-Co/EXT使用困难负例扩展的 15 个外部数据集因来源而异
SA-Co/VIDEO带有时间跟踪标注的视频5.25 万个视频,2.48 万个唯一名词短语

基准数据#

SA-Co 评估基准包含 12.6 万张图像和视频中的 21.4 万个唯一短语,概念数量超过现有基准的 50 倍。它包括:

  • SA-Co/Gold:7 个领域,经过三重标注,用于衡量人类性能上限
  • SA-Co/Silver:10 个领域,单次人工标注
  • SA-Co/BronzeSA-Co/Bio:适用于概念分割的 9 个现有数据集
  • SA-Co/VEval:包含 3 个领域的视频基准(SA-V、YT-Temporal-1B、SmartGlasses)

数据引擎创新#

SAM 3 的可扩展人工与模型协同数据引擎通过以下方式实现2 倍标注吞吐量

  1. AI 标注器:基于 Llama 的模型提出多样化名词短语,包括困难负例
  2. AI 验证器:经过微调的多模态 LLMs以接近人类的性能验证掩码质量和完备性
  3. 主动挖掘:将人力集中于 AI 难以处理的挑战性失败案例
  4. 本体驱动:利用以 Wikidata 为基础的大型本体来覆盖概念

安装#

安装或升级 ultralytics 软件包:

pip install -U ultralytics
需要 SAM 3 模型权重

与其他 Ultralytics 模型不同,SAM 3 权重(sam3.pt不会自动下载。你必须先在 Hugging Face 上的 SAM 3 模型页面申请模型权重访问权限,获批后再从该页面下载 sam3.pt。将下载的 sam3.pt 文件放入工作目录,或在加载模型时指定完整路径。

`TypeError: 'SimpleTokenizer' object is not callable`

如果你在预测期间遇到上述错误,说明安装了错误的 clip 包。运行以下命令安装正确的 clip 包:

pip uninstall clip -y
pip install git+https://github.com/ultralytics/CLIP.git

如何使用 SAM 3:概念分割的多功能性#

SAM 3 通过不同的预测器接口同时支持可提示概念分割(PCS)和可提示视觉分割(PVS)任务:

支持的任务和模型#

任务类型提示类型输出
概念分割(PCS)文本(名词短语)、图像示例与概念匹配的所有实例
视觉分割(PVS)点、框、掩码单个对象实例(SAM 2 风格)
交互式细化迭代添加/移除示例或点击经过细化且精度更高的分割

概念分割示例#

使用文本提示进行分割#

基于文本的概念分割

使用文本描述查找并分割概念的所有实例。文本提示需要 SAM3SemanticPredictor 接口。

from ultralytics.models.sam import SAM3SemanticPredictor

# Initialize predictor with configuration
overrides = {
    "conf": 0.25,
    "task": "segment",
    "mode": "predict",
    "model": "sam3.pt",
    "quantize": 16,  # Use FP16 for faster inference
    "save": True,
}
predictor = SAM3SemanticPredictor(overrides=overrides)

# Set image once for multiple queries
predictor.set_image("path/to/image.jpg")

# Query with multiple text prompts
results = predictor(text=["person", "bus", "glasses"])

# Works with descriptive phrases
results = predictor(text=["person with red cloth", "person with blue cloth"])

# Query with a single concept
results = predictor(text=["a person"])

使用图像示例进行分割#

基于图像示例的分割

使用边界框作为视觉提示,查找所有相似实例。这同样需要 SAM3SemanticPredictor 进行基于概念的匹配。

from ultralytics.models.sam import SAM3SemanticPredictor

# Initialize predictor
overrides = {"conf": 0.25, "task": "segment", "mode": "predict", "model": "sam3.pt", "quantize": 16, "save": True}
predictor = SAM3SemanticPredictor(overrides=overrides)

# Set image
predictor.set_image("path/to/image.jpg")

# Provide bounding box examples to segment similar objects
results = predictor(bboxes=[[480.0, 290.0, 590.0, 650.0]])

# Multiple bounding boxes as exemplars of the same visual concept
results = predictor(bboxes=[[539, 599, 589, 639], [343, 267, 499, 662]])

基于特征的高效推理#

重复利用图像特征处理多个查询

只提取一次图像特征,并将其重复用于多个分割查询,以提高效率。

import cv2

from ultralytics.models.sam import SAM3SemanticPredictor
from ultralytics.utils.plotting import Annotator, colors

# Initialize predictors
overrides = {"conf": 0.50, "task": "segment", "mode": "predict", "model": "sam3.pt", "verbose": False}
predictor = SAM3SemanticPredictor(overrides=overrides)
predictor2 = SAM3SemanticPredictor(overrides=overrides)

# Extract features from the first predictor
source = "path/to/image.jpg"
predictor.set_image(source)
src_shape = cv2.imread(source).shape[:2]

# Setup second predictor and reuse features
predictor2.setup_model()

# Perform inference using shared features with text prompt
masks, boxes = predictor2.inference_features(predictor.features, src_shape=src_shape, text=["person"])

# Perform inference using shared features with bounding box prompt
masks, boxes = predictor2.inference_features(predictor.features, src_shape=src_shape, bboxes=[[439, 437, 524, 709]])

# Visualize results
if masks is not None:
    masks, boxes = masks.cpu().numpy(), boxes.cpu().numpy()
    im = cv2.imread(source)
    annotator = Annotator(im, pil=False)
    annotator.masks(masks, [colors(x, True) for x in range(len(masks))])

    cv2.imshow("result", annotator.result())
    cv2.waitKey(0)

视频概念分割#

使用边界框跨视频跟踪概念#

使用视觉提示进行视频跟踪

使用边界框提示检测并跟踪视频帧中的目标实例。

from ultralytics.models.sam import SAM3VideoPredictor

# Create video predictor
overrides = {"conf": 0.25, "task": "segment", "mode": "predict", "model": "sam3.pt", "quantize": 16}
predictor = SAM3VideoPredictor(overrides=overrides)

# Track objects using bounding box prompts
results = predictor(source="path/to/video.mp4", bboxes=[[706.5, 442.5, 905.25, 555], [598, 635, 725, 750]], stream=True)

# Process and display results
for r in results:
    r.show()  # Display frame with segmentation masks

使用文本提示跟踪概念#

使用语义查询进行视频跟踪

跨视频帧跟踪文本指定概念的所有实例。

from ultralytics.models.sam import SAM3VideoSemanticPredictor

# Initialize semantic video predictor
overrides = {
    "conf": 0.25,
    "task": "segment",
    "mode": "predict",
    "imgsz": 640,
    "model": "sam3.pt",
    "quantize": 16,
    "save": True,
}
predictor = SAM3VideoSemanticPredictor(overrides=overrides)

# Track concepts using text prompts
results = predictor(source="path/to/video.mp4", text=["person", "bicycle"], stream=True)

# Process results
for r in results:
    r.show()  # Display frame with tracked objects

# Alternative: Track with bounding box prompts
results = predictor(
    source="path/to/video.mp4",
    bboxes=[[864, 383, 975, 620], [705, 229, 782, 402]],
    labels=[1, 1],  # Positive labels
    stream=True,
)

视觉提示(SAM 2 兼容性)#

SAM 3 完全向后兼容 SAM 2 的视觉提示功能,可用于单目标分割:

SAM 2 风格的视觉提示

基础 SAM 接口的行为与 SAM 2 完全一致,只分割视觉提示(点、框或掩码)所指示的特定区域。

from ultralytics import SAM

model = SAM("sam3.pt")

# Single point prompt - segments object at specific location
results = model.predict(source="path/to/image.jpg", points=[900, 370], labels=[1])
results[0].show()

# Multiple points - segments single object with multiple point hints
results = model.predict(source="path/to/image.jpg", points=[[400, 370], [900, 370]], labels=[1, 1])

# Box prompt - segments object within bounding box
results = model.predict(source="path/to/image.jpg", bboxes=[100, 150, 300, 400])
results[0].show()
视觉提示与概念分割

使用带有视觉提示(点/框/掩码)的 SAM("sam3.pt") 时,只会分割该位置的特定目标,与 SAM 2 一样。要分割概念的所有实例,请使用 SAM3SemanticPredictor 搭配文本或示例提示,如上所示。

性能基准测试#

图像分割#

SAM 3 在多个基准测试中取得了最先进的结果,包括 LVIS用于分割的 COCO 等真实世界数据集:

基准指标SAM 3此前最佳提升
LVIS(零样本)掩码 AP47.038.5+22.1%
SA-Co/GoldCGF165.034.3 (OWLv2)+89.5%
COCO(零样本)框 AP53.552.2 (T-Rex2)+2.5%
ADE-847(语义分割)mIoU14.79.2 (APE-D)+59.8%
PascalConcept-59mIoU59.458.5 (APE-D)+1.5%
Cityscapes(语义分割)mIoU65.144.2 (APE-D)+47.3%

Ultralytics 数据集 中探索数据集选项,快速开展实验。

视频分割性能#

SAM 3 在 DAVIS 2017YouTube-VOS 等视频基准测试中,相较于 SAM 2 和此前的最先进方法取得了显著提升:

基准指标SAM 3SAM 2.1 L提升
MOSEv2J&F60.147.9+25.5%
DAVIS 2017J&F92.090.7+1.4%
LVOSv2J&F88.279.6+10.8%
SA-VJ&F84.678.4+7.9%
YTVOS19J&F89.689.3+0.3%

少样本适应#

SAM 3 只需少量示例即可出色地适应新领域,这对以数据为中心的 AI 工作流非常重要:

基准0-shot AP10-shot AP此前最佳(10-shot)
ODinW1359.971.667.9 (gDino1.5-Pro)
RF100-VL14.335.733.7 (gDino-T)

交互式细化效果#

SAM 3 基于示例的概念提示比视觉提示收敛快得多:

添加的提示CGF1 分数相对于仅文本的提升相对于 PVS 基线的提升
仅文本46.4基线基线
+1 个示例57.6+11.2+6.7
+2 个示例62.2+15.8+9.7
+3 个示例65.0+18.6+11.2
+4 个示例65.7+19.3+11.5(平台期)

目标计数准确率#

SAM 3 通过分割所有实例来提供准确的计数,这也是目标计数中的常见需求:

基准准确率MAE相对于最佳 MLLM
CountBench95.6%0.1192.4% (Gemini 2.5)
PixMo-Count87.3%0.2288.8% (Molmo-72B)

SAM 3、SAM 2 与 YOLO 对比#

这里将 SAM 3 的能力与 SAM 2YOLO26 模型进行比较。若要使用同类提示进行实时开放词汇检测和分割,请参阅 YOLOE

能力SAM 3SAM 2YOLO26n-seg
概念分割✅ 根据文本/示例分割所有实例❌ 不支持❌ 不支持
视觉分割✅ 单个实例(兼容 SAM 2)✅ 单个实例✅ 所有实例
零样本能力✅ 开放词汇✅ 几何提示❌ 封闭集
交互式细化✅ 示例 + 点击✅ 仅点击❌ 不支持
视频跟踪✅ 具有身份标识的多目标✅ 多目标✅ 多目标
LVIS Mask AP(零样本)47.0不适用不适用
MOSEv2 J&F60.147.9不适用
速度(GPU,毫秒/图像)29218578.4
模型大小3.45 GB162 MB(基础版)6.4 MB

速度在 NVIDIA RTX PRO 6000 上进行基准测试,使用 torch==2.9.1ultralytics==8.4.19

主要结论

  • SAM 3:最适合开放词汇概念分割,使用文本或示例提示查找某个概念的所有实例
  • SAM 2:最适合在图像和视频中使用几何提示进行交互式单目标分割
  • YOLO26:最适合实时、高速分割,支持可选的无 NMS 端到端推理,可导出为多种格式以部署在 GPU、CPU 和边缘设备上

SAM 与 YOLO 的对比#

从模型大小、参数量和 GPU 推理速度方面,对比 SAM 3、SAM 2、SAM、MobileSAM 和 FastSAM 与 Ultralytics YOLO 分割模型(YOLOv8、YOLO11、YOLO26):

模型大小
(MB)
参数量
(M)
速度(GPU)
(毫秒/图像)
Meta SAM-b37593.71306
Meta SAM2-b16280.8857
Meta SAM2-t78.138.9668
Meta SAM33450473.62921
MobileSAM40.710.1605
使用 YOLOv8 主干网络FastSAM-s23.711.855.9
Ultralytics YOLOv8n-seg6.7(小 515 倍)3.4(少 139.1 倍)17.4(快 167 倍)
Ultralytics YOLO11n-seg5.9(小 585 倍)2.9(少 163.1 倍)12.6(快 231 倍)
Ultralytics YOLO26n-seg6.4(小 539 倍)2.7(少 175.2 倍)8.4(快 347 倍)

此比较展示了 SAM 各变体与 YOLO 分割模型在模型大小和速度方面的显著差异。SAM 虽然提供了独特的自动分割能力,但 YOLO 模型,尤其是 YOLOv8n-seg、YOLO11n-seg 和 YOLO26n-seg,明显更小、更快且计算效率更高。

测试在配备 96GB VRAM 的 NVIDIA RTX PRO 6000 上运行,使用 torch==2.9.1ultralytics==8.4.19。如需复现此测试:

示例
from ultralytics import ASSETS, SAM, YOLO, FastSAM

# Profile SAM3, SAM2-t, SAM2-b, SAM-b, MobileSAM
for file in ["sam_b.pt", "sam2_b.pt", "sam2_t.pt", "mobile_sam.pt", "sam3.pt"]:
    model = SAM(file)
    model.info()
    model(ASSETS)

# Profile FastSAM-s
model = FastSAM("FastSAM-s.pt")
model.info()
model(ASSETS)

# Profile YOLO models
for file_name in ["yolov8n-seg.pt", "yolo11n-seg.pt", "yolo26n-seg.pt"]:
    model = YOLO(file_name)
    model.info()
    model(ASSETS, nms=False)  # YOLO26 NMS-free head; no-op for YOLOv8/YOLO11

评估指标#

SAM 3 引入了为 PCS 任务设计的新指标,同时补充了熟悉的 F1 分数精确率召回率等度量。

分类门控 F1(CGF1)#

结合定位和分类的主要指标:

CGF1 = 100 × pmF1 × IL_MCC

其中:

  • pmF1(正类宏平均 F1):衡量正样本上的定位质量
  • IL_MCC(图像级 Matthews 相关系数):衡量二元分类准确率(“概念是否存在?”)

为什么需要这些指标?#

传统 AP 指标不考虑校准,因此模型难以在实践中使用。SAM 3 的指标仅评估置信度高于 0.5 的预测,从而强制要求良好的校准,并模拟交互式 predicttrack 循环中的真实使用模式。

关键消融实验与洞察#

存在性头的影响#

存在性头将识别与定位解耦,从而带来显著提升:

配置CGF1IL_MCCpmF1
无存在性头57.60.7774.7
有存在性头63.30.8277.1

存在性头带来了 +5.7 CGF1 的提升(+9.9%),主要改善了识别能力(IL_MCC +6.5%)。

困难负样本的影响#

困难负样本/图像CGF1IL_MCCpmF1
031.80.4470.2
544.80.6271.9
3049.20.6872.3

困难负样本对于开放词汇识别至关重要,可将 IL_MCC 提高 54.5%(0.44 → 0.68)。

训练数据扩展#

数据来源CGF1IL_MCCpmF1
仅外部数据30.90.4666.3
外部数据 + 合成数据39.70.5770.6
外部数据 + 高质量数据51.80.7173.2
全部三者54.30.7473.5

高质量人工标注相比仅使用合成数据或外部数据可带来显著提升。有关数据质量实践的背景信息,请参阅数据收集与标注

应用#

SAM 3 的概念分割能力支持新的使用场景:

  • 内容审核:在媒体库中查找特定内容类型的所有实例
  • 电子商务:在目录图像中分割某一类型的所有产品,支持自动标注
  • 医学影像:识别特定组织类型或异常的所有出现位置
  • 自主系统:按类别跟踪所有交通标志、行人或车辆实例
  • 视频分析:统计并跟踪所有穿着特定服装或执行特定动作的人员
  • 数据集标注:快速标注稀有目标类别的所有实例
  • 科学研究:量化并分析所有符合特定标准的样本

SAM 3 Agent:扩展语言推理#

SAM 3 可以与多模态大语言模型(MLLMs)结合,以处理需要推理的复杂查询,其理念类似于 OWLv2T-Rex 等开放词汇系统。

推理任务上的性能#

基准指标SAM 3 Agent(Gemini 2.5 Pro)此前最佳
ReasonSeg(验证集)gIoU76.065.0(SoTA)
ReasonSeg(测试集)gIoU73.861.3(SoTA)
OmniLabel(验证集)AP46.736.5(REAL)
RefCOCO+Acc91.289.3(LISA)

复杂查询示例#

SAM 3 Agent 可以处理需要推理的查询:

  • “坐下但没有手拿礼盒的人”
  • “离镜头最近且没有戴项圈的狗”
  • “比这个人的手更大的红色物体”

MLLM 向 SAM 3 提出简单的名词短语查询,分析返回的掩码,并不断迭代直到满意为止。

限制#

尽管 SAM 3 代表了重大进步,但它仍存在一些限制:

  • 短语复杂度:最适合简单的名词短语;较长的指代表达式或复杂推理可能需要集成 MLLM
  • 歧义处理:某些概念本质上仍然存在歧义(例如,“小窗户”“舒适的房间”)
  • 计算要求:比 YOLO 等专用检测模型更大、更慢
  • 词汇范围:专注于原子视觉概念;没有 MLLM 协助时,组合推理能力有限
  • 罕见概念:对于训练数据中代表性不足的极罕见或细粒度概念,性能可能下降

引用#

引用
@misc{carion2025sam3,
  title         = {SAM 3: Segment Anything with Concepts},
  author        = {Nicolas Carion and Laura Gustafson and Yuan-Ting Hu and Shoubhik Debnath and Ronghang Hu and Didac Suris and Chaitanya Ryali and Kalyan Vasudev Alwala and Haitham Khedr and Andrew Huang and Jie Lei and Tengyu Ma and Baishan Guo and Arpit Kalla and Markus Marks and Joseph Greer and Meng Wang and Peize Sun and Roman R{\"a}dle and Triantafyllos Afouras and Effrosyni Mavroudi and Katherine Xu and Tsung-Han Wu and Yu Zhou and Liliane Momeni and Rishi Hazra and Shuangrui Ding and Sagar Vaze and Francois Porcher and Feng Li and Siyuan Li and Aishwarya Kamath and Ho Kei Cheng and Piotr Doll{\'a}r and Nikhila Ravi and Kate Saenko and Pengchuan Zhang and Christoph Feichtenhofer},
  year          = {2025},
  eprint        = {2511.16719},
  archivePrefix = {arXiv},
  primaryClass  = {cs.CV},
  url           = {https://arxiv.org/abs/2511.16719}
}

常见问题#

  • SAM 3 于 2025年11月19日由 Meta 发布,并已完全集成到 ultralytics 软件包中,支持预测模式跟踪模式

  • 是的!SAM 3 已完全集成到 Ultralytics Python 软件包中,包括概念分割、SAM 2 风格的视觉提示和多目标视频跟踪。SAM 3 还为 Ultralytics Platform 上的智能标注功能提供支持,让你只需点击几下即可标注图像。

  • PCS 是 SAM 3 引入的一项新任务,可分割图像或视频中某个视觉概念的所有实例。不同于针对特定对象实例的传统分割,PCS 会找到某个类别的每一次出现。例如:

    • 文本提示:“黄色校车” → 分割场景中的所有黄色校车
    • 图像示例:框选一只狗 → 分割图像中的所有狗
    • 组合提示:“条纹猫” + 示例框 → 分割所有与示例匹配的条纹猫

    参阅对象检测实例分割的相关背景信息。

  • 特性SAM 2SAM 3
    任务每个提示对应单个对象概念的所有实例
    提示类型点、框、掩码+ 文本短语、图像示例
    检测能力需要外部检测器内置开放词汇检测器
    识别仅基于几何信息文本和视觉识别
    架构仅跟踪器带存在性检测头的检测器 + 跟踪器
    零样本性能不适用(需要视觉提示)在 LVIS 上达到 47.0 AP,在 SA-Co 上性能提升 2 倍
    交互式细化仅点击点击 + 示例泛化

    SAM 3 保持了与 SAM 2 视觉提示的向后兼容性,同时增加了基于概念的能力。

  • SAM 3 使用 Segment Anything with Concepts(SA-Co) 数据集进行训练:

    训练数据

    • 包含 520 万张图像400 万个唯一名词短语(SA-Co/HQ)——高质量人工标注
    • 包含 5.25 万个视频2.48 万个唯一名词短语(SA-Co/VIDEO)
    • 包含覆盖 3800 万个名词短语14 亿个合成掩码(SA-Co/SYN)
    • 包含 15 个外部数据集,并加入了困难负样本(SA-Co/EXT)

    基准数据

    • 涵盖 12.6 万张图像/视频 中的 21.4 万个唯一概念
    • 概念数量是现有基准的 50 倍(例如,LVIS 包含约 ~4K 个概念)
    • 在 SA-Co/Gold 上进行三重标注,用于衡量人类性能上限和下限

    如此庞大的规模和多样性,使 SAM 3 能够在开放词汇概念上实现卓越的零样本泛化能力。

  • SAM 3 和 YOLO26 面向不同的使用场景:

    SAM 3 的优势

    • 开放词汇:无需训练即可通过文本提示分割任意概念
    • 零样本:可立即处理新类别
    • 交互式:基于示例的细化可泛化到相似对象
    • 基于概念:自动找到某个类别的所有实例
    • 准确率:在 LVIS 零样本实例分割上达到 47.0 AP

    YOLO26 的优势

    • 速度:推理速度提升几个数量级,带有可选的无 NMS 端到端检测头
    • 效率:模型大小缩小 539 倍(6.4MB 对比 3.45GB)
    • 资源友好:可在边缘设备和移动设备上运行
    • 实时:针对生产部署进行了优化

    建议

    • 当你需要查找由文本或示例描述的概念的所有实例时,使用 SAM 3 进行灵活的开放词汇分割
    • 当类别预先已知且需要高速生产部署时,使用 YOLO26
    • 当需要使用几何提示进行交互式单对象分割时,使用 SAM 2
  • SAM 3 专为简单的名词短语而设计(例如,“红苹果”“戴帽子的人”)。对于需要推理的复杂查询,可将 SAM 3 与 MLLM 结合为 SAM 3 Agent

    简单查询(原生 SAM 3)

    • “黄色校车”
    • “条纹猫”
    • “戴红帽子的人”

    复杂查询(使用 MLLM 的 SAM 3 Agent)

    • “坐着但没有拿礼品盒的人”
    • “离镜头最近且没有戴项圈的狗”
    • “比这个人的手更大的红色物体”

    SAM 3 Agent 将 SAM 3 的分割能力与 MLLM 的推理能力相结合,在 ReasonSeg 验证集上达到 76.0 gIoU(此前最佳结果为 65.0,提升 16.9%)。

  • 在采用三重人工标注的 SA-Co/Gold 基准上:

    • 人类下限:74.2 CGF1(最保守的标注者)
    • SAM 3 性能:65.0 CGF1
    • 达成度:达到估计人类下限的 88%
    • 人类上限:81.4 CGF1(最宽松的标注者)

    SAM 3 在开放词汇概念分割上达到了接近人类水平的出色准确率,差距主要存在于具有歧义或主观性的概念上(例如,“小窗户”“舒适的房间”)。

评论