Ir al contenido

YOLOv7 frente a YOLOv7: una inmersión profunda en la evolución de la detección de objetos

El panorama de la visión por ordenador se caracteriza por una rápida innovación, en la que los avances arquitectónicos redefinen continuamente los límites de la velocidad y la precisión. Dos hitos significativos en este camino son YOLOv9 y YOLOv7. Ambos modelos proceden de la investigación de Chien-Yao Wang y sus colegas, y representan distintas generaciones de la familia "You Only Look Once".

En YOLOv7 estableció el estándar para la detección de objetos en tiempo real tras su lanzamiento en 2022, YOLOv9 surgió en 2024 con nuevos mecanismos para abordar la pérdida de información en redes profundas. Esta comparativa explora sus especificaciones técnicas, diferencias arquitectónicas y aplicaciones prácticas para ayudar a los desarrolladores a seleccionar el modelo óptimo para sus necesidades.

Métricas de rendimiento y eficiencia

La evolución de YOLOv7 a YOLOv9 es más visible en el equilibrio entre el coste computacional y el rendimiento de la detección. YOLOv9 introduce mejoras significativas en la eficiencia, lo que le permite alcanzar una mayor precisión media (mAP) con menos parámetros en comparación con su predecesor.

Por ejemplo, el modelo YOLOv9m alcanza el mismo 51,4% de mAPval que YOLOv7l, pero utiliza casi la mitad de parámetros (20,0M frente a 36,9M) y un número significativamente menor de FLOPs. Esta eficiencia hace que YOLOv9 resulte especialmente atractivo para aplicaciones de Inteligencia Artificial en las que los recursos de hardware son limitados.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(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
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

YOLOv9: Información de gradiente programable

YOLOv9 representa un cambio de paradigma en la forma en que las redes neuronales profundas gestionan la transmisión de datos a través de las capas. Lanzado a principios de 2024, se centra específicamente en el problema del "cuello de botella de la información", en el que los datos se pierden al pasar por las capas sucesivas de una red profunda.

Autores: Chien-Yao Wang, Hong-Yuan Mark Liao
Organización:Instituto de Ciencias de la Información, Academia Sinica
Fecha: 2024-02-21
Arxiv:2402.13616
GitHub:WongKinYiu/yolov9
Docs:Ultralytics YOLOv9

Innovación arquitectónica

La principal innovación de YOLOv9 es la introducción de la información de gradiente programable (PGI). PGI proporciona un marco de supervisión auxiliar que garantiza que los gradientes se propagan de forma fiable a las capas iniciales, preservando la información de entrada esencial que, de otro modo, podría perderse durante la extracción de características.

PGI se complementa con la Red Generalizada de Agregación Eficiente de Capas (GELAN). Esta arquitectura permite a los desarrolladores apilar varios bloques computacionales (como CSP o ResBlocks) de forma flexible, optimizando los pesos del modelo para restricciones de hardware específicas sin sacrificar la precisión.

Fortalezas y Debilidades

  • Ventajas:
    • Precisión superior: Alcanza resultados de vanguardia en el conjunto de datosCOCO , con el modelo YOLOv9 alcanzando un 55,6% de mAP.
    • Eficiencia de los parámetros: Ofrece un rendimiento comparable al de modelos anteriores utilizando un número significativamente menor de parámetros, lo que reduce los requisitos de memoria durante la inferencia.
    • Preservación de la información: Las mejoras teóricas en el flujo de gradiente conducen a una mejor convergencia y representación de características.
  • Debilidades:
    • Complejidad del entrenamiento: Las ramas auxiliares utilizadas durante el entrenamiento (y eliminadas para la inferencia) pueden aumentar el uso de memoria de GPU durante la fase de entrenamiento en comparación con arquitecturas más sencillas.

Más información sobre YOLOv9

YOLOv7: El estándar de la bolsa de regalos

Antes de YOLOv9, YOLOv7 era el campeón de la familia YOLO . Introdujo refinamientos arquitectónicos centrados en optimizar el proceso de entrenamiento sin aumentar los costes de inferencia, un concepto conocido como "bag-of-freebies".

Autores: Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao
Organización: Instituto de Ciencias de la Información, Academia Sinica
Fecha: 2022-07-06
Arxiv:2207.02696
GitHub:WongKinYiu/yolov7
Docs:Ultralytics YOLOv7

Panorama arquitectónico

YOLOv7 introdujo E-ELAN (Extended Efficient Layer Aggregation Network), que controla las rutas de gradiente más corta y más larga para mejorar la capacidad de aprendizaje de la red. También utilizó técnicas de escalado de modelos que modifican simultáneamente la profundidad y la anchura de la red, garantizando una arquitectura óptima para distintos dispositivos de destino.

Fortalezas y Debilidades

  • Ventajas:
    • Fiabilidad probada: El amplio uso y validación por parte de la comunidad durante varios años lo convierten en una opción estable para los sistemas heredados.
    • Alta velocidad: Optimizado específicamente para la inferencia en tiempo real en hardware de GPU estándar.
  • Debilidades:
    • Menor eficacia: Requiere más parámetros y FLOPs para igualar los niveles de precisión que modelos más recientes como YOLOv9 o YOLO11 pueden alcanzar con arquitecturas más ligeras.
    • Herramientas antiguas: Carece de algunas de las integraciones nativas y características de facilidad de uso que se encuentran en el ecosistema moderno Ultralytics .

Más información sobre YOLOv7

Casos de uso y aplicaciones ideales

La elección entre estos dos modelos depende a menudo de las limitaciones específicas del entorno de despliegue y de la precisión requerida de la tarea.

Cuándo elegir YOLOv9

YOLOv9 es excelente para escenarios que exigen la máxima relación precisión-eficacia.

  • Navegación autónoma: En los coches autónomos, detectar objetos pequeños a grandes distancias es fundamental. La capacidad de YOLOv9 para conservar la información ayuda a reconocer peligros lejanos.
  • Imágenes médicas: Para tareas como la detección de tumores, en las que la falta de una detección positiva es crítica, la alta recuperación y precisión de YOLOv9 son beneficiosas.
  • Dispositivos Edge: El yolov9t ofrece una solución robusta para Dispositivos IoT como Raspberry Pis, que ofrecen una buena precisión con una sobrecarga computacional mínima.

Cuándo elegir YOLOv7

YOLOv7 sigue siendo relevante para los pipelines existentes que ya están optimizados para su arquitectura.

  • Sistemas heredados: Las líneas de fabricación industrial que han validado YOLOv7 para el control de calidad pueden preferir mantener la coherencia en lugar de actualizar inmediatamente.
  • Líneas de base de la investigación: Sirve como excelente punto de referencia para comparar las nuevas estrategias de detección con los estándares establecidos en la investigación académica.

Equilibrio del rendimiento con Ultralytics

Aunque YOLOv9 y YOLOv7 son potentes, los desarrolladores que busquen el equilibrio definitivo entre velocidad, precisión y experiencia del desarrollador deberían considerar Ultralytics YOLO11. YOLO11 integra las mejores características de las generaciones anteriores con una API simplificada, que permite la detección, la segmentación, la estimación de la pose y la clasificación en un único marco.

La ventaja Ultralytics

El uso de estos modelos dentro del ecosistema de Ultralytics ofrece claras ventajas sobre el uso de repositorios de investigación sin procesar. La APIPython Ultralytics Ultralytics abstrae el complejo código repetitivo, lo que permite a investigadores e ingenieros centrarse en los datos y los resultados.

  1. Facilidad de uso: Una interfaz unificada le permite cambiar entre YOLOv8, YOLOv9 y YOLO11 con una sola línea de código.
  2. Eficiencia del entrenamiento: Los modelos Ultralytics están optimizados para una convergencia más rápida, por lo que a menudo requieren menos datos de entrenamiento para alcanzar una alta precisión.
  3. Requisitos de memoria: El marco de trabajo está diseñado para minimizar el uso de memoriaCUDA , lo que permite el entrenamiento de lotes de mayor tamaño en hardware de consumo en comparación con los modelos Transformer de gran consumo de memoria.
  4. Versatilidad: Además de las simples cajas delimitadoras, el ecosistema admite tareas de segmentación de instancias, estimación de poses y cajas delimitadoras orientadas (OBB ), lo que lo convierte en una herramienta completa para diversos retos de IA.

Ejemplo de aplicación

Ejecutar estos modelos es sencillo con la biblioteca Ultralytics . El siguiente fragmento de código muestra cómo cargar un modelo preentrenado y ejecutar la inferencia en una imagen.

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")

# Run inference on a local image
results = model.predict("path/to/image.jpg", save=True, conf=0.5)

# Process results
for result in results:
    result.show()  # Display predictions

Para los interesados en entrenarse en conjuntos de datos personalizados, el proceso es igual de sencillo, utilizando las sólidas estrategias de ajuste de hiperparámetros y aumento de datos integradas en el marco.

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

Conclusión

Tanto YOLOv9 como YOLOv7 representan logros significativos en el campo de la visión por ordenador. YOLOv9 es el claro sucesor técnico, ya que ofrece una eficiencia de parámetros y una precisión superiores gracias a sus innovadoras arquitecturas PGI y GELAN. Es la opción recomendada para los usuarios que buscan un alto rendimiento del linaje de investigación específico de Wang et al.

Sin embargo, para los desarrolladores que buscan la experiencia de desarrollo de IA más holística, Ultralytics YOLO11 sigue siendo la mejor recomendación. Gracias a su mantenimiento activo, su extensa documentación y su amplia compatibilidad con tareas multimodales, YOLO11 garantiza que sus proyectos estén preparados para el futuro y la producción.

Explorar Otros Modelos

Para ampliar su comprensión del panorama de la detección de objetos, considere la posibilidad de explorar estos modelos y comparaciones relacionados:

  • YOLO11 vs. YOLOv9 - Compare el último modelo Ultralytics con YOLOv9.
  • YOLOv7 vs. YOLOv7 - Comprueba cómo se comporta la generación anterior.
  • RT-DETR vs. YOLOv9 - Un vistazo a la detección basada en transformadores frente a las CNN.
  • YOLOv10 - Explore el modelo de detección de objetos de extremo a extremo en tiempo real.
  • Ultralytics HUB - La forma más sencilla de entrenar y desplegar sus modelos.

Comentarios