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

RTDETRv2 и YOLOv5: Подробное техническое сравнение

Выбор оптимальной модели обнаружения объектов — критически важное решение для любого проекта компьютерного зрения. Компромиссы между точностью, скоростью и вычислительными затратами определяют пригодность модели для данного приложения. На этой странице представлено подробное техническое сравнение между RTDETRv2, высокоточной моделью на основе transformer, и Ultralytics YOLOv5, высокоэффективным и широко распространенным отраслевым стандартом. Мы рассмотрим их архитектурные различия, эталонные показатели производительности и идеальные варианты использования, чтобы помочь вам сделать осознанный выбор.

RTDETRv2: Высокоточный детектор реального времени на основе Transformer

RT-DETRv2 (Детектор-трансформер реального времени v2) — это современный детектор объектов от Baidu, который использует возможности Vision Transformers для достижения высокой точности при сохранении производительности в реальном времени. Он представляет собой значительный шаг в переносе сложных архитектур Transformer в практические приложения реального времени.

Авторы: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang и Yi Liu
Организация: Baidu
Дата: 2023-04-17 (Первоначальная версия RT-DETR), 2024-07-24 (Улучшения RT-DETRv2)
Arxiv: https://arxiv.org/abs/2304.08069, https://arxiv.org/abs/2407.17140
GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Документация: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch#readme

Архитектура

RTDETRv2 использует гибридную архитектуру, которая сочетает в себе сильные стороны сверточных нейронных сетей (CNN) и трансформеров.

  • Backbone: CNN (например, ResNet или HGNetv2) используется для начального извлечения признаков, эффективно захватывая низкоуровневые признаки изображения.
  • Encoder-Decoder: Ядром модели является структура энкодера-декодера на основе Transformer. Она использует механизмы самовнимания для обработки карт признаков из базовой сети, что позволяет модели захватывать глобальный контекст и долгосрочные зависимости между объектами в сцене. Это особенно эффективно для обнаружения объектов в сложных или переполненных средах.

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

  • Высокая точность: Архитектура transformer позволяет RTDETRv2 достигать отличных показателей mAP, часто превосходя традиционные модели на основе CNN на сложных наборах данных, таких как COCO.
  • Надежное извлечение признаков: Учитывая контекст всего изображения, он хорошо работает в сложных сценариях с окклюдированными или маленькими объектами, что делает его подходящим для таких приложений, как автономное вождение.
  • Возможности реального времени: Модель оптимизирована для обеспечения конкурентоспособной скорости вывода, особенно при ускорении с помощью таких инструментов, как NVIDIA TensorRT.

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

  • Вычислительные затраты: Модели на основе Transformer обычно имеют большее количество параметров и FLOPs, что требует более значительных вычислительных ресурсов, таких как память GPU и вычислительная мощность.
  • Сложность обучения: Обучение RTDETRv2 может быть ресурсоемким и более медленным, чем обучение моделей на основе CNN. Часто требуется значительно больше памяти CUDA, что может быть барьером для пользователей с ограниченным оборудованием.
  • Скорость инференса на CPU: Несмотря на быстроту на высокопроизводительных GPU, ее производительность может быть значительно ниже, чем у оптимизированных моделей, таких как YOLOv5, на CPU или менее мощных периферийных устройствах.
  • Экосистема: Ей не хватает обширной, унифицированной экосистемы, инструментов и широкой поддержки сообщества, которые Ultralytics предоставляет для своих моделей YOLO.

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

Ultralytics YOLOv5: Устоявшийся отраслевой стандарт

Ultralytics YOLOv5, впервые выпущенный в 2020 году, быстро стал отраслевым эталоном благодаря исключительному балансу скорости, точности и беспрецедентной простоте использования. Разработанный на PyTorch Гленном Джохером, YOLOv5 — это зрелая, надежная и хорошо оптимизированная модель, которая была развернута в бесчисленных реальных приложениях.

Автор: Гленн Джокер
Организация: Ultralytics
Дата: 2020-06-26
GitHub: https://github.com/ultralytics/yolov5
Документация: https://docs.ultralytics.com/models/yolov5/

Архитектура

