Перейти к содержанию

RTDETRv2 против YOLOv6.0: высокоточные трансформаторы, отвечающие требованиям промышленной скорости

Выбор оптимальной архитектуры обнаружения объектов часто связан с поиском компромисса между абсолютной точностью и задержкой вывода. В этом техническом сравнении рассматриваются RTDETRv2, модель на основе трансформатора зрения, предназначенная для решения высокоточных задач, и YOLOv6.0, детектор на основе CNN, разработанный специально для повышения скорости и эффективности работы в промышленности. Анализируя их архитектуры, показатели производительности и характеристики развертывания, мы поможем вам выбрать лучшее решение для ваших приложений компьютерного зрения.

RTDETRv2: Расширение границ с помощью трансформаторов зрения

RTDETRv2 (Real-Time Detection Transformer v2) представляет собой значительную эволюцию в области обнаружения объектов, используя возможности трансформаторов для улавливания глобального контекста в изображениях. В отличие от традиционных CNN, которые обрабатывают локальные признаки, RTDETRv2 использует механизмы самовнимания для понимания взаимосвязей между удаленными объектами, что делает его очень эффективным для сложных сцен.

Авторы: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang, and Yi Liu
Organization:Baidu
Date: 2023-04-17 (Initial), 2024-07-24 (v2)
Arxiv:RT-DETR: DETRs Beat YOLOs on Real-time Object Detection
GitHub:RT-DETR Repository
Docs:RTDETRv2 Documentation

Узнайте больше о RTDETRv2

Архитектурные инновации

Архитектура RTDETRv2 представляет собой гибридную конструкцию. В ней используется стандартная основа CNN (обычно ResNet или HGNet) для первоначального извлечения признаков, а затем кодер-декодер с трансформатором. Такая структура позволяет модели эффективно обрабатывать разномасштабные признаки, избавляя ее от необходимости использовать такие компоненты ручной работы, как якорные блоки и немаксимальное подавление (NMS).

Преимущество трансформатора

Компоненты Vision Transformer (ViT) в RTDETRv2 отлично справляются с неоднозначными ситуациями в многолюдных сценах. Анализируя весь контекст изображения одновременно, модель снижает количество ложных срабатываний, вызванных окклюзией или фоновыми помехами.

Сильные и слабые стороны

Преимущества:

  • Превосходная точность: Как правило, достигается более высокая средняя точность (mAP) на таких наборах данных, как COCO по сравнению с аналогичными по размеру CNN.
  • Безъякорная конструкция: Упрощает конвейер обнаружения за счет удаления якорных блоков, уменьшая настройку гиперпараметров.
  • Глобальный контекст: Отлично справляется с обнаружением объектов в плотном или запутанном окружении, где локальные признаки недостаточны.

Слабые стороны:

  • Вычислительные затраты: Требуется значительно больше FLOP и памяти GPU , особенно во время обучения.
  • Латентность: Несмотря на "реальное время", он в целом уступает оптимизированным CNN, таким как YOLOv6 , в скорости вычислений на эквивалентном оборудовании.
  • Голодание данных: Для сходимости трансформационных моделей часто требуются большие наборы обучающих данных и более длительные графики обучения.

YOLOv6.0: Индустриальный спидстер

YOLOv6.0, разработанный компанией Meituan, полностью ориентирован на потребности промышленных приложений: низкая задержка и высокая пропускная способность. Он совершенствует классическую парадигму одноэтапного детектора объектов для достижения максимальной эффективности на аппаратном обеспечении от граничных устройств до графических процессоров.

Авторы: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, and Xiangxiang Chu
Organization:Meituan
Date: 2023-01-13
Arxiv:YOLOv6 v3.0: Полномасштабная перезагрузка
GitHub:YOLOv6 Repository
Docs:Ultralytics YOLOv6 Docs

Узнайте больше о YOLOv6.0

Оптимизировано для эффективности

В YOLOv6.0 реализована философия "аппаратно-ориентированного" дизайна. В ней используется эффективная репараметризационная магистраль (в стиле RepVGG), которая сводит сеть к простому стеку сверток 3x3 во время вывода, устраняя многоразветвленную сложность. Кроме того, в процессе обучения используются методы саморасщепления, позволяющие повысить точность без увеличения стоимости вычислений.

Сильные и слабые стороны

