YOLOv8 против RTDETRv2#
Ландшафт компьютерного зрения постоянно развивается, и новые архитектуры расширяют границы возможного в обнаружении объектов в реальном времени. Две выдающиеся модели, которые привлекли значительное внимание, — это Ultralytics YOLOv8 и RTDETRv2 от Baidu. В этом руководстве представлено всестороннее техническое сравнение этих двух мощных моделей с изучением их архитектур, показателей производительности и идеальных сценариев развертывания.
Обзор YOLOv8#
Ultralytics YOLOv8 представляет собой важную веху в семействе моделей YOLO (You Only Look Once). Она опирается на многолетние фундаментальные исследования, обеспечивая исключительную скорость, точность и простоту использования для широкого спектра задач.
Основные характеристики:
- Авторы: Glenn Jocher, Ayush Chaurasia и Jing Qiu
- Организация: Ultralytics
- Дата: 10 января 2023 г.
- GitHub: Репозиторий Ultralytics
- Документация: Документация YOLOv8
Архитектура и преимущества#
YOLOv8 представляет оптимизированную архитектуру, которая улучшает как извлечение признаков, так и регрессию ограничивающих прямоугольников. Это детектор без привязочных элементов (anchor-free), что упрощает голову предсказаний и сокращает количество настроек гиперпараметров, необходимых в процессе обучения. Такая архитектура обеспечивает фантастический баланс производительности между скоростью инференса и средней точностью (mAP), что делает её отлично подходящей для развертывания в реальных условиях как на периферийных устройствах, так и на облачных серверах.
Кроме того, YOLOv8 предъявляет значительно более низкие требования к памяти во время обучения по сравнению с архитектурами на базе Transformer. Это позволяет тебе обучать модели на стандартных потребительских GPU без возникновения ошибок нехватки памяти (out-of-memory).
Универсальность#
Одно из определяющих преимуществ YOLOv8 — его универсальность из коробки. В то время как многие модели фокусируются исключительно на ограничивающих прямоугольниках, YOLOv8 обеспечивает встроенную поддержку обнаружения объектов, сегментации экземпляров, классификации изображений, оценки позы и поиска ориентированных ограничивающих прямоугольников (OBB).
Обзор RTDETRv2#
RTDETRv2 (Real-Time Detection Transformer version 2) базируется на оригинальной RT-DETR, стремясь привнести мощные механизмы внимания Vision Transformers в приложения для обнаружения объектов в реальном времени.
Основные характеристики:
- Авторы: Вэньюй Лю, Иань Чжао, Циньяо Чанг, Куй Хуан, Гуаньчжун Ван и И Лю
- Организация: Baidu
- Дата: 2024-07-24
- Arxiv: 2407.17140
- GitHub: Репозиторий RT-DETR
- Документация: README RTDETRv2
Архитектура и преимущества#
RTDETRv2 использует гибридную архитектуру, которая объединяет основу на базе свёрточной нейронной сети (CNN) со структурой энкодера-декодера Transformer. Это позволяет модели улавливать сложные пространственные связи и глобальный контекст с помощью механизмов самовнимания (self-attention). Задействуя набор стратегий обучения "bag-of-freebies", RTDETRv2 достигает конкурентоспособных показателей mAP на стандартных эталонных наборах данных, таких как датасет COCO.
Слабые стороны#
Несмотря на высокую точность, природа RTDETRv2 на основе Transformer приводит к более высокому потреблению памяти и более медленному времени обучения по сравнению с чистыми архитектурами CNN. Трансформеры по своей сути требуют больше VRAM, что затрудняет их обучение на аппаратном обеспечении с ограниченными ресурсами. Кроме того, хотя RTDETRv2 сильна в обнаружении, ей не хватает многозадачной универсальности (например, для оценки позы и сегментации), присущей экосистеме Ultralytics.
Сравнение производительности#
При оценке моделей для продакшена компромисс между размером модели, скоростью вывода и точностью имеет первостепенное значение. В таблице ниже приведено прямое сравнение вариантов YOLOv8 и RTDETRv2.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| 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 |
Скорость измерялась с использованием инстанса Amazon EC2 P4d. Инференс на CPU задействовал ONNX, в то время как скорость на GPU тестировалась с помощью TensorRT.
Сценарии использования и рекомендации#
Выбор между YOLOv8 и RT-DETR зависит от требований твоего конкретного проекта, ограничений развертывания и предпочтений в экосистеме.
Когда выбирать YOLOv8#
YOLOv8 — отличный выбор для:
- Универсальное многозадачное развертывание: Проекты, требующие проверенной модели для обнаружения, сегментации, классификации и оценки позы в экосистеме Ultralytics.
- Устоявшихся производственных систем: существующих производственных сред, уже построенных на архитектуре YOLOv8 со стабильными и хорошо протестированными пайплайнами развертывания.
- Широкой поддержки сообщества и экосистемы: приложений, которым нужны обширные руководства по YOLOv8, сторонние интеграции и активные ресурсы сообщества.
Когда выбирать RT-DETR#
RT-DETR рекомендуется для:
- Исследований детектирования на основе Transformer: проектов, изучающих механизмы внимания и архитектуры трансформеров для end-to-end детектирования объектов без NMS.
- Сценариев с высокой точностью и гибкой задержкой: приложений, где точность детектирования является главным приоритетом, а немного большая задержка вывода допустима.
- Детектирования крупных объектов: сцен преимущественно со средними и крупными объектами, где глобальный механизм внимания трансформеров дает естественное преимущество.
Когда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчика:
- Развертывания на периферии без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложности постобработки подавления немаксимумов.
- Среды только с CPU: устройств без выделенного GPU-ускорения, где до 43% более быстрый вывод на CPU у YOLO26 дает решающее преимущество.
- Обнаружение малых объектов: Сложные сценарии, такие как aerial drone imagery или анализ с помощью IoT-сенсоров, где ProgLoss и STAL значительно повышают точность для крошечных объектов.
Преимущество Ultralytics#
Выбор модели выходит за рамки простых метрик; окружающая программная экосистема имеет решающее значение для продуктивности разработчика. Экосистема Ultralytics славится своей простотой в использовании, предоставляя единый Python API, который упрощает весь жизненный цикл машинно-обучаемого пайплайна.
От управления датасетами до распределенного обучения, Ultralytics берет на себя сложный шаблонный код (boilerplate). Ты получаешь выгоду от готовых предобученных весов и бесшовной интеграции с такими платформами, как Hugging Face, и инструментами мониторинга. Эта поддерживаемая экосистема гарантирует активную разработку, частые обновления и надежную поддержку сообщества.
Кроме того, эффективность обучения является отличительной чертой моделей Ultralytics YOLO. Они высоко оптимизированы для быстрой сходимости и меньшего потребления памяти в процессе обучения, что значительно ускоряет циклы экспериментов по сравнению с детекторами на базе Transformer, такими как RTDETRv2.
Взгляд в будущее: мощь YOLO26#
Хотя YOLOv8 остается мощным инструментом, разработчикам, ищущим абсолютный передовой край технологий, стоит рассмотреть переход на долгожданную YOLO26, выпущенную в январе 2026 года. YOLO26 переопределяет состояние дел в индустрии (state-of-the-art) благодаря нескольким прорывным инновациям:
- Дизайн без NMS (End-to-End): YOLO26 исключает постобработку Non-Maximum Suppression (NMS), что приводит к более быстрым и детерминированным рабочим процессам развертывания.
- Удаление DFL: Удаление Distribution Focal Loss оптимизирует модель для повышения совместимости с периферийными и маломощными устройствами.
- Оптимизатор MuSGD: Интегрируя инновации в обучении LLM, оптимизатор MuSGD обеспечивает более стабильные прогоны обучения и быструю сходимость.
- До 43% более быстрый вывод на CPU: Сильно оптимизировано для сред, где отсутствуют выделенные GPU.
- ProgLoss + STAL: Эти продвинутые функции потерь дают заметные улучшения в распознавании мелких объектов, что критически важно для аэрофотосъемки и робототехники.
Другие современные альтернативы, заслуживающие изучения в рамках пакета Ultralytics, включают YOLO11, которая предлагает надежную производительность для старых проектов, хотя для всех новых внедрений рекомендуется YOLO26.
Пример кода: обучение и инференс#
Простота API Ultralytics означает, что ты можешь загружать, обучать и развертывать модели всего в несколько строк кода Python. Убедись, что у тебя установлен PyTorch, прежде чем запускать следующий пример.
from ultralytics import YOLO
# Load a pretrained YOLOv8 small model
model = YOLO("yolov8s.pt")
# Train the model on your custom dataset
# Memory efficient training allows for larger batch sizes
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640, batch=16)
# Run inference on a test image
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()
# Export seamlessly for edge deployment
export_path = model.export(format="onnx")Ultralytics поддерживает экспорт в один клик в многочисленные форматы, включая ONNX, TensorRT и CoreML, упрощая опции развертывания моделей на различных аппаратных архитектурах.
Заключение#
Как YOLOv8, так и RTDETRv2 предлагают убедительные возможности для обнаружения объектов в реальном времени. RTDETRv2 демонстрирует мощь трансформеров в улавливании глобального контекста, что делает её подходящей для задач сложного пространственного мышления, где скорость вывода и затраты памяти не являются основными ограничениями.
Однако для разработчиков, которые ставят во главу угла исключительный баланс скорости, точности и эффективности ресурсов, модели Ultralytics YOLO остаются лучшим выбором. Легкая природа YOLOv8 в сочетании с непревзойденной простотой использования, универсальностью в решении множества задач компьютерного зрения и процветающей экосистемой с открытым исходным кодом делает её идеальным решением для масштабируемых сред продакшена. Для тех, кто ищет абсолютную вершину производительности на периферии, недавно выпущенная YOLO26 предлагает непревзойденную эффективность без NMS, которая продолжает лидировать в отрасли.