Ir al contenido

YOLOv7 vs YOLOv10: La Evolución de la Detección de Objetos en Tiempo Real

El campo de la visión artificial ha sido testigo de avances notables en los últimos años, con la familia de modelos YOLO (You Only Look Once) liderando la detección de objetos en tiempo real. Elegir la arquitectura adecuada para sus proyectos de visión artificial requiere una comprensión profunda de las opciones disponibles. En esta comparación técnica exhaustiva, exploraremos las diferencias clave entre dos arquitecturas emblemáticas: YOLOv7 y YOLOv10.

Introducción a los modelos

Ambos modelos representan hitos significativos en la historia de la inteligencia artificial, pero adoptan enfoques fundamentalmente diferentes para resolver los desafíos de la detección de objetos.

YOLOv7: El Pionero del Bag-of-Freebies

Lanzado el 6 de julio de 2022 por los investigadores Chien-Yao Wang, Alexey Bochkovskiy y Hong-Yuan Mark Liao del Institute of Information Science, Academia Sinica, YOLOv7 introdujo un cambio de paradigma en la forma en que se optimizan las redes neuronales. La investigación original, detallada en su artículo académico y alojada en su repositorio oficial de GitHub, se centró en gran medida en la reparametrización arquitectónica y en un "bag-of-freebies" entrenable.

YOLOv7 aprovecha una red de agregación de capas eficiente extendida (E-ELAN) para guiar a la red en el aprendizaje de características diversas sin destruir la ruta de gradiente original. Esto lo convierte en una opción robusta para benchmarks de investigación académica y sistemas que dependen en gran medida de GPU estándar de alta gama.

Más información sobre YOLOv7

YOLOv10: Detección de extremo a extremo en tiempo real

Desarrollado por Ao Wang y su equipo en la Universidad de Tsinghua, YOLOv10 fue lanzado el 23 de mayo de 2024. Como se detalla en su publicación de arxiv y el repositorio de GitHub de Tsinghua, este modelo elimina un cuello de botella de larga data en la detección de objetos: Non-Maximum Suppression (NMS).

YOLOv10 introdujo asignaciones duales consistentes para el entrenamiento sin NMS, alterando fundamentalmente el pipeline de postprocesamiento. Al implementar una estrategia de diseño de modelo holística impulsada por la eficiencia y la precisión, YOLOv10 reduce la redundancia computacional. Esto da como resultado una arquitectura diseñada específicamente para dispositivos de borde que requieren una latencia extremadamente baja.

Más información sobre YOLOv10

Arquitectura NMS-Free

La eliminación de la supresión no máxima (NMS) en YOLOv10 permite exportar todo el modelo como un único grafo computacional. Esto simplifica enormemente el despliegue utilizando entornos de ejecución como TensorRT u OpenVINO.

Comparación de rendimiento y métricas

Al analizar el rendimiento del modelo, es crucial evaluar las compensaciones entre precisión, velocidad y peso computacional. La siguiente tabla muestra cómo se comparan entre sí los diferentes tamaños de estos modelos.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

Analizando las Compensaciones

Las métricas anteriores revelan una marcada brecha generacional. Mientras que YOLOv7x ofrece un mAPval muy sólido del 53.1%, requiere 71.3M parámetros y 189.9B FLOPs. En contraste, YOLOv10l supera esa precisión (53.3% mAP) mientras requiere menos de la mitad de los parámetros (29.5M) y significativamente menos FLOPs (120.3B). Además, el YOLOv10n altamente optimizado proporciona una asombrosa velocidad de inferencia de 1.56ms, lo que lo hace ideal para análisis de video en tiempo real y aplicaciones móviles.

Casos de uso en el mundo real

Las diferencias arquitectónicas entre estos modelos dictan sus casos de uso óptimos.

¿Cuándo utilizar YOLOv7?

Debido a su rica representación de características, YOLOv7 destaca en entornos altamente complejos. Casos de uso como el monitoreo del flujo de tráfico en áreas urbanas densas, el análisis de imágenes satelitales o la identificación de defectos en la automatización de fabricación pesada se benefician de su robusta re-parametrización estructural. También es muy favorecido en entornos heredados ya profundamente integrados con pipelines específicos de PyTorch 1.12.

¿Cuándo utilizar YOLOv10?

El diseño ligero y NMS-free de YOLOv10 destaca en entornos con recursos limitados. Es altamente recomendado para dispositivos de computación de borde como NVIDIA Jetson Nano o Raspberry Pi. Su rendimiento de baja latencia lo hace perfecto para aplicaciones de movimiento rápido como análisis deportivo, navegación autónoma de drones y clasificación robótica de alta velocidad en cintas transportadoras.

La ventaja del ecosistema de Ultralytics

Aunque ambos modelos tienen fuertes raíces académicas, su verdadero potencial se desbloquea cuando se utilizan dentro de la Plataforma Ultralytics unificada. Desarrollar modelos de visión por computadora desde cero es notoriamente difícil, pero el ecosistema Ultralytics proporciona una experiencia inigualable para los ingenieros de aprendizaje automático.

  • Facilidad de Uso: La API de python de Ultralytics proporciona una interfaz unificada. Puede entrenar, validar y exportar modelos con solo unas pocas líneas de código, evitando las complejas pesadillas de dependencia asociadas con los repositorios académicos típicos.
  • Ecosistema bien mantenido: Ultralytics garantiza que el código subyacente se desarrolla activamente. Los usuarios se benefician de integraciones perfectas con herramientas populares de ML como Weights & Biases para el registro, o Hugging Face para demostraciones web rápidas.
  • Requisitos de Memoria: Los detectores de objetos basados en transformadores a menudo consumen cantidades masivas de memoria CUDA durante el entrenamiento. En contraste, los modelos Ultralytics YOLO requieren mucha menos memoria, lo que permite tamaños de lote mucho más grandes en hardware de consumo.
  • Versatilidad: La pipeline de Ultralytics no se restringe a las cajas delimitadoras estándar. Soporta sin problemas la estimación de pose, la segmentación de instancias y las cajas delimitadoras orientadas en familias de modelos compatibles como YOLO11 y YOLOv8.

Ejemplo de Entrenamiento Optimizado

Ejecutar un pipeline de entrenamiento con Ultralytics es notablemente sencillo. Independientemente de si se aprovecha la robustez histórica de YOLOv7 o la velocidad sin NMS de YOLOv10, la sintaxis se mantiene consistente:

from ultralytics import YOLO

# Load the preferred model (e.g., YOLOv10 Nano)
model = YOLO("yolov10n.pt")

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

# Run an inference prediction on a sample image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")

# Export to an edge-friendly format like ONNX
model.export(format="onnx")

Casos de Uso y Recomendaciones

Elegir entre YOLOv7 y YOLOv10 depende de los requisitos específicos de su proyecto, las limitaciones de implementación y las preferencias del ecosistema.

Cuándo elegir YOLOv7

YOLOv7 es una opción sólida para:

  • Evaluación Comparativa Académica: Reproducción de resultados de vanguardia de la era 2022 o estudio de los efectos de E-ELAN y las técnicas de bag-of-freebies entrenables.
  • Investigación sobre Reparametrización: Investigación de convoluciones reparametrizadas planificadas y estrategias de escalado de modelos compuestos.
  • Pipelines personalizados existentes: Proyectos con pipelines altamente personalizados construidos alrededor de la arquitectura específica de YOLOv7 que no pueden ser refactorizados fácilmente.

Cuándo elegir YOLOv10

YOLOv10 se recomienda para:

  • Detección en tiempo real sin NMS: Aplicaciones que se benefician de la detección de extremo a extremo sin supresión no máxima, reduciendo la complejidad de la implementación.
  • Compromisos Equilibrados Velocidad-Precisión: Proyectos que requieren un equilibrio sólido entre la velocidad de inferencia y la precisión de detección en diversas escalas de modelos.
  • Aplicaciones de Latencia Consistente: Escenarios de despliegue donde los tiempos de inferencia predecibles son críticos, como en robótica o sistemas autónomos.

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:

  • Implementación en el borde sin NMS: Aplicaciones que requieren inferencia consistente y de baja latencia sin la complejidad del postprocesamiento de supresión no máxima.
  • Entornos solo con CPU: Dispositivos sin aceleración de GPU dedicada, donde la inferencia hasta un 43% más rápida de YOLO26 en CPU proporciona una ventaja decisiva.
  • Detección de Objetos Pequeños: Escenarios desafiantes como imágenes aéreas de drones o análisis de sensores IoT, donde ProgLoss y STAL aumentan significativamente la precisión en objetos diminutos.

El futuro: Presentamos YOLO26

Aunque YOLOv7 y YOLOv10 son hitos impresionantes, la frontera de la IA siempre está avanzando. Lanzado en enero de 2026, Ultralytics YOLO26 es el nuevo estándar indiscutible de eficiencia y precisión en todos los escenarios de despliegue en edge y en la nube.

Si está iniciando un nuevo proyecto de visión por computadora hoy, YOLO26 es la arquitectura recomendada. Se basa en el legado de sus predecesores al incorporar varias innovaciones revolucionarias:

  • Diseño de extremo a extremo sin NMS: Inspirándose en YOLOv10, YOLO26 elimina de forma nativa el postprocesamiento NMS, asegurando una inferencia de latencia ultrabaja para la robótica determinista en tiempo real.
  • Hasta un 43% más rápido en inferencia de CPU: Al eliminar estratégicamente el módulo de Pérdida Focal de Distribución (DFL), YOLO26 acelera drásticamente la ejecución en hardware de computación en el borde sin GPU, lo que lo convierte en una potencia para dispositivos IoT.
  • Optimizador MuSGD: Inspirado en recientes innovaciones de entrenamiento de modelos de lenguaje grandes, YOLO26 incorpora un híbrido de SGD y Muon, estabilizando las rutas de entrenamiento y garantizando una convergencia más rápida.
  • ProgLoss + STAL: Estas funciones de pérdida avanzadas proporcionan mejoras notables en el reconocimiento de objetos pequeños, superando una debilidad histórica en las generaciones anteriores de YOLO.
  • Versatilidad Inigualable: YOLO26 incorpora optimizaciones nativas y específicas para cada tarea, como la Estimación de Log-Verosimilitud Residual (RLE) para el seguimiento de pose y pérdidas de ángulo especializadas para una detección precisa de OBB en imágenes aéreas.

Para ingenieros que buscan el equilibrio definitivo entre velocidad, precisión y simplicidad de despliegue, la transición de modelos heredados a YOLO26 proporciona una ventaja competitiva inmediata y medible.


Comentarios