Ultralytics YOLO27:
Get Started

SAM 3: segmenta cualquier elemento con conceptos#

Descripción general de la segmentación de conceptos mediante indicaciones de SAM 3

SAM 3 (Modelo de segmentación de cualquier elemento 3) es el modelo fundacional de Meta para la segmentación de conceptos mediante indicaciones (PCS). Basado en SAM 2, SAM 3 introduce una capacidad fundamentalmente nueva: detectar, segmentar y seguir todas las instancias de un concepto visual especificado mediante indicaciones de texto, imágenes de ejemplo o ambas. A diferencia de las versiones anteriores de SAM, que segmentan un solo objeto por indicación, SAM 3 puede encontrar y segmentar todas las apariciones de un concepto en cualquier parte de imágenes o vídeos, en consonancia con los objetivos de vocabulario abierto de la segmentación de instancias moderna.



Ver: Cómo usar Segment Anything 3 de Meta con Ultralytics | Segmentación mediante indicaciones de texto en imágenes y vídeos

SAM 3 está totalmente integrado en el paquete ultralytics, que ofrece compatibilidad nativa con la segmentación de conceptos mediante indicaciones de texto, imágenes de ejemplo y seguimiento de vídeo. El nuevo punto de control SAM 3.1 es compatible con la predicción de imágenes.

Descripción general#

SAM 3 ofrece un rendimiento 2× superior al de los sistemas existentes en segmentación de conceptos mediante indicaciones, y mantiene y mejora las capacidades de SAM 2 para la segmentación visual interactiva. El modelo destaca en la segmentación de vocabulario abierto y permite a los usuarios especificar conceptos mediante frases nominales sencillas (p. ej., «autobús escolar amarillo» o «gato atigrado») o proporcionando imágenes de ejemplo del objeto objetivo. Estas capacidades complementan los flujos de trabajo listos para producción que se basan en procesos optimizados de predicción y seguimiento.

Ejemplos de segmentación con indicaciones de texto de SAM 3

¿Qué es la segmentación de conceptos mediante indicaciones (PCS)?#

La tarea PCS recibe como entrada una indicación de concepto y devuelve máscaras de segmentación con identidades únicas para todas las instancias de objetos coincidentes. Las indicaciones de concepto pueden ser:

  • Texto: frases nominales sencillas como «manzana roja» o «persona con sombrero», similares a las del aprendizaje de cero ejemplos
  • Imágenes de ejemplo: cuadros delimitadores alrededor de objetos de ejemplo (positivos o negativos) para una generalización rápida
  • Combinadas: texto e imágenes de ejemplo a la vez para un control preciso

Esto difiere de las indicaciones visuales tradicionales (puntos, cuadros y máscaras), que segmentan una única instancia de objeto concreta, como se popularizó con la familia SAM original.

Métricas clave de rendimiento#

MétricaLogro de SAM 3
AP de máscaras sin entrenamiento previo en LVIS47.0 (frente al mejor resultado anterior de 38.5; mejora del +22 %)
Referencia SA-Co2× mejor que los sistemas existentes
Velocidad de inferencia (GPU H200)30 ms por imagen con más de 100 objetos detectados
Rendimiento en vídeoCasi en tiempo real para ~5 objetos simultáneos
Referencia MOSEv2 VOS60.1 J&F (+25.5 % respecto a SAM 2.1, +17 % respecto al estado del arte anterior)
Refinamiento interactivo+18.6 CGF1 de mejora tras 3 indicaciones con imágenes de ejemplo
Diferencia respecto al rendimiento humanoAlcanza el 88 % del límite inferior estimado en SA-Co/Gold

Para contextualizar las métricas de los modelos y las ventajas e inconvenientes en producción, consulta análisis de evaluación de modelos y métricas de rendimiento de YOLO.

SAM 3.1#

SAM 3.1, publicado por Meta el 27 de marzo de 2026, es un nuevo punto de control de SAM 3 que añade Object Multiplex, un método de memoria compartida para el seguimiento de varios objetos en vídeo. En lugar de procesar cada objeto seguido de forma independiente, SAM 3.1 agrupa los objetos en bloques de capacidad fija y los procesa conjuntamente; según Meta, esto supone una aceleración de ~7× con 128 objetos en una sola GPU H100. El detector de imágenes y la cabeza interactiva basada en indicaciones de puntos conservan la arquitectura de SAM 3.

