YOLOv9 vs YOLOv5: Un análisis técnico profundo sobre la detección de objetos moderna

El campo de la visión artificial ha experimentado un crecimiento tremendo, con la detección de objetos actuando como la base para innumerables aplicaciones industriales y de investigación. Elegir la arquitectura adecuada a menudo requiere una evaluación cuidadosa de la precisión media (mAP), la velocidad de inferencia y el consumo de memoria. En esta comparativa, exploramos dos modelos altamente influyentes: YOLOv9, famoso por sus avances arquitectónicos en la retención de información de gradiente, y Ultralytics YOLOv5, el estándar de la industria probado en batalla, conocido por su increíble facilidad de uso y su inigualable versatilidad de despliegue.

Innovaciones arquitectónicas y orígenes técnicos

Comprender los mecanismos subyacentes de estos dos modelos proporciona un contexto crítico para sus respectivos perfiles de rendimiento.

YOLOv9: Información de gradiente programable

Desarrollado por los investigadores Chien-Yao Wang y Hong-Yuan Mark Liao en el Instituto de Ciencias de la Información, Academia Sinica en Taiwán, YOLOv9 fue lanzado el 21 de febrero de 2024. El modelo introduce dos conceptos revolucionarios para abordar el cuello de botella de información común en las redes neuronales profundas: Programmable Gradient Information (PGI) y Generalized Efficient Layer Aggregation Network (GELAN).

Al utilizar PGI, YOLOv9 asegura que la información vital se retenga a lo largo del proceso de propagación hacia adelante, lo que conduce a actualizaciones de gradiente altamente precisas. Mientras tanto, la arquitectura GELAN maximiza la eficiencia de los parámetros, permitiendo que el modelo logre una precisión de vanguardia con una sobrecarga computacional sorprendentemente baja. Puedes explorar los detalles técnicos en el artículo de Arxiv sobre YOLOv9 o ver el repositorio de GitHub de YOLOv9.

Aprende más sobre YOLOv9

Ultralytics YOLOv5: El estándar de producción

Creado por Glenn Jocher y lanzado por Ultralytics el 26 de junio de 2020, YOLOv5 revolucionó la accesibilidad de la visión artificial. Como uno de los primeros modelos de detección de objetos creados de forma nativa en el framework PyTorch, evitó las complejidades del antiguo framework Darknet en C. YOLOv5 aprovecha un backbone CSPNet altamente optimizado y un cuello PANet, priorizando un equilibrio perfecto entre velocidad y precisión.

Su mayor logro, sin embargo, es su integración en el ecosistema más amplio de Ultralytics. YOLOv5 está altamente optimizado para una eficiencia de entrenamiento rápida y entornos de baja memoria, lo que lo hace increíblemente estable para despliegues en el borde (edge).

Más información sobre YOLOv5

Eficiencia de memoria

Al evaluar modelos para dispositivos de borde, recuerda que los modelos Ultralytics YOLO suelen requerir significativamente menos memoria GPU durante el entrenamiento y la inferencia en comparación con las pesadas arquitecturas basadas en Transformer.

Análisis de rendimiento: Velocidad vs. Precisión

Al diseñar un pipeline de visión artificial, los desarrolladores deben sopesar las ventajas y desventajas entre precisión y latencia. La siguiente tabla ilustra las diferencias de rendimiento en el dataset COCO estándar.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

Analizando las compensaciones

YOLOv9 establece un dominio absoluto en la precisión bruta. El YOLOv9e lleva los límites del mAP al 55,6%, utilizando sus capas GELAN para preservar detalles de grano fino. Esto lo convierte en una opción excepcional para imágenes médicas o escenarios que exigen una precisión rigurosa en objetos pequeños.

Por el contrario, YOLOv5 destaca en su velocidad de despliegue bruta y flexibilidad de hardware. El YOLOv5n (Nano) es famosamente ligero, ejecutando inferencias en solo 1,12 ms en una GPU T4 mediante TensorRT. Si estás realizando despliegues en dispositivos IoT restringidos, teléfonos móviles o Raspberry Pi, el consumo de memoria de YOLOv5 lo hace extraordinariamente fiable.

La ventaja del ecosistema de Ultralytics

Una consideración importante al seleccionar un modelo es el ecosistema de software que lo rodea. Aunque YOLOv9 proporciona puntos de referencia de investigación de primer nivel, utilizar ambos modelos a través de la moderna API de Python de Ultralytics cierra la brecha, ofreciendo a los desarrolladores una experiencia unificada y optimizada.

Facilidad de uso y exportación

Ultralytics abstrae complejos obstáculos de ingeniería. Funciones como la aumentación de datos automática y el ajuste de hiperparámetros se manejan desde el primer momento. Llevar los modelos a producción es igual de sencillo, con comandos de exportación integrados para convertir modelos a formatos ONNX, OpenVINO o TFLite.

Versatilidad de tareas

Aunque ambos modelos destacan en la detección de objetos, los modelos modernos de Ultralytics están diseñados para abordar una variedad de desafíos de visión artificial. El framework más amplio proporciona soporte nativo para clasificación de imágenes, segmentación de instancias, estimación de poses y cajas delimitadoras orientadas (OBB), permitiendo a los desarrolladores resolver múltiples problemas de visión sin cambiar de base de código.

Casos de uso y recomendaciones

Elegir entre YOLOv9 y YOLOv5 depende de los requisitos específicos de tu proyecto, las limitaciones de despliegue y las preferencias de ecosistema.

Cuándo elegir YOLOv9

YOLOv9 es una opción sólida para:

  • Investigación sobre cuellos de botella de información: Proyectos académicos que estudien las arquitecturas de información de gradiente programable (PGI) y la red de agregación de capas eficiente generalizada (GELAN).
  • Estudios de optimización del flujo de gradiente: Investigación centrada en comprender y mitigar la pérdida de información en las capas de redes profundas durante el entrenamiento.
  • Benchmarking de detección de alta precisión: Escenarios donde el sólido rendimiento de YOLOv9 en el benchmark COCO es necesario como punto de referencia para comparaciones arquitectónicas.

Cuándo elegir YOLOv5

YOLOv5 se recomienda para:

  • Sistemas de producción probados: Implementaciones existentes donde se valora la larga trayectoria de estabilidad de YOLOv5, su extensa documentación y el enorme soporte de la comunidad.
  • Entrenamiento con recursos limitados: Entornos con recursos de GPU limitados donde el eficiente pipeline de entrenamiento de YOLOv5 y sus menores requisitos de memoria son ventajosos.
  • Amplio soporte de formatos de exportación: Proyectos que requieren implementación en muchos formatos, incluyendo ONNX, TensorRT, CoreML y TFLite.

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.

Ejemplo de implementación

La belleza del ecosistema Ultralytics es que puedes cambiar entre un modelo YOLOv5 y un modelo YOLOv9 simplemente cambiando la cadena de pesos.

from ultralytics import YOLO

# Load a pretrained YOLOv9 model (swap to "yolov5s.pt" to use YOLOv5)
model = YOLO("yolov9c.pt")

# Train the model efficiently on a custom dataset
train_results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on new images
predictions = model.predict("https://ultralytics.com/images/zidane.jpg")

# Export to ONNX for seamless deployment
model.export(format="onnx")

Explorando arquitecturas más nuevas

Aunque YOLOv5 y YOLOv9 son modelos excelentes con ventajas distintas, el campo sigue avanzando. Los usuarios que exploren nuevos proyectos también pueden querer evaluar las últimas iteraciones de Ultralytics.

  • YOLO11: Una evolución poderosa y refinada del linaje YOLOv8 que ofrece un excelente equilibrio entre velocidad y precisión en todas las tareas de visión.
  • YOLO26: Lanzado en 2026, YOLO26 es la recomendación definitiva para pipelines modernos. Introduce un diseño integral sin NMS, eliminando completamente los cuellos de botella del procesamiento posterior. Con la eliminación de DFL (se elimina la pérdida focal de distribución para una exportación simplificada y una mejor compatibilidad con dispositivos de borde y bajo consumo), logra una inferencia en CPU hasta un 43% más rápida. La estabilidad del entrenamiento está sobrealimentada gracias al nuevo optimizador MuSGD, y ProgLoss + STAL ofrece funciones de pérdida mejoradas con mejoras notables en el reconocimiento de objetos pequeños, críticas para IoT, robótica e imágenes aéreas, lo que la convierte en la arquitectura más robusta tanto para despliegues en el borde como en la nube.

Para los equipos que gestionan grandes conjuntos de datos y pipelines de despliegue complejos, utilizar la Plataforma Ultralytics ofrece una solución sin código para entrenar, rastrear y desplegar estos modelos de vanguardia sin esfuerzo.

Comentarios