SAM 3: Segmentação de Qualquer Coisa com Conceitos
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.

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.

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étrica | Conquista do SAM 3 |
|---|---|
| LVIS Zero-Shot Mask AP | 47.0 (vs 38.5 anterior, +22% de melhoria) |
| Benchmark SA-Co | 2× melhor que os sistemas existentes |
| Velocidade de Inferência (GPU H200) | 30 ms por imagem com mais de 100 objetos detectados |
| Desempenho de Vídeo | Quase tempo real para ~5 objetos simultâneos |
| Benchmark MOSEv2 VOS | 60.1 J&F (+25.5% sobre o SAM 2.1, +17% sobre o SOTA anterior) |
| Refinamento Interativo | Melhoria de +18.6 CGF1 após 3 prompts de exemplo |
| Lacuna de Desempenho Humano | Alcanç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.

Principais Inovações
- 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.
- 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.
- 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.
- 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 Dataset | Descrição | Escala |
|---|---|---|
| SA-Co/HQ | Dados de imagem de alta qualidade anotados por humanos a partir de um motor de dados de 4 fases | 5.2M de imagens, 4M de frases nominais únicas |
| SA-Co/SYN | Dataset sintético rotulado por IA sem envolvimento humano | 38M de frases nominais, 1.4B de máscaras |
| SA-Co/EXT | 15 datasets externos enriquecidos com negativos difíceis | Varia por fonte |
| SA-Co/VIDEO | Anotações de vídeo com rastreamento temporal | 52.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:
- Anotadores de IA: Modelos baseados em Llama propõem diversas frases nominais, incluindo negativos difíceis
- Verificadores de IA: LLMs multimodais ajustados verificam a qualidade e a exaustividade da máscara com desempenho quase humano
- Mineração Ativa: Foca o esforço humano em casos de falha desafiadores onde a IA tem dificuldades
- 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 ultralyticsDiferente 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.
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.gitComo 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 Tarefa | Tipos de Prompt | Saída |
|---|---|---|
| Segmentação de Conceito (PCS) | Texto (frases nominais), exemplos de imagem | Todas as instâncias que correspondem ao conceito |
| Segmentação Visual (PVS) | Pontos, caixas, máscaras | Instância de objeto único (estilo SAM 2) |
| Refinamento Interativo | Adicionar/remover exemplos ou cliques iterativamente | Segmentação refinada com precisão melhorada |
Exemplos de segmentação de conceitos
Segmentar com prompts de 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
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
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
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 masksRastrear conceitos com prompts de texto
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:
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()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:
| Benchmark | Métrica | SAM 3 | Melhor anterior | Melhoria |
|---|---|---|---|---|
| LVIS (zero-shot) | Mask AP | 47.0 | 38.5 | +22.1% |
| SA-Co/Gold | CGF1 | 65.0 | 34.3 (OWLv2) | +89.5% |
| COCO (zero-shot) | Box AP | 53.5 | 52.2 (T-Rex2) | +2.5% |
| ADE-847 (semantic seg) | mIoU | 14.7 | 9.2 (APE-D) | +59.8% |
| PascalConcept-59 | mIoU | 59.4 | 58.5 (APE-D) | +1.5% |
| Cityscapes (semantic seg) | mIoU | 65.1 | 44.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:
| Benchmark | Métrica | SAM 3 | SAM 2.1 L | Melhoria |
|---|---|---|---|---|
| MOSEv2 | J&F | 60.1 | 47.9 | +25.5% |
| DAVIS 2017 | J&F | 92.0 | 90.7 | +1.4% |
| LVOSv2 | J&F | 88.2 | 79.6 | +10.8% |
| SA-V | J&F | 84.6 | 78.4 | +7.9% |
| YTVOS19 | J&F | 89.6 | 89.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:
| Benchmark | 0-shot AP | 10-shot AP | Melhor anterior (10-shot) |
|---|---|---|---|
| ODinW13 | 59.9 | 71.6 | 67.9 (gDino1.5-Pro) |
| RF100-VL | 14.3 | 35.7 | 33.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 adicionados | Pontuação CGF1 | Ganho vs. Apenas texto | Ganho vs. Baseline PVS |
|---|---|---|---|
| Apenas texto | 46.4 | linha de base | linha de base |
| +1 exemplar | 57.6 | +11.2 | +6.7 |
| +2 exemplares | 62.2 | +15.8 | +9.7 |
| +3 exemplares | 65.0 | +18.6 | +11.2 |
| +4 exemplares | 65.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:
| Benchmark | Precisão | MAE | vs Melhor MLLM |
|---|---|---|---|
| CountBench | 95.6% | 0.11 | 92.4% (Gemini 2.5) |
| PixMo-Count | 87.3% | 0.22 | 88.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:
| Capacidade | SAM 3 | SAM 2 | YOLO26n-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.0 | N/A | N/A |
| MOSEv2 J&F | 60.1 | 47.9 | N/A |
| Velocidade (GPU, ms/im) | 2921 | 857 | 8.4 |
| Tamanho do Modelo | 3.45 GB | 162 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:
| Modelo | Tamanho (MB) | Parâmetros (M) | Velocidade (GPU) (ms/im) |
|---|---|---|---|
| Meta SAM-b | 375 | 93.7 | 1306 |
| Meta SAM2-b | 162 | 80.8 | 857 |
| Meta SAM2-t | 78.1 | 38.9 | 668 |
| Meta SAM3 | 3450 | 473.6 | 2921 |
| MobileSAM | 40.7 | 10.1 | 605 |
| FastSAM-s com YOLOv8 backbone | 23.7 | 11.8 | 55.9 |
| Ultralytics YOLOv8n-seg | 6.7 (515x menor) | 3.4 (139.1x menos) | 17.4 (167x mais rápido) |
| Ultralytics YOLO11n-seg | 6.4 (539x menor) | 2.9 (163.1x menos) | 12.6 (231x mais rápido) |
| Ultralytics YOLO26n-seg | 6.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:
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ção | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| Sem presença | 57.6 | 0.77 | 74.7 |
| Com presença | 63.3 | 0.82 | 77.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/Imagem | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| 0 | 31.8 | 0.44 | 70.2 |
| 5 | 44.8 | 0.62 | 71.9 |
| 30 | 49.2 | 0.68 | 72.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 Dados | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| Apenas externo | 30.9 | 0.46 | 66.3 |
| Externo + Sintético | 39.7 | 0.57 | 70.6 |
| Externo + HQ | 51.8 | 0.71 | 73.2 |
| Todos os três | 54.3 | 0.74 | 73.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
| Benchmark | Métrica | SAM 3 Agent (Gemini 2.5 Pro) | Melhor anterior |
|---|---|---|---|
| ReasonSeg (validação) | gIoU | 76.0 | 65.0 (SoTA) |
| ReasonSeg (teste) | gIoU | 73.8 | 61.3 (SoTA) |
| OmniLabel (validação) | AP | 46.7 | 36.5 (REAL) |
| RefCOCO+ | Acc | 91.2 | 89.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
@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?
| Recurso | SAM 2 | SAM 3 |
|---|---|---|
| Tarefa | Objeto único por prompt | Todas as instâncias de um conceito |
| Tipos de Prompt | Pontos, caixas, máscaras | Frases de texto, exemplares de imagem |
| Capacidade de Detecção | Requer detector externo | Detector de vocabulário aberto integrado |
| Reconhecimento | Apenas baseado em geometria | Reconhecimento visual e de texto |
| Arquitetura | Apenas rastreador | Detector + Rastreamento com cabeça de presença |
| Desempenho Zero-Shot | N/A (requer prompts visuais) | 47.0 AP em LVIS, 2× melhor em SA-Co |
| Refinamento Interativo | Apenas cliques | Cliques + 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").