Преимущества:

  • Исключительная скорость: Обеспечивает очень низкую задержку, что делает его идеальным для высокоскоростных производственных линий и робототехники.
  • Удобство развертывания: перепараметризованную структуру легко экспортировать в такие форматы, как ONNX и TensorRT для достижения максимальной производительности.
  • Аппаратная эффективность: Оптимизировано для полного использования вычислительных блоков GPU и минимизации времени простоя.

Слабые стороны:

  • Потолок точности: Несмотря на свою конкурентоспособность, в очень сложных визуальных сценариях он может не дотягивать до пиковой точности моделей на основе трансформаторов.
  • Ограниченная универсальность: Ориентирован в основном на обнаружение, не поддерживает такие задачи, как сегментация объектов или оценка позы, которые встречаются в новых фреймворках.

Анализ производительности: Скорость против точности

Выбор между RTDETRv2 и YOLOv6.0 часто сводится к конкретным ограничениям среды развертывания. RTDETRv2 доминирует в сценариях, требующих максимальной точности, в то время как YOLOv6.0 выигрывает по скорости и эффективности.

В следующей таблице представлены основные показатели. Обратите внимание, что YOLOv6.0 достигает более низкой задержки (более высокой скорости) при схожих масштабах модели, в то время как RTDETRv2 стремится к более высоким показателям mAP за счет интенсивности вычислений (FLOPs).

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7

Обучение и потребности в ресурсах

При разработке пользовательских моделей опыт обучения существенно отличается.

  • Использование памяти: RTDETRv2 требует значительного объема VRAM GPU из-за квадратичной сложности механизмов внимания. Для обучения вариантов "Large" или "X-Large" часто требуются высокопроизводительные корпоративные графические процессоры. В отличие от этого, модели Ultralytics YOLO и YOLOv6 в целом более экономичны по объему памяти, что позволяет проводить обучение на оборудовании потребительского класса или небольших облачных инстансах.
  • Конвергенция: Модели на основе трансформаторов обычно требуют более длительных эпох для изучения пространственных иерархий, которые CNN улавливают интуитивно, что потенциально увеличивает затраты на облачные вычисления.

Идеально сбалансированный: Преимущество Ultralytics

В то время как RTDETRv2 и YOLOv6.0 отлично зарекомендовали себя в своих нишах, Ultralytics YOLO11 предлагает единое решение, которое устраняет недостатки обоих. Он сочетает в себе простоту использования и скорость CNN с усовершенствованиями архитектуры, превосходящими по точности трансформаторы.

Узнайте больше о YOLO11

Почему разработчики и исследователи все чаще отдают предпочтение моделям Ultralytics :

  1. Универсальность: В отличие от YOLOv6, который предназначен только для обнаружения, Ultralytics поддерживает классификацию изображений, сегментацию, оценку положения и обнаружение ориентированных границ (Oriented Bounding Box, OBB) в рамках одного API.
  2. Хорошо поддерживаемая экосистема: Платформа Ultralytics обеспечивает частые обновления, широкую поддержку сообщества и бесшовную интеграцию с такими инструментами, как MLflow, TensorBoard и Ultralytics HUB.
  3. Простота использования: Благодаря философии "низкого кода" вы можете обучать, проверять и развертывать самые современные модели с помощью всего нескольких строк Python или команд CLI .
  4. Баланс производительности: YOLO11 обеспечивает оптимальное сочетание скорости вычислений в реальном времени и высокой точности, часто превосходя более старые версии YOLO и сравнивая сложные трансформаторы в практических сценариях.

Пример кода

Оцените простоту API Ultralytics . В следующем примере показано, как загрузить предварительно обученную модель и выполнить вывод на изображении:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model (n=nano, s=small, m=medium, l=large, x=xlarge)
model = YOLO("yolo11n.pt")

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

# Process results
for result in results:
    result.show()  # Display results on screen
    result.save(filename="result.jpg")  # Save results to disk

Заключение

И RTDETRv2, и YOLOv6.0 - впечатляющие вехи в истории компьютерного зрения. RTDETRv2 - отличный выбор для исследований и сценариев, где точность является абсолютным приоритетом, независимо от вычислительных затрат. YOLOv6.0 отлично подходит для промышленного сектора, предлагая экстремальную скорость для контролируемых сред.

Однако для большинства реальных приложений требуется надежное, универсальное и простое в развертывании решение, Ultralytics YOLO11 является лучшим выбором. Сочетание передовой производительности, малого объема памяти и развитой экосистемы позволяет разработчикам уверенно и быстро переходить от прототипов к производству.

Изучите другие модели

Узнайте, как сравниваются различные архитектуры, чтобы найти идеальный вариант для вашего проекта:


Комментарии