RF-DETR: SOTA-модель обнаружения объектов в реальном времени от Roboflow на основе трансформеров 133

小编 ·

RF-DETR: SOTA-модель обнаружения объектов в реальном времени от Roboflow на основе трансформеров

RF-DETR — архитектура модели обнаружения объектов в реальном времени на базе трансформеров, разработанная Roboflow и нацеленная на высокую точность и низкую задержку обнаружения, а также возможность работы на граничных устройствах. Это первая модель реального времени, превысившая 60 AP на бенчмарке Microsoft COCO, и она также показывает отличные результаты на бенчмарке RF100-VL.

RF-DETR: SOTA-модель обнаружения объектов в реальном времени от Roboflow на основе трансформеров

Что такое RF-DETR?

RF-DETR — это архитектура модели обнаружения объектов в реальном времени на основе Transformer, разработанная компанией Roboflow. Её цель — обеспечить высокую точность и низкую задержку при обнаружении объектов, а также возможность работы на периферийных устройствах. Это первая модель реального времени, преодолевшая отметку 60 AP в бенчмарке Microsoft COCO, и она также показывает отличные результаты в бенчмарке RF100-VL.

RF-DETR:Roboflow基于Transformer开发的的SOTA 实时物体检测模型.webp

Функции RF-DETR

  • Высокоточное обнаружение объектов: RF-DETR достигает mAP (средней точности) 60,5 на наборе данных COCO и среднего mAP 86,7 на бенчмарке RF100-VL.

  • Работа в реальном времени: RF-DETR имеет низкую задержку, например, RF-DETR-Base может достигать 160 FPS на GPU NVIDIA T4.

  • Высокая адаптивность: RF-DETR хорошо адаптируется к различным областям и наборам данных разного размера.

  • Поддержка множества устройств: RF-DETR подходит не только для высокопроизводительных GPU-устройств, но и для работы на периферийных устройствах.

Техническая архитектура RF-DETR

  • Магистральная сеть (Backbone): RF-DETR использует предобученную магистральную сеть DINOv2, которая отлично справляется с извлечением признаков изображений и обеспечивает модели мощное представление признаков.

  • Архитектура Deformable DETR: RF-DETR использует архитектуру Deformable DETR, усиливая способность модели к локализации объектов с помощью механизма деформируемого внимания (Deformable Attention). Этот механизм позволяет модели адаптивно выполнять выборку на карте признаков, что лучше улавливает форму и положение объектов.

  • Одномасштабная карта признаков: В отличие от некоторых моделей обнаружения с многомасштабными картами признаков, RF-DETR использует одномасштабную карту признаков для обнаружения объектов. Такое решение упрощает структуру модели и одновременно повышает вычислительную эффективность.

  • Легковесная голова обнаружения (LW-DETR): RF-DETR сочетает в себе конструкцию легковесной головы обнаружения LW-DETR, что дополнительно оптимизирует производительность модели в реальном времени.

RF-DETR:Roboflow基于Transformer开发的的SOTA 实时物体检测模型.webp

Сценарии применения RF-DETR

  • Видеонаблюдение и безопасность: обнаружение в реальном времени таких объектов, как люди, транспортные средства и животные, на видео для систем безопасности и анализа аномального поведения.

  • Автономное вождение: в системах автономного вождения RF-DETR способна быстро и точно обнаруживать пешеходов, транспортные средства и другие препятствия на дороге, обеспечивая поддержку принятия решений при автономном вождении.

  • Промышленная автоматизация: в условиях промышленного производства RF-DETR может использоваться для обнаружения компонентов на сборочной линии, выявления дефектов и других задач, повышая эффективность производства и контроль качества.

  • Охрана дикой природы: в проектах по охране дикой природы RF-DETR может применяться для мониторинга активности животных, помогая исследователям лучше понимать поведение животных и сохранять экологию.

  • Применение на периферийных устройствах: RF-DETR может работать на периферийных устройствах (таких как умные камеры, мобильные устройства и т. д.), обеспечивая обнаружение объектов с низкой задержкой, что подходит для сценариев Интернета вещей и интеллектуальных граничных вычислений.

RF-DETR应用场景.webp

Как использовать RF-DETR

1. Установка зависимостей: сначала необходимо установить библиотеки зависимостей RF-DETR. Это можно сделать с помощью следующей команды:

pip install rf-detr

2. Загрузка предобученной модели: RF-DETR предоставляет предобученные веса, которые можно загрузить и использовать напрямую. Например:

from rf_detr import RFDetr
model = RFDetr.from_pretrained("rf_detr_base")

3. Предобработка изображения: измените размер входного изображения до нужного модели и выполните нормализацию. Например:

from PIL import Image
import numpy as np
image = Image.open("example.jpg").convert("RGB")
image = image.resize((model.input_size, model.input_size))
image = np.array(image) / 255.0

4. Обнаружение объектов: подайте предобработанное изображение в модель для обнаружения объектов. Например:

detections = model.predict(image)

5. Разбор результатов: разберите результаты обнаружения, чтобы получить информацию о классе, достоверности и ограничивающем прямоугольнике объекта. Например:

for detection in detections:
class_id = detection["class_id"]
confidence = detection["confidence"]
bbox = detection["bbox"]
print(f"Class: {class_id}, Confidence: {confidence}, BBox: {bbox}")

6. Тонкая настройка модели: если требуется использовать RF-DETR на собственном наборе данных, можно выполнить тонкую настройку модели. Процесс тонкой настройки включает подготовку набора данных, настройку параметров обучения, обучение модели и оценку её производительности.

Репозиторий на GitHub: https://github.com/roboflow/rf-detr