Saltar al contenido

Baidu's RT-DETR: Un Detector de Objetos en Tiempo Real Basado en Transformadores de Visión

Visión general

El Transformador de Detección en Tiempo Real (RT-DETR), desarrollado por Baidu, es un detector de objetos de última generación que proporciona rendimiento en tiempo real manteniendo una gran precisión. Aprovecha la potencia de los Transformadores de Visión (ViT) para procesar eficazmente características multiescala desacoplando la interacción intraescala y la fusión entre escalas. RT-DETR es muy adaptable, ya que admite el ajuste flexible de la velocidad de inferencia utilizando diferentes capas de decodificación sin necesidad de reentrenamiento. El modelo destaca en backends acelerados como CUDA con TensorRT, superando a muchos otros detectores de objetos en tiempo real.

Modelo de imagen de ejemplo Visión general de Baidu RT-DETR. El diagrama de arquitectura del modelo RT-DETR muestra las tres últimas etapas de la columna vertebral {S3, S4, S5} como entrada al codificador. El codificador híbrido eficiente transforma las características multiescala en una secuencia de características de imagen mediante la interacción de características intraescala (AIFI) y el módulo de fusión de características de escala cruzada (CCFM). La selección de consultas consciente de la IoU se emplea para seleccionar un número fijo de características de imagen que sirvan como consultas de objeto iniciales para el descodificador. Por último, el descodificador con cabezas de predicción auxiliares optimiza iterativamente las consultas de objetos para generar casillas y puntuaciones de confianza (fuente).

Características principales

  • Codificador híbrido eficiente: RT-DETR de Baidu utiliza un codificador híbrido eficiente que procesa características multiescala desacoplando la interacción intraescala y la fusión entre escalas. Este diseño único basado en Transformadores de Visión reduce los costes computacionales y permite la detección de objetos en tiempo real.
  • Selección de consulta consciente de IoU: RT-DETR de Baidu mejora la inicialización de la consulta de objetos utilizando la selección de consulta consciente de IoU. Esto permite que el modelo se centre en los objetos más relevantes de la escena, mejorando la precisión de la detección.
  • Velocidad de inferencia adaptable: RT-DETR de Baidu admite ajustes flexibles de la velocidad de inferencia mediante el uso de distintas capas de descodificación sin necesidad de reentrenamiento. Esta adaptabilidad facilita la aplicación práctica en diversos escenarios de detección de objetos en tiempo real.

Modelos preentrenados

La API Ultralytics Python proporciona modelos preentrenados PaddlePaddle RT-DETR con diferentes escalas:

  • RT-DETR-L: 53,0% AP en COCO val2017, 114 FPS en GPU T4
  • RT-DETR-X: 54,8% AP en COCO val2017, 74 FPS en GPU T4

Ejemplos de uso

Este ejemplo proporciona ejemplos sencillos de entrenamiento e inferencia de RT-DETR . Para obtener documentación completa sobre estos y otros modos, consulta las páginas de documentación Predecir, Entrenar, Val y Exportar.

Ejemplo

from ultralytics import RTDETR

# Load a COCO-pretrained RT-DETR-l model
model = RTDETR('rtdetr-l.pt')

# Display model information (optional)
model.info()

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

# Run inference with the RT-DETR-l model on the 'bus.jpg' image
results = model('path/to/bus.jpg')
# Load a COCO-pretrained RT-DETR-l model and train it on the COCO8 example dataset for 100 epochs
yolo train model=rtdetr-l.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained RT-DETR-l model and run inference on the 'bus.jpg' image
yolo predict model=rtdetr-l.pt source=path/to/bus.jpg

Tareas y modos admitidos

Esta tabla presenta los tipos de modelos, los pesos específicos preentrenados, las tareas que admite cada modelo y los distintos modos(Entrenar, Val, Predecir, Exportar) que admite, indicados con ✅ emojis.

Tipo de modelo Pesos preentrenados Tareas admitidas Inferencia Validación Formación Exportar
RT-DETR Grande rtdetr-l.pt Detección de objetos ✅ ✅ ✅ ✅
RT-DETR Extragrande rtdetr-x.pt Detección de objetos ✅ ✅ ✅ ✅

Citas y agradecimientos

Si utilizas RT-DETR de Baidu en tu trabajo de investigación o desarrollo, por favor, cita el documento original:

@misc{lv2023detrs,
      title={DETRs Beat YOLOs on Real-time Object Detection},
      author={Wenyu Lv and Shangliang Xu and Yian Zhao and Guanzhong Wang and Jinman Wei and Cheng Cui and Yuning Du and Qingqing Dang and Yi Liu},
      year={2023},
      eprint={2304.08069},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Nos gustaría agradecer a Baidu y al equipo de PaddlePaddle equipo por crear y mantener este valioso recurso para la comunidad de visión por ordenador. Su contribución al campo con el desarrollo del detector de objetos en tiempo real basado en Transformadores de Visión, RT-DETR, es muy apreciada.

Palabras clave: RT-DETR, Transformer, ViT, Vision Transformers, Baidu RT-DETR, PaddlePaddle, Paddle Paddle RT-DETR, detección de objetos en tiempo real, detección de objetos basada en Vision Transformers, modelos preentrenados PaddlePaddle RT-DETR , uso de RT-DETR de Baidu, Ultralytics Python API



Creado 2023-11-12, Actualizado 2024-03-03
Autores: glenn-jocher (8)

Comentarios