Comparación de modelos: YOLOv8 frente a YOLOv8 para la detección de objetos
En el panorama en rápida evolución de la visión por ordenador, la familia de modelos "You Only Look Once"YOLO) ha establecido sistemáticamente el estándar para la detección de objetos en tiempo real. Dos hitos significativos en este linaje son YOLOv7 y Ultralytics YOLOv8. Aunque ambos modelos superaron los límites de precisión y velocidad en su lanzamiento, representan diferentes filosofías de diseño y madurez del ecosistema.
Esta guía ofrece una comparación técnica detallada para ayudar a desarrolladores e investigadores a elegir la herramienta adecuada para sus necesidades específicas, desde la investigación académica hasta la implantación en producción.
Comparación de métricas de rendimiento
La siguiente tabla presenta una comparación directa de las métricas de rendimiento entre los modelos clave YOLOv7 y YOLOv8 . YOLOv8 demuestra una ventaja significativa en la velocidad de inferencia y un recuento de parámetros favorable, sobre todo en las variantes de modelos más pequeños, que son fundamentales para las aplicaciones de IA de borde.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | parámetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
YOLOv7: La evolución de la "bolsa de regalos
Lanzado en julio de 2022, YOLOv7 fue desarrollado principalmente por los autores de YOLOv4 y YOLOR. Introdujo varias innovaciones arquitectónicas destinadas a optimizar el proceso de entrenamiento sin aumentar los costes de inferencia, un concepto denominado "trainable bag-of-freebies".
- 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
- Enlaces:Artículo Arxiv | Repositorio GitHub
Principales características arquitectónicas
YOLOv7 introdujo la Red de Agregación de Capas Eficiente Ampliada (E-ELAN). Esta arquitectura controla las rutas de gradiente más cortas y más largas para permitir que la red aprenda características más diversas. Además, utilizó técnicas de escalado de modelos que modifican simultáneamente la profundidad y la anchura de la arquitectura, garantizando un rendimiento óptimo en diferentes tamaños.
A pesar de sus impresionantes puntos de referencia en el momento de su lanzamiento, YOLOv7 se centra principalmente en la detección de objetos, con un soporte menos integrado para otras tareas en comparación con los marcos más recientes.
Ultralytics YOLOv8: marco unificado y arquitectura moderna
Lanzado a principios de 2023 por Ultralytics, YOLOv8 representó una importante revisión de la arquitectura de YOLO . Se diseñó no solo como un modelo, sino como un marco unificado capaz de realizar a la perfección la detección, la segmentación de instancias, la estimación de poses y la clasificación.
- Autores: Glenn Jocher, Ayush Chaurasia y Jing Qiu
- Organización: Ultralytics
- Fecha: 2023-01-10
- Enlaces:Ultralytics Docs | Repositorio GitHub
Innovaciones arquitectónicas
YOLOv7 se alejó de la detección basada en anclajes utilizada en versiones anteriores (incluida YOLOv7) para adoptar un mecanismo de detección sin anclajes. Este cambio simplifica el proceso de entrenamiento al eliminar la necesidad de calcular cajas de anclaje, lo que hace que el modelo sea más robusto frente a variaciones en la forma y el tamaño de los objetos.
La columna vertebral se actualizó para utilizar los módulos C2f (cuello de botella parcial de etapas cruzadas con dos circunvoluciones), que sustituyen a los módulos C3 de YOLOv5. Este cambio mejora el flujo de gradiente y permite que el modelo siga siendo ligero a la vez que captura información más rica sobre las características.
Comparación técnica detallada
Basado en anclajes frente a sin anclajes
Una de las diferencias más definitorias es el cabezal de detección. YOLOv7 se basa en cajas de anclaje, formas predefinidas que el modelo intenta hacer coincidir con los objetos. Aunque es eficaz, requiere el ajuste de hiperparámetros para conjuntos de datos personalizados.
En cambio, YOLOv8 utiliza un enfoque sin anclajes, prediciendo directamente el centro de un objeto. Esto reduce el número de predicciones de cajas, lo que acelera la Supresión no máximaNMS) y facilita el entrenamiento del modelo en datos diversos sin configuración manual de anclajes.
Eficacia del entrenamiento y uso de memoria
Los modelos Ultralytics son famosos por su eficiencia de ingeniería. YOLOv8 utiliza una estrategia inteligente de aumento de datos que desactiva el aumento del mosaico durante las últimas épocas del entrenamiento. Esta técnica estabiliza la pérdida de entrenamiento y mejora la precisión.
Eficiencia de la memoria
Una ventaja significativa de Ultralytics YOLOv8 frente a arquitecturas complejas como los transformadores (p. ej, RT-DETR) es su menor necesidad de memoria CUDA . Esto permite a los usuarios entrenar lotes más grandes en GPU de consumo, democratizando el acceso al entrenamiento de modelos de última generación.
Ecosistema y facilidad de uso
Mientras que YOLOv7 es un potente repositorio de investigación, Ultralytics YOLOv8 ofrece una experiencia de producto pulida. El ecosistema Ultralytics proporciona:
- API racionalizada: Una interfaz Python coherente para todas las tareas.
- Despliegue: Exportación con un solo clic a formatos como ONNX, TensorRT, CoreML y TFLite a través del modo Exportar.
- Apoyo de la comunidad: Una comunidad Discord activa y actualizaciones frecuentes que garantizan la compatibilidad con las últimas versiones PyTorch .
Comparación de códigos
La brecha de usabilidad es evidente cuando se compara el código necesario para ejecutar la inferencia. Ultralytics da prioridad a un enfoque de bajo código, lo que permite a los desarrolladores integrar la IA de visión en las aplicaciones con una sobrecarga mínima.
Ejecutar YOLOv8 con Python
from ultralytics import YOLO
# Load a pre-trained YOLOv8 model
model = YOLO("yolov8n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results
for result in results:
result.show()
Aplicación de CLI
YOLOv8 también puede ejecutarse directamente desde la línea de comandos, una función que simplifica la integración de canalizaciones y las pruebas rápidas.
# Detect objects in an image using the nano model
yolo predict model=yolov8n.pt source='https://ultralytics.com/images/zidane.jpg' imgsz=640
Casos de Uso Ideales
Cuándo utilizar YOLOv7
YOLOv7 sigue siendo una opción viable para los investigadores que realizan pruebas comparativas con los estándares 2022/2023 o que mantienen sistemas heredados construidos específicamente en torno a la arquitectura de estilo Darknet. Su enfoque "bag-of-freebies" ofrece perspectivas interesantes para quienes estudian estrategias de optimización de redes neuronales.
Cuándo utilizar YOLOv8
YOLOv8 es la opción recomendada para la gran mayoría de los nuevos proyectos, entre ellos:
- Aplicaciones en tiempo real: El modelo YOLOv8n (nano) ofrece velocidades increíbles (aprox. 80 ms en CPU), por lo que es perfecto para aplicaciones móviles y sistemas integrados.
- Procesos multitarea: Los proyectos que requieren estimación de la pose o segmentación junto con la detección pueden utilizar una única API.
- Despliegue comercial: La sólida compatibilidad de exportación garantiza que los modelos entrenados en PyTorch puedan desplegarse eficientemente en entornos de producción utilizando TensorRT u OpenVINO.
Conclusión
Mientras que YOLOv7 realizó importantes contribuciones al campo de la visión por ordenador mediante la optimización de los parámetros entrenables, Ultralytics YOLOv8 representa el estándar moderno para el desarrollo práctico de la IA.
El equilibrio superior entre velocidad y precisión de YOLOv8, combinado con un diseño sin anclajes y el amplio ecosistema de soporte de Ultralytics , lo hace más accesible para los principiantes y más potente para los expertos. Para los desarrolladores que deseen crear aplicaciones de visión escalables, mantenibles y de alto rendimiento, YOLOv8sus sucesores como YOLO11-ofrecen el camino más convincente hacia el futuro.
Lecturas adicionales
Los interesados en explorar los últimos avances en detección de objetos pueden consultar estos modelos relacionados:
- YOLO11: la última iteración de Ultralytics, que perfecciona la arquitectura para lograr una eficacia aún mayor.
- YOLOv6: otro modelo sin anclajes centrado en aplicaciones industriales.
- YOLOv9: se centra en la información de gradiente programable (PGI) para el entrenamiento de redes profundas.