YOLOv10 frente a DAMO-YOLO#
Al crear pipelines modernos de visión por ordenador, seleccionar la arquitectura adecuada de detección de objetos en tiempo real es fundamental. En este análisis técnico exhaustivo, exploramos las arquitecturas, las métricas de rendimiento y los casos de uso ideales de YOLOv10 y DAMO-YOLO. Ambos modelos representan avances significativos en las capacidades de detección de objetos, pero siguen caminos arquitectónicos diferentes para alcanzar sus objetivos.
Tanto si tu proyecto requiere implementarse en hardware de IA en el borde con recursos limitados como si exige la máxima precisión en GPU en la nube, comprender los matices de estas arquitecturas te ayudará a tomar una decisión informada.
Exploración de YOLOv10#
Presentado por investigadores de la Universidad de Tsinghua, YOLOv10 revolucionó la familia YOLO al introducir un enfoque nativo de extremo a extremo, eliminando eficazmente la necesidad de la supresión no máxima (NMS) durante el posprocesamiento.
Detalles de YOLOv10:
- Autores: Ao Wang, Hui Chen, Lihao Liu, et al.
- Organización: Universidad de Tsinghua
- Fecha: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- Documentación: https://docs.ultralytics.com/models/yolov10
Características arquitectónicas principales#
La principal innovación de YOLOv10 es su estrategia de asignaciones duales coherentes para el entrenamiento sin NMS. Los detectores de objetos tradicionales dependen en gran medida de la NMS para filtrar las cajas delimitadoras superpuestas, lo que introduce una latencia impredecible, un cuello de botella importante para aplicaciones en tiempo real como los vehículos autónomos y la robótica de alta velocidad. Al predecir directamente una única caja delimitadora óptima por objeto, YOLOv10 consigue una inferencia predecible y con una latencia ultrabaja.
Además, el modelo emplea un diseño holístico impulsado por la eficiencia y la precisión. La arquitectura optimiza diversos componentes, incluidos un cabezal de clasificación ligero y un submuestreo desacoplado espacialmente y por canales, lo que reduce considerablemente la redundancia computacional. El resultado es una arquitectura con menos parámetros y menos FLOPs, a la vez que mantiene una precisión media promedio (mAP) competitiva.
Ejemplo de uso#
YOLOv10 está profundamente integrado en el ecosistema de Ultralytics, por lo que resulta increíblemente fácil de usar mediante el paquete de Python de Ultralytics.
from ultralytics import YOLO
# Load a pre-trained YOLOv10 nano model
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image
results = model("https://ultralytics.com/images/bus.jpg")
# Export the model to TensorRT format
model.export(format="engine", quantize=16)Exploración de DAMO-YOLO#
Desarrollado por Alibaba Group, DAMO-YOLO se centra en descubrir estructuras de red muy eficientes mediante la búsqueda automatizada de arquitecturas neuronales (NAS), con el objetivo de ampliar la frontera de Pareto entre velocidad y precisión.
Detalles de DAMO-YOLO:
- Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang y Xiuyu Sun
- Organización: Alibaba Group
- Fecha: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
Características arquitectónicas principales#
DAMO-YOLO introduce varias tecnologías novedosas adaptadas a aplicaciones industriales. La base del modelo es su MAE-NAS Backbone, generado mediante una búsqueda guiada por entropía máxima. Este proceso automatizado descubre estructuras de la columna vertebral que se adhieren estrictamente a presupuestos computacionales predefinidos, logrando un equilibrio perfecto entre precisión y latencia de inferencia.
Además, la arquitectura utiliza un neck Efficient RepGFPN. Esta red piramidal de características está diseñada para mejorar la fusión de características entre distintas escalas, algo fundamental para tareas complejas como el análisis de imágenes aéreas, donde el tamaño de los objetos varía drásticamente. Como complemento, DAMO-YOLO implementa un ZeroHead, un cabezal de detección minimalista que reduce drásticamente la complejidad de las capas finales de predicción y ahorra un tiempo de cómputo valioso durante la inferencia.
Más información sobre DAMO-YOLO
Comparación de rendimiento#
Al evaluar arquitecturas de detección de objetos, es primordial encontrar el equilibrio adecuado entre la velocidad de inferencia, la eficiencia de los parámetros y la precisión de detección. La tabla siguiente compara el rendimiento de YOLOv10 y DAMO-YOLO en sus respectivos tamaños de modelo.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | parámetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
Como muestran las pruebas de referencia, YOLOv10 ofrece sistemáticamente perfiles de latencia excepcionales en TensorRT, especialmente en su variante nano, que requiere muchos menos parámetros y FLOPs que los modelos comparables de DAMO-YOLO. Aunque DAMO-YOLO ofrece un mAP sólido en su variante tiny, la eficiencia de los parámetros y la latencia de inferencia de la familia YOLOv10 proporcionan una ventaja clara en entornos de implementación con recursos limitados.
Casos de uso y recomendaciones#
La elección entre YOLOv10 y DAMO-YOLO depende de los requisitos específicos de tu proyecto, las restricciones de implementación y tus preferencias de ecosistema.
Cuándo elegir YOLOv10#
YOLOv10 es una opción sólida para:
- Detección en tiempo real sin NMS: Aplicaciones que se benefician de la detección integral sin supresión de no máximos, reduciendo la complejidad del despliegue.
- Equilibrios entre velocidad y precisión: Proyectos que requieren un equilibrio sólido entre la velocidad de inferencia y la precisión de detección en distintas escalas de modelo.
- Aplicaciones con latencia coherente: Situaciones de despliegue en las que los tiempos de inferencia predecibles son fundamentales, como la robótica o los sistemas autónomos.
Cuándo elegir DAMO-YOLO#
DAMO-YOLO se recomienda para:
- Análisis de vídeo de alto rendimiento: Procesamiento de flujos de vídeo con un FPS elevado en una infraestructura GPU NVIDIA fija, donde el rendimiento con batch-1 es la métrica principal.
- Líneas industriales de fabricación: Situaciones con estrictas restricciones de latencia GPU en hardware dedicado, como la inspección de calidad en tiempo real en líneas de montaje.
- Investigación sobre búsqueda de arquitectura neuronal: Estudio de los efectos de la búsqueda automatizada de arquitecturas (MAE-NAS) y de los backbones reparametrizados eficientes en el rendimiento de la detección.
Cuándo elegir Ultralytics (YOLO26)#
Para la mayoría de los proyectos nuevos, Ultralytics YOLO26 ofrece la mejor combinación de rendimiento y experiencia para desarrolladores:
- Despliegue edge sin NMS: Aplicaciones que requieren una inferencia constante y de baja latencia sin la complejidad del posprocesamiento de supresión no máxima.
- Entornos exclusivamente con CPU: Dispositivos sin aceleración dedicada mediante GPU, donde la inferencia en CPU hasta un 43 % más rápida de YOLO26 ofrece una ventaja decisiva.
- Detección de objetos pequeños: Escenarios exigentes, como las imágenes aéreas captadas por drones o el análisis de sensores del IoT, en los que ProgLoss y STAL mejoran significativamente la precisión en objetos diminutos.
La ventaja de Ultralytics#
Aunque ambos modelos son técnicamente impresionantes, elegir una arquitectura para producción implica mirar más allá de las métricas en bruto. Crear soluciones con modelos compatibles de forma nativa con el ecosistema de Ultralytics ofrece ventajas incomparables tanto para desarrolladores como para investigadores.
Facilidad de uso y un ecosistema bien mantenido#
A diferencia de los repositorios académicos independientes, que a menudo terminan abandonados, Ultralytics ofrece un ecosistema sólido y mantenido activamente. Configurar entornos complejos para modelos que dependen en gran medida de pipelines de NAS puede resultar abrumador. En cambio, Ultralytics proporciona una API de Python estandarizada e intuitiva y una CLI potente, respaldadas por una documentación amplia. Esto reduce radicalmente el tiempo de comercialización de las soluciones de visión personalizadas.
Eficiencia del entrenamiento y requisitos de memoria#
Entrenar modelos grandes puede encarecer rápidamente el cómputo. Las arquitecturas YOLO de Ultralytics son conocidas históricamente por su bajo consumo de memoria CUDA durante el entrenamiento y la inferencia. Esta eficiencia permite a los desarrolladores entrenar modelos en hardware de consumo o en instancias en la nube rentables sin encontrarse con errores de memoria insuficiente, habituales al trabajar con modelos basados en Transformer como RT-DETR.
Ultralytics se integra de forma nativa con las principales herramientas de MLOps. Puedes realizar un seguimiento sencillo del progreso del entrenamiento de tus modelos mediante integraciones con Weights & Biases, Comet o ClearML, sin necesidad de añadir código repetitivo.
Versatilidad entre tareas#
Una limitación importante de muchos modelos de detección especializados es su enfoque reducido. En el ecosistema de Ultralytics, no estás limitado únicamente a la detección de objetos. Las herramientas se amplían sin problemas a múltiples tareas de visión por ordenador, incluida la segmentación de instancias, la clasificación de imágenes, la estimación de poses y la detección de cajas delimitadoras orientadas (OBB).
Una mirada al futuro: la evolución de YOLO26#
Mientras que YOLOv10 fue pionero en la inferencia sin NMS y DAMO-YOLO mostró el potencial de NAS, el campo de la visión por ordenador avanza rápidamente. Para los desarrolladores que buscan la solución más avanzada, recomendamos echar un vistazo a Ultralytics YOLO26.
Lanzado como sucesor definitivo de YOLO11, YOLO26 se basa en los cimientos sin NMS establecidos por YOLOv10, pero los lleva mucho más lejos.
Entre los avances principales de YOLO26 se incluyen:
- Inferencia en CPU hasta un 43 % más rápida: optimizada específicamente para la computación en el borde y los dispositivos de bajo consumo.
- Eliminación de DFL: se ha eliminado Distribution Focal Loss para garantizar exportaciones más sencillas y una compatibilidad mejorada con diversos destinos de implementación.
- Optimizador MuSGD: una combinación de SGD y Muon que incorpora directamente en la visión por ordenador una estabilidad avanzada del entrenamiento de LLM y una convergencia más rápida.
- ProgLoss + STAL: funciones de pérdida considerablemente mejoradas que ofrecen mejoras notables en el reconocimiento de objetos pequeños, algo esencial para casos de uso como la agricultura y la teledetección.
Al utilizar la recién renovada Ultralytics Platform, los desarrolladores pueden anotar, entrenar e implementar sin problemas modelos de nueva generación como YOLO26 con solo unos clics, garantizando que tu pipeline de visión por ordenador sea vanguardista y esté preparado para el futuro.