YOLO Vision 2026:

YOLO12: Detección de objetos centrada en la atención#

Descripción general#

YOLO12, lanzado a principios de 2025, introduce una arquitectura centrada en la atención que se aparta de los enfoques tradicionales basados en CNN utilizados en modelos YOLO anteriores, pero que conserva la velocidad de inferencia en tiempo real esencial para muchas aplicaciones. Este modelo logra una alta precisión en la detección de objetos a través de nuevas innovaciones metodológicas en los mecanismos de atención y en la arquitectura general de la red, manteniendo al mismo tiempo el rendimiento en tiempo real. A pesar de esas ventajas, YOLO12 sigue siendo un lanzamiento impulsado por la comunidad que puede presentar inestabilidad en el entrenamiento, un mayor consumo de memoria y un rendimiento de CPU más lento debido a sus pesados bloques de atención, por lo que Ultralytics recomienda YOLO11 o YOLO26 para la mayoría de las cargas de trabajo de producción.

Modelo comunitario

YOLO12 se mantiene principalmente para pruebas comparativas (benchmarking) y de investigación. Si necesitas un entrenamiento estable, un uso de memoria predecible y una inferencia en CPU optimizada, elige YOLO11 o YOLO26 para el despliegue.



Watch: How to Use YOLO12 for Object Detection with the Ultralytics Package | Is YOLO12 Fast or Slow? 🚀

Características clave#

  • Mecanismo de Atención de Área: Un nuevo enfoque de autoatención que procesa grandes campos receptivos de manera eficiente. Divide los mapas de características en l regiones de igual tamaño (por defecto 4), ya sea horizontal o verticalmente, evitando operaciones complejas y manteniendo un gran campo receptivo efectivo. Esto reduce significativamente el coste computacional en comparación con la autoatención estándar.
  • Redes de agregación de capas eficientes residuales (R-ELAN): Un módulo de agregación de características mejorado basado en ELAN, diseñado para abordar desafíos de optimización, especialmente en modelos centrados en la atención a mayor escala. R-ELAN introduce:
    • Conexiones residuales a nivel de bloque con escalado (similar al escalado de capas).
    • Un método rediseñado de agregación de características que crea una estructura tipo cuello de botella.
  • Arquitectura de atención optimizada: YOLO12 agiliza el mecanismo de atención estándar para una mayor eficiencia y compatibilidad con el marco de trabajo de YOLO. Esto incluye:
    • Uso de FlashAttention para minimizar la sobrecarga de acceso a memoria.
    • Eliminación de la codificación posicional para un modelo más limpio y rápido.
    • Ajuste de la relación MLP (del típico 4 a 1.2 o 2) para equilibrar mejor el cálculo entre las capas de atención y las capas feed-forward.
    • Reducción de la profundidad de los bloques apilados para una mejor optimización.
    • Aprovechamiento de operaciones de convolución (donde sea apropiado) por su eficiencia computacional.
    • Adición de una convolución separable de 7x7 (el "perceptor de posición") al mecanismo de atención para codificar implícitamente información posicional.
  • Soporte Integral de Tareas: YOLO12 admite una variedad de tareas principales de visión artificial: detección de objetos, segmentación de instancias, clasificación de imágenes, estimación de poses y detección de objetos orientados (OBB).
  • Eficiencia mejorada: Logra una mayor precisión con menos parámetros en comparación con muchos modelos anteriores, demostrando un equilibrio mejorado entre velocidad y precisión.
  • Despliegue flexible: Diseñado para el despliegue en diversas plataformas, desde dispositivos de borde hasta infraestructura en la nube.

Visualización de comparación de YOLO12

Tareas y modos soportados#

YOLO12 admite una variedad de tareas de visión artificial. La siguiente tabla muestra el soporte de tareas y los modos operativos (Inferencia, Validación, Entrenamiento y Exportación) habilitados para cada una:

Disponibilidad de pesos preentrenados

En ultralytics/assets solo se publican pesos de detección (yolo12n.pt, yolo12s.pt, yolo12m.pt, yolo12l.pt, yolo12x.pt). Las arquitecturas de segmentación, clasificación, pose y OBB están definidas en ultralytics/cfg/models/12/, por lo que esas variantes admiten el entrenamiento desde cero a partir de la configuración .yaml, pero actualmente no hay archivos .pt preentrenados disponibles para ellas. Para puntos de control preentrenados de segmentación, pose, clasificación u OBB, Ultralytics recomienda YOLO11 o YOLO26.

