YOLOv10 frente a YOLOv7: Avances en la arquitectura de detección de objetos en tiempo real
La evolución de la familia YOLO (You Only Look Once) ha ampliado constantemente los límites de la visión por ordenador, equilibrando velocidad y precisión para aplicaciones en tiempo real. Esta comparativa explora los cambios arquitectónicos y las diferencias de rendimiento entre YOLOv10un modelo de última generación lanzado por investigadores de la Universidad de Tsinghua, y YOLOv7un modelo muy influyente desarrollado por la Academia Sinica. Aunque ambos modelos han contribuido significativamente al campo de la detección de objetos, emplean estrategias distintas para alcanzar sus objetivos de rendimiento.
Evolución de las arquitecturas modelo
La transición de YOLOv10 a YOLOv10 marca un cambio de paradigma en la forma en que las redes neuronales gestionan el posprocesamiento y la integración de características.
YOLOv10: La revolución NMS
YOLOv10publicado el 23 de mayo de 2024 por Ao Wang, Hui Chen y otros de la Universidad de Tsinghua, introduce una innovadora estrategia de entrenamiento NMS. Tradicionalmente, los detectores de objetos se basan en la supresión no máxima (NMS ) para filtrar los cuadros delimitadores duplicados, lo que puede crear un cuello de botella en la latencia de la inferencia.
YOLOv10 utiliza asignaciones duales coherentes para un entrenamiento NMS, lo que permite al modelo predecir directamente instancias de objetos únicos. Combinado con un diseño de modelo holístico orientado a la eficiencia y la precisión, optimiza varios componentes -incluido el cabezal de clasificación ligero y el downsampling desacoplado de canal espacial- para reducir la redundancia computacional.
YOLOv7: optimizado para una bolsa de regalos entrenable
YOLOv7publicado el 6 de julio de 2022 por Chien-Yao Wang, Alexey Bochkovskiy y Hong-Yuan Mark Liao de la Academia Sinica, se centra en optimizar el proceso de entrenamiento sin aumentar el coste de inferencia. Introduce la Red de Agregación de Capas Eficiente Extendida (E-ELAN), que mejora la capacidad de aprendizaje de la red mediante el control de la ruta de gradiente.
YOLOv7 aprovecha en gran medida los métodos "Bag-of-Freebies", que mejoran la precisión durante el entrenamiento sin afectar a la velocidad de inferencia, y las técnicas de escalado de modelos que combinan parámetros de forma eficiente. Aunque es muy eficaz, su dependencia del postprocesamiento NMS tradicional significa que su latencia de extremo a extremo suele ser mayor que la de las nuevas arquitecturas NMS.
Comparación de prestaciones técnicas
Al evaluar estos modelos, surgen patrones distintos en cuanto a eficiencia y capacidad de detección bruta. En general, YOLOv7 ofrece una eficiencia superior, alcanzando mAP precisión media similar o superior con un número significativamente menor de parámetros y tiempos de inferencia más rápidos que YOLOv7.
En el cuadro que figura a continuación se describen los principales parámetros del conjunto de datosCOCO .
| 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 |
Eficiencia
Los datos ponen de relieve una ventaja fundamental de YOLOv10 en entornos con recursos limitados. YOLOv10m logra una precisión casi idéntica (51,3% mAP) a la de YOLOv7l (51,4% mAP), pero lo hace con menos de la mitad de parámetros (15,4M frente a 36,9M) y FLOPs significativamente menores (59,1B frente a 104,7B).
Latencia y rendimiento
La eliminación del paso NMS de YOLOv10 reduce drásticamente la variación de latencia que suele observarse en escenas con mucha gente. En aplicaciones como los vehículos autónomos o la vigilancia con drones, donde cada milisegundo cuenta, el tiempo de inferencia predecible de YOLOv10 proporciona una ventaja crítica para la seguridad. YOLOv7 sigue siendo competitivo en cuanto a rendimiento en GPUs de gama alta, pero consume más memoria y cálculo para lograr resultados comparables.
Casos de uso y aplicaciones
Las diferencias arquitectónicas dictan los escenarios de despliegue ideales para cada modelo.
Escenarios ideales para YOLOv10
- Edge AI: Debido a su bajo número de parámetros y FLOPs, YOLOv10 es perfecto para dispositivos como Raspberry Pi o NVIDIA Jetson.
- Análisis de vídeo en tiempo real: La alta velocidad de inferencia admite el procesamiento a altas FPS para la gestión del tráfico y el análisis de comercios.
- Robótica: Una menor latencia se traduce en tiempos de reacción más rápidos para las tareas de navegación y manipulación de robots.
Escenarios ideales para YOLOv7
- Sistemas heredados: Los proyectos ya integrados con la base de código YOLOv7 pueden encontrarla lo suficientemente estable como para mantenerla sin refactorización inmediata.
- Detección de propósito general: Para las implantaciones del lado del servidor en las que abunda la VRAM, los modelos más grandes de YOLOv7 siguen proporcionando sólidas capacidades de detección, aunque son menos eficientes que alternativas más recientes como YOLO11.
La ventaja Ultralytics
Aunque ambos modelos son potentes, aprovechar el ecosistema de Ultralytics ofrece claras ventajas a desarrolladores e investigadores. El marco de Ultralytics estandariza la interfaz de formación, validación y despliegue, lo que facilita considerablemente el cambio entre modelos y la evaluación comparativa del rendimiento.
Facilidad de uso y eficacia de la formación
Uno de los principales obstáculos del aprendizaje profundo es la complejidad de los procesos de formación. Los modelos Ultralytics , incluidos YOLOv10 y YOLO11utilizan una API Python simplificada que gestiona el aumento de datos, el ajuste de hiperparámetros y la exportación de forma automática.
- API sencilla: Entrene un modelo en unas pocas líneas de código.
- Eficiencia de memoria: Las optimizaciones Ultralytics suelen reducir el uso de memoria CUDA durante el entrenamiento en comparación con las implementaciones sin procesar.
- Ponderaciones preentrenadas: Acceso a modelos preentrenados de alta calidad en ImageNet y COCO acelera el aprendizaje por transferencia.
Versatilidad en las tareas
Los modelos modernos Ultralytics van más allá de la simple detección de cuadros delimitadores. Permiten la segmentación de instancias, la estimación de poses, la detección de objetos orientados (OBB) y la clasificación dentro del mismo marco. Esta versatilidad es una ventaja clave sobre los antiguos repositorios independientes.
Ejemplo de código: Ejecución de YOLOv10 con Ultralytics
El siguiente ejemplo demuestra la sencillez de uso de la API de Ultralytics para cargar un modelo YOLOv10 preentrenado y ejecutar la inferencia. Esta facilidad de uso contrasta con la configuración más manual que suelen requerir arquitecturas más antiguas como YOLOv7.
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
Conclusión y recomendación
Para nuevos proyectos, YOLOv10 o el aún más avanzado YOLO11 son las opciones recomendadas. La arquitectura NMS de YOLOv10 ofrece un equilibrio superior entre velocidad y precisión, lo que la hace muy adaptable a las necesidades modernas de edge computing. Soluciona los cuellos de botella de latencia de las generaciones anteriores al tiempo que reduce la huella computacional.
Aunque YOLOv7 sigue siendo un hito respetado en la historia de la visión por ordenador, su arquitectura es menos eficiente según los estándares actuales. Los desarrolladores que busquen el mejor rendimiento, mantenimiento a largo plazo y facilidad de despliegue encontrarán en el ecosistema deUltralytics -consus continuas actualizaciones y su amplio soporte de herramientas- el entorno más productivo para crear soluciones de IA de visión.
Más información
- Comparación entre YOLOv10 y YOLOv8
- Comparación entre YOLOv10 y YOLOv9
- YOLO11: lo último en detección en tiempo real
- Guía para exportar modelos a TensorRT