YOLOv5 имеет классическую и очень эффективную архитектуру CNN. Он использует бэкбон CSPDarknet53 для извлечения признаков, neck PANet для агрегирования признаков в разных масштабах и head обнаружения на основе anchor-ов. Эта конструкция доказала свою исключительную эффективность для обнаружения объектов в реальном времени.

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

  • Исключительная скорость и эффективность: YOLOv5 высоко оптимизирована для быстрого вывода на широком спектре оборудования, от высокопроизводительных GPU до периферийных устройств с ограниченными ресурсами, таких как NVIDIA Jetson и Raspberry Pi.
  • Простота использования: Ultralytics YOLOv5 славится своим оптимизированным пользовательским интерфейсом. Благодаря простому Python API и обширной документации разработчики могут обучать, проверять и развертывать модели с минимальными усилиями.
  • Хорошо поддерживаемая экосистема: YOLOv5 поддерживается надежной экосистемой Ultralytics, которая включает активную разработку, большое и поддерживающее сообщество, частые обновления и интегрированные инструменты, такие как Ultralytics HUB, для обучения и развертывания без кода.
  • Баланс производительности: Семейство моделей (n, s, m, l, x) предлагает превосходный компромисс между скоростью и точностью, позволяя пользователям выбрать идеальную модель для своих конкретных потребностей.
  • Эффективность памяти: По сравнению с моделями на основе трансформеров, такими как RTDETRv2, YOLOv5 требует значительно меньше памяти CUDA для обучения, что делает его доступным для более широкого круга разработчиков и исследователей.
  • Универсальность: YOLOv5 поддерживает несколько задач, включая обнаружение объектов, сегментацию экземпляров и классификацию изображений, и все это в рамках единой структуры.
  • Эффективность обучения: Процесс обучения быстрый и эффективный, с готовыми предварительно обученными весами, которые ускоряют сходимость на пользовательских наборах данных.

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

  • Точность на сложных сценах: Несмотря на высокую точность, YOLOv5 может немного уступать RTDETRv2 по mAP на наборах данных с очень плотными или маленькими объектами, где глобальный контекст имеет решающее значение.
  • На основе Anchor: Использование предопределенных anchor boxes иногда может потребовать дополнительной настройки для наборов данных с необычными пропорциями объектов, что не требуется в детекторах без anchor.

Идеальные варианты использования

YOLOv5 превосходен в приложениях, где скорость, эффективность и быстрая разработка являются приоритетами:

  • Видеонаблюдение в реальном времени: Обеспечивает работу систем охранной сигнализации и мониторинг прямых видеотрансляций.
  • Edge Computing: Развертывание на маломощных устройствах для приложений в области робототехники и промышленной автоматизации.
  • Мобильные приложения: Его легкие модели идеально подходят для инференса на устройстве на смартфонах.
  • Быстрое прототипирование: Простота использования и быстрые циклы обучения делают его идеальным для быстрой разработки и тестирования новых идей.

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

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

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

В таблице ниже представлено количественное сравнение на наборе данных COCO val2017. В то время как модели RTDETRv2 достигают более высокого mAP, модели YOLOv5, особенно меньшие варианты, предлагают значительно более высокую скорость логического вывода, особенно на CPU.

Модель размер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(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
YOLOv5n 640 28.0 73.6 1.12 2.6 7.7
YOLOv5s 640 37.4 120.7 1.92 9.1 24.0
YOLOv5m 640 45.4 233.9 4.03 25.1 64.2
YOLOv5l 640 49.0 408.4 6.61 53.2 135.0
YOLOv5x 640 50.7 763.2 11.89 97.2 246.4

Заключение и рекомендации

RTDETRv2 и YOLOv5 — это мощные модели обнаружения объектов, но они служат разным потребностям.

RTDETRv2 — отличный выбор для приложений, где достижение абсолютно наивысшей точности является главным приоритетом и доступны значительные вычислительные ресурсы (особенно высокопроизводительные GPU). Его способность понимать глобальный контекст делает его превосходным для академических бенчмарков и специализированных промышленных задач со сложными сценами.

Однако, для подавляющего большинства реальных приложений Ultralytics YOLOv5 остается более практичным и универсальным выбором. Его исключительный баланс скорости и точности в сочетании с низкими требованиями к ресурсам делает его подходящим для развертывания повсюду, от облака до периферии. Ключевые преимущества YOLOv5 — простота использования, хорошо поддерживаемая экосистема, эффективность обучения и универсальность — делают его предпочтительной моделью для разработчиков и исследователей, которым необходимо быстро и эффективно предоставлять надежные, высокопроизводительные решения.

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

Сравнения с другими моделями

Если вам интересно, как эти модели соотносятся с другими, ознакомьтесь со следующими страницами сравнения:



📅 Создано 1 год назад ✏️ Обновлено 1 месяц назад

Комментарии