Evaluación comparativaMétricaSAM 3SAM 3.1
SA-Co/VEval SA-V (prueba)cgF130.330.5
SA-Co/VEval YT-Temporal-1B (prueba)cgF150.852.9
SA-Co/VEval SmartGlasses (prueba)cgF136.436.3
MOSEv1 (validación)J&F78.479.6
DAVIS17 (validación)J&F92.292.7
SA-V (prueba)J&F84.485.1
YTVOS19 (validación)G89.789.3
MOSEv2 (validación)J&Ḟ60.362.3

Ultralytics carga el punto de control de SAM 3.1 (sam3.1_multiplex.pt) en los predictores de imágenes de SAM 3: SAM("sam3.1_multiplex.pt") para indicaciones de puntos y cuadros, y SAM3SemanticPredictor para indicaciones de texto e imágenes de ejemplo. El seguimiento de vídeo Object Multiplex aún no es compatible, así que sigue usando sam3.pt con SAM3VideoPredictor y SAM3VideoSemanticPredictor.

Arquitectura#

SAM 3 consta de un detector y un seguidor que comparten una red troncal visual Perception Encoder (PE). Este diseño desacoplado evita conflictos entre tareas y permite tanto la detección a nivel de imagen como el seguimiento a nivel de vídeo, con una interfaz compatible con el uso de Python y el uso de la CLI de Ultralytics.

Componentes principales#

  • Detector: arquitectura basada en DETR para la detección de conceptos a nivel de imagen

    • Codificador de texto para indicaciones de frases nominales
    • Codificador de imágenes de ejemplo para indicaciones basadas en imágenes
    • Codificador de fusión para condicionar las características de la imagen según las indicaciones
    • Nueva cabeza de presencia que desacopla el reconocimiento («qué») de la localización («dónde»)
    • Cabeza de máscaras para generar máscaras de segmentación de instancias
  • Seguidor: segmentación de vídeo basada en memoria, heredada de SAM 2

    • Codificador de indicaciones, decodificador de máscaras y codificador de memoria
    • Banco de memoria para almacenar la apariencia de los objetos entre fotogramas
    • Desambiguación temporal asistida por técnicas como un filtro de Kalman en situaciones con varios objetos
  • Token de presencia: token global aprendido que predice si el concepto objetivo está presente en la imagen o el fotograma y mejora la detección al separar el reconocimiento de la localización.

Diagrama de la arquitectura del modelo SAM 3

Innovaciones clave#

  1. Reconocimiento y localización desacoplados: La cabeza de presencia predice globalmente la presencia del concepto, mientras que las consultas de propuestas se centran únicamente en la localización, lo que evita objetivos contrapuestos.
  2. Indicaciones unificadas de conceptos y visuales: Admite tanto PCS (indicaciones de conceptos) como PVS (indicaciones visuales, como los clics y los cuadros de SAM 2) en un único modelo.
  3. Refinamiento interactivo con ejemplos: Los usuarios pueden añadir ejemplos de imagen positivos o negativos para refinar los resultados de forma iterativa; el modelo generaliza a objetos similares, en lugar de limitarse a corregir instancias individuales.
  4. Desambiguación temporal: Utiliza puntuaciones de detección de masklets y vuelve a solicitar indicaciones periódicamente para gestionar oclusiones, escenas abarrotadas y fallos de seguimiento en vídeo, de acuerdo con las prácticas recomendadas de segmentación de instancias y seguimiento.

Conjunto de datos SA-Co#

SAM 3 se entrena con Segment Anything with Concepts (SA-Co), el conjunto de datos de segmentación más grande y diverso de Meta hasta la fecha, que va más allá de referencias habituales como COCO y LVIS.

Datos de entrenamiento#

Componente del conjunto de datosDescripciónEscala
SA-Co/HQDatos de imágenes de alta calidad anotados por personas mediante un motor de datos de 4 fases5,2 M de imágenes, 4 M de frases nominales únicas
SA-Co/SYNConjunto de datos sintético etiquetado por IA sin intervención humana38 M de frases nominales, 1,4 mil millones de máscaras
SA-Co/EXT15 conjuntos de datos externos enriquecidos con negativos difícilesVaría según la fuente
SA-Co/VIDEOAnotaciones de vídeo con seguimiento temporal52,5 mil vídeos, 24,8 mil frases nominales únicas

Datos de evaluación comparativa#

