Comparación de modelos: YOLOv6-3.0 vs YOLOv5 para la detección de objetos
Elegir el modelo de detección de objetos óptimo es fundamental para el éxito de las aplicaciones de visión artificial. Tanto Meituan YOLOv6-3.0 como Ultralytics YOLOv5 son opciones populares conocidas por su eficiencia y precisión. Esta página proporciona una comparación técnica para ayudarle a decidir qué modelo se adapta mejor a las necesidades de su proyecto. Profundizamos en sus matices arquitectónicos, puntos de referencia de rendimiento, enfoques de entrenamiento y aplicaciones adecuadas, destacando los puntos fuertes del ecosistema Ultralytics.
Meituan YOLOv6-3.0
YOLOv6-3.0, desarrollado por Meituan, es un framework de detección de objetos diseñado principalmente para aplicaciones industriales. Lanzado a principios de 2023, su objetivo era proporcionar un equilibrio entre velocidad y precisión adecuado para escenarios de implementación en el mundo real.
- Autores: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu y Xiangxiang Chu
- Organización: Meituan
- Fecha: 2023-01-13
- Arxiv: https://arxiv.org/abs/2301.05586
- GitHub: https://github.com/meituan/YOLOv6
- Documentación: https://docs.ultralytics.com/models/yolov6/
Arquitectura y Características Clave
YOLOv6 introdujo modificaciones arquitectónicas como un backbone eficiente y reparametrizable y un diseño de cuello optimizado. La versión 3.0 refinó aún más estos elementos e incorporó técnicas como la auto-destilación durante el entrenamiento para mejorar el rendimiento. También ofrece modelos específicos optimizados para la implementación móvil (YOLOv6Lite).
Fortalezas
- Buen compromiso entre velocidad y precisión: Ofrece un rendimiento competitivo, especialmente para tareas industriales de detección de objetos en GPU.
- Soporte de cuantización: Proporciona herramientas y tutoriales para la cuantización de modelos, lo cual es beneficioso para la implementación en hardware con recursos limitados.
- Optimización móvil: Incluye variantes YOLOv6Lite diseñadas específicamente para la inferencia móvil o basada en CPU.
Debilidades
- Versatilidad de tareas limitada: Se centra principalmente en la detección de objetos, careciendo del soporte nativo para la segmentación de instancias, la clasificación de imágenes y la estimación de pose que se encuentra en los modelos Ultralytics como YOLOv8.
- Ecosistema y mantenimiento: Aunque es de código abierto, el ecosistema no es tan completo ni se mantiene tan activamente como la plataforma de Ultralytics. Esto puede resultar en actualizaciones más lentas, menos soporte de la comunidad y una experiencia de usuario más compleja.
- Mayor uso de recursos: Como se ve en la tabla de rendimiento, los modelos YOLOv6 más grandes pueden tener más parámetros y FLOPs que los modelos YOLOv5 comparables, lo que podría requerir más recursos computacionales.
Ultralytics YOLOv5
Ultralytics YOLOv5 es un modelo de detección de objetos de una sola etapa, reconocido por su velocidad, facilidad de uso y adaptabilidad. Desarrollado por Ultralytics, representa un paso significativo para hacer accesible la detección de objetos de alto rendimiento a un público amplio.
- Autores: Glenn Jocher
- Organización: Ultralytics
- Fecha: 2020-06-26
- GitHub: https://github.com/ultralytics/yolov5
- Documentación: https://docs.ultralytics.com/models/yolov5/
Construido enteramente en PyTorchYOLOv5 incluye una red troncal CSPDarknet53 y un cuello PANet para la extracción y fusión eficientes de características. Su arquitectura es altamente modular, lo que permite escalar fácilmente a través de diferentes tamaños de modelo (n, s, m, l, x) para satisfacer diversos requisitos de rendimiento.
Ventajas de YOLOv5
- Velocidad y Eficiencia: YOLOv5 destaca en velocidad de inferencia, lo que lo hace ideal para aplicaciones en tiempo real e implementación en dispositivos edge con recursos limitados. Su rendimiento en CPU es particularmente notable.
- Facilidad de uso: Conocido por su simplicidad, YOLOv5 ofrece una experiencia de usuario optimizada con una API sencilla, una extensa documentación y numerosos tutoriales.
- Ecosistema bien mantenido: Se beneficia del ecosistema integrado de Ultralytics, que incluye desarrollo activo, un sólido apoyo de la comunidad, actualizaciones frecuentes y una integración perfecta con Ultralytics HUB para MLOps.
- Equilibrio entre rendimiento: Logra un sólido equilibrio entre velocidad y precisión, adecuado para diversos escenarios de implementación en el mundo real.
- Eficiencia en el entrenamiento: Ofrece procesos de entrenamiento eficientes, pesos pre-entrenados disponibles y menores requisitos de memoria en comparación con muchas otras arquitecturas, especialmente los modelos basados en transformadores.
- Versatilidad: Admite múltiples tareas, incluyendo la detección de objetos, la segmentación de instancias y la clasificación de imágenes dentro de un marco unificado.
Debilidades de YOLOv5
- Precisión máxima: Si bien son muy precisos y eficientes, los modelos más nuevos como YOLOv6-3.0 o Ultralytics YOLOv8 pueden ofrecer un mAP ligeramente superior en ciertos benchmarks, particularmente las variantes de modelos más grandes en GPU.
Comparación directa de rendimiento: YOLOv6-3.0 vs. YOLOv5
La siguiente tabla proporciona una comparación detallada del rendimiento entre los modelos YOLOv6-3.0 y YOLOv5 en el conjunto de datos COCO.
Modelo | tamaño (píxeles) |
mAPval 50-95 |
Velocidad CPU ONNX (ms) |
Velocidad T4 TensorRT10 (ms) |
parámetros (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
De los datos, los modelos YOLOv6-3.0 tienden a lograr puntuaciones mAP más altas para sus respectivos tamaños en GPU. Sin embargo, Ultralytics YOLOv5 demuestra un equilibrio superior en el rendimiento, particularmente en términos de velocidad de la CPU y eficiencia del modelo. Por ejemplo, YOLOv5n es significativamente más rápido en la CPU y tiene menos parámetros y FLOPs que cualquier modelo YOLOv6-3.0, lo que lo convierte en una excelente opción para aplicaciones ligeras y en tiempo real. Si bien YOLOv6-3.0l tiene el mAP más alto, YOLOv5x proporciona un mAP competitivo con un framework bien documentado y con soporte.
Metodología de Entrenamiento
Ambos modelos aprovechan las técnicas estándar de aprendizaje profundo para el entrenamiento en grandes conjuntos de datos como COCO. Ultralytics YOLOv5 se beneficia significativamente del ecosistema de Ultralytics, ofreciendo flujos de trabajo de entrenamiento optimizados, extensas guías, optimización AutoAnchor e integración con herramientas como Weights & Biases y ClearML para el seguimiento de experimentos. El entrenamiento de YOLOv6-3.0 sigue los procedimientos descritos en su repositorio, lo que puede requerir una configuración más manual y carecer de las herramientas MLOps integradas de la plataforma Ultralytics.
Casos de Uso Ideales
- Meituan YOLOv6-3.0: Un firme competidor cuando el objetivo principal es maximizar la precisión en GPU, sin dejar de exigir una inferencia rápida. Es adecuado para aplicaciones en las que las ligeras mejoras de mAP con respecto a YOLOv5 justifican una complejidad potencialmente mayor o un menor soporte del ecosistema, como en la automatización industrial especializada.
- Ultralytics YOLOv5: Muy recomendado para aplicaciones que exigen rendimiento en tiempo real y facilidad de implementación, especialmente en CPU o dispositivos periféricos. Su versatilidad, su amplio soporte y su eficiente uso de los recursos lo hacen ideal para la creación rápida de prototipos, aplicaciones móviles, videovigilancia y proyectos que se benefician de un ecosistema maduro y bien documentado.
Conclusión
Ultralytics YOLOv5 sigue siendo una opción destacada, particularmente valorada por su excepcional velocidad, facilidad de uso y ecosistema robusto. Proporciona un excelente equilibrio entre rendimiento y eficiencia, respaldado por una extensa documentación y el apoyo de la comunidad, lo que lo hace muy accesible para desarrolladores e investigadores.
YOLOv6-3.0 ofrece un rendimiento competitivo, particularmente en términos de mAP máximo para modelos más grandes en GPU. Sirve como una alternativa viable para los usuarios que priorizan la mayor precisión posible dentro del framework YOLO, especialmente para aplicaciones industriales.
Para aquellos que buscan los últimos avances, consideren explorar los modelos más nuevos de Ultralytics como YOLOv8, YOLOv9, YOLOv10 y YOLO11, que ofrecen mejoras adicionales en rendimiento, versatilidad y eficiencia. Los modelos especializados como RT-DETR también proporcionan ventajas únicas para casos de uso específicos.
Explore la gama completa de opciones en la Documentación de modelos de Ultralytics.