YOLOv10 vs YOLOv7: Una comparación técnica detallada
Elegir el modelo de detección de objetos adecuado es crucial para los proyectos de visión artificial, ya que influye en el rendimiento, la velocidad y el uso de recursos. Esta página proporciona una comparación técnica entre YOLOv10 y YOLOv7, dos modelos importantes de la familia You Only Look Once (YOLO), para ayudarle a seleccionar el que mejor se adapte a sus necesidades. Profundizaremos en sus arquitecturas, métricas de rendimiento y casos de uso ideales.
YOLOv10
YOLOv10, presentada en mayo de 2024 por investigadores de la Universidad de Tsinghua, representa un avance significativo en la detección de objetos en tiempo real. Su principal innovación es lograr la detección de objetos de extremo a extremo eliminando la necesidad de la Supresión No Máxima (NMS) durante la inferencia. Este avance reduce la sobrecarga computacional y disminuye la latencia de inferencia, haciendo que la implementación sea más eficiente.
Detalles técnicos:
- 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/
Arquitectura y Características Clave
YOLOv10 introduce varias innovaciones arquitectónicas destinadas a optimizar el equilibrio entre velocidad y precisión:
- Entrenamiento sin NMS: Al utilizar asignaciones duales consistentes para la asignación de etiquetas, YOLOv10 evita predicciones redundantes y elimina la necesidad del paso de post-procesamiento NMS. Esto simplifica el proceso de implementación y hace que el modelo sea verdaderamente de extremo a extremo.
- Diseño holístico impulsado por la eficiencia y la precisión: La arquitectura del modelo se optimizó de manera integral tanto para la eficiencia como para el rendimiento. Esto incluye la introducción de un encabezado de clasificación ligero y el uso de un submuestreo desacoplado espacial-canal para reducir la redundancia computacional al tiempo que se mejora la capacidad del modelo.
- Enfoque sin anclajes: Al igual que otros modelos YOLO modernos, adopta un diseño de detector sin anclajes, lo que simplifica el encabezado de detección y mejora la generalización.
- Integración perfecta con Ultralytics: YOLOv10 está completamente integrado en el ecosistema de Ultralytics, beneficiándose de una experiencia de usuario optimizada con una simple API de python y potentes comandos CLI. Esto hace que el entrenamiento, la validación y el despliegue sean excepcionalmente sencillos.
Fortalezas
- Eficiencia de última generación: El diseño sin NMS y las optimizaciones arquitectónicas conducen a velocidades de inferencia más rápidas y a una latencia significativamente menor, lo cual es fundamental para las aplicaciones en tiempo real.
- Precisión competitiva: YOLOv10 mantiene una alta precisión al tiempo que reduce drásticamente el tamaño del modelo y el coste computacional en comparación con sus predecesores.
- Implementación Simplificada: La eliminación de NMS crea un verdadero pipeline de detección de extremo a extremo, lo que facilita su implementación, especialmente en dispositivos edge.
- Excelente escalabilidad: Ofrece una gama de modelos desde Nano (N) hasta Extra-large (X), que se adaptan a diversas necesidades de rendimiento, desde hardware de borde con recursos limitados hasta potentes servidores en la nube.
Debilidades
- Modelo más reciente: Al ser una versión reciente, el soporte de la comunidad y el número de integraciones de terceros pueden ser menos extensos en comparación con modelos más establecidos como YOLOv7 o Ultralytics YOLOv8.
YOLOv7
YOLOv7, lanzado en julio de 2022, rápidamente estableció un nuevo estándar para la detección de objetos con su notable equilibrio entre velocidad y precisión. Desarrollado por investigadores del Instituto de Ciencias de la Información, Academia Sinica, introdujo varias mejoras arquitectónicas y estrategias de entrenamiento conocidas como "trainable bag-of-freebies" para impulsar el rendimiento sin aumentar los costes de inferencia.
Detalles técnicos:
- Autores: Chien-Yao Wang, Alexey Bochkovskiy y Hong-Yuan Mark Liao
- Organización: Instituto de Ciencias de la Información, Academia Sinica, Taiwán
- Fecha: 2022-07-06
- Arxiv: https://arxiv.org/abs/2207.02696
- GitHub: https://github.com/WongKinYiu/yolov7
- Documentación: https://docs.ultralytics.com/models/yolov7/
Arquitectura y Características Clave
La arquitectura de YOLOv7 incorpora varias mejoras clave que superaron los límites de la detección de objetos en tiempo real en el momento de su lanzamiento:
- Redes de Agregación de Capas Eficiente Extendida (E-ELAN): Esta estructura de red avanzada mejora la capacidad del modelo para aprender diversas características mientras mantiene un flujo de gradiente eficiente, lo que conduce a una mejor precisión y una convergencia más rápida.
- Escalado de modelos para modelos basados en concatenación: YOLOv7 introdujo métodos de escalado compuesto que ajustan de forma inteligente la profundidad y el ancho del modelo para optimizar el rendimiento en diferentes presupuestos computacionales.
- Bag-of-Freebies entrenable: Aprovecha técnicas de entrenamiento avanzadas, como el uso de un cabezal auxiliar con guía de lo grueso a lo fino, para mejorar la precisión sin añadir ninguna sobrecarga durante la inferencia.
Fortalezas
- mAP alto: Ofrece una excelente precisión en la detección de objetos, lo que lo convierte en una opción sólida para aplicaciones en las que la precisión es primordial.
- Inferencia rápida: Ofrece velocidades de inferencia competitivas que son adecuadas para muchas tareas en tiempo real, especialmente en hardware de GPU.
- Bien Establecido: Habiendo estado disponible durante más tiempo, YOLOv7 se beneficia de una mayor base comunitaria, más tutoriales y una adopción más amplia en varios proyectos.
Debilidades
- Dependencia de NMS: A diferencia de YOLOv10, YOLOv7 se basa en el paso de post-procesamiento NMS, lo que se suma a la latencia de inferencia general y complica el pipeline de implementación.
- Menos eficiente: En comparación con YOLOv10, los modelos YOLOv7 generalmente tienen más parámetros y FLOPs para un nivel de precisión similar, lo que los hace menos eficientes.
Comparación de rendimiento: YOLOv10 vs YOLOv7
Al comparar el rendimiento, YOLOv10 demuestra una clara ventaja en eficiencia. La comparación más directa es entre YOLOv10-M e YOLOv7-L. Como se muestra en la tabla a continuación, YOLOv10-M logra un mAPval casi idéntico del 51.3% en comparación con el 51.4% de YOLOv7-L. Sin embargo, YOLOv10-M es significativamente más eficiente: es más rápido (5.48ms vs. 6.84ms en TensorRT), tiene menos de la mitad de los parámetros (15.4M vs. 36.9M) y requiere muchos menos recursos computacionales (59.1B FLOPs vs. 104.7B FLOPs). Esto destaca el diseño arquitectónico superior de YOLOv10, que ofrece una precisión comparable con mucha mayor eficiencia.
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 |
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Conclusión
Tanto YOLOv10 como YOLOv7 son modelos de detección de objetos potentes, pero YOLOv10 representa el siguiente paso en la eficiencia de la detección en tiempo real. Su arquitectura sin NMS proporciona una verdadera solución de extremo a extremo que es más rápida, ligera y fácil de implementar sin sacrificar la precisión. Para los nuevos proyectos, especialmente aquellos dirigidos a la IA en el borde o que requieren una latencia mínima, YOLOv10 es la opción recomendada.
Si bien YOLOv7 sigue siendo un modelo capaz, su dependencia de NMS y su arquitectura menos eficiente lo hacen más adecuado para proyectos heredados o escenarios donde sus amplios recursos comunitarios son una consideración principal. Para los desarrolladores que buscan el mejor rendimiento, facilidad de uso y un ecosistema integral, los modelos de Ultralytics como YOLOv10 ofrecen una experiencia superior. La integración con Ultralytics HUB simplifica aún más el entrenamiento y la implementación, haciendo que la visión artificial avanzada sea más accesible que nunca.
Explorar Otros Modelos
Para una exploración más exhaustiva, considere estos otros modelos de última generación disponibles en la documentación de Ultralytics:
- Ultralytics YOLOv8: Un modelo altamente versátil que destaca en múltiples tareas de visión, incluyendo la detección, la segmentación y la estimación de poses.
- YOLOv9: Introduce innovaciones como la Información de Gradiente Programable (PGI) para abordar la pérdida de información en redes profundas.
- YOLO11: El último modelo oficial de Ultralytics, que ofrece un rendimiento de última generación, soporte multi-tarea y una facilidad de uso sin igual.