YOLOv10 vs. DAMO-YOLO: Una comparación técnica
Seleccionar el modelo óptimo de object detection es una decisión crítica que equilibra las concesiones entre precisión, velocidad y coste computacional. Esta página proporciona una comparación técnica detallada entre YOLOv10, el último modelo de alta eficiencia integrado en el ecosistema de Ultralytics, y DAMO-YOLO, un potente detector de Alibaba Group. Analizaremos sus arquitecturas, métricas de rendimiento y casos de uso ideales para ayudarle a tomar una decisión informada para sus proyectos de visión artificial.
YOLOv10: Detección de extremo a extremo en tiempo real
YOLOv10, introducido por investigadores de la Universidad de Tsinghua en mayo de 2024, marca un importante paso adelante en la detección de objetos en tiempo real. Su principal innovación es lograr la detección de extremo a extremo eliminando la necesidad de la Supresión No Máxima (NMS), lo que reduce la sobrecarga del post-procesamiento y disminuye la latencia de inferencia.
Detalles Técnicos:
Autores: Ao Wang, Hui Chen, Lihao Liu, et al.
Organización:Tsinghua University
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/
Arquitectura y Características Clave
YOLOv10 se basa en el robusto framework de Ultralytics, heredando su facilidad de uso y su potente ecosistema. Su arquitectura introduce varios avances clave para una eficiencia y un rendimiento superiores:
- Entrenamiento sin NMS: YOLOv10 emplea asignaciones duales consistentes para las etiquetas durante el entrenamiento. Esto permite que el modelo produzca predicciones limpias sin requerir el paso de post-procesamiento NMS, simplificando el pipeline de implementación y haciéndolo verdaderamente end-to-end.
- Diseño holístico de eficiencia y precisión: La arquitectura del modelo se optimizó de manera integral para reducir la redundancia computacional. Esto incluye un encabezado de clasificación ligero y un submuestreo desacoplado espacial-canal, que mejora tanto la velocidad como la capacidad.
- Integración Fluida con Ultralytics: Como parte del ecosistema Ultralytics, YOLOv10 se beneficia de una experiencia de usuario optimizada. Esto incluye una API de python simple, documentación extensa, procesos de entrenamiento eficientes y pesos pre-entrenados disponibles. Esta integración hace que sea excepcionalmente fácil para los desarrolladores comenzar y desplegar modelos rápidamente.
Por qué importa NMS-Free
Los detectores de objetos tradicionales a menudo predicen múltiples cuadros delimitadores para un solo objeto. La supresión no máxima (NMS) es un paso de post-procesamiento utilizado para filtrar estos duplicados. Al eliminar NMS, YOLOv10 reduce significativamente la latencia y la complejidad de la inferencia, especialmente en escenarios de implementación perimetral donde cada milisegundo cuenta.
DAMO-YOLO: Eficiencia Impulsada por NAS
DAMO-YOLO es un modelo de detección de objetos rápido y preciso desarrollado por Alibaba Group. Lanzado en noviembre de 2022, introdujo varias técnicas nuevas para superar los límites de rendimiento de los detectores estilo YOLO, centrándose principalmente en la optimización arquitectónica a través de algoritmos de búsqueda.
Detalles Técnicos:
Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, et al.
Organización:Alibaba Group
Fecha: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444
GitHub:https://github.com/tinyvision/DAMO-YOLO
Documentación:https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Arquitectura y Características Clave
DAMO-YOLO explora técnicas avanzadas para mejorar el equilibrio entre velocidad y precisión. Su arquitectura se caracteriza por:
- Búsqueda de Arquitectura Neuronal (NAS): El backbone de DAMO-YOLO fue generado utilizando NAS, permitiendo una red de extracción de características altamente optimizada, diseñada específicamente para tareas de detección.
- Cuello de Botella RepGFPN Eficiente: Incorpora un novedoso diseño de Red Piramidal de Características (FPN) llamado RepGFPN que fusiona eficientemente las características de diferentes escalas.
- ZeroHead y AlignedOTA: El modelo utiliza un cabezal simplificado, de parámetro cero y una estrategia de asignación de etiquetas mejorada llamada AlignedOTA (Asignación de Transporte Óptimo Alineado) para mejorar la precisión de la detección y la localización.
- Destilación del conocimiento: DAMO-YOLO aprovecha la destilación del conocimiento para mejorar aún más el rendimiento de sus modelos más pequeños aprendiendo de redes de profesores más grandes.
Más información sobre DAMO-YOLO
Cara a cara de rendimiento
La siguiente tabla compara el rendimiento de varios tamaños de modelos YOLOv10 y DAMO-YOLO en el conjunto de datos COCO. YOLOv10 demuestra consistentemente un rendimiento superior, ofreciendo mayor precisión con menor latencia y menos parámetros.
| 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 los datos, los modelos YOLOv10 generalmente superan a sus contrapartes DAMO-YOLO en eficiencia. Por ejemplo, YOLOv10-S alcanza un mAP más alto (46.7 vs. 46.0) que DAMO-YOLO-S al tiempo que es significativamente más rápido (2.66 ms vs. 3.45 ms) y tiene menos de la mitad de los parámetros (7.2M vs. 16.3M). Esta tendencia se mantiene en todos los tamaños de modelo, culminando con YOLOv10-X alcanzando el mAP más alto de 54.4.
Análisis de Fortalezas y Debilidades
Puntos fuertes de YOLOv10
- Eficiencia de última generación: YOLOv10 ofrece un equilibrio excepcional entre velocidad y precisión, a menudo superando a sus competidores con menos parámetros y menor latencia.
- Facilidad de uso: El modelo es increíblemente fácil de usar gracias a su integración con el ecosistema de Ultralytics.
- Implementación integral: El diseño sin NMS simplifica todo el flujo de trabajo desde el entrenamiento hasta la inferencia, lo que lo hace ideal para aplicaciones del mundo real en dispositivos edge.
- Menores requisitos de memoria: En comparación con arquitecturas más complejas, YOLOv10 es eficiente en su uso de memoria tanto durante el entrenamiento como en la inferencia.
Fortalezas de DAMO-YOLO
- Alto rendimiento: DAMO-YOLO alcanza una precisión y velocidad competitivas, lo que lo convierte en un firme contendiente en el espacio de la detección de objetos.
- Tecnologías innovadoras: Incorpora conceptos de investigación de vanguardia como NAS y estrategias avanzadas de asignación de etiquetas que son valiosas para la exploración académica.
Debilidades
- YOLOv10: Si bien es excepcional para la detección de objetos, YOLOv10 se centra actualmente en esta única tarea, a diferencia del versátil Ultralytics YOLO11, que admite segmentación, clasificación y estimación de pose de forma predeterminada.
- DAMO-YOLO: La arquitectura y el pipeline de entrenamiento del modelo son más complejos en comparación con YOLOv10. Está disponible principalmente dentro de toolboxes de investigación específicas, lo que puede ser una barrera para los desarrolladores que prefieren una solución más integrada y fácil de usar como la que ofrece Ultralytics.
La ventaja de Ultralytics
Si bien ambos modelos son impresionantes, los modelos de Ultralytics como YOLOv10 y el buque insignia YOLO11 ofrecen una ventaja clara para los desarrolladores e investigadores:
- Ecosistema unificado: Ultralytics proporciona una plataforma cohesiva donde la anotación de datos, el entrenamiento y la implementación se realizan sin problemas.
- Facilidad de uso: Con una API de python sencilla, puedes cargar un modelo y ejecutar la inferencia en tan solo unas líneas de código.
- Versatilidad: Ultralytics admite una amplia gama de tareas, incluyendo segmentación de instancias, clasificación de imágenes, estimación de pose y Bounding Boxes Orientados (OBB).
- Soporte de la comunidad: Una comunidad activa y una extensa documentación garantizan que nunca te atasques en un problema durante mucho tiempo.
Ejemplo de Uso: YOLOv10 con Ultralytics
Ejecutar YOLOv10 es sencillo usando el paquete de Python Ultralytics. Aquí te mostramos cómo puedes cargar un modelo pre-entrenado y ejecutar la predicción en una imagen:
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Perform object detection on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
Conclusión
Tanto YOLOv10 como DAMO-YOLO son modelos de detección de objetos formidables. DAMO-YOLO sirve como una excelente referencia para la investigación de arquitecturas basadas en NAS y la fusión de características avanzadas. Sin embargo, para la implementación práctica y la eficiencia de MLOps, YOLOv10 destaca como la opción superior. Su arquitectura sin NMS, combinada con el completo ecosistema Ultralytics, garantiza que pueda pasar del concepto a la producción más rápido y con un mejor rendimiento.
Para los usuarios que requieren una versatilidad aún mayor en múltiples tareas de visión, recomendamos encarecidamente explorar YOLO11, que define el estado actual del arte para la familia YOLO.
Explore otras comparaciones de modelos
Para ver cómo se comparan estos modelos con otras arquitecturas líderes, consulta estas comparaciones:
- YOLO11 vs. DAMO-YOLO
- YOLOv8 vs. DAMO-YOLO
- RT-DETR vs. DAMO-YOLO
- YOLOX vs. DAMO-YOLO
- YOLOv10 vs. RT-DETR
- YOLOv10 vs. YOLOX