Tipo de modeloTareaPesos preentrenadosEntrenamientoValidaciónInferenciaExportar
YOLO12Detection
YOLO12-segSegmentación
YOLO12-clsClassification
YOLO12-posePose
YOLO12-obbOBB

Todas las arquitecturas de YOLO12 admiten todos los modos una vez que se dispone de un punto de control entrenado. La columna Pretrained Weights indica únicamente si Ultralytics publica un .pt preentrenado oficial en ultralytics/assets: para segmentación, pose, clasificación y OBB, debes entrenar tu propio punto de control a partir del .yaml correspondiente antes de ejecutar la inferencia, la validación o la exportación.

Métricas de rendimiento#

YOLO12 demuestra importantes mejoras de precisión en todas las escalas de modelos, con algunas compensaciones en la velocidad en comparación con los modelos YOLO anteriores más rápidos. A continuación, se muestran los resultados cuantitativos para la detección de objetos en el conjunto de datos de validación de COCO:

Rendimiento de detección (COCO val2017)#

Rendimiento
Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT
(ms)
params
(M)
FLOPs
(B)
Comparación
(mAP/Velocidad)
YOLO12n64040.6-1.642.67.6+2.1%/-9% (vs. YOLOv10n)
YOLO12s64048.0-2.619.323.7+0.1%/+42% (vs. RT-DETRv2)
YOLO12m64052.5-4.8620.271.3+1.0%/-3% (vs. YOLO11m)
YOLO12l64053.7-6.7726.496.3+0.4%/-8% (vs. YOLO11l)
YOLO12x64055.2-11.7959.1210.2+0.6%/-4% (vs. YOLO11x)
  • Velocidad de inferencia medida en una GPU NVIDIA T4 con precisión TensorRT FP16.
  • Las comparaciones muestran la mejora relativa en mAP y el cambio porcentual en velocidad (positivo indica más rápido; negativo indica más lento). Las comparaciones se realizan frente a los resultados publicados para YOLOv10, YOLO11 y RT-DETR cuando están disponibles.

Ejemplos de uso#

Esta sección ofrece ejemplos para el entrenamiento y la inferencia con YOLO12. Para obtener documentación más completa sobre estos y otros modos (incluyendo Validación y Exportación), consulta las páginas dedicadas de Predict y Train.

Los ejemplos siguientes se centran en los modelos YOLO12 Detect (para la detección de objetos). Para otras tareas compatibles (segmentación, clasificación, estimación de poses y detección de objetos orientados), consulta la documentación específica de cada tarea: Segment, Classify, Pose y OBB.

Ejemplo

Se pueden pasar modelos preentrenados *.pt (utilizando PyTorch) y archivos de configuración *.yaml a la clase YOLO() para crear una instancia de modelo en Python:

from ultralytics import YOLO

# Load a COCO-pretrained YOLO12n model
model = YOLO("yolo12n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLO12n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

Mejoras clave#

  1. Extracción de Características Mejorada:

    • Atención de Área: Gestiona de manera eficiente los grandes campos receptivos, reduciendo el coste computacional.
    • Equilibrio optimizado: Equilibrio mejorado entre los cálculos de atención y los de la red feed-forward.
    • R-ELAN: Mejora la agregación de características mediante la arquitectura R-ELAN.
  2. Innovaciones en optimización:

    • Conexiones residuales: Introduce conexiones residuales con escalado para estabilizar el entrenamiento, especialmente en modelos más grandes.
    • Integración de características refinada: Implementa un método mejorado para la integración de características dentro de R-ELAN.
    • FlashAttention: Incorpora FlashAttention para reducir la sobrecarga de acceso a memoria.
  3. Eficiencia arquitectónica:

    • Parámetros reducidos: Logra un menor número de parámetros manteniendo o mejorando la precisión en comparación con muchos modelos anteriores.
    • Atención simplificada: Utiliza una implementación de atención simplificada, evitando la codificación posicional.
    • Relaciones MLP optimizadas: Ajusta las relaciones MLP para asignar los recursos computacionales de manera más efectiva.

Requisitos#

La implementación de Ultralytics YOLO12, por defecto, no requiere FlashAttention. Sin embargo, FlashAttention se puede compilar opcionalmente y utilizar con YOLO12. Para compilar FlashAttention, se necesita una de las siguientes GPU de NVIDIA:

Citas y agradecimientos#

Si utilizas YOLO12 en tu investigación, cita el trabajo original de la University at Buffalo y la University of Chinese Academy of Sciences:

Cita
@inproceedings{tian2025yolov12,
  title={YOLOv12: Attention-Centric Real-Time Object Detectors},
  author={Tian, Yunjie and Ye, Qixiang and Doermann, David},
  booktitle={Advances in Neural Information Processing Systems},
  volume={38},
  pages={78433--78457},
  year={2025},
  url={https://proceedings.neurips.cc/paper_files/paper/2025/file/7103444259031cc58051f8c9a4868533-Paper-Conference.pdf}
}

@software{yolo12,
  author = {Tian, Yunjie and Ye, Qixiang and Doermann, David},
  title = {YOLO12: Attention-Centric Real-Time Object Detectors},
  year = {2025},
  url = {https://github.com/sunsmarterjie/yolov12},
  license = {AGPL-3.0}
}

El artículo de YOLO12 se publicó en las actas de NeurIPS 2025, con una versión preliminar (preprint) en arXiv.

FAQ#

  • YOLO12 incorpora varias innovaciones clave para equilibrar la velocidad y la precisión. El mecanismo de atención de Área procesa de manera eficiente los grandes campos receptivos, lo que reduce el coste computacional en comparación con la autoatención estándar. Las redes de agregación de capas eficientes residuales (R-ELAN) mejoran la agregación de características, abordando los retos de optimización en modelos más grandes centrados en la atención. Una arquitectura de atención optimizada, que incluye el uso de FlashAttention y la eliminación de la codificación posicional, mejora aún más la eficiencia. Estas características permiten a YOLO12 alcanzar una precisión de vanguardia sin dejar de mantener la velocidad de inferencia en tiempo real crucial para muchas aplicaciones.

  • YOLO12 es un modelo versátil que admite una amplia gama de tareas principales de visión artificial. Destaca en la detección de objetos, la segmentación de instancias, la clasificación de imágenes, la estimación de poses y la detección de objetos orientados (OBB) (ver detalles). Este soporte integral de tareas convierte a YOLO12 en una potente herramienta para diversas aplicaciones, desde la robótica y la conducción autónoma hasta la imagen médica y la inspección industrial. Ten en cuenta que los pesos preentrenados .pt se publican actualmente solo para detección; las arquitecturas de segmentación, pose, clasificación y OBB se proporcionan como configuraciones .yaml para entrenar desde cero.

  • YOLO12 demuestra importantes mejoras de precisión en todas las escalas de modelos en comparación con modelos YOLO anteriores como YOLOv10 y YOLO11, con algunas compensaciones en la velocidad en comparación con los modelos anteriores más rápidos. Por ejemplo, YOLO12n logra una mejora de mAP del +2.1% sobre YOLOv10n y del +1.2% sobre YOLO11n en el conjunto de datos COCO val2017. En comparación con modelos como RT-DETR, YOLO12s ofrece una mejora de mAP del +1.5% y un sustancial aumento de velocidad del +42%. Estas métricas ponen de relieve el sólido equilibrio de YOLO12 entre precisión y eficiencia. Consulta la sección de métricas de rendimiento para ver comparaciones detalladas.

  • Por defecto, la implementación de Ultralytics YOLO12 no requiere FlashAttention. Sin embargo, FlashAttention puede compilarse y usarse opcionalmente con YOLO12 para minimizar la sobrecarga de acceso a memoria. Para compilar FlashAttention, se necesita una de las siguientes GPU de NVIDIA: GPU Turing (p. ej., T4, serie Quadro RTX), GPU Ampere (p. ej., serie RTX30, A30/40/100), GPU Ada Lovelace (p. ej., serie RTX40) o GPU Hopper (p. ej., H100/H200). Esta flexibilidad permite a los usuarios aprovechar los beneficios de FlashAttention cuando los recursos de hardware lo permiten.

  • Esta página ofrece ejemplos de uso básicos para el entrenamiento y la inferencia. Para obtener una documentación exhaustiva sobre estos y otros modos, incluyendo Validación y Exportación, consulta las páginas dedicadas de Predict y Train. Para obtener información específica sobre tareas (segmentación, clasificación, estimación de poses y detección de objetos orientados), consulta la documentación respectiva: Segment, Classify, Pose y OBB. Estos recursos proporcionan una orientación detallada para utilizar eficazmente YOLO12 en diversos escenarios.

Comentarios