Ir al contenido

YOLOv10 vs YOLOv8: Una comparación técnica para la detección de objetos

Elegir el modelo de detección de objetos adecuado es crucial para el éxito de cualquier proyecto de visión artificial. Esta página proporciona una comparación técnica detallada entre YOLOv10 y Ultralytics YOLOv8, dos modelos de última generación en el campo. Analizaremos sus diferencias arquitectónicas, métricas de rendimiento y aplicaciones ideales para ayudarle a tomar una decisión informada basada en sus necesidades específicas de velocidad, precisión y eficiencia de recursos.

YOLOv10: Superando los Límites de la Eficiencia

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/

YOLOv10, presentado en mayo de 2024, representa un paso significativo hacia el logro de una verdadera detección de objetos de extremo a extremo y en tiempo real. Su principal innovación es su enfoque en la eliminación de los cuellos de botella del post-procesamiento y la optimización de la arquitectura del modelo para una máxima eficiencia. Una característica clave es su enfoque de entrenamiento sin NMS, que utiliza asignaciones duales consistentes para eliminar la necesidad de la Supresión No Máxima (NMS), reduciendo así la latencia de inferencia.

Arquitectura y Características Clave

YOLOv10 introduce un diseño de modelo holístico impulsado por la eficiencia y la precisión. Optimiza varios componentes, como la implementación de un encabezado de clasificación ligero y el uso de un submuestreo desacoplado espacial-canal, para reducir la redundancia computacional y mejorar las capacidades de detección. Aunque fue desarrollado por la Universidad de Tsinghua, YOLOv10 está construido e integrado en el framework de Ultralytics, lo que lo hace accesible y fácil de usar con la API familiar de Ultralytics.

Fortalezas

  • Eficiencia mejorada: Ofrece velocidades de inferencia más rápidas y tamaños de modelo más pequeños en comparaciones directas, lo que es muy beneficioso para entornos con recursos limitados, como los dispositivos de borde.
  • Diseño sin NMS: Simplifica el pipeline de implementación al eliminar el paso de post-procesamiento NMS, lo que conduce a una menor latencia de extremo a extremo.
  • Rendimiento de vanguardia: Alcanza un rendimiento excelente, especialmente en benchmarks centrados en la latencia, superando el estado del arte en cuanto a equilibrio entre velocidad y precisión.

Debilidades

  • Modelo más reciente: Al ser una versión más reciente, tiene una comunidad más pequeña y menos integraciones de terceros en comparación con YOLOv8, que está bien establecido.
  • Especialización en tareas: YOLOv10 se centra principalmente en la detección de objetos. Carece de la versatilidad incorporada para otras tareas de visión como la segmentación y la estimación de pose que son nativas de YOLOv8.
  • Madurez del ecosistema: Aunque está integrado en el ecosistema de Ultralytics, aún no tiene la misma profundidad de recursos y ejemplos impulsados por la comunidad que YOLOv8.

Casos de Uso Ideales

YOLOv10 es particularmente adecuado para aplicaciones donde el rendimiento en tiempo real y la eficiencia de los recursos son las prioridades absolutas:

  • Edge AI: Ideal para la implementación en dispositivos con potencia computacional limitada, como teléfonos móviles y sistemas integrados como la NVIDIA Jetson.
  • Procesamiento de alta velocidad: Adecuado para aplicaciones que requieren una latencia muy baja, como drones autónomos y robótica.
  • Análisis en Tiempo Real: Perfecto para entornos de ritmo rápido que necesitan detección de objetos inmediata, como la gestión del tráfico.

Más información sobre YOLOv10

Ultralytics YOLOv8: Versatilidad y madurez

Autores: Glenn Jocher, Ayush Chaurasia y Jing Qiu
Organización: Ultralytics
Fecha: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
Documentación: https://docs.ultralytics.com/models/yolov8/

Ultralytics YOLOv8, lanzado en enero de 2023, es un modelo maduro y altamente versátil que se basa en los puntos fuertes de sus predecesores YOLO. Está diseñado para la velocidad, la precisión y la facilidad de uso en un amplio espectro de tareas de IA de visión. Esto lo convierte en una opción potente y fiable tanto para desarrolladores como para investigadores.

Arquitectura y Características Clave

YOLOv8 presenta un enfoque de detección sin anclajes, que simplifica la arquitectura del modelo y mejora la generalización. Su backbone flexible y sus funciones de pérdida optimizadas contribuyen a una mayor precisión y a un entrenamiento más estable. La característica más destacada de YOLOv8 es su soporte nativo para múltiples tareas de visión, incluyendo la detección de objetos, la segmentación de instancias, la clasificación de imágenes, la estimación de pose y las cajas delimitadoras orientadas (OBB).

Fortalezas

  • Maduro y Bien Documentado: Se beneficia de una extensa documentación, una gran comunidad y recursos disponibles, lo que lo hace fácil de usar y de implementar a través de interfaces simples de Python y CLI.
  • Versátil y Multitarea: Admite una amplia gama de tareas de visión de forma nativa, ofreciendo una flexibilidad sin igual para proyectos complejos que requieren algo más que la simple detección.
  • Ecosistema bien mantenido: Se integra perfectamente con Ultralytics HUB y otras herramientas de MLOps, agilizando los flujos de trabajo desde el entrenamiento hasta la implementación. Está respaldado por el desarrollo activo y las actualizaciones frecuentes.
  • Equilibrio de rendimiento: Proporciona una excelente relación entre velocidad, precisión y tamaño del modelo, lo que lo hace adecuado para una amplia gama de escenarios de implementación en el mundo real.
  • Eficiencia en el entrenamiento: Ofrece procesos de entrenamiento eficientes y pesos pre-entrenados disponibles, lo que acelera los ciclos de desarrollo. También tiene menores requisitos de memoria en comparación con muchas otras arquitecturas, especialmente los modelos basados en transformers.

Debilidades

  • Si bien son muy eficientes, los modelos más nuevos como YOLOv10 pueden ofrecer mejoras marginales en métricas específicas como el recuento de parámetros o la latencia en escenarios muy limitados.

Casos de Uso Ideales

La versatilidad y facilidad de uso de YOLOv8 la convierten en la opción ideal para un amplio espectro de aplicaciones:

  • Sistemas de seguridad: Excelente para la detección de objetos en tiempo real en sistemas de alarma de seguridad.
  • Análisis minorista: Útil en el comercio minorista inteligente para comprender el comportamiento del cliente y la gestión de inventario.
  • Control de Calidad Industrial: Aplicable en la fabricación para la inspección visual automatizada.
  • Proyectos Multi-Tarea: La elección perfecta para proyectos que requieren detección, segmentación y estimación de pose simultáneamente desde un único modelo eficiente.

Más información sobre YOLOv8

Análisis de rendimiento: YOLOv10 vs. YOLOv8

Las métricas de rendimiento en el conjunto de datos COCO revelan las diferencias clave entre los dos modelos. YOLOv10 logra consistentemente puntuaciones mAP más altas con menos parámetros y FLOPs en comparación con sus contrapartes YOLOv8 de tamaño similar. Por ejemplo, YOLOv10-S alcanza un 46.7% de mAP con 7.2M de parámetros, mientras que YOLOv8-S alcanza un 44.9% de mAP con 11.2M de parámetros. Esto destaca la eficiencia arquitectónica superior de YOLOv10.

Sin embargo, YOLOv8 mantiene velocidades de inferencia altamente competitivas, particularmente en GPU. El modelo más pequeño, YOLOv8n, es ligeramente más rápido en una GPU T4 con TensorRT que YOLOv10n (1,47 ms frente a 1,56 ms). Además, YOLOv8 proporciona un conjunto completo de benchmarks de CPU bien establecidos, lo que demuestra su rendimiento robusto y confiable para implementaciones que pueden no tener acceso a la GPU.

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
YOLOv8n 640 37.3 80.4 1.47 3.2 8.7
YOLOv8s 640 44.9 128.4 2.66 11.2 28.6
YOLOv8m 640 50.2 234.7 5.86 25.9 78.9
YOLOv8l 640 52.9 375.2 9.06 43.7 165.2
YOLOv8x 640 53.9 479.1 14.37 68.2 257.8

Conclusión y recomendaciones

Tanto YOLOv10 como YOLOv8 son modelos potentes, pero están diseñados para diferentes prioridades. YOLOv10 destaca en eficiencia pura, ofreciendo un rendimiento de última generación con menor latencia y menos parámetros, lo que lo convierte en una excelente opción para aplicaciones especializadas y críticas para la latencia.

Sin embargo, para la gran mayoría de los desarrolladores e investigadores, Ultralytics YOLOv8 es la opción recomendada. Sus principales ventajas residen en su madurez, versatilidad y robusto ecosistema. La compatibilidad nativa de YOLOv8 con múltiples tareas (detección, segmentación, pose, clasificación y OBB) proporciona una ventaja significativa para la creación de soluciones de IA complejas y multifacéticas. La amplia documentación, la comunidad activa y la perfecta integración con herramientas como Ultralytics HUB crean una experiencia de desarrollo superior y más ágil. Ofrece un equilibrio excepcional y probado de velocidad y precisión que es fiable para la más amplia gama de aplicaciones del mundo real.

Explorando otros modelos

Para los usuarios interesados en explorar otros modelos de última generación, Ultralytics proporciona un conjunto completo que incluye el fundamental YOLOv5, el eficiente YOLOv9 y el último YOLO11. También se ofrecen comparaciones detalladas como YOLOv9 vs. YOLOv8 y YOLOv5 vs. YOLOv8 para ayudarle a seleccionar el modelo perfecto para su proyecto.



📅 Creado hace 1 año ✏️ Actualizado hace 1 mes

Comentarios