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

YOLOv10 против RT-DETRv2: Техническое сравнение для обнаружения объектов

Выбор оптимальной архитектуры обнаружения объектов - важнейшее решение, требующее поиска компромисса между скоростью вывода, точностью и потребностями в вычислительных ресурсах. В этом подробном руководстве сравниваются YOLOv10передовое развитие семейства YOLO на основе CNN, известное своей эффективностью, и RT-DETRv2сложной модели на основе трансформаторов, предназначенной для решения высокоточных задач. Мы анализируем их архитектурные инновации, показатели производительности и идеальные сценарии развертывания, чтобы помочь вам сделать осознанный выбор для ваших проектов в области компьютерного зрения.

YOLOv10: эффективное обнаружение в режиме реального времени

YOLOv10 представляет собой значительный скачок в линейке YOLO , сфокусированный на устранении узких мест традиционных детекторов реального времени. Разработанная исследователями из Университета Цинхуа, она представляет парадигму обучения NMS, которая упрощает конвейер развертывания, устраняя необходимость в постобработке Non-Maximum Suppression.

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

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

Вывод NMS

Отказ YOLOv10 от немаксимального подавления (NMS) снижает сложность этапов постобработки. Это приводит к снижению задержек в выводах и упрощает развертывание модели в сквозных конвейерах без использования собственных ядер CUDA для NMS.

Модель эффективно масштабируется в различных размерах, от нано-версии (n) для работы в условиях жестких ограничений до сверхбольшой (x) версии для более высоких требований к точности.

from ultralytics import YOLO

# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")

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

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

RT-DETRv2: Точность на основе трансформатора

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

Визуальные трансформаторы в детекции

В отличие от традиционных CNN, которые обрабатывают изображения с помощью локальных рецептивных полей, RT-DETRv2 использует основу Vision Transformer (ViT). Это позволяет модели самостоятельно обрабатывать участки изображения, эффективно понимая взаимосвязь между удаленными объектами в сцене. Хотя эта возможность глобального контекста повышает точность обнаружения, она обычно связана с большими вычислительными затратами по сравнению с оптимизированной архитектурой YOLOv10.

RT-DETRv2 разработан как адаптируемый, предлагая различные масштабы модели для удовлетворения различных потребностей в производительности, хотя он обычно требует больше памяти GPU для обучения и вывода, чем эквивалентные модели YOLO .

Узнайте больше о RT-DETRv2

Анализ производительности

Приведенное ниже сравнение подчеркивает преимущества каждой архитектуры. YOLOv10 превосходит по скорости и эффективности, предлагая удивительно низкую задержку и количество параметров. Например, модель YOLOv10n работает со скоростью 1,56 мс на GPU T4, что делает ее идеальной для высокоскоростной обработки видео. RT-DETRv2хотя и работает медленнее, обеспечивает высокую точность, особенно в моделях больших размеров, но за счет значительно большего количества FLOP и использования памяти.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259

Как видно из таблицы, YOLOv10x достигает превосходного показателя mAP в 54,4% по сравнению с RT-DETRv2 в 54,3%, при этом затрачивая на вывод на 23% меньше времени и обладая значительно меньшей площадью модели. Такая эффективность делает YOLOv10 более сбалансированным выбором для большинства приложений, где требуется учет аппаратных ресурсов.

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

YOLOv10

  • Преимущества:
    • Низкая задержка: Конструкция NMS позволяет делать выводы очень быстро, что очень важно для приложений, работающих в режиме реального времени.
    • Эффективность использования ресурсов: Требует меньше параметров и FLOP, что делает его пригодным для развертывания на пограничных устройствах ИИ, таких как NVIDIA Jetson, или мобильных платформах.
    • Интеграция с экосистемой: Полностью интегрирована в экосистему Ultralytics , что позволяет легко экспортировать данные в такие форматы, как ONNX, TensorRT и CoreML.
  • Слабые стороны:
    • Обнаружение мелких объектов: Чрезвычайно маленькие версии (например, YOLOv10n) могут уступать в точности точности сырой скорости по сравнению с более крупными моделями трансформаторов.

RT-DETRv2

  • Преимущества:
    • Глобальный контекст: Архитектура трансформеров отлично справляется с пониманием сложных сцен и взаимосвязей между объектами.
    • NMS Native: Трансформеры естественным образом избегают NMS, упрощая конвейер постобработки, подобно YOLOv10.
  • Слабые стороны:
    • Высокая стоимость вычислений: Обучение и выводы требуют значительно больше памяти CUDA и вычислительной мощности.
    • Низкая скорость: Механизм самовнушения, несмотря на свою точность, требует больших вычислительных затрат, что приводит к увеличению времени ожидания.
    • Сложность развертывания: Модели трансформеров иногда сложнее оптимизировать для определенного встроенного оборудования по сравнению с CNN.

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

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

  • Выбирайте YOLOv10 , если: Вам нужна производительность в реальном времени на граничных устройствах, например, в автономных дронах или мобильных приложениях. Благодаря небольшому объему памяти и высокой скорости он идеально подходит для таких сценариев, как мониторинг трафика или аналитика розничной торговли.
  • Выбирайте RT-DETRv2 , если: Вы располагаете достаточными ресурсами GPU и работаете со сложными сценами, где максимальная точность является единственным приоритетом, например, в академических исследованиях высокого уровня или при анализе сложных изображений на стороне сервера.

Преимущество Ultralytics

Несмотря на то, что обе модели обладают привлекательными возможностями, использование Ultralytics YOLO моделей, включая YOLOv10 и самую современную модель YOLO11-дает явное преимущество в жизненном цикле разработки.

  1. Простота использования: Ultralytics предоставляет унифицированный Python API и CLI , которые стандартизируют обучение, проверку и развертывание. Это позволяет разработчикам переключаться между YOLOv8, YOLOv10, YOLO11 и RT-DETR с помощью одной строки кода.
  2. Эффективность обучения: Модели Ultralytics оптимизированы для эффективного обучения, часто сходятся быстрее и требуют меньше памяти, чем стандартные реализации. Это позволяет сократить расходы на облачные вычисления и ускорить выход на рынок.
  3. Универсальность: Помимо обнаружения, система Ultralytics поддерживает сегментацию, оценку позы и OBB, что позволяет расширять возможности проекта без смены инструментов.
  4. Хорошо поддерживаемая экосистема: Благодаря частым обновлениям, обширным руководствам и процветающему сообществу пользователи получают преимущества от постоянных улучшений и поддержки.

Запуск различных моделей

С помощью API Ultralytics можно легко переключаться между архитектурами:

from ultralytics import RTDETR, YOLO

# Train YOLOv10
model_yolo = YOLO("yolov10n.pt")
model_yolo.train(data="coco8.yaml", epochs=100)

# Train RT-DETR
model_rtdetr = RTDETR("rtdetr-l.pt")
model_rtdetr.train(data="coco8.yaml", epochs=100)

Заключение

Оба YOLOv10 и RT-DETRv2 представляют собой передовую технологию обнаружения объектов. RT-DETRv2 является надежным выбором для задач, ориентированных на исследования, где вычислительные затраты вторичны по отношению к точности. Однако для подавляющего большинства реальных задач, YOLOv10 предлагает превосходный баланс. Сочетание высокой скорости, низкой задержки и эффективности использования ресурсов делает его практическим победителем для инженеров, создающих масштабируемые приложения.

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

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

Если вы заинтересованы в дальнейших сравнениях, ознакомьтесь с ними:


Комментарии