RTDETRv2 frente a YOLOX: comparación técnica para la detección de objetos en tiempo real
En el panorama en rápida evolución de la visión por ordenador, la búsqueda del equilibrio óptimo entre velocidad y precisión sigue impulsando la innovación. Dos enfoques distintos han surgido como punteros: el RTDETRv2 basado en Transformer y el YOLOX basado en CNN sin anclajes. Esta comparativa examina sus diferencias arquitectónicas, métricas de rendimiento y casos de uso ideales para ayudar a los desarrolladores a elegir la herramienta adecuada a sus necesidades específicas.
Modelos
Antes de entrar en los detalles técnicos, establezcamos los orígenes y las filosofías fundamentales de estos dos influyentes modelos.
RTDETRv2
RTDETRv2 (Real-Time DEtection TRansformer version 2) representa un importante paso adelante para llevar las arquitecturas Transformer a las aplicaciones en tiempo real. Desarrollado por investigadores de Baidu, se basa en el RT-DETR original e introduce una "bolsa de cosas gratuitas" que mejora la estabilidad y el rendimiento del entrenamiento sin aumentar la latencia de la inferencia. Su objetivo es resolver el elevado coste computacional asociado habitualmente a los transformadores de visión (ViT ) y superar en precisión a los detectores CNN tradicionales.
- Autores: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang, y Yi Liu
- Organización:Baidu
- Fecha: 2023-04-17 ( RT-DETR original), actualizaciones v2 posteriores.
- Arxiv:RT-DETRv2: Línea de base mejorada con Bag-of-Freebies
- GitHub:RepositorioRT-DETRv2
Más información sobre RTDETRv2
YOLOX
YOLOX revitalizó la familia YOLO en 2021 cambiando a un mecanismo sin anclaje e incorporando técnicas avanzadas como cabezales desacoplados y asignación de etiquetas SimOTA. Aunque conserva la columna vertebral de estilo Darknet característica de la serie YOLO , sus cambios arquitectónicos abordaron muchas limitaciones de los detectores basados en anclajes, lo que dio lugar a un modelo muy eficiente y flexible que funciona excepcionalmente bien en dispositivos de borde.
- Autores: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, y Jian Sun
- Organización:Megvii
- Fecha: 2021-07-18
- Arxiv:YOLOX: Superar la serie YOLO en 2021
- GitHub:Repositorio YOLOX
Análisis de rendimiento
Las compensaciones de rendimiento entre RTDETRv2 y YOLOX son distintas. RTDETRv2 da prioridad a la precisión máximamAP), aprovechando los mecanismos de atención global de los transformadores para comprender mejor las escenas complejas y los objetos ocluidos. Sin embargo, esto conlleva mayores exigencias computacionales, sobre todo en lo que respecta al uso de la memoria GPU .
Por el contrario, YOLOX está optimizado para ofrecer velocidad y eficacia. Su diseño sin anclajes simplifica el cabezal de detección, reduciendo el número de parámetros de diseño y acelerando el posprocesamientoNMS). Los modelos YOLOX, en particular las variantes Nano y Tiny, suelen ser los preferidos para las implantaciones de IA en los bordes, donde los recursos de hardware son limitados.
La siguiente tabla destaca estas diferencias. Obsérvese que, aunque RTDETRv2 obtiene puntuaciones mAP más altas, YOLOX-s proporciona velocidades de inferencia más rápidas en TensorRT, lo que ilustra su idoneidad para aplicaciones sensibles a la latencia.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | parámetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
Arquitectura en profundidad
Entender las diferencias estructurales ayuda a aclarar por qué estos modelos funcionan de forma diferente.
RTDETRv2: El codificador-decodificador híbrido
RTDETRv2 aborda los cuellos de botella computacionales de los modelos DETR estándar introduciendo un codificador híbrido eficiente. Este componente procesa características multiescala, desacoplando la interacción intraescala (dentro de la misma capa de características) y la fusión interescala (entre capas).
- Selección de consultasIoU: En lugar de seleccionar consultas de objetos estáticas, RTDETRv2 selecciona un número fijo de características de imagen para que sirvan como consultas de objetos iniciales en función de sus puntuaciones de clasificación, lo que mejora la inicialización.
- Decodificador flexible: El descodificador admite el ajuste dinámico de los números de consulta durante la inferencia, lo que permite a los usuarios compensar velocidad y precisión sin necesidad de volver a formarse.
YOLOX: sin anclajes y desacoplado
YOLOX se aleja del paradigma basado en anclas utilizado en YOLOv4 y YOLOv5.
- Sin anclajes: al predecir directamente los centros y tamaños de los objetos, YOLOX elimina la necesidad de diseñar manualmente las cajas de anclaje, lo que reduce la complejidad del ajuste de hiperparámetros.
- Cabezal desacoplado: separa las tareas de clasificación y regresión en distintas ramas del cabezal de la red. Esta separación suele propiciar una convergencia más rápida y una mayor precisión.
- SimOTA: estrategia avanzada de asignación de etiquetas que considera el proceso de asignación como un problema de transporte óptimo, asignando dinámicamente muestras positivas a verdades básicas en función de un coste de optimización global.
Basado en anclajes frente a sin anclajes
Los detectores tradicionales utilizan cajas predefinidas (anclajes) para estimar la ubicación de los objetos. YOLOX elimina esta dependencia, simplificando la arquitectura y haciendo que el modelo sea más robusto frente a formas de objeto variadas. RTDETRv2, al ser un transformador, utiliza consultas de objetos en lugar de anclajes por completo, aprendiendo a atender a las regiones relevantes de la imagen de forma dinámica.
Fortalezas y Debilidades
RTDETRv2
- Ventajas:
- Alta precisión: alcanza el mAP más avanzado en las pruebas COCO .
- Contexto global: Los mecanismos de atención de los transformadores captan eficazmente las dependencias de largo alcance.
- Adaptabilidad: La selección ajustable de consultas permite flexibilidad en el momento de la inferencia.
- Debilidades:
- Uso intensivo de recursos: Requiere una cantidad significativa de memoria GPU para el entrenamiento y la inferencia en comparación con las CNN.
- Entrenamiento más lento: Los transformadores suelen tardar más en converger que las arquitecturas basadas en CNN.
YOLOX
- Ventajas:
- Velocidad de inferencia: Extremadamente rápida, especialmente las variantes más pequeñas (Nano, Tiny, S).
- Fácil de implantar: más fácil de implantar en dispositivos periféricos y CPUS gracias al menor número de FLOPs y parámetros.
- Simplicidad: El diseño sin anclajes reduce la complejidad de la ingeniería.
- Debilidades:
- Menor precisión de pico: tiene dificultades para igualar la precisión de nivel superior de los modelos de transformadores grandes como RTDETRv2-x.
- Evolución de las características: Carece de algunas de las capacidades multimodales que se encuentran en los marcos más recientes.
La ventaja de Ultralytics: ¿Por qué elegir YOLO11?
Mientras que RTDETRv2 y YOLOX son modelos formidables, el Ultralytics YOLO de Ultralytics -encabezado por el vanguardista YOLO11-ofrece una solución integral que a menudo supera las ventajas de los modelos individuales.
- Equilibrio de rendimiento: YOLO11 está diseñado para ofrecer un equilibrio óptimo entre velocidad y precisión. A menudo iguala o supera la precisión de los modelos basados en transformadores, al tiempo que mantiene la velocidad de inferencia característica de la familia YOLO .
- Facilidad de uso: Ultralytics prioriza la experiencia del desarrollador. Con una API y una CLI unificadas Python , puede entrenar, validar y desplegar modelos con solo unas líneas de código.
- Eficiencia de memoria: A diferencia de RTDETRv2, que puede consumir mucha VRAM de GPU , YOLO11 es muy eficiente en el uso de la memoria durante el entrenamiento y la inferencia. Esto lo hace accesible a investigadores y desarrolladores con hardware de consumo.
- Ecosistema bien mantenido: Los modelos de Ultralytics están respaldados por actualizaciones frecuentes, una comunidad activa y una amplia documentación. Funciones como Ultralytics HUB facilitan la gestión de modelos y la formación en la nube.
- Versatilidad: Además de la simple detección de objetos, YOLO11 admite de forma nativa la segmentación de instancias, la estimación de poses, el OBB y la clasificación, mientras que YOLOX y RTDETRv2 se centran principalmente en la detección.
- Eficiencia del entrenamiento: Con pesos preentrenados disponibles para diversas tareas y sofisticadas capacidades de aprendizaje por transferencia, YOLO11 reduce drásticamente el tiempo y la energía necesarios para entrenar modelos de alto rendimiento.
Ejemplo de código
Ultralytics facilita increíblemente el uso de estos modelos avanzados. A continuación se muestra un ejemplo de cómo ejecutar la inferencia utilizando YOLO11 y, en particular, Ultralytics también es compatible directamente con RT-DETR , lo que simplifica su uso significativamente en comparación con el repositorio original.
from ultralytics import RTDETR, YOLO
# Load the Ultralytics YOLO11 model (Recommended)
model_yolo = YOLO("yolo11n.pt")
# Run inference on an image
results_yolo = model_yolo("path/to/image.jpg")
# Load an RT-DETR model via Ultralytics API
model_rtdetr = RTDETR("rtdetr-l.pt")
# Run inference with RT-DETR
results_rtdetr = model_rtdetr("path/to/image.jpg")
Conclusión
La elección entre RTDETRv2 y YOLOX depende en última instancia de sus limitaciones específicas.
- Elija RTDETRv2 si su aplicación exige la máxima precisión, como en la investigación académica o la inspección industrial de alta precisión, y tiene acceso a potentes recursos de GPU .
- Elija YOLOX si está desplegando en entornos con recursos limitados como Raspberry Pi o dispositivos móviles donde cada milisegundo de latencia cuenta.
Sin embargo, para la gran mayoría de las aplicaciones del mundo real, Ultralytics YOLO11 se perfila como la mejor opción en todos los sentidos. Combina las ventajas de precisión de las arquitecturas modernas con la velocidad y eficiencia de las CNN, todo ello en un ecosistema fácil de usar y listo para la producción. YOLO11 le proporciona las herramientas y el rendimiento necesarios para triunfar, tanto si está construyendo para la periferia como para la nube.
Explorar otras comparaciones
Para ayudarte aún más a tomar una decisión, considera explorar otras comparaciones de modelos: