YOLOv10 frente a YOLOv8#
La evolución de la detección de objetos en tiempo real ha traído consigo una rápida sucesión de arquitecturas revolucionarias, cada una de las cuales intenta ampliar los límites de la precisión, la velocidad de inferencia y la eficiencia computacional. En esta guía técnica completa, comparamos dos hitos importantes del panorama de la visión artificial: YOLOv10 y Ultralytics YOLOv8. YOLOv8 estableció un estándar muy versátil y listo para producción, mientras que YOLOv10 introdujo cambios arquitectónicos destinados específicamente a eliminar los cuellos de botella del posprocesamiento.
Comprender las ventajas, arquitecturas y métricas de rendimiento distintivas de estos modelos es fundamental para los desarrolladores e investigadores que quieren implementar soluciones de IA de visión de última generación en situaciones reales.
Especificaciones técnicas y autoría#
Para evaluar estos modelos de forma eficaz, conviene conocer su origen y el objetivo principal de sus respectivos equipos de investigación.
YOLOv10: eficiencia integral#
Desarrollado por investigadores de la Universidad de Tsinghua, YOLOv10 se diseñó para abordar la sobrecarga computacional que introducen los pasos de posprocesamiento en las generaciones anteriores.
- Autores: Ao Wang, Hui Chen, Lihao Liu, et al.
- Organización: Universidad de Tsinghua
- Fecha: 2024-05-23
- Arxiv: 2405.14458
- GitHub: THU-MIG/yolov10
- Documentación: Documentación de YOLOv10
Ultralytics YOLOv8: el estándar versátil#
Lanzado a principios de 2023, YOLOv8 se convirtió rápidamente en un referente del sector gracias a su arquitectura robusta y a su integración sin igual en el ecosistema de aprendizaje automático.
- Autores: Glenn Jocher, Ayush Chaurasia y Jing Qiu
- Organización: Ultralytics
- Fecha: 2023-01-10
- GitHub: ultralytics/ultralytics
Innovaciones arquitectónicas#
Ambos modelos aportan mejoras significativas a la arquitectura YOLO tradicional, aunque se centran en aspectos ligeramente distintos del flujo de trabajo.
Arquitectura de YOLOv10#
La característica más destacada de YOLOv10 es su estrategia de entrenamiento sin NMS. Tradicionalmente, los detectores de objetos recurren a la supresión no máxima (NMS) durante la inferencia para filtrar los cuadros delimitadores superpuestos. Este paso puede añadir latencia y complicar el despliegue integral. YOLOv10 emplea asignaciones duales coherentes durante el entrenamiento, lo que permite al modelo predecir de forma nativa un único cuadro delimitador preciso por objeto. Además, utiliza un diseño de modelo integral que prioriza la eficiencia y la precisión, y optimiza diversos componentes para reducir considerablemente los FLOP y el número de parámetros.
Arquitectura de YOLOv8#
YOLOv8 introdujo una cabeza de detección sin anclajes, que abandona los enfoques basados en anclajes de sus predecesores. Esto reduce el número de predicciones de cuadros y acelera las operaciones de NMS. Además, YOLOv8 incorpora el módulo C2f (cuello de botella parcial entre etapas con dos convoluciones), que mejora el flujo del gradiente y permite a la red aprender representaciones de características más ricas sin aumentar drásticamente el coste computacional. Su cabeza desacoplada separa las tareas de clasificación y regresión, lo que acelera la convergencia y mejora la precisión general.
Rendimiento y pruebas de referencia#
Al desplegar modelos en dispositivos periféricos o servidores en la nube, el equilibrio entre velocidad y precisión es fundamental. La tabla siguiente ofrece una comparación directa de ambos modelos en distintos tamaños.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | parámetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
| 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.1 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
Nota: los guiones (-) indican métricas que no se han publicado oficialmente en condiciones de prueba idénticas.
Como muestran los datos, YOLOv10 ofrece una eficiencia excepcional en cuanto a parámetros y, a menudo, iguala o supera el mAP de sus equivalentes YOLOv8 utilizando menos parámetros y FLOP. Sin embargo, YOLOv8 sigue siendo muy competitivo y ofrece una integración con TensorRT altamente optimizada que garantiza una latencia de inferencia mínima en las GPU modernas.
Al desplegar modelos en entornos de producción, el uso de formatos como ONNX o TensorRT puede mejorar drásticamente la velocidad de inferencia. Tanto YOLOv8 como YOLOv10 permiten exportar fácilmente a estos formatos de grafos altamente optimizados.
Ecosistema, eficiencia de entrenamiento y versatilidad#
Elegir un modelo va más allá de los resultados teóricos: la experiencia de desarrollo y el ecosistema que lo rodea son igual de importantes.
La ventaja de Ultralytics#
Uno de los puntos fuertes de YOLOv8 es su estrecha integración en el ecosistema Ultralytics. Este entorno ofrece una experiencia que te lleva de cero a experto, caracterizada por una API de Python muy intuitiva y una documentación exhaustiva. A diferencia de los repositorios centrados en la investigación, que pueden exigir configuraciones de entorno complejas, los modelos de Ultralytics son conocidos por su facilidad de uso.
Además, YOLOv8 es muy versátil por naturaleza. Mientras que YOLOv10 está optimizado exclusivamente para la detección de objetos, el marco de Ultralytics permite a los desarrolladores cambiar fácilmente entre tareas de detección de objetos, segmentación de instancias, clasificación de imágenes, estimación de pose y cuadros delimitadores orientados (OBB) dentro de la misma biblioteca y estructura de API.
Requisitos de memoria y entrenamiento#
Los modelos YOLO de Ultralytics están diseñados para ofrecer eficiencia durante el entrenamiento. Por lo general, consumen menos memoria durante el entrenamiento y la inferencia que los complejos modelos Transformer, lo que permite a los desarrolladores entrenar modelos de última generación en hardware de consumo o instancias estándar en la nube sin quedarse sin memoria CUDA. Los hiperparámetros predeterminados bien ajustados y el aumento de datos integrado ayudan a garantizar una convergencia rápida.
Este es un ejemplo práctico de lo sencillo que es entrenar y validar un modelo con la API de Python de Ultralytics:
from ultralytics import YOLO
# Carga un modelo preentrenado (se recomienda YOLOv8 para tareas generales)
model = YOLO("yolov8n.pt")
# Entrena el modelo con el conjunto de datos COCO8 mediante la gestión automática de memoria
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)
# Ejecuta la inferencia en una imagen de prueba
predictions = model("https://ultralytics.com/images/zidane.jpg")
predictions[0].show()La próxima generación: YOLO26#
Aunque YOLOv8 y YOLOv10 son hitos excepcionales, el campo del aprendizaje automático avanza constantemente. Para los desarrolladores que inicien proyectos nuevos, recomendamos encarecidamente aprovechar YOLO26, el modelo insignia más reciente de Ultralytics, lanzado en enero de 2026.
YOLO26 combina los mejores avances arquitectónicos de los últimos años en un marco único y altamente optimizado. Hereda el diseño integral sin NMS iniciado por modelos como YOLOv10, que simplifica los flujos de despliegue y reduce la variabilidad de la latencia. Además, YOLO26 incorpora el optimizador MuSGD, un método híbrido inspirado en la estabilidad del entrenamiento de los LLM que garantiza una convergencia más rápida y estable.
Mejoras clave de YOLO26:
- Hasta un 43 % más rápido en inferencia en CPU: muy optimizado para dispositivos periféricos mediante la eliminación de Distribution Focal Loss (DFL).
- ProgLoss + STAL: funciones de pérdida avanzadas que mejoran drásticamente el reconocimiento de objetos pequeños, algo fundamental para las imágenes captadas por drones y los sensores de IoT.
- Mejoras específicas para cada tarea: arquitecturas especializadas para segmentación, estimación de pose y OBB, que garantizan un rendimiento de primer nivel en todos los ámbitos de la visión artificial.
Casos de uso ideales y estrategias de despliegue#
Al elegir entre estas arquitecturas, ten en cuenta las necesidades específicas de tu entorno de despliegue:
- Elige YOLOv10 si: trabajas en un flujo de detección de objetos puro en el que es fundamental exprimir al máximo la eficiencia de los parámetros y quieres experimentar con las primeras implementaciones de arquitecturas sin NMS.
- Elige Ultralytics YOLOv8 si: necesitas un modelo muy estable y listo para producción, respaldado por la sólida plataforma de Ultralytics. Es la opción ideal si tu proyecto requiere varias tareas (por ejemplo, detectar objetos y después segmentarlos) con una base de código unificada y fácil de mantener.
- Elige YOLO26 (recomendado) si: quieres el equilibrio definitivo entre precisión de última generación, eficiencia nativa integral sin NMS y la máxima velocidad posible en CPU y hardware periférico.
Si estás explorando el panorama general, quizá también te interese comparar estos modelos con YOLO11 o consultar integraciones específicas para dispositivos periféricos, como Intel OpenVINO, para acelerar aún más tus aplicaciones de IA visual. Gracias a las herramientas unificadas de Ultralytics, desplegar soluciones robustas de visión artificial nunca había sido tan accesible.