Ultralytics YOLOv10 YOLOv5: evolución de la detección de objetos en tiempo real
Elegir el modelo adecuado de detección de objetos implica encontrar el equilibrio entre la eficiencia arquitectónica, las limitaciones de implementación y el apoyo de la comunidad. Esta comparación exhaustiva explora las diferencias técnicas entre YOLOv10, un avance académico en la detección integral, y YOLOv5, el legendario estándar del sector que redefinió la facilidad de uso en la visión artificial.
Ambos modelos representan avances significativos en la YOLO . Mientras que YOLOv5 el estándar de referencia en cuanto a experiencia de usuario y fiabilidad, YOLOv10 los límites de la latencia al eliminar la supresión no máxima (NMS) del proceso de inferencia. Para los desarrolladores que buscan lo último en velocidad y arquitectura integral, el recién lanzado Ultralytics se basa en estos fundamentos con una optimización superior para dispositivos periféricos.
Comparación de métricas de rendimiento
La tabla siguiente destaca las ventajas y desventajas en cuanto al rendimiento entre las dos arquitecturas. YOLOv10 ofrece YOLOv10 una mayor precisión (mAP) y elimina NMS , mientras que YOLOv5 una opción muy competitiva debido a su amplia compatibilidad de implementación y madurez.
| 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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
YOLOv10: El Innovador de Extremo a Extremo
YOLOv10 un cambio de paradigma al eliminar la necesidad de la supresión no máxima (NMS) durante el posprocesamiento. Esto permite una implementación verdaderamente integral, lo que reduce la latencia y la complejidad de la inferencia.
Características arquitectónicas clave
- EntrenamientoNMS: utiliza asignaciones duales consistentes para el entrenamiento NMS, lo que permite al modelo predecir directamente recuadros delimitadores distintos.
- Diseño de eficiencia holística: optimiza diversos componentes (como la columna vertebral y el cuello) para reducir la redundancia computacional.
- Muestreo descendente desacoplado espacial-canal: mejora la retención de información durante la reducción de escala del mapa de características.
- Diseño de bloques guiado por rango: adapta las etapas de los bloques para reducir la redundancia basándose en el análisis intrínseco del rango.
Autores: Ao Wang, Hui Chen, Lihao Liu, et al.
Organización:Universidad de Tsinghua
Fecha: 23/05/2024
Enlaces:Arxiv | GitHub
Latencia de extremo a extremo
Al eliminar NMS, YOLOv10 reduce YOLOv10 la variación de inferencia. En YOLO estándar YOLO , NMS varía en función del número de objetos detectados, lo que puede provocar picos de latencia en escenas con mucha actividad. El tiempo de salida constante YOLOv10 lo hace ideal para sistemas en tiempo real con presupuestos de tiempo estrictos.
YOLOv5: el estándar del sector
Lanzado por Ultralytics 2020, YOLOv5 el campo no solo por su arquitectura, sino también por su accesibilidad. Priorizó una experiencia «lista para usar» sin complicaciones, una exportabilidad sólida y un ecosistema de soporte masivo.
Puntos fuertes clave
- Ecosistema maduro: la amplia documentación, los tutoriales y el apoyo de la comunidad facilitan la resolución de problemas.
- Amplia compatibilidad: la compatibilidad con la exportación para TFLite, CoreML, ONNX y TensorRT la implementación en prácticamente cualquier hardware, desde iOS hasta TPU periféricas.
- Versatilidad: compatibilidad nativa con la segmentación de instancias y la clasificación de imágenes, además de la detección.
- Estabilidad del entrenamiento: conocido por ser robusto ante variaciones de hiperparámetros y converger de forma fiable en diversos conjuntos de datos personalizados.
Autor: Glenn Jocher
Organización:Ultralytics
Fecha: 26/06/2020
Enlaces:GitHub | Documentación
Comparación detallada
Arquitectura y Entrenamiento
YOLOv10 las optimizaciones similares a Transformer y la distintividad avanzada por canales para lograr una alta precisión con menos parámetros. Su estrategia de «asignación dual consistente» le permite aprender la correspondencia uno a uno durante el entrenamiento, eliminando el NMS .
YOLOv5 una estructura clásica CSPDarknet con cuello PANet, optimizada para lograr un equilibrio entre velocidad y precisión. Utiliza la detección basada en anclajes, lo que requiere un ajuste cuidadoso de los cuadros de anclaje para obtener un rendimiento óptimo en conjuntos de datos únicos, aunque su función de evolución automática de anclajes se encarga de ello automáticamente para la mayoría de los usuarios.
Casos de Uso y Aplicaciones en el Mundo Real
Escenarios ideales para YOLOv10:
- Multitudes densas: donde NMS ralentizar el procesamiento debido a la superposición de muchos recuadros.
- Robótica de baja latencia: donde el tiempo de inferencia constante es fundamental para los bucles de control.
- Investigación académica: Para estudiar mecanismos de detección integrales y estrategias de asignación de etiquetas.
Escenarios ideales para YOLOv5:
- Implementación móvil: canalizaciones probadas para iOS Android iOS utilizando TFLite CoreML.
- Inspección industrial: donde la estabilidad y la reproducibilidad a largo plazo son más importantes que mAP de vanguardia.
- Proyectos para principiantes: el punto de partida más fácil para los estudiantes que aprenden visión artificial.
Facilidad de uso y ecosistema
YOLOv5 por su integración en el Ultralytics . Los usuarios pueden visualizar las ejecuciones de entrenamiento con Comet , track e implementar modelos sin problemas. La Ultralytics simplifica aún más este proceso al ofrecer una interfaz sin código para la gestión de conjuntos de datos y el entrenamiento de modelos.
Aunque YOLOv10 integrado en elPython Ultralytics , lo que permite utilizar una sintaxis familiar, se trata principalmente de una contribución académica. Por lo tanto, es posible que no reciba la misma frecuencia de actualizaciones ni el mismo nivel de mantenimiento que Ultralytics principales Ultralytics , como YOLO11 o el innovador YOLO26.
Ejemplos de Código
Ambos modelos comparten la Ultralytics unificada Ultralytics , lo que facilita el cambio entre ellos para realizar pruebas comparativas.
from ultralytics import YOLO
# Load a pretrained YOLOv10 model
model_v10 = YOLO("yolov10n.pt")
# Train YOLOv10 on a custom dataset
model_v10.train(data="coco8.yaml", epochs=100, imgsz=640)
# Load a pretrained YOLOv5 model (via the v8/v11/26 compatible loader)
model_v5 = YOLO("yolov5nu.pt")
# Train YOLOv5 using the modern Ultralytics engine
model_v5.train(data="coco8.yaml", epochs=100, imgsz=640)
Conclusión: ¿Cuál deberías elegir?
Si tu prioridad es la precisión de vanguardia y la consistencia de la latencia, especialmente en escenas concurridas, YOLOv10 es una excelente opción. Sus innovaciones arquitectónicas permiten vislumbrar el futuro de la detección NMS.
Sin embargo, si necesita una solución probada en combate con amplias guías de implementación, compatibilidad con una gran variedad de hardware y máxima estabilidad, YOLOv5 sigue siendo una potencia.
Para los desarrolladores que desean lo mejor de ambos mundos—inferencia integral NMS, precisión superior y el respaldo total del Ultralytics , recomendamos encarecidamente explorar YOLO26. YOLO26 incorpora el diseño NMS pionero de YOLOv10 lo mejora con el optimizador MuSGD y funciones de pérdida optimizadas para CPU hasta un 43 % más rápida.
Descubra más modelos
- YOLO11: La generación SOTA anterior, que ofrece una excelente versatilidad en todas las tareas.
- RT-DETR: Detector en tiempo real basado en transformadores que también elimina NMS.
- YOLO26: El último y más avanzado modelo de Ultralytics, con procesamiento integral y optimización de vanguardia.