La referencia de evaluación SA-Co contiene 214 mil frases únicas en 126 mil imágenes y vídeos, lo que ofrece más de 50 veces más conceptos que las referencias existentes. Incluye:

  • SA-Co/Gold: 7 ámbitos, con triple anotación para medir los límites del rendimiento humano
  • SA-Co/Silver: 10 ámbitos, con una única anotación humana
  • SA-Co/Bronze y SA-Co/Bio: 9 conjuntos de datos existentes adaptados a la segmentación de conceptos
  • SA-Co/VEval: referencia de vídeo con 3 ámbitos (SA-V, YT-Temporal-1B, SmartGlasses)

Innovaciones en el motor de datos#

El motor de datos escalable de SAM 3, con intervención humana y del modelo, consigue duplicar el rendimiento de anotación mediante:

  1. Anotadores de IA: Los modelos basados en Llama proponen diversas frases nominales, incluidos negativos difíciles
  2. Verificadores de IA: Los LLM multimodales ajustados verifican la calidad y exhaustividad de las máscaras con un rendimiento casi humano
  3. Minería activa: Centra el esfuerzo humano en casos difíciles en los que la IA falla
  4. Basado en ontologías: Aprovecha una amplia ontología fundamentada en Wikidata para abarcar conceptos

Instalación#

Instala o actualiza el paquete ultralytics:

pip install -U ultralytics
Se necesitan los pesos del modelo SAM 3

A diferencia de otros modelos de Ultralytics, los pesos de SAM 3 (sam3.pt) no se descargan automáticamente. Primero debes solicitar acceso a los pesos del modelo en la página del modelo SAM 3 en Hugging Face y, una vez aprobado, descargar sam3.pt desde esa página. Coloca el archivo sam3.pt descargado en tu directorio de trabajo o especifica la ruta completa al cargar el modelo.

El acceso a los pesos de SAM 3.1 (sam3.1_multiplex.pt) también está restringido en la página del modelo SAM 3.1. Pasa sam3.1_multiplex.pt en cualquier lugar donde los ejemplos de imágenes de abajo utilicen sam3.pt.

`TypeError: 'SimpleTokenizer' object is not callable`

Si recibes el error anterior durante la predicción, significa que tienes instalado el paquete clip incorrecto. Instala el paquete correcto clip con el siguiente comando:

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

Cómo usar SAM 3: versatilidad en la segmentación de conceptos#

SAM 3 admite tareas de segmentación de conceptos con indicaciones (PCS) y de segmentación visual con indicaciones (PVS) mediante distintas interfaces de predictor:

Tareas y modelos compatibles#

Tipo de tareaTipos de indicacionesSalida
Segmentación de conceptos (PCS)Texto (frases nominales), ejemplos de imagenTodas las instancias que coinciden con el concepto
Segmentación visual (PVS)Puntos, cuadros, máscarasUna única instancia de objeto (estilo SAM 2)
Refinamiento interactivoAñade o elimina ejemplos o clics de forma iterativaSegmentación refinada con mayor precisión

Ejemplos de segmentación de conceptos#

Segmentación con indicaciones de texto#

Segmentación de conceptos basada en texto

Encuentra y segmenta todas las instancias de un concepto mediante una descripción de texto. Las indicaciones de texto requieren la interfaz SAM3SemanticPredictor.

from ultralytics.models.sam import SAM3SemanticPredictor

# Inicializa el predictor con la configuración
overrides = {
    "conf": 0.25,
    "task": "segment",
    "mode": "predict",
    "model": "sam3.pt",
    "quantize": 16,  # Usa FP16 para acelerar la inferencia
    "save": True,
}
predictor = SAM3SemanticPredictor(overrides=overrides)

# Configura la imagen una sola vez para varias consultas
predictor.set_image("path/to/image.jpg")

# Realiza consultas con varias indicaciones de texto
results = predictor(text=["person", "bus", "glasses"])

# Funciona con frases descriptivas
results = predictor(text=["person with red cloth", "person with blue cloth"])

# Realiza una consulta con un único concepto
results = predictor(text=["a person"])

Segmentación con ejemplos de imagen#

Segmentación basada en ejemplos de imagen

Usa cuadros delimitadores como indicaciones visuales para encontrar todas las instancias similares. También requiere SAM3SemanticPredictor para la coincidencia basada en conceptos.

from ultralytics.models.sam import SAM3SemanticPredictor

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

# Configura la imagen
predictor.set_image("path/to/image.jpg")

# Proporciona ejemplos de cuadros delimitadores para segmentar objetos similares
results = predictor(bboxes=[[480.0, 290.0, 590.0, 650.0]])

# Varios cuadros delimitadores como ejemplos de un mismo concepto visual
results = predictor(bboxes=[[539, 599, 589, 639], [343, 267, 499, 662]])

Inferencia basada en características para mejorar la eficiencia#

Reutilización de las características de imagen para varias consultas

Extrae las características de imagen una vez y reutilízalas en varias consultas de segmentación para mejorar la eficiencia.

import cv2

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

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

# Extrae las características del primer predictor
source = "path/to/image.jpg"
predictor.set_image(source)
src_shape = cv2.imread(source).shape[:2]

# Configura el segundo predictor y reutiliza las características
predictor2.setup_model()

# Realiza inferencias con las características compartidas y una indicación de texto
masks, boxes = predictor2.inference_features(predictor.features, src_shape=src_shape, text=["person"])

# Realiza inferencias con las características compartidas y una indicación de cuadro delimitador
masks, boxes = predictor2.inference_features(predictor.features, src_shape=src_shape, bboxes=[[439, 437, 524, 709]])

# Visualiza los resultados
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)

Segmentación de conceptos en vídeo#

Sigue conceptos en todo el vídeo mediante cuadros delimitadores#

Seguimiento de vídeo con indicaciones visuales

Detecta y sigue instancias de objetos a través de los fotogramas del vídeo mediante indicaciones de cuadros delimitadores.

from ultralytics.models.sam import SAM3VideoPredictor

# Crea el predictor de vídeo
overrides = {"conf": 0.25, "task": "segment", "mode": "predict", "model": "sam3.pt", "quantize": 16}
predictor = SAM3VideoPredictor(overrides=overrides)

# Sigue objetos mediante indicaciones de cuadros delimitadores
results = predictor(source="path/to/video.mp4", bboxes=[[706.5, 442.5, 905.25, 555], [598, 635, 725, 750]], stream=True)

# Procesa y muestra los resultados
for r in results:
    r.show()  # Muestra el fotograma con las máscaras de segmentación

Sigue conceptos mediante indicaciones de texto#

Seguimiento de vídeo con consultas semánticas

Sigue todas las instancias de los conceptos especificados mediante texto a través de los fotogramas del vídeo.

from ultralytics.models.sam import SAM3VideoSemanticPredictor

# Inicializa el predictor semántico de vídeo
overrides = {
    "conf": 0.25,
    "task": "segment",
    "mode": "predict",
    "imgsz": 640,
    "model": "sam3.pt",
    "quantize": 16,
    "save": True,
}
predictor = SAM3VideoSemanticPredictor(overrides=overrides)

# Sigue conceptos mediante indicaciones de texto
results = predictor(source="path/to/video.mp4", text=["person", "bicycle"], stream=True)

# Procesa los resultados
for r in results:
    r.show()  # Muestra el fotograma con los objetos seguidos

# Alternativa: realiza el seguimiento con indicaciones de cuadros delimitadores
results = predictor(
    source="path/to/video.mp4",
    bboxes=[[864, 383, 975, 620], [705, 229, 782, 402]],
    labels=[1, 1],  # Etiquetas positivas
    stream=True,
)

Indicaciones visuales (compatibilidad con SAM 2)#

SAM 3 mantiene la compatibilidad total con versiones anteriores para las indicaciones visuales de SAM 2 en la segmentación de un solo objeto:

Indicaciones visuales al estilo de SAM 2

La interfaz básica SAM funciona exactamente igual que SAM 2 y segmenta únicamente el área específica indicada mediante indicaciones visuales (puntos, cuadros o máscaras).

from ultralytics import SAM

model = SAM("sam3.pt")

# Indicación de un único punto: segmenta el objeto en una ubicación concreta
results = model.predict(source="path/to/image.jpg", points=[900, 370], labels=[1])
results[0].show()

# Varios puntos: segmenta un único objeto con varias indicaciones de puntos
results = model.predict(source="path/to/image.jpg", points=[[400, 370], [900, 370]], labels=[1, 1])

# Indicación de cuadro: segmenta el objeto dentro de un cuadro delimitador
results = model.predict(source="path/to/image.jpg", bboxes=[100, 150, 300, 400])
results[0].show()
Indicaciones visuales frente a segmentación de conceptos

Al usar SAM("sam3.pt") con indicaciones visuales (puntos/cuadros/máscaras), segmentarás solo el objeto concreto de esa ubicación, igual que con SAM 2. Para segmentar todas las instancias de un concepto, usa SAM3SemanticPredictor con indicaciones de texto o de ejemplos, como se muestra arriba.

Pruebas de rendimiento#

Segmentación de imágenes#

SAM 3 logra resultados de vanguardia en diversas pruebas de referencia, incluidos conjuntos de datos del mundo real como LVIS y COCO para segmentación:

Evaluación comparativaMétricaSAM 3Mejor resultado anteriorMejora
LVIS (cero disparos)AP de máscaras47.038.5+22.1%
SA-Co/GoldCGF165.034.3 (OWLv2)+89.5%
COCO (cero disparos)AP de cuadros53.552.2 (T-Rex2)+2.5%
ADE-847 (segmentación semántica)mIoU14.79.2 (APE-D)+59.8%
PascalConcept-59mIoU59.458.5 (APE-D)+1.5%
Cityscapes (segmentación semántica)mIoU65.144.2 (APE-D)+47.3%

Explora opciones de conjuntos de datos para experimentar rápidamente en conjuntos de datos de Ultralytics.

Rendimiento de la segmentación de vídeo#

SAM 3 mejora notablemente los resultados de SAM 2 y de los modelos anteriores de vanguardia en pruebas de referencia de vídeo, como DAVIS 2017 y YouTube-VOS:

Evaluación comparativaMétricaSAM 3SAM 2.1 LMejora
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%

Adaptación con pocos ejemplos#

SAM 3 destaca por su adaptación a nuevos dominios con ejemplos mínimos, algo relevante para los flujos de trabajo de IA centrada en los datos:

Evaluación comparativaAP con 0 ejemplosAP con 10 ejemplosMejor resultado anterior (10 ejemplos)
ODinW1359.971.667.9 (gDino1.5-Pro)
RF100-VL14.335.733.7 (gDino-T)

Eficacia del refinamiento interactivo#

Las indicaciones basadas en conceptos con ejemplos de SAM 3 convergen mucho más rápido que las indicaciones visuales:

Indicaciones añadidasPuntuación CGF1Mejora frente a solo textoMejora frente a la referencia PVS
Solo texto46.4referenciareferencia
+1 ejemplo57.6+11.2+6.7
+2 ejemplos62.2+15.8+9.7
+3 ejemplos65.0+18.6+11.2
+4 ejemplos65.7+19.3+11.5 (meseta)

Precisión del recuento de objetos#

SAM 3 ofrece recuentos precisos al segmentar todas las instancias, un requisito habitual en el recuento de objetos:

Evaluación comparativaPrecisiónMAEfrente al mejor MLLM
CountBench95.6%0.1192.4% (Gemini 2.5)
PixMo-Count87.3%0.2288.8% (Molmo-72B)

Comparación entre SAM 3, SAM 2 y YOLO#

Aquí comparamos las capacidades de SAM 3 con SAM 2 y los modelos YOLO26. Para la detección y segmentación de vocabulario abierto en tiempo real con los mismos tipos de indicaciones, consulta YOLOE:

CapacidadSAM 3SAM 2YOLO26n-seg
Segmentación de conceptos✅ Todas las instancias a partir de texto/ejemplos❌ No compatible❌ No compatible
Segmentación visual✅ Una sola instancia (compatible con SAM 2)✅ Una sola instancia✅ Todas las instancias
Capacidad de cero disparos✅ Vocabulario abierto✅ Indicaciones geométricas❌ Conjunto cerrado
Refinamiento interactivo✅ Ejemplos y clics✅ Solo clics❌ No compatible
Seguimiento de vídeo✅ Varios objetos con identidades✅ Varios objetos✅ Varios objetos
AP de máscaras LVIS (cero disparos)47.0N/DN/D
MOSEv2 J&F60.147.9N/D
Velocidad (GPU, ms/im)29218578.4
Tamaño del modelo3.45 GB162 MB (base)6.4 MB

Velocidad medida en una NVIDIA RTX PRO 6000 con torch==2.9.1 y ultralytics==8.4.19.

Conclusiones clave:

  • SAM 3: la mejor opción para segmentar conceptos con vocabulario abierto y encontrar todas las instancias de un concepto mediante indicaciones de texto o ejemplos
  • SAM 2: la mejor opción para segmentar interactivamente un único objeto en imágenes y vídeos mediante indicaciones geométricas
  • YOLO26: la mejor opción para segmentar en tiempo real a gran velocidad, con inferencia de extremo a extremo opcional sin NMS, exportable a muchos formatos para su implementación en GPU, CPU y dispositivos periféricos

Comparación de SAM frente a YOLO#

Comparamos SAM 3, SAM 2, SAM, MobileSAM y FastSAM con los modelos de segmentación YOLO de Ultralytics (YOLOv8, YOLO11, YOLO26) en cuanto a tamaño, parámetros y velocidad de inferencia en GPU:

ModeloTamaño
(MB)
Parámetros
(M)
Velocidad (GPU)
(ms/im)
Meta SAM-b37593.71306
Meta SAM2-b16280.8857
Meta SAM2-t78.138.9668
Meta SAM33450473.62921
MobileSAM40.710.1605
FastSAM-s con backbone YOLOv823.711.855.9
Ultralytics YOLOv8n-seg6.7 (515 veces más pequeño)3.4 (139.1 veces menos)17.4 (167 veces más rápido)
Ultralytics YOLO11n-seg5.9 (585 veces más pequeño)2.9 (163.1 veces menos)12.6 (231 veces más rápido)
Ultralytics YOLO26n-seg6.4 (539 veces más pequeño)2.7 (175.2 veces menos)8.4 (347 veces más rápido)

Esta comparación muestra las diferencias considerables de tamaño y velocidad entre las variantes de SAM y los modelos de segmentación YOLO. Aunque SAM ofrece capacidades únicas de segmentación automática, los modelos YOLO, en particular YOLOv8n-seg, YOLO11n-seg y YOLO26n-seg, son mucho más pequeños, rápidos y eficientes desde el punto de vista computacional.

Pruebas realizadas en una NVIDIA RTX PRO 6000 con 96 GB de VRAM usando torch==2.9.1 y ultralytics==8.4.19. Para reproducir esta prueba:

Ejemplo
from ultralytics import ASSETS, SAM, YOLO, FastSAM

# Perfilar 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)

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

# Perfilar modelos YOLO
for file_name in ["yolov8n-seg.pt", "yolo11n-seg.pt", "yolo26n-seg.pt"]:
    model = YOLO(file_name)
    model.info()
    model(ASSETS, nms=False)  # Cabezal sin NMS de YOLO26; no hace nada con YOLOv8/YOLO11

Métricas de evaluación#

SAM 3 introduce nuevas métricas diseñadas para la tarea PCS, que complementan medidas conocidas como la puntuación F1, la precisión y la exhaustividad.

F1 con clasificación condicionada (CGF1)#

La métrica principal combina localización y clasificación:

CGF1 = 100 × pmF1 × IL_MCC

Donde:

  • pmF1 (F1 macro positiva): mide la calidad de la localización en ejemplos positivos
  • IL_MCC (coeficiente de correlación de Matthews a nivel de imagen): mide la precisión de la clasificación binaria («¿está presente el concepto?»)

¿Por qué estas métricas?#

Las métricas AP tradicionales no tienen en cuenta la calibración, lo que dificulta el uso práctico de los modelos. Al evaluar únicamente las predicciones con una confianza superior a 0,5, las métricas de SAM 3 exigen una buena calibración y reproducen los patrones de uso reales en los ciclos interactivos de predicción y seguimiento.

Ablaciones e ideas clave#

Impacto del cabezal de presencia#

El cabezal de presencia separa el reconocimiento de la localización y ofrece mejoras significativas:

ConfiguraciónCGF1IL_MCCpmF1
Sin presencia57.60.7774.7
Con presencia63.30.8277.1

El cabezal de presencia aporta una mejora de +5.7 en CGF1 (+9.9 %), principalmente al mejorar la capacidad de reconocimiento (IL_MCC +6.5 %).

Efecto de los negativos difíciles#

Negativos difíciles por imagenCGF1IL_MCCpmF1
031.80.4470.2
544.80.6271.9
3049.20.6872.3

Los negativos difíciles son esenciales para el reconocimiento de vocabulario abierto y mejoran IL_MCC un 54.5 % (0.44 → 0.68).

Escalado de los datos de entrenamiento#

Fuentes de datosCGF1IL_MCCpmF1
Solo externos30.90.4666.3
Externos + sintéticos39.70.5770.6
Externos + alta calidad51.80.7173.2
Los tres54.30.7473.5

Las anotaciones humanas de alta calidad ofrecen grandes mejoras frente a usar únicamente datos sintéticos o externos. Para obtener información sobre las prácticas de calidad de los datos, consulta recopilación y anotación de datos.

Aplicaciones#

La capacidad de segmentación de conceptos de SAM 3 permite nuevos casos de uso:

  • Moderación de contenidos: encuentra todas las instancias de tipos de contenido específicos en bibliotecas multimedia
  • Comercio electrónico: segmenta todos los productos de un tipo concreto en imágenes de catálogo y facilita la anotación automática
  • Imagen médica: identifica todas las apariciones de tipos de tejido o anomalías específicos
  • Sistemas autónomos: sigue todas las instancias de señales de tráfico, peatones o vehículos por categoría
  • Analítica de vídeo: cuenta y sigue a todas las personas que llevan prendas específicas o realizan determinadas acciones
  • Anotación de conjuntos de datos: anota rápidamente todas las instancias de categorías de objetos poco frecuentes
  • Investigación científica: cuantifica y analiza todas las muestras que cumplen criterios específicos

Agente SAM 3: razonamiento lingüístico ampliado#

SAM 3 se puede combinar con modelos de lenguaje grandes multimodales (MLLM) para responder a consultas complejas que requieren razonamiento, de forma similar a sistemas de vocabulario abierto como OWLv2 y T-Rex.

Rendimiento en tareas de razonamiento#

Evaluación comparativaMétricaAgente SAM 3 (Gemini 2.5 Pro)Mejor resultado anterior
ReasonSeg (validación)gIoU76.065.0 (SoTA)
ReasonSeg (prueba)gIoU73.861.3 (SoTA)
OmniLabel (validación)AP46.736.5 (REAL)
RefCOCO+Acc91.289.3 (LISA)

Ejemplos de consultas complejas#

El agente SAM 3 puede responder a consultas que requieren razonamiento:

  • «Personas sentadas que no sostienen una caja de regalo en las manos»
  • «El perro más cercano a la cámara que no lleva collar»
  • «Objetos rojos más grandes que la mano de la persona»

El MLLM propone a SAM 3 consultas sencillas en forma de sintagmas nominales, analiza las máscaras obtenidas y repite el proceso hasta obtener el resultado deseado.

Limitaciones#

Aunque SAM 3 supone un gran avance, tiene ciertas limitaciones:

  • Complejidad de las frases: funciona mejor con sintagmas nominales sencillos; las expresiones referenciales largas o el razonamiento complejo pueden requerir la integración de un MLLM
  • Gestión de la ambigüedad: algunos conceptos siguen siendo intrínsecamente ambiguos (p. ej., «ventana pequeña», «habitación acogedora»)
  • Requisitos computacionales: es más grande y lento que los modelos de detección especializados como YOLO
  • Alcance del vocabulario: se centra en conceptos visuales atómicos; el razonamiento composicional es limitado sin la ayuda de un MLLM
  • Conceptos poco frecuentes: el rendimiento puede disminuir con conceptos muy poco frecuentes o detallados que no estén bien representados en los datos de entrenamiento

Cita#

Cita
@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}
}

Preguntas frecuentes#

  • Meta publicó SAM 3 el 19 de noviembre de 2025 y está totalmente integrado en el paquete ultralytics, con compatibilidad con el modo de predicción y el modo de seguimiento.

  • ¡Sí! SAM 3 está totalmente integrado en el paquete Python de Ultralytics e incluye segmentación de conceptos, indicaciones visuales al estilo de SAM 2 y seguimiento de varios objetos en vídeo. SAM 3 y SAM 3.1 también impulsan la función de anotación inteligente de Ultralytics Platform, donde SAM 3.1 es el modelo predeterminado y puedes anotar imágenes con solo unos clics.

  • Sí, para la predicción de imágenes. Carga sam3.1_multiplex.pt en todos los ejemplos de imágenes de esta página en los que se use sam3.pt: SAM("sam3.1_multiplex.pt") para indicaciones de puntos y cuadros, y SAM3SemanticPredictor para indicaciones de texto y ejemplos. El seguimiento de vídeo con Object Multiplex aún no es compatible, así que sigue usando sam3.pt con los predictores de vídeo. Consulta SAM 3.1 para ver las pruebas comparativas de Meta.

  • PCS es una nueva tarea introducida en SAM 3 que segmenta todas las instancias de un concepto visual en una imagen o un vídeo. A diferencia de la segmentación tradicional, que se centra en una instancia concreta de un objeto, PCS encuentra todas las apariciones de una categoría. Por ejemplo:

    • Indicación de texto: «autobús escolar amarillo» → segmenta todos los autobuses escolares amarillos de la escena
    • Ejemplo de imagen: encuadra un perro → segmenta todos los perros de la imagen
    • Combinado: «gato atigrado» + cuadro de ejemplo → segmenta todos los gatos atigrados que coincidan con el ejemplo

    Consulta información relacionada sobre la detección de objetos y la segmentación de instancias.

  • CaracterísticaSAM 2SAM 3
    TareaUn objeto por indicaciónTodas las instancias de un concepto
    Tipos de indicacionesPuntos, cuadros, máscaras+ Frases de texto, ejemplos de imágenes
    Capacidad de detecciónRequiere un detector externoDetector de vocabulario abierto integrado
    ReconocimientoSolo basado en geometríaReconocimiento visual y de texto
    ArquitecturaSolo rastreadorDetector + rastreador con un cabezal de presencia
    Rendimiento sin ejemplosNo aplicable (requiere indicaciones visuales)47,0 AP en LVIS, el doble de rendimiento en SA-Co
    Refinamiento interactivoSolo clicsClics + generalización a partir de ejemplos

    SAM 3 mantiene la compatibilidad con las indicaciones visuales de SAM 2 y añade capacidades basadas en conceptos.

  • SAM 3 se entrena con el conjunto de datos Segment Anything with Concepts (SA-Co):

    Datos de entrenamiento:

    • 5,2 M de imágenes con 4 M de frases nominales únicas (SA-Co/HQ): anotaciones humanas de alta calidad
    • 52,5 mil vídeos con 24,8 mil frases nominales únicas (SA-Co/VIDEO)
    • 1,4 mil millones de máscaras sintéticas en 38 M de frases nominales (SA-Co/SYN)
    • 15 conjuntos de datos externos enriquecidos con negativos difíciles (SA-Co/EXT)

    Datos de referencia:

    • 214 mil conceptos únicos en 126 mil imágenes/vídeos
    • 50 veces más conceptos que los conjuntos de referencia existentes (p. ej., LVIS tiene ~4 mil conceptos)
    • Anotación triple en SA-Co/Gold para medir los límites del rendimiento humano

    Esta escala y diversidad enormes permiten que SAM 3 generalice mejor sin ejemplos a conceptos de vocabulario abierto.

  • SAM 3 y YOLO26 se adaptan a casos de uso diferentes:

    Ventajas de SAM 3:

    • Vocabulario abierto: segmenta cualquier concepto mediante indicaciones de texto, sin necesidad de entrenamiento
    • Sin ejemplos: funciona de inmediato con categorías nuevas
    • Interactivo: el refinamiento basado en ejemplos se generaliza a objetos similares
    • Basado en conceptos: encuentra automáticamente todas las instancias de una categoría
    • Precisión: 47,0 AP en segmentación de instancias sin ejemplos en LVIS

    Ventajas de YOLO26:

    • Velocidad: inferencia muchísimo más rápida, con un cabezal opcional de extremo a extremo sin NMS
    • Eficiencia: modelos 539 veces más pequeños (6,4 MB frente a 3,45 GB)
    • Eficiencia de recursos: funciona en dispositivos periféricos y móviles
    • Tiempo real: optimizado para implementaciones en producción

    Recomendación:

    • Usa SAM 3 para una segmentación flexible de vocabulario abierto cuando necesites encontrar todas las instancias de conceptos descritos mediante texto o ejemplos
    • Usa YOLO26 para implementaciones de alta velocidad en producción cuando las categorías se conocen de antemano
    • Usa SAM 2 para la segmentación interactiva de un solo objeto con indicaciones geométricas
  • SAM 3 está diseñado para frases nominales sencillas (p. ej., «manzana roja», «persona con sombrero»). Para consultas complejas que requieren razonamiento, combina SAM 3 con un MLLM como SAM 3 Agent:

    Consultas sencillas (SAM 3 nativo):

    • «autobús escolar amarillo»
    • «gato atigrado»
    • «persona con sombrero rojo»

    Consultas complejas (SAM 3 Agent con MLLM):

    • «Personas sentadas que no estén sujetando una caja de regalo»
    • «El perro más cerca de la cámara que no lleve collar»
    • «Objetos rojos más grandes que la mano de la persona»

    SAM 3 Agent alcanza 76,0 gIoU en la validación de ReasonSeg (frente al anterior mejor resultado de 65,0, una mejora del 16,9 %) al combinar la segmentación de SAM 3 con las capacidades de razonamiento de los MLLM.

  • En la prueba de referencia SA-Co/Gold con triple anotación humana:

    • Límite inferior humano: 74,2 CGF1 (anotador más conservador)
    • Rendimiento de SAM 3: 65,0 CGF1
    • Logro: 88 % del límite inferior humano estimado
    • Límite superior humano: 81,4 CGF1 (anotador más permisivo)

    SAM 3 logra un rendimiento sólido, cercano a la precisión humana, en la segmentación de conceptos de vocabulario abierto. La diferencia se concentra sobre todo en conceptos ambiguos o subjetivos (p. ej., «ventana pequeña», «habitación acogedora»).

Comentarios