DAMO-YOLO frente a YOLOv10: la evolución de la detección de objetos eficiente en tiempo real
El campo de la visión artificial ha sido testigo de una rápida evolución en las arquitecturas de detección de objetos en tiempo real. Al comparar DAMO-YOLO y YOLOv10, observamos dos filosofías distintas en el diseño de modelos: la búsqueda automatizada de arquitectura frente a la optimización integral sin NMS. Aunque ambos superan los límites de precisión y velocidad, sus estructuras subyacentes y sus casos de uso ideales difieren significativamente.
DAMO-YOLO: Búsqueda de arquitectura neuronal a escala
Desarrollado por Alibaba Group, DAMO-YOLO surgió como un detector potente enfocado en aprovechar el descubrimiento automatizado para lograr una eficiencia estructural.
- Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang y Xiuyu Sun
- Fecha: 23 de noviembre de 2022
- Arxiv: 2211.15444v2
- GitHub: tinyvision/DAMO-YOLO
Aspectos destacados de la arquitectura
DAMO-YOLO depende en gran medida de la búsqueda de arquitectura neuronal (NAS) para equilibrar el rendimiento y la latencia. Su backbone, denominado MAE-NAS, utiliza una búsqueda evolutiva multiobjetivo bajo presupuestos computacionales estrictos para encontrar la profundidad y el ancho de capa óptimos.
Para gestionar la fusión de características a través de escalas, el modelo emplea una eficiente RepGFPN (red de pirámide de características generalizada reparametrizada). Este diseño de cuello pesado es especialmente hábil extrayendo jerarquías espaciales complejas, lo que lo hace útil en escenarios como el análisis de imágenes aéreas. Además, DAMO-YOLO introduce ZeroHead, una cabeza de detección optimizada que reduce drásticamente la complejidad de las capas de predicción final, confiando en un sólido proceso de mejora mediante destilación durante el entrenamiento.
DAMO-YOLO suele utilizar un proceso de destilación de conocimiento de varias etapas. Requiere entrenar un modelo "profesor" más pesado para guiar al modelo "estudiante" más pequeño, el cual extrae una mayor mAP (precisión media promedio), pero aumenta significativamente el tiempo de cómputo de GPU requerido.
Más información sobre DAMO-YOLO
YOLOv10: Pionero en la detección de objetos de extremo a extremo
Lanzado un año y medio después, YOLOv10 introdujo un cambio de paradigma al eliminar por completo la necesidad de supresión de no máximos (NMS) durante la inferencia.
- Autores: Ao Wang, Hui Chen, Lihao Liu, et al.
- Organización: Tsinghua University
- Fecha: 23 de mayo de 2024
- Arxiv: 2405.14458
- Documentación: Ultralytics YOLOv10
Aspectos destacados de la arquitectura
La característica destacada de YOLOv10 son sus asignaciones duales consistentes para el entrenamiento sin NMS. Los detectores tradicionales predicen múltiples cuadros delimitadores superpuestos para un solo objeto, lo que requiere NMS para filtrar duplicados. Este paso de posprocesamiento crea un cuello de botella, especialmente en dispositivos de borde. YOLOv10 resuelve esto permitiendo que el modelo prediga de forma natural un único cuadro delimitador preciso por objeto.
Los autores también se centraron en un diseño de modelo integral impulsado por la eficiencia y la precisión. Al analizar cuidadosamente la redundancia computacional en las arquitecturas existentes, optimizaron el backbone y la cabeza para reducir la cantidad de FLOPs y parámetros. Este diseño ligero garantiza que YOLOv10 ofrezca una latencia de inferencia excepcional cuando se exporta a formatos como TensorRT o OpenVINO.
Rendimiento y benchmarks
La siguiente tabla ilustra las métricas de rendimiento en bruto en el conjunto de datos COCO. Los mejores valores generales de cada columna están resaltados en negrita.
| 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 |
| 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 |
Aunque DAMO-YOLO se mantiene bien en términos de precisión, YOLOv10 proporciona constantemente una menor latencia y unos pesos de modelo significativamente más pequeños. Por ejemplo, YOLOv10s logra una mAP ligeramente superior (46,7 %) que DAMO-YOLOs (46,0 %) mientras utiliza menos de la mitad de los parámetros (7,2 M frente a 16,3 M). Los menores requisitos de memoria hacen de YOLOv10 una opción excepcionalmente versátil para sistemas integrados.
Eficiencia de entrenamiento y usabilidad
Al pasar de la investigación académica a la producción, la facilidad de uso es fundamental. El proceso de destilación multietapa y las complejas configuraciones NAS de DAMO-YOLO pueden suponer una curva de aprendizaje pronunciada para los equipos de ingeniería.
Conversely, YOLOv10 benefits immensely from being fully integrated into the Ultralytics Python SDK. Training a custom model involves minimal boilerplate code. Ultralytics handles data augmentation, hyperparameter tuning, and experiment tracking automatically.
from ultralytics import YOLO
# Load a pretrained YOLOv10 nano model
model = YOLO("yolov10n.pt")
# Train on a custom dataset with built-in validation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image seamlessly
prediction = model("path/to/image.jpg")
prediction[0].show()Utilizar el ecosistema de Ultralytics permite a los desarrolladores pasar de un prototipo a un modelo ONNX exportado completo en solo unas pocas líneas de código, evitando las complejas configuraciones de entorno requeridas por marcos más antiguos.
Casos de uso en el mundo real
- Retail inteligente (DAMO-YOLO): La precisión de DAMO-YOLO es muy adecuada para entornos de servidores de alta densidad que analizan el comportamiento del cliente donde abundan las GPU y los cuellos de botella del NMS en tiempo real son manejables.
- Vehículos autónomos (YOLOv10): La arquitectura sin NMS garantiza una latencia determinista y predecible, lo cual es fundamental para los sistemas de seguridad en la conducción autónoma.
- Industrial Automation (YOLOv10): Detecting defects on fast-moving assembly lines requires models that maximize real-time inference speeds without consuming vast VRAM, making YOLOv10 a prime candidate for edge deployment.
Casos de uso y recomendaciones
Elegir entre DAMO-YOLO y YOLOv10 depende de los requisitos específicos de tu proyecto, las restricciones de implementación y tus preferencias de ecosistema.
Cuándo elegir DAMO-YOLO
DAMO-YOLO es una gran opción para:
- Análisis de video de alto rendimiento: Procesamiento de flujos de video de alta tasa de cuadros (FPS) en infraestructura de GPU NVIDIA fija, donde el rendimiento de procesamiento batch-1 es la métrica principal.
- Líneas de fabricación industrial: Escenarios con estrictas restricciones de latencia de GPU en hardware dedicado, como la inspección de calidad en tiempo real en líneas de ensamblaje.
- Investigación en Búsqueda de Arquitectura Neuronal: Estudiar los efectos de la búsqueda de arquitectura automatizada (MAE-NAS) y los backbones reparametrizados eficientes en el rendimiento de detección.
Cuándo elegir YOLOv10
YOLOv10 se recomienda para:
- Detección en tiempo real sin NMS: Aplicaciones que se benefician de la detección de extremo a extremo sin supresión de no máximos, reduciendo la complejidad del despliegue.
- Compensaciones equilibradas entre velocidad y precisión: Proyectos que requieren un sólido equilibrio entre la velocidad de inferencia y la precisión de detección a través de varias escalas de modelo.
- Consistent-Latency Applications: Deployment scenarios where predictable inference times are critical, such as robotics or autonomous systems.
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 el desarrollador:
- Despliegue en borde sin NMS: Aplicaciones que requieren una inferencia consistente y de baja latencia sin la complejidad del posprocesamiento de la supresión de no máximos.
- Entornos solo de CPU: Dispositivos sin aceleración de GPU dedicada, donde la inferencia en CPU hasta un 43% más rápida de YOLO26 proporciona una ventaja decisiva.
- Detección de objetos pequeños: Escenarios desafiantes como imágenes de drones aéreos o análisis de sensores IoT donde ProgLoss y STAL aumentan significativamente la precisión en objetos diminutos.
La próxima generación: llega Ultralytics YOLO26
Aunque YOLOv10 sentó las bases para la detección sin NMS, la tecnología ha evolucionado rápidamente. Para las aplicaciones modernas, el modelo Ultralytics YOLO26 ofrece un rendimiento y una usabilidad inigualables, tomando lo mejor de las generaciones anteriores y perfeccionándolo para la producción.
YOLO26 features a strictly natively end-to-end design, eliminating NMS post-processing for simpler deployment pipelines across edge devices. Furthermore, the removal of Distribution Focal Loss (DFL) has dramatically improved compatibility with low-power edge AI hardware.
On the training side, YOLO26 introduces the MuSGD Optimizer, a hybrid inspired by Large Language Model (LLM) training techniques. This ensures more stable training and faster convergence. Coupled with the ProgLoss + STAL loss functions, YOLO26 exhibits remarkable improvements in small-object recognition, a critical feature for wildlife conservation and drone operations.
Fundamentalmente, YOLO26 no es solo un detector de objetos. Ofrece mejoras específicas para cada tarea en todos los ámbitos, admitiendo de forma nativa la segmentación de instancias, la estimación de pose mediante estimación de log-verosimilitud residual (RLE) y pérdidas de ángulo especializadas para cajas delimitadoras orientadas (OBB). Con hasta un 43 % más de velocidad en la inferencia de CPU que sus predecesores, es la elección definitiva para equipos de ingeniería ágiles.
Para la gestión centralizada, la anotación y el entrenamiento en la nube de modelos YOLO26, la plataforma Ultralytics proporciona una interfaz intuitiva que agiliza todo el ciclo de vida de la visión artificial.
Los desarrolladores interesados en explorar otros avances recientes también pueden evaluar Ultralytics YOLO11 o el marco RT-DETR basado en Transformer para escenarios que requieran soluciones arquitectónicas distintas.