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

RTDETRv2 против YOLOv9: Сравнение трансформеров для обнаружения в реальном времени и CNN

В области компьютерного зрения наблюдается увлекательное расхождение в архитектурных философиях, главным образом между сверточными нейронными сетями (CNN) и моделями на основе трансформеров. Сравнивая RTDETRv2 и YOLOv9, разработчики по существу оценивают компромиссы между механизмами глобального внимания и программируемой градиентной информацией. Обе модели представляют собой вершину своих соответствующих парадигм, расширяя границы обнаружения объектов в реальном времени.

Введение в модели

RTDETRv2: Transformer для обнаружения в реальном времени

Разработанный исследователями Baidu, RTDETRv2 развивает оригинальный RT-DETR, вводя «Bag-of-Freebies» для улучшения базового трансформера обнаружения в реальном времени. Он решает традиционную проблему трансформеров — скорость инференса, делая их пригодными для приложений реального времени.

  • Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
  • Организация:Baidu
  • Дата: 2024-07-24
  • Ссылки:Arxiv, GitHub

Определяющей характеристикой RTDETRv2 является его нативная сквозная архитектура без NMS. Полное исключение Non-Maximum Suppression (NMS) на этапе постобработки стабилизирует задержку вывода и упрощает конвейер развертывания. Механизм глобального внимания позволяет модели превосходно справляться с пониманием сложных сцен и плотных скоплений объектов, поскольку она одновременно оценивает весь контекст изображения.

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

YOLOv9: Программируемая градиентная информация

YOLOv9, высокоэффективная архитектура на основе CNN, решает проблему информационного узкого места, присущую глубоким нейронным сетям. Она представляет программируемую градиентную информацию (PGI) и обобщенную эффективную сеть агрегации слоев (GELAN).

YOLOv9 опирается на проверенные основы сверточных нейронных сетей, но максимизирует эффективность параметров. Сохраняя критически важную информацию во время прямого распространения, он обеспечивает надежные обновления весов, что приводит к невероятно легкой, но очень точной модели. Однако, в отличие от RTDETRv2, YOLOv9 по-прежнему использует стандартную постобработку NMS.

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

Производительность и эффективность использования ресурсов

При оценке этих моделей для производства критически важно сбалансировать среднюю точность (mAP) с вычислительными затратами. В таблице ниже показана их производительность на наборе данных MS COCO.

Модельразмер
(пиксели)
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
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Требования к памяти и эффективность обучения

Трансформеры, такие как RTDETRv2, известны своей высокой требовательностью к памяти во время обучения, часто требуя значительного объема памяти CUDA и более длительных графиков обучения для полной сходимости. Напротив, архитектуры CNN, такие как YOLOv9 и другие модели Ultralytics YOLO, предлагают исключительно низкое потребление памяти, что позволяет разработчикам обучать модели с большими размерами пакетов на потребительском оборудовании.

Эффективное обучение

Для максимального использования аппаратных ресурсов рекомендуется использовать платформу Ultralytics для оптимизированного облачного обучения. Она автоматически управляет настройкой среды и оптимальным размером пакета.

Преимущество Ultralytics: Экосистема и простота использования

Хотя изучение автономных репозиториев, таких как официальные страницы RTDETRv2 или YOLOv9 на GitHub, может быть очень познавательным, производственные среды требуют стабильности, простоты использования и хорошо поддерживаемой экосистемы. Интеграция этих моделей через Ultralytics Python API предлагает бесшовный опыт разработчика.

Унифицированный API и универсальность

Фреймворк Ultralytics абстрагирует сложности загрузки данных, аугментаций и распределенного обучения. Кроме того, хотя оригинальный RTDETRv2 строго ориентирован на detect, экосистема Ultralytics позволяет пользователям легко переключаться между обнаружением объектов, сегментацией экземпляров и оценкой позы.

from ultralytics import RTDETR, YOLO

# Train a YOLOv9 model on custom data
model_yolo = YOLO("yolov9c.pt")
model_yolo.train(data="coco8.yaml", epochs=50, imgsz=640)

# Easily switch to RT-DETR for complex scene evaluation
model_rtdetr = RTDETR("rtdetr-l.pt")
results = model_rtdetr.predict("https://ultralytics.com/images/bus.jpg")

# Export to production-ready formats like TensorRT
model_yolo.export(format="engine")

Благодаря надежной документации, автоматическому отслеживанию экспериментов и бесшовным возможностям экспорта в такие форматы, как ONNX, TensorRT и OpenVINO, Ultralytics значительно сокращает время от прототипа до производства.

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

В чем RTDETRv2 превосходит

Благодаря своему механизму глобального внимания, RTDETRv2 является мощным инструментом для серверной обработки и сред, где глобальный контекст имеет первостепенное значение. Он превосходно справляется с:

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

В чем YOLOv9 превосходит

YOLOv9 является лидером в области развертываний на периферийных устройствах с ограниченными ресурсами. Его вычислительная эффективность делает его идеальным для:

  • Робототехника: Навигация в реальном времени и обход препятствий, где требуется минимальная задержка.
  • IoT умного города: Развертывание на периферийных устройствах, таких как NVIDIA Jetson, для мониторинга дорожного движения.
  • Промышленная инспекция: Контроль качества на высокоскоростных сборочных линиях, требующий высокой частоты кадров (FPS).

Будущее: Представляем Ultralytics YOLO26

Хотя YOLOv9 и RTDETRv2 представляют собой огромные шаги вперед, ландшафт быстро развивался. Для современных развертываний недавно выпущенный Ultralytics YOLO26 представляет собой идеальное сочетание обеих архитектурных философий.

Объединяя лучшие аспекты трансформеров и сверточных нейронных сетей, YOLO26 устанавливает новый стандарт:

  • Сквозная архитектура без NMS: Как и RTDETRv2, YOLO26 является изначально сквозной, полностью устраняя постобработку NMS для более быстрых, простых и высокопредсказуемых конвейеров развертывания.
  • Оптимизатор MuSGD: Вдохновленный методами обучения больших языковых моделей (LLM) (такими как Kimi K2 от Moonshot AI), YOLO26 использует гибрид SGD и Muon. Это привносит беспрецедентную стабильность обучения и быструю сходимость в компьютерное зрение.
  • До 43% более быстрый инференс на CPU: В отличие от тяжелых трансформеров, YOLO26 сильно оптимизирован для периферийных вычислений и устройств без GPU.
  • Удаление DFL: Удаление Distribution Focal Loss значительно упрощает граф модели, обеспечивая безупречный экспорт на маломощные периферийные устройства и встроенные нейронные процессоры (NPU).
  • ProgLoss + STAL: Эти улучшенные функции потерь значительно улучшают распознавание мелких объектов, что является критически важной особенностью для наборов данных IoT и аэрофотоснимков.

Для команд, начинающих новый проект в области компьютерного зрения, мы настоятельно рекомендуем рассмотреть YOLO26. Он сочетает в себе элегантность трансформера без NMS с невероятной скоростью и эффективностью обучения высокооптимизированной архитектуры YOLO.

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

Обзор

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

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


Комментарии