SAM 3: Segmentação de Qualquer Coisa com Conceitos

Agora Disponível no Ultralytics

O SAM 3 está totalmente integrado ao pacote Ultralytics a partir da versão 8.3.237 (PR #22897). Instale ou atualize com pip install -U ultralytics para acessar todos os recursos do SAM 3, incluindo segmentação de conceitos baseada em texto, exemplos de imagem e rastreamento de vídeo.

Visão geral da segmentação de conceito promptable do SAM 3

SAM 3 (Segment Anything Model 3) é o modelo de base lançado pela Meta para Promptable Concept Segmentation (PCS). Construído sobre o SAM 2, o SAM 3 introduz uma capacidade fundamentalmente nova: detectar, segmentar e rastrear todas as instâncias de um conceito visual especificado por prompts de texto, exemplos de imagem, ou ambos. Ao contrário das versões anteriores do SAM que segmentam objetos únicos por prompt, o SAM 3 pode encontrar e segmentar cada ocorrência de um conceito que apareça em qualquer lugar em imagens ou vídeos, alinhando-se com os objetivos de vocabulário aberto na moderna segmentação de instâncias.



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

O SAM 3 agora está totalmente integrado ao pacote ultralytics, fornecendo suporte nativo para segmentação de conceitos com prompts de texto, exemplos de imagem e recursos de rastreamento de vídeo.

Visão geral

SAM 3 achieves a 2× performance gain over existing systems in Promptable Concept Segmentation while maintaining and improving SAM 2's capabilities for interactive visual segmentation. The model excels at open-vocabulary segmentation, allowing users to specify concepts using simple noun phrases (e.g., "yellow school bus", "striped cat") or by providing example images of the target object. These capabilities complement production-ready pipelines that rely on streamlined predict and track workflows.

Exemplos de segmentação por prompt de texto do SAM 3

O que é Promptable Concept Segmentation (PCS)?

A tarefa PCS recebe um prompt de conceito como entrada e retorna máscaras de segmentação com identidades únicas para todas as instâncias de objetos correspondentes. Os prompts de conceito podem ser:

  • Texto: Frases nominais simples como "maçã vermelha" ou "pessoa usando chapéu", semelhante ao zero-shot learning
  • Exemplos de imagem: Caixas delimitadoras ao redor de objetos de exemplo (positivos ou negativos) para rápida generalização
  • Combinado: Tanto texto quanto exemplos de imagem juntos para controle preciso

Isso difere dos prompts visuais tradicionais (pontos, caixas, máscaras) que segmentam apenas uma instância de objeto específica, como popularizado pela família original SAM.

Principais Métricas de Desempenho

MétricaConquista do SAM 3
LVIS Zero-Shot Mask AP47.0 (vs 38.5 anterior, +22% de melhoria)
Benchmark SA-Co2× melhor que os sistemas existentes
Velocidade de Inferência (GPU H200)30 ms por imagem com mais de 100 objetos detectados
Desempenho de VídeoQuase tempo real para ~5 objetos simultâneos
Benchmark MOSEv2 VOS60.1 J&F (+25.5% sobre o SAM 2.1, +17% sobre o SOTA anterior)
Refinamento InterativoMelhoria de +18.6 CGF1 após 3 prompts de exemplo
Lacuna de Desempenho HumanoAlcança 88% do limite inferior estimado no SA-Co/Gold

Para contexto sobre métricas de modelo e compensações na produção, veja model evaluation insights e YOLO performance metrics.

Arquitetura

O SAM 3 consiste em um detector e um rastreador que compartilham um backbone de visão Perception Encoder (PE). Esse design desacoplado evita conflitos de tarefas, permitindo tanto a detecção em nível de imagem quanto o rastreamento em nível de vídeo, com uma interface compatível com o uso de Python e uso de CLI do Ultralytics.

Componentes Principais

  • Detector: Arquitetura baseada em DETR para detecção de conceitos em nível de imagem

    • Codificador de texto para prompts de frases nominais
    • Codificador de exemplo para prompts baseados em imagem
    • Codificador de fusão para condicionar recursos de imagem em prompts
    • Novo cabeçalho de presença que desacopla o reconhecimento ("o que") da localização ("onde")
    • Cabeçalho de máscara para gerar máscaras de segmentação de instância
  • Rastreador: Segmentação de vídeo baseada em memória herdada do SAM 2

    • Codificador de prompt, decodificador de máscara, codificador de memória
    • Banco de memória para armazenar a aparência do objeto entre quadros
    • Desambiguação temporal auxiliada por técnicas como um filtro de Kalman em configurações de múltiplos objetos
  • Token de Presença: Um token global aprendido que prevê se o conceito alvo está presente na imagem/quadro, melhorando a detecção ao separar o reconhecimento da localização.

Diagrama da arquitetura do modelo SAM 3

Principais Inovações

  1. Reconhecimento e Localização Desacoplados: O cabeçalho de presença prevê a presença do conceito globalmente, enquanto as consultas de proposta focam apenas na localização, evitando objetivos conflitantes.
  2. Prompts de Conceito e Visuais Unificados: Suporta tanto PCS (prompts de conceito) quanto PVS (prompts visuais como cliques/caixas do SAM 2) em um único modelo.
  3. Refinamento Interativo de Exemplos: Você pode adicionar exemplos de imagem positivos ou negativos para refinar os resultados iterativamente, com o modelo generalizando para objetos semelhantes em vez de apenas corrigir instâncias individuais.
  4. Desambiguação Temporal: Usa pontuações de detecção de masklet e re-prompting periódico para lidar com oclusões, cenas lotadas e falhas de rastreamento em vídeo, alinhando-se com as melhores práticas de segmentação e rastreamento de instâncias.

Dataset SA-Co

O SAM 3 é treinado no Segment Anything with Concepts (SA-Co), o maior e mais diversificado dataset de segmentação da Meta até hoje, expandindo além de benchmarks comuns como COCO e LVIS.

Dados de Treinamento

Componente do DatasetDescriçãoEscala
SA-Co/HQDados de imagem de alta qualidade anotados por humanos a partir de um motor de dados de 4 fases5.2M de imagens, 4M de frases nominais únicas
SA-Co/SYNDataset sintético rotulado por IA sem envolvimento humano38M de frases nominais, 1.4B de máscaras
SA-Co/EXT15 datasets externos enriquecidos com negativos difíceisVaria por fonte
SA-Co/VIDEOAnotações de vídeo com rastreamento temporal52.5K de vídeos, 24.8K de frases nominais únicas

Dados de Benchmark

O benchmark de avaliação SA-Co contém 214K de frases únicas em 126K de imagens e vídeos, fornecendo mais de 50× mais conceitos do que os benchmarks existentes. Ele inclui:

  • SA-Co/Gold: 7 domínios, triplamente anotados para medir limites de desempenho humano
  • SA-Co/Silver: 10 domínios, anotação humana única
  • SA-Co/Bronze e SA-Co/Bio: 9 datasets existentes adaptados para segmentação de conceitos
  • SA-Co/VEval: Benchmark de vídeo com 3 domínios (SA-V, YT-Temporal-1B, SmartGlasses)

Inovações no Motor de Dados

O motor de dados escalável humano e com IA do SAM 3 alcança 2× de rendimento de anotação através de:

  1. Anotadores de IA: Modelos baseados em Llama propõem diversas frases nominais, incluindo negativos difíceis
  2. Verificadores de IA: LLMs multimodais ajustados verificam a qualidade e a exaustividade da máscara com desempenho quase humano
  3. Mineração Ativa: Foca o esforço humano em casos de falha desafiadores onde a IA tem dificuldades
  4. Baseado em Ontologia: Aproveita uma grande ontologia fundamentada no Wikidata para cobertura de conceitos

Instalação

O SAM 3 está disponível no Ultralytics versão 8.3.237 e posteriores. Instale ou atualize com:

pip install -U ultralytics
Pesos do Modelo SAM 3 Necessários

Diferente de outros modelos Ultralytics, os pesos do SAM 3 (sam3.pt) não são baixados automaticamente. Você deve primeiro solicitar acesso aos pesos do modelo na página do modelo SAM 3 no Hugging Face e, uma vez aprovado, baixar o sam3.pt dessa página. Coloque o arquivo sam3.pt baixado no seu diretório de trabalho ou especifique o caminho completo ao carregar o modelo.

`TypeError: 'SimpleTokenizer' object is not callable`

Se você receber o erro acima durante a previsão, significa que você tem o pacote clip incorreto instalado. Instale o pacote clip correto executando o seguinte:

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

Como usar o SAM 3: Versatilidade na Segmentação de Conceitos

O SAM 3 suporta tarefas de Promptable Concept Segmentation (PCS) e Promptable Visual Segmentation (PVS) através de diferentes interfaces de preditor:

Tarefas e Modelos Suportados

Tipo de TarefaTipos de PromptSaída
Segmentação de Conceito (PCS)Texto (frases nominais), exemplos de imagemTodas as instâncias que correspondem ao conceito
Segmentação Visual (PVS)Pontos, caixas, máscarasInstância de objeto único (estilo SAM 2)
Refinamento InterativoAdicionar/remover exemplos ou cliques iterativamenteSegmentação refinada com precisão melhorada

Exemplos de segmentação de conceitos

Segmentar com prompts de texto

Segmentação de conceitos baseada em texto

Encontre e segmente todas as instâncias de um conceito usando uma descrição de texto. Prompts de texto exigem a interface SAM3SemanticPredictor.

from ultralytics.models.sam import SAM3SemanticPredictor

# Initialize predictor with configuration
overrides = dict(
    conf=0.25,
    task="segment",
    mode="predict",
    model="sam3.pt",
    half=True,  # 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"])

Segmentar com exemplares de imagem

Segmentação baseada em exemplares de imagem

Use caixas delimitadoras (bounding boxes) como prompts visuais para encontrar todas as instâncias semelhantes. Isso também requer o SAM3SemanticPredictor para correspondência baseada em conceito.

from ultralytics.models.sam import SAM3SemanticPredictor

# Initialize predictor
overrides = dict(conf=0.25, task="segment", mode="predict", model="sam3.pt", half=True, 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 for different concepts
results = predictor(bboxes=[[539, 599, 589, 639], [343, 267, 499, 662]])

Inferência baseada em recursos para eficiência

Reutilizando recursos de imagem para múltiplas consultas

Extraia recursos de imagem uma vez e reutilize-os para múltiplas consultas de segmentação para melhorar a eficiência.

import cv2

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

# Initialize predictors
overrides = dict(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)

Segmentação de conceitos em vídeo

Rastrear conceitos em vídeo com caixas delimitadoras

Rastreamento de vídeo com prompts visuais

Detecte e rastreie instâncias de objetos em quadros de vídeo usando prompts de caixa delimitadora.

from ultralytics.models.sam import SAM3VideoPredictor

# Create video predictor
overrides = dict(conf=0.25, task="segment", mode="predict", model="sam3.pt", half=True)
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

Rastrear conceitos com prompts de texto

Rastreamento de vídeo com consultas semânticas

Rastreie todas as instâncias de conceitos especificados por texto em quadros de vídeo.

from ultralytics.models.sam import SAM3VideoSemanticPredictor

# Initialize semantic video predictor
overrides = dict(conf=0.25, task="segment", mode="predict", imgsz=640, model="sam3.pt", half=True, 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,
)

Prompts visuais (compatibilidade com SAM 2)

O SAM 3 mantém compatibilidade total com o prompt visual do SAM 2 para segmentação de objeto único:

Prompts visuais no estilo SAM 2

A interface básica SAM se comporta exatamente como o SAM 2, segmentando apenas a área específica indicada por prompts visuais (pontos, caixas ou máscaras).

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()
Prompts visuais vs. segmentação de conceitos

Usar SAM("sam3.pt") com prompts visuais (pontos/caixas/máscaras) segmentará apenas o objeto específico naquele local, assim como o SAM 2. Para segmentar todas as instâncias de um conceito, use o SAM3SemanticPredictor com prompts de texto ou exemplares, conforme mostrado acima.

Benchmarks de desempenho

Segmentação de imagem

O SAM 3 alcança resultados de ponta em vários benchmarks, incluindo conjuntos de dados do mundo real como LVIS e COCO for segmentation:

BenchmarkMétricaSAM 3Melhor anteriorMelhoria
LVIS (zero-shot)Mask AP47.038.5+22.1%
SA-Co/GoldCGF165.034.3 (OWLv2)+89.5%
COCO (zero-shot)Box AP53.552.2 (T-Rex2)+2.5%
ADE-847 (semantic seg)mIoU14.79.2 (APE-D)+59.8%
PascalConcept-59mIoU59.458.5 (APE-D)+1.5%
Cityscapes (semantic seg)mIoU65.144.2 (APE-D)+47.3%

Explore opções de conjuntos de dados para experimentação rápida em Ultralytics datasets.

Desempenho de segmentação de vídeo

O SAM 3 apresenta melhorias significativas em relação ao SAM 2 e ao estado da arte anterior em benchmarks de vídeo, como DAVIS 2017 e YouTube-VOS:

BenchmarkMétricaSAM 3SAM 2.1 LMelhoria
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%

Adaptação Few-Shot

O SAM 3 se destaca na adaptação a novos domínios com poucos exemplos, relevante para fluxos de trabalho de data-centric AI:

Benchmark0-shot AP10-shot APMelhor anterior (10-shot)
ODinW1359.971.667.9 (gDino1.5-Pro)
RF100-VL14.335.733.7 (gDino-T)

Eficácia do refinamento interativo

O prompting baseado em conceitos do SAM 3 com exemplares converge muito mais rápido do que o prompting visual:

Prompts adicionadosPontuação CGF1Ganho vs. Apenas textoGanho vs. Baseline PVS
Apenas texto46.4linha de baselinha de base
+1 exemplar57.6+11.2+6.7
+2 exemplares62.2+15.8+9.7
+3 exemplares65.0+18.6+11.2
+4 exemplares65.7+19.3+11.5 (platô)

Precisão de Contagem de Objetos

O SAM 3 fornece contagem precisa segmentando todas as instâncias, um requisito comum em contagem de objetos:

BenchmarkPrecisãoMAEvs Melhor MLLM
CountBench95.6%0.1192.4% (Gemini 2.5)
PixMo-Count87.3%0.2288.8% (Molmo-72B)

Comparação entre SAM 3, SAM 2 e YOLO

Aqui comparamos as capacidades do SAM 3 com os modelos SAM 2 e YOLO26:

CapacidadeSAM 3SAM 2YOLO26n-seg
Segmentação de Conceitos✅ Todas as instâncias via texto/exemplares❌ Não suportado❌ Não suportado
Segmentação Visual✅ Instância única (compatível com SAM 2)✅ Instância única✅ Todas as instâncias
Capacidade Zero-shot✅ Vocabulário aberto✅ Prompts geométricos❌ Conjunto fechado
Refinamento Interativo✅ Exemplares + cliques✅ Apenas cliques❌ Não suportado
Rastreamento de Vídeo✅ Multiobjeto com identidades✅ Multiobjeto✅ Multiobjeto
LVIS Mask AP (zero-shot)47.0N/AN/A
MOSEv2 J&F60.147.9N/A
Velocidade (GPU, ms/im)29218578.4
Tamanho do Modelo3.45 GB162 MB (base)6.4 MB

Velocidade medida em NVIDIA RTX PRO 6000 com torch==2.9.1 e ultralytics==8.4.19.

Principais conclusões:

  • SAM 3: Melhor para segmentação de conceitos de vocabulário aberto, encontrando todas as instâncias de um conceito com texto ou prompts de exemplares
  • SAM 2: Melhor para segmentação interativa de objeto único em imagens e vídeos com prompts geométricos
  • YOLO26: Melhor para segmentação em alta velocidade e tempo real, com inferência fim a fim sem NMS, exportável para muitos formatos para implantação em GPUs, CPUs e dispositivos de borda

Comparação SAM vs YOLO

Comparação entre SAM 3, SAM 2, SAM, MobileSAM e FastSAM com os modelos de segmentação Ultralytics YOLO (YOLOv8, YOLO11, YOLO26) em termos de tamanho, parâmetros e velocidade de inferência na GPU:

ModeloTamanho
(MB)
Parâmetros
(M)
Velocidade (GPU)
(ms/im)
Meta SAM-b37593.71306
Meta SAM2-b16280.8857
Meta SAM2-t78.138.9668
Meta SAM33450473.62921
MobileSAM40.710.1605
FastSAM-s com YOLOv8 backbone23.711.855.9
Ultralytics YOLOv8n-seg6.7 (515x menor)3.4 (139.1x menos)17.4 (167x mais rápido)
Ultralytics YOLO11n-seg6.4 (539x menor)2.9 (163.1x menos)12.6 (231x mais rápido)
Ultralytics YOLO26n-seg6.4 (539x menor)2.7 (175.2x menos)8.4 (347x mais rápido)

Esta comparação demonstra as diferenças substanciais nos tamanhos e velocidades dos modelos entre as variantes SAM e os modelos de segmentação YOLO. Embora o SAM forneça capacidades únicas de segmentação automática, os modelos YOLO, particularmente o YOLOv8n-seg, o YOLO11n-seg e o YOLO26n-seg, são significativamente mais pequenos, mais rápidos e mais eficientes computacionalmente.

Testes realizados em uma NVIDIA RTX PRO 6000 com 96GB de VRAM usando torch==2.9.1 e ultralytics==8.4.19. Para reproduzir este teste:

Exemplo
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)

Métricas de Avaliação

O SAM 3 introduz novas métricas projetadas para a tarefa PCS, complementando medidas familiares como pontuação F1, precisão e recall.

F1 com Gate de Classificação (CGF1)

A métrica principal combinando localização e classificação:

CGF1 = 100 × pmF1 × IL_MCC

Onde:

  • pmF1 (F1 Macro Positivo): Mede a qualidade da localização em exemplos positivos
  • IL_MCC (Coeficiente de Correlação de Matthews a nível de imagem): Mede a precisão da classificação binária ("o conceito está presente?")

Por que essas métricas?

As métricas tradicionais de AP não levam em conta a calibração, tornando os modelos difíceis de usar na prática. Ao avaliar apenas previsões acima de 0.5 de confiança, as métricas do SAM 3 impõem uma boa calibração e imitam padrões de uso real em loops interativos de predict e track.

Principais Ablações e Insights

Impacto do Head de Presença

A head de presença desacopla o reconhecimento da localização, proporcionando melhorias significativas:

ConfiguraçãoCGF1IL_MCCpmF1
Sem presença57.60.7774.7
Com presença63.30.8277.1

A head de presença fornece um impulso de +5.7 CGF1 (+9,9%), melhorando principalmente a capacidade de reconhecimento (IL_MCC +6,5%).

Efeito de Hard Negatives

Hard Negatives/ImagemCGF1IL_MCCpmF1
031.80.4470.2
544.80.6271.9
3049.20.6872.3

Hard negatives são cruciais para o reconhecimento de vocabulário aberto, melhorando o IL_MCC em 54,5% (0,44 → 0,68).

Dimensionamento de Dados de Treinamento

Fontes de DadosCGF1IL_MCCpmF1
Apenas externo30.90.4666.3
Externo + Sintético39.70.5770.6
Externo + HQ51.80.7173.2
Todos os três54.30.7473.5

Anotações humanas de alta qualidade proporcionam ganhos significativos em comparação com dados sintéticos ou externos isoladamente. Para mais informações sobre práticas de qualidade de dados, veja coleta e anotação de dados.

Aplicações

A capacidade de segmentação de conceitos do SAM 3 permite novos casos de uso:

  • Moderação de Conteúdo: Encontre todas as instâncias de tipos de conteúdo específicos em bibliotecas de mídia
  • E-commerce: Segmente todos os produtos de um determinado tipo em imagens de catálogo, dando suporte à auto-anotação
  • Imagens Médicas: Identifique todas as ocorrências de tipos específicos de tecidos ou anormalidades
  • Sistemas Autônomos: Rastreie todas as instâncias de placas de trânsito, pedestres ou veículos por categoria
  • Análise de Vídeo: Conte e rastreie todas as pessoas vestindo roupas específicas ou realizando ações
  • Anotação de Conjunto de Dados: Anote rapidamente todas as instâncias de categorias de objetos raras
  • Pesquisa Científica: Quantifique e analise todos os espécimes que correspondam a critérios específicos

SAM 3 Agent: Raciocínio de Linguagem Estendido

O SAM 3 pode ser combinado com Modelos de Linguagem Multimodais (MLLMs) para lidar com consultas complexas que exigem raciocínio, seguindo o espírito de sistemas de vocabulário aberto como o OWLv2 e o T-Rex.

Desempenho em Tarefas de Raciocínio

BenchmarkMétricaSAM 3 Agent (Gemini 2.5 Pro)Melhor anterior
ReasonSeg (validação)gIoU76.065.0 (SoTA)
ReasonSeg (teste)gIoU73.861.3 (SoTA)
OmniLabel (validação)AP46.736.5 (REAL)
RefCOCO+Acc91.289.3 (LISA)

Exemplos de Consultas Complexas

O SAM 3 Agent pode lidar com consultas que exigem raciocínio:

  • "Pessoas sentadas, mas que não estão segurando uma caixa de presente nas mãos"
  • "O cachorro mais próximo da câmera que não está usando coleira"
  • "Objetos vermelhos maiores do que a mão da pessoa"

O MLLM propõe consultas simples de sintagma nominal para o SAM 3, analisa as máscaras retornadas e itera até estar satisfeito.

Limitações

Embora o SAM 3 represente um grande avanço, ele possui certas limitações:

  • Complexidade de Frase: Melhor adequado para sintagmas nominais simples; expressões de referência longas ou raciocínio complexo podem exigir integração com MLLM
  • Tratamento de Ambiguidade: Alguns conceitos permanecem inerentemente ambíguos (por exemplo, "janela pequena", "quarto aconchegante")
  • Requisitos Computacionais: Maior e mais lento do que modelos de detecção especializados como o YOLO
  • Escopo de Vocabulário: Focado em conceitos visuais atômicos; o raciocínio composicional é limitado sem a assistência de MLLM
  • Conceitos Raros: O desempenho pode diminuir em conceitos extremamente raros ou granulares que não estão bem representados nos dados de treinamento

Citação

Citação
@inproceedings{sam3_2025,
  title     = {SAM 3: Segment Anything with Concepts},
  author    = {Anonymous authors},
  booktitle = {Submitted to ICLR 2026},
  year      = {2025},
  url       = {https://openreview.net/forum?id=r35clVtGzw},
  note      = {Paper ID: 4183, under double-blind review}
}

FAQ

Quando o SAM 3 foi lançado?

O SAM 3 foi lançado pela Meta em 20 de novembro de 2025 e está totalmente integrado ao Ultralytics a partir da versão 8.3.237 (PR #22897). Suporte completo está disponível para o modo predict e modo track.

O SAM 3 está integrado ao Ultralytics?

Sim! O SAM 3 está totalmente integrado ao pacote Python do Ultralytics, incluindo segmentação de conceitos, prompts visuais no estilo SAM 2 e rastreamento de vídeo de múltiplos objetos. O SAM 3 também potencializa o recurso de anotação inteligente na Ultralytics Platform, onde você pode anotar imagens com apenas alguns cliques.

O que é Segmentação de Conceito com Prompt (PCS)?

A PCS é uma nova tarefa introduzida no SAM 3 que segmenta todas as instâncias de um conceito visual em uma imagem ou vídeo. Diferente da segmentação tradicional, que visa uma instância de objeto específica, a PCS encontra todas as ocorrências de uma categoria. Por exemplo:

  • Prompt de texto: "ônibus escolar amarelo" → segmenta todos os ônibus escolares amarelos na cena
  • Exemplar de imagem: Caixa ao redor de um cachorro → segmenta todos os cachorros na imagem
  • Combinado: "gato listrado" + caixa de exemplar → segmenta todos os gatos listrados que correspondem ao exemplo

Veja o histórico relacionado sobre detecção de objetos e segmentação de instâncias.

Como o SAM 3 difere do SAM 2?

RecursoSAM 2SAM 3
TarefaObjeto único por promptTodas as instâncias de um conceito
Tipos de PromptPontos, caixas, máscarasFrases de texto, exemplares de imagem
Capacidade de DetecçãoRequer detector externoDetector de vocabulário aberto integrado
ReconhecimentoApenas baseado em geometriaReconhecimento visual e de texto
ArquiteturaApenas rastreadorDetector + Rastreamento com cabeça de presença
Desempenho Zero-ShotN/A (requer prompts visuais)47.0 AP em LVIS, 2× melhor em SA-Co
Refinamento InterativoApenas cliquesCliques + generalização de exemplares

O SAM 3 mantém a compatibilidade reversa com o prompt visual do SAM 2, adicionando capacidades baseadas em conceitos.

Quais conjuntos de dados são usados para treinar o SAM 3?

O SAM 3 é treinado no conjunto de dados Segment Anything with Concepts (SA-Co):

Dados de Treinamento:

  • 5,2M de imagens com 4M de frases nominais únicas (SA-Co/HQ) - anotações humanas de alta qualidade
  • 52,5K de vídeos com 24,8K de frases nominais únicas (SA-Co/VIDEO)
  • 1,4B de máscaras sintéticas em 38M de frases nominais (SA-Co/SYN)
  • 15 conjuntos de dados externos enriquecidos com hard negatives (SA-Co/EXT)

Dados de Benchmark:

  • 214K de conceitos únicos em 126K de imagens/vídeos
  • 50× mais conceitos do que benchmarks existentes (por exemplo, LVIS tem ~4K conceitos)
  • Anotação tripla no SA-Co/Gold para medir os limites de desempenho humano

Essa escala massiva e diversidade permitem a generalização zero-shot superior do SAM 3 em conceitos de vocabulário aberto.

Como o SAM 3 se compara ao YOLO26 para segmentação?

O SAM 3 e o YOLO26 atendem a casos de uso diferentes:

Vantagens do SAM 3:

  • Vocabulário aberto: Segmenta qualquer conceito via prompts de texto sem treinamento
  • Zero-shot: Funciona em novas categorias imediatamente
  • Interativo: O refinamento baseado em exemplares generaliza para objetos semelhantes
  • Baseado em conceito: Encontra automaticamente todas as instâncias de uma categoria
  • Precisão: 47.0 AP em segmentação de instância zero-shot no LVIS

Vantagens do YOLO26:

  • Velocidade: Ordens de magnitude mais rápido na inferência com design end-to-end sem NMS
  • Eficiência: Modelos 539× menores (6,4MB vs 3,45GB)
  • Amigável aos recursos: Executa em dispositivos de borda e móveis
  • Tempo real: Otimizado para implantações de produção

Recomendação:

  • Use o SAM 3 para segmentação flexível de vocabulário aberto onde você precisa encontrar todas as instâncias de conceitos descritos por texto ou exemplos
  • Use o YOLO26 para implantações de produção de alta velocidade onde as categorias são conhecidas com antecedência
  • Use o SAM 2 para segmentação interativa de objeto único com prompts geométricos

O SAM 3 consegue lidar com consultas de linguagem complexas?

O SAM 3 foi projetado para frases nominais simples (por exemplo, "maçã vermelha", "pessoa usando chapéu"). Para consultas complexas que requerem raciocínio, combine o SAM 3 com um MLLM como SAM 3 Agent:

Consultas simples (SAM 3 nativo):

  • "ônibus escolar amarelo"
  • "gato listrado"
  • "pessoa usando chapéu vermelho"

Consultas complexas (SAM 3 Agent com MLLM):

  • "Pessoas sentadas, mas que não estão segurando uma caixa de presente"
  • "O cachorro mais próximo da câmera sem coleira"
  • "Objetos vermelhos maiores do que a mão da pessoa"

O SAM 3 Agent alcança 76.0 gIoU na validação ReasonSeg (contra 65.0 do melhor anterior, um aumento de 16,9%) combinando a segmentação do SAM 3 com capacidades de raciocínio MLLM.

Qual a precisão do SAM 3 em comparação com o desempenho humano?

No benchmark SA-Co/Gold com tripla anotação humana:

  • Limite inferior humano: 74.2 CGF1 (anotador mais conservador)
  • Desempenho do SAM 3: 65.0 CGF1
  • Conquista: 88% do limite inferior humano estimado
  • Limite superior humano: 81.4 CGF1 (anotador mais liberal)

O SAM 3 alcança um desempenho sólido, aproximando-se da precisão humana em segmentação de conceitos de vocabulário aberto, com a lacuna ocorrendo principalmente em conceitos ambíguos ou subjetivos (por exemplo, "janela pequena", "quarto aconchegante").

Comentários