Un duelo técnico: DAMO-YOLO frente a RTDETRv2 para la detección de objetos en tiempo real
El panorama, en rápida evolución, de la visión artificial ha producido una impresionante variedad de arquitecturas diseñadas para equilibrar la velocidad, la precisión y la eficiencia computacional. Dos modelos destacados que han aportado enfoques únicos para resolver estos desafíos son DAMO-YOLO y RTDETRv2. Aunque ambos modelos tienen como objetivo ofrecer soluciones de vanguardia para la inferencia en tiempo real, difieren fundamentalmente en sus filosofías arquitectónicas.
Esta guía exhaustiva profundiza en las especificaciones técnicas, las innovaciones arquitectónicas y los casos de uso prácticos de ambos modelos, al tiempo que explora cómo las soluciones modernas como la Ultralytics Platform y el vanguardista YOLO26 han redefinido los estándares de la industria en cuanto a implementación y facilidad de uso.
Resumen de modelos
Entendiendo DAMO-YOLO
Desarrollado por investigadores de Alibaba Group, DAMO-YOLO introduce un método de detección de objetos rápido y preciso que depende en gran medida de la búsqueda de arquitectura neuronal (NAS, por sus siglas en inglés). Sustituye los backbones tradicionales diseñados manualmente por estructuras generadas mediante NAS diseñadas para obtener una baja latencia. Además, incorpora una eficiente RepGFPN (red de pirámide de características reparametrizada generalizada) y un diseño ZeroHead para agilizar la agregación de características y las predicciones de bbox.
Detalles clave del modelo:
- Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang y Xiuyu Sun
- Organización: Alibaba Group
- Fecha: 23-11-2022
- Arxiv: 2211.15444v2
- GitHub: tinyvision/DAMO-YOLO
- Documentación: Documentación de DAMO-YOLO
Más información sobre DAMO-YOLO
Entendiendo RTDETRv2
El modelo RTDETRv2 de Baidu representa un salto significativo para los transformers de detección en tiempo real. A diferencia de las redes neuronales convolucionales (CNN) tradicionales que dependen de anchor boxes y de la supresión no máxima (NMS), RTDETRv2 utiliza mecanismos de auto-atención para ver toda la imagen contextualmente. Genera directamente las bbox, omitiendo por completo el paso de postprocesamiento NMS. Este modelo introduce una estrategia de entrenamiento de "bag of freebies" para mejorar la precisión base sin aumentar la latencia de inferencia.
Detalles clave del modelo:
- Autores: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang y Yi Liu
- Organización: Baidu
- Fecha: 24-07-2024
- Arxiv: 2407.17140
- GitHub: Repositorio RT-DETR
- Documentación: Documentación de RTDETRv2
Más información sobre RTDETRv2
Aunque los transformers requieren mayores recursos computacionales, su capacidad para procesar el contexto global los hace increíblemente eficaces para la comprensión de escenas complejas, lo cual es una fortaleza principal de RTDETRv2.
Comparación de rendimiento
Al evaluar estos modelos para su implementación en el mundo real, parámetros como el mAP, la velocidad de inferencia y la huella de memoria son críticos. Los modelos basados en transformers como RTDETRv2 generalmente exigen una mayor memoria CUDA durante el entrenamiento y la inferencia en comparación con las CNN ligeras como DAMO-YOLO.
A continuación se muestra una comparación detallada de sus métricas de rendimiento.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
Casos de uso ideales
Dónde destaca DAMO-YOLO: Debido a su backbone optimizado por NAS y a su recuento de parámetros excepcionalmente bajo en sus variantes más pequeñas (como DAMO-YOLOt), es muy adecuado para su implementación en hardware altamente limitado. Si construyes soluciones para dispositivos embebidos utilizando entornos de ejecución como ONNX o motores TensorRT especializados para la computación en el borde (edge computing), DAMO-YOLO proporciona un marco de trabajo de gran capacidad de respuesta.
Dónde destaca RTDETRv2: RTDETRv2 brilla en escenarios donde se dispone de GPU de nivel servidor y el contexto global de la imagen es fundamental. Su arquitectura de transformer le permite resolver de forma natural bbox superpuestas sin NMS, lo que la convierte en una opción robusta para la gestión de multitudes densas o el seguimiento de objetos complejo, donde las relaciones espaciales entre objetos distantes son críticas.
La ventaja de Ultralytics: Presentamos YOLO26
Aunque DAMO-YOLO y RTDETRv2 representan importantes logros académicos, la transición de estos modelos a aplicaciones escalables y listas para producción puede ser un desafío. Los desarrolladores a menudo se enfrentan a bases de código fragmentadas, falta de soporte para el aprendizaje multitarea y pipelines de implementación complicados.
Aquí es donde el ecosistema de Ultralytics realmente destaca. Al priorizar la facilidad de uso, una API de Python bien mantenida y una versatilidad inigualable, Ultralytics garantiza que los desarrolladores dediquen menos tiempo a depurar y más tiempo a construir.
El modelo Ultralytics YOLO26, lanzado recientemente, lleva estas ventajas al siguiente nivel, ofreciendo avances que superan tanto a DAMO-YOLO como a RTDETRv2:
- Diseño de extremo a extremo sin NMS: Desarrollado originalmente en YOLOv10, YOLO26 es nativamente de extremo a extremo. Esto elimina por completo el postprocesamiento NMS, haciendo que la implementación sea más rápida y drásticamente más sencilla que la de las CNN tradicionales, a la vez que iguala los beneficios de salida directa de RTDETRv2.
- Inferencia en CPU hasta un 43% más rápida: Altamente optimizado para dispositivos de IA en el borde sin GPU dedicadas, lo que la convierte en una opción muy superior para aplicaciones de IoT en comparación con los transformers de gran consumo de memoria.
- Optimizador MuSGD: Inspirado en Kimi K2 de Moonshot AI, este híbrido de SGD y Muon incorpora innovaciones de entrenamiento de modelos de lenguaje extenso (LLM) a la visión artificial, lo que resulta en un entrenamiento notablemente estable y una convergencia más rápida.
- ProgLoss + STAL: Estas funciones de pérdida avanzadas ofrecen mejoras notables en el reconocimiento de objetos pequeños, un área en la que los modelos suelen tener dificultades. Esto es fundamental para imágenes aéreas y aplicaciones de drones.
- Eliminación de DFL: Se ha eliminado la Distribution Focal Loss para garantizar formatos de exportación simplificados y una mejor compatibilidad con dispositivos de borde de bajo consumo.
- Versatilidad inigualable: A diferencia de los modelos de la competencia limitados estrictamente a la detección, YOLO26 incluye mejoras específicas de la tarea en todos los ámbitos, como la pérdida de ángulo especializada para Oriented Bounding Boxes (OBB), la pérdida de segmentación semántica para una precisión píxel a píxel y la estimación de log-verosimilitud residual (RLE) para la estimación de poses.
El entrenamiento de modelos basados en transformers como RTDETRv2 requiere inmensas asignaciones de memoria CUDA, lo que a menudo exige costosas configuraciones de varias GPU. Los modelos YOLO de Ultralytics mantienen unos requisitos de memoria notablemente inferiores tanto durante el entrenamiento como en la inferencia, democratizando el desarrollo de IA para investigadores y aficionados por igual.
Ejemplo de código: La API unificada de Ultralytics
Uno de los mayores beneficios del ecosistema de Ultralytics es su API unificada. Puedes cargar, entrenar y validar sin problemas una variedad de modelos, incluida una implementación en PyTorch de RTDETR y modelos YOLO de última generación, sin cambiar tu flujo de trabajo.
from ultralytics import RTDETR, YOLO
# Load an RTDETRv2 model
model_rtdetr = RTDETR("rtdetr-l.pt")
# Load the cutting-edge YOLO26 model
model_yolo = YOLO("yolo26n.pt")
# Run inference on an image with a simple, unified interface
results_rtdetr = model_rtdetr("https://ultralytics.com/images/bus.jpg")
results_yolo = model_yolo("https://ultralytics.com/images/bus.jpg")
# Display the detected objects
results_yolo[0].show()Esta sencillez se extiende al entrenamiento de datasets personalizados y a la exportación. Utilizando el paquete Python de Ultralytics, los desarrolladores pueden enviar fácilmente sus pesos entrenados a plataformas de implementación como CoreML o OpenVINO con un solo comando.
Conclusión y exploración adicional
Tanto DAMO-YOLO como RTDETRv2 han superado innegablemente los límites de lo que es posible en la detección de objetos en tiempo real. DAMO-YOLO proporciona estructuras de red auto-buscadas y altamente optimizadas para una eficiencia bruta, mientras que RTDETRv2 demuestra que los transformers pueden competir en el espacio de tiempo real eliminando cuellos de botella tradicionales como el NMS.
Sin embargo, para los desarrolladores que buscan el equilibrio definitivo entre rendimiento, documentación completa y preparación para la producción, los modelos YOLO de Ultralytics siguen siendo el estándar de oro. Con la introducción de YOLO26, los usuarios obtienen acceso a una detección de extremo a extremo similar a los transformers, una eficiencia de entrenamiento inspirada en LLM y velocidades de CPU inigualables, todo ello envuelto en un ecosistema intuitivo y robusto.
Si estás evaluando modelos para tu próximo proyecto, también puedes encontrar valor en la lectura de nuestras comparaciones entre EfficientDet y RTDETR, explorando la generación anterior YOLO11, o revisando líneas base académicas como YOLOX. Empieza a construir hoy mismo explorando la guía de inicio rápido de Ultralytics.