YOLOv9 frente a YOLOv7#
La evolución de la detección de objetos en tiempo real ha estado impulsada por la búsqueda constante de un equilibrio entre la eficiencia computacional y una alta precisión. Dos arquitecturas destacadas de este recorrido son YOLOv9 y YOLOv7, ambas desarrolladas por investigadores del Institute of Information Science de Academia Sinica, en Taiwán. Mientras que YOLOv7 introdujo las revolucionarias técnicas gratuitas entrenables, el más reciente YOLOv9 aborda directamente los cuellos de botella de información del aprendizaje profundo.
Esta completa comparación técnica analiza las diferencias arquitectónicas, las métricas de rendimiento y los escenarios de implementación ideales para ambos modelos, ayudando a ingenieros de ML e investigadores a elegir la herramienta adecuada para sus pipelines de visión artificial.
Comparación de rendimiento y métricas#
Al comparar estos modelos, el rendimiento bruto y la eficiencia son factores críticos. La siguiente tabla detalla la precisión media promedio (mAP) y los requisitos computacionales de las pruebas comparativas estándar con 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) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Observa cómo YOLOv9c logra aproximadamente la misma precisión (53.0 mAP) que YOLOv7x (53.1 mAP), utilizando a la vez muchos menos parámetros (25.3M frente a 71.3M) y FLOPs. Esto demuestra las mejoras en el equilibrio de rendimiento de las arquitecturas modernas.
YOLOv9: resolviendo el cuello de botella de información#
Presentado a principios de 2024, YOLOv9 cambió fundamentalmente la forma en que las redes neuronales profundas conservan los datos a través de sus capas.
- Autores: Chien-Yao Wang y Hong-Yuan Mark Liao
- Organización: Institute of Information Science, Academia Sinica
- Fecha: 21 de febrero de 2024
- Recursos: Artículo de Arxiv | Repositorio de GitHub
Innovaciones arquitectónicas#
YOLOv9 introduce la red generalizada de agregación eficiente de capas (GELAN) y la información de gradiente programable (PGI). GELAN combina los puntos fuertes de CSPNet y ELAN para optimizar la eficiencia de los parámetros y el coste computacional, garantizando una alta precisión con un menor número de parámetros. PGI es un marco de supervisión auxiliar diseñado para evitar la pérdida de datos en redes profundas y generar gradientes fiables para actualizar los pesos durante el entrenamiento.
Puntos fuertes y limitaciones#
El principal punto fuerte de YOLOv9 es su capacidad para extraer características sutiles sin una sobrecarga computacional enorme, lo que lo hace extremadamente adecuado para tareas que requieren una gran fidelidad de características, como el análisis de imágenes médicas. Sin embargo, la compleja estructura PGI durante el entrenamiento puede dificultar las modificaciones arquitectónicas personalizadas a los principiantes en comparación con marcos más unificados.
YOLOv7: pionero de las técnicas gratuitas#
Lanzado en 2022, YOLOv7 estableció un nuevo referente de lo que era posible en hardware de consumo al introducir innovaciones estructurales que aumentaron considerablemente la velocidad de la inferencia en tiempo real.
- Autores: Chien-Yao Wang, Alexey Bochkovskiy y Hong-Yuan Mark Liao
- Organización: Institute of Information Science, Academia Sinica
- Fecha: 6 de julio de 2022
- Recursos: Artículo de Arxiv | Repositorio de GitHub
Innovaciones arquitectónicas#
La principal aportación de YOLOv7 es la red extendida de agregación eficiente de capas (E-ELAN). Esta arquitectura permite al modelo aprender continuamente características más diversas. Además, YOLOv7 emplea las «técnicas gratuitas entrenables»: técnicas como las convoluciones reparametrizadas planificadas y la asignación dinámica de etiquetas. Estos métodos mejoran la precisión del modelo durante el entrenamiento sin añadir costes de inferencia durante la implementación.
Puntos fuertes y limitaciones#
YOLOv7 está altamente optimizado para el procesamiento periférico en tiempo real y sigue siendo un elemento habitual en sistemas heredados y entornos CUDA antiguos. Su principal limitación actual es el mayor tamaño de sus parámetros en comparación con los modelos más recientes. Como muestra la tabla de rendimiento, para alcanzar una precisión de primer nivel se necesita el modelo YOLOv7x, más pesado, que requiere mucha más memoria de GPU que las arquitecturas modernas equivalentes.
La ventaja de Ultralytics: implementación optimizada#
Aunque los repositorios de investigación originales de YOLOv9 y YOLOv7 proporcionan excelentes bases académicas, implementar estos modelos en entornos de producción puede ser complejo. Integrarlos mediante el paquete ultralytics ofrece una facilidad de uso incomparable.
Al utilizar la plataforma de Ultralytics integrada, los desarrolladores se benefician de un ecosistema bien mantenido que incluye una API de Python intuitiva, una comunidad activa y un sólido seguimiento de experimentos.
Preparado para el futuro con YOLO26#
Si vas a iniciar un nuevo proyecto de visión artificial, te recomendamos encarecidamente explorar el recién lanzado YOLO26 en lugar de YOLOv9 y YOLOv7. Lanzado como el nuevo estándar de vanguardia, YOLO26 incorpora avances revolucionarios:
- Diseño integral sin NMS: elimina el posprocesamiento de supresión de no máximos y reduce drásticamente la complejidad y la latencia de la implementación.
- Inferencia en CPU hasta un 43 % más rápida: optimizada para entornos de computación periférica, lo que garantiza que tu aplicación funcione sin problemas incluso sin GPU dedicadas.
- Optimizador MuSGD: un optimizador híbrido inspirado en el entrenamiento de LLM que ofrece una convergencia muy estable y reduce el tiempo de entrenamiento.
- Eliminación de DFL: simplifica la exportación del modelo al eliminar Distribution Focal Loss y mejora la compatibilidad con dispositivos móviles de bajo consumo.
- ProgLoss + STAL: mejora drásticamente el rendimiento en la detección de objetos pequeños, lo que lo convierte en la opción principal para imágenes aéreas y vigilancia.
Otras alternativas populares del ecosistema son Ultralytics YOLOv8 y YOLO11, que ofrecen una enorme versatilidad en tareas como la segmentación de instancias y la estimación de poses.
Ejemplo de implementación#
Entrenar y exportar cualquiera de estas arquitecturas es increíblemente sencillo con la API unificada. El código siguiente demuestra la eficiencia del entrenamiento optimizada característica de las herramientas de Ultralytics.
from ultralytics import YOLO
# Initialize YOLOv9 or the recommended YOLO26 model
model = YOLO("yolov9c.pt") # Swap with "yolo26n.pt" for faster edge performance
# Train on a custom dataset with built-in data augmentation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, batch=16, device=0)
# Export the trained model to ONNX format for deployment
model.export(format="onnx")Al entrenar con hardware de consumo, la eficiencia de la memoria es crucial. Las implementaciones de Ultralytics de YOLOv9 y YOLO26 están altamente optimizadas para reducir los picos de VRAM, a diferencia de los modelos basados en Transformer (como RT-DETR), que suelen sufrir una expansión excesiva de memoria durante el entrenamiento.
Aplicaciones en el mundo real y casos de uso ideales#
La elección entre estas arquitecturas suele depender de las limitaciones específicas de tu entorno de producción.
Cuándo usar YOLOv9: YOLOv9 destaca en entornos donde es necesario conservar los detalles más pequeños. Su sólida extracción de características lo hace ideal para el análisis minorista, como contar productos muy juntos en estanterías, o para aplicaciones agrícolas en las que es fundamental identificar enfermedades de los cultivos en sus primeras fases en hojas pequeñas.
Cuándo usar YOLOv7: YOLOv7 sigue siendo una opción sólida para pipelines de implementación heredados. Si lo vas a integrar en sistemas de hardware antiguos, como determinadas generaciones de Google Coral Edge TPU, la sencilla arquitectura CNN de YOLOv7 puede ser más fácil de compilar que las ramas de gradiente más complejas de los modelos recientes.
Cuándo usar YOLO26 (recomendado): Para cualquier implementación moderna —desde drones autónomos hasta la gestión del tráfico en ciudades inteligentes—, YOLO26 es la opción superior. Su arquitectura sin NMS garantiza tiempos de inferencia deterministas, algo esencial para la robótica crítica para la seguridad, mientras que su alta precisión supera a YOLOv9 y YOLOv7 en todos los aspectos.