Ir al contenido

YOLO vs. YOLOv10: una inmersión profunda en la evolución de la detección de objetos

Seleccionar el modelo de detección de objetos adecuado es una decisión fundamental que afecta a todos los aspectos, desde los costes de implantación hasta la experiencia del usuario. Esta comparación técnica explora las diferencias entre YOLO, un modelo basado en la investigación de Alibaba Group, y YOLOv10el último detector integral en tiempo real desarrollado por investigadores de la Universidad de Tsinghua e integrado en el ecosistema Ultralytics .

Aunque ambos modelos pretenden optimizar el equilibrio entre velocidad y precisión, emplean estrategias arquitectónicas muy diferentes. Este análisis profundiza en sus especificaciones técnicas, métricas de rendimiento y casos de uso ideales para ayudarte a navegar por el complejo panorama de la visión por ordenador.

Métricas de rendimiento

La tabla siguiente ofrece una comparación directa de la eficiencia y la precisión en el conjunto de datosCOCO . Los puntos clave son la eficiencia de los parámetros y la velocidad de inferencia, donde YOLOv10 presenta ventajas significativas gracias a su diseño NMS.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
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

YOLO: Innovación impulsada por la investigación

Lanzado a finales de 2022, YOLO representa un importante esfuerzo de Alibaba Group para ampliar los límites de los detectores de YOLO mediante la búsqueda avanzada de arquitecturas neuronales y novedosas técnicas de fusión de características.

Detalles técnicos:
Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, et al.
Organización:Alibaba Group
Fecha: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444v2
GitHubYOLO

Más información sobre DAMO-YOLO

Arquitectura y Características Clave

YOLO integra varios conceptos de vanguardia para lograr sus prestaciones:

  1. Búsqueda de arquitectura neuronal (NAS): A diferencia de los modelos con redes troncales diseñadas manualmente, YOLO utiliza MAE-NAS para descubrir automáticamente estructuras de red eficientes, optimizando la profundidad y anchura de la red para restricciones de hardware específicas.
  2. RepGFPN Cuello: Esta red piramidal de características emplea la re-parametrización para gestionar la fusión de características de forma eficiente. Permite estructuras complejas en tiempo de entrenamiento que se contraen en bloques más sencillos en tiempo de inferencia, lo que mantiene la precisión al tiempo que aumenta la velocidad.
  3. ZeroHead y AlignedOTA: El modelo utiliza un diseño "ZeroHead" para reducir la complejidad del cabezal de detección y emplea AlignedOTA (asignación óptima de transporte) para gestionar la asignación de etiquetas durante el entrenamiento, resolviendo los problemas de desalineación entre las tareas de clasificación y regresión.

Consideración de la complejidad

Aunque YOLO introduce innovaciones impresionantes, su dependencia de NAS y componentes especializados puede hacer que el canal de formación sea más complejo y menos accesible para los desarrolladores que requieren una rápida personalización o implantación en hardware variado sin grandes ajustes.

Fortalezas y Debilidades

  • Puntos fuertes: YOLO ofrece una gran precisión, sobre todo para su hora de lanzamiento, e introdujo conceptos novedosos como la mejora de la destilación para modelos más pequeños.
  • Puntos débiles: El ecosistema que rodea a YOLO está vinculado principalmente al marco MMDetection, que puede presentar una curva de aprendizaje más pronunciada en comparación con el ecosistemaUltralytics de fácil uso. Además, requiere el postprocesamiento tradicional NMS , lo que añade latencia.

YOLOv10: la era de la detección en tiempo real de extremo a extremo

YOLOv10, lanzado en mayo de 2024 por investigadores de la Universidad de Tsinghua, representa un cambio de paradigma en el linaje YOLO . Al eliminar la necesidad de Supresión No MáximaNMS), consigue un verdadero rendimiento de extremo a extremo, reduciendo significativamente la latencia de inferencia.

Detalles técnicos:
Autores: Ao Wang, Hui Chen, Lihao Liu, et al.
Organización:Universidad Tsinghua
Fecha: 2024-05-23
Arxiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
Docsultralytics


Más información sobre YOLOv10

Arquitectura e Innovaciones

YOLOv10 se centra en la eficiencia holística, centrándose tanto en la arquitectura como en la tubería de postprocesamiento:

  1. DiseñoNMS: A través de una estrategia llamada Asignaciones Dobles Consistentes, YOLOv10 se entrena con asignaciones de etiquetas tanto uno-a-muchos como uno-a-uno. Esto permite que el modelo prediga una única casilla óptima para cada objeto durante la inferencia, lo que hace que NMS quede obsoleto. Se trata de una ventaja fundamental para la inferencia en tiempo real, donde el posprocesamiento puede convertirse a menudo en un cuello de botella.
  2. Diseño holístico de eficiencia y precisión: La arquitectura cuenta con un cabezal de clasificación ligero y muestreo descendente desacoplado de canales espaciales. Estas optimizaciones reducen la redundancia computacional, lo que se traduce en un menor número de FLOP y parámetros en comparación con las generaciones anteriores.
  3. Diseño de bloques guiado por rangos: El modelo adapta su diseño interno de bloques en función de la redundancia de las distintas etapas, utilizando bloques compactos invertidos (CIB) cuando se necesita eficiencia y autoatención parcial (PSA) cuando la mejora de las características es fundamental.

Facilidad de uso con Ultralytics

Una de las ventajas más significativas de YOLOv10 es su perfecta integración en el ecosistemaUltralytics . Los desarrolladores pueden entrenar, validar y desplegar YOLOv10 utilizando la misma sencilla API utilizada para YOLOv8 y YOLO11.

from ultralytics import YOLO

# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")

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

# Run inference on an image
results = model("path/to/image.jpg")

Análisis comparativo

Al comparar YOLO y YOLOv10, la distinción radica en su enfoque de la eficiencia y su ecosistema operativo.

Velocidad y latencia

YOLOv10 tiene una clara ventaja en cuanto a latencia en el mundo real. Los modelos YOLO estándar (y YOLO) requieren la supresión no máxima (NMS ) para filtrar los cuadros delimitadores superpuestos. El tiempo de ejecución de NMS NMS varía en función del número de objetos detectados, lo que provoca una latencia impredecible. El diseño integral de YOLOv10 proporciona una latencia determinista, por lo que es superior para aplicaciones en las que el tiempo es un factor crítico, como la conducción autónoma o la robótica industrial de alta velocidad.

Eficiencia de los recursos

Como muestra la tabla de rendimiento, YOLOv10s logra un mAP mayor (46,7%) que YOLO (46,0%) utilizando menos de la mitad de parámetros (7,2M frente a 16,3M). Este menor consumo de memoria es crucial para el despliegue en los bordes. Los modelos Ultralytics son famosos por sus reducidos requisitos de memoria tanto durante el entrenamiento como durante la inferencia, lo que permite entrenar en GPU de consumo cuando otras arquitecturas podrían tener problemas con los errores de salida de memoria (OOM).

Ecosistema y apoyo

Mientras que YOLO es una sólida contribución académica, YOLOv10 se beneficia del bien mantenido ecosistema Ultralytics . Esto incluye:

  • Desarrollo activo: Actualizaciones frecuentes y corrección de errores.
  • Apoyo de la comunidad: Una comunidad masiva de desarrolladores en GitHub y Discord.
  • Documentación: Amplia documentación que abarca desde el aumento de datos hasta la implantación.
  • Eficacia del entrenamiento: Rutinas optimizadas que admiten funciones como la precisión mixta automática (AMP) y el entrenamiento GPU desde el primer momento.

Más allá de la detección

Si su proyecto requiere una versatilidad que va más allá de los cuadros delimitadores, como la segmentación de instancias, la estimación de poses o la detección de objetos orientada (OBB), considere la posibilidad de explorar YOLO11 o YOLOv8. Mientras que YOLOv10 destaca en la detección pura, la familia Ultralytics más amplia ofrece soluciones de vanguardia para estas complejas necesidades multitarea.

Casos de Uso Ideales

Cuándo elegir YOLOv10

  • Edge AI & IoT: El bajo número de parámetros (por ejemplo, YOLOv10n con 2,3 millones de parámetros) lo hace perfecto para dispositivos como Raspberry Pi o NVIDIA Jetson.
  • Análisis de vídeo en tiempo real: La eliminación de NMS garantiza frecuencias de cuadro constantes, esenciales para la supervisión del tráfico o las transmisiones de seguridad.
  • Desarrollo rápido: Los equipos que necesiten pasar rápidamente de los datos a la implantación se beneficiarán de la intuitiva ultralytics API de Python y Ultralytics HUB.

¿Cuándo considerar DAMO-YOLO?

  • Investigación académica: Los investigadores que estudian la búsqueda de arquitecturas neuronales (NAS) o la optimización de pirámides de características pueden encontrar en la arquitectura de YOLO una valiosa referencia.
  • Tuberías heredadas: Los proyectos que ya están profundamente integrados en el marco MMDetection podrían encontrar más fácil adoptar YOLO que cambiar de marco.

Conclusión

Ambos modelos representan hitos significativos en la visión por ordenador. YOLO demostró la potencia del NAS y la fusión de características avanzadas en 2022. Sin embargo, para aplicaciones modernas en 2024 y más allá, YOLOv10 ofrece un paquete más atractivo. Su arquitectura integral NMS resuelve un antiguo cuello de botella en la detección de objetos, mientras que su integración en el ecosistema Ultralytics garantiza su accesibilidad, mantenimiento y facilidad de despliegue.

Para los desarrolladores que buscan el mejor equilibrio entre velocidad, precisión y facilidad de uso, YOLOv10el versátil YOLO11-es la mejor opción para crear soluciones de IA sólidas.


Comentarios