Link to this sectionYOLOv8 против RTDETRv2#
Ландшафт компьютерного зрения постоянно развивается, и новые архитектуры расширяют границы возможного в обнаружении объектов в реальном времени. Две выдающиеся модели, которые привлекли значительное внимание, — это Ultralytics YOLOv8 и RTDETRv2 от Baidu. В этом руководстве представлено всестороннее техническое сравнение этих двух мощных моделей с изучением их архитектур, показателей производительности и идеальных сценариев развертывания.
Link to this sectionОбзор YOLOv8#
Ultralytics YOLOv8 представляет собой важную веху в семействе моделей YOLO (You Only Look Once). Она опирается на многолетние фундаментальные исследования, обеспечивая исключительную скорость, точность и простоту использования для широкого спектра задач.
Основные характеристики:
- Авторы: Glenn Jocher, Ayush Chaurasia и Jing Qiu
- Организация: Ultralytics
- Дата: 10 января 2023 г.
- GitHub: Репозиторий Ultralytics
- Документация: Документация YOLOv8
Link to this sectionАрхитектура и преимущества#
YOLOv8 внедряет оптимизированную архитектуру, которая улучшает как извлечение признаков, так и регрессию ограничивающих рамок (BBox). Это детектор без анкоров (anchor-free), что упрощает предсказательную голову и сокращает количество гиперпараметров, требующих настройки во время обучения. Такая архитектура обеспечивает отличный баланс производительности между скоростью вывода и средним значением точности (mAP), что делает её очень подходящей для реального развертывания как на периферийных устройствах, так и на облачных серверах.
Более того, YOLOv8 требует значительно меньших объемов памяти во время обучения по сравнению с архитектурами на основе Transformer. Это позволяет тебе обучать модели на стандартных потребительских GPU, не сталкиваясь с ошибками нехватки памяти.
Link to this sectionУниверсальность#
Одной из определяющих сильных сторон YOLOv8 является её врожденная универсальность. В то время как многие модели фокусируются исключительно на ограничивающих рамках, YOLOv8 обеспечивает готовую поддержку для обнаружения объектов, сегментации экземпляров, классификации изображений, оценки позы и обнаружения ориентированных ограничивающих рамок (OBB).
Link to this sectionОбзор RTDETRv2#
RTDETRv2 (Real-Time Detection Transformer version 2) базируется на оригинальной RT-DETR, стремясь привнести мощные механизмы внимания Vision Transformers в приложения для обнаружения объектов в реальном времени.
Основные характеристики:
- Авторы: Вэньюй Лю, Иань Чжао, Циньяо Чанг, Куй Хуан, Гуаньчжун Ван и И Лю
- Организация: Baidu
- Дата: 2024-07-24
- Arxiv: 2407.17140
- GitHub: Репозиторий RT-DETR
- Документация: RTDETRv2 README
Link to this sectionАрхитектура и преимущества#
RTDETRv2 использует гибридную архитектуру, объединяющую магистральную сеть сверточной нейронной сети (CNN) со структурой энкодера-декодера Transformer. Это позволяет модели улавливать сложные пространственные взаимосвязи и глобальный контекст с помощью механизмов self-attention. Используя набор стратегий обучения "bag-of-freebies", RTDETRv2 достигает конкурентоспособных показателей mAP на стандартных эталонных наборах данных, таких как набор данных COCO.
Link to this sectionСлабые стороны#
Несмотря на высокую точность, природа RTDETRv2 на основе Transformer приводит к более высокому потреблению памяти и более медленному времени обучения по сравнению с чистыми архитектурами CNN. Трансформеры по своей сути требуют больше VRAM, что затрудняет их обучение на аппаратном обеспечении с ограниченными ресурсами. Кроме того, хотя RTDETRv2 сильна в обнаружении, ей не хватает многозадачной универсальности (например, для оценки позы и сегментации), присущей экосистеме Ultralytics.
Link to this sectionСравнение производительности#
При оценке моделей для продакшена компромисс между размером модели, скоростью вывода и точностью имеет первостепенное значение. В таблице ниже приведено прямое сравнение вариантов 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.
Link to this sectionСценарии использования и рекомендации#
Выбор между YOLOv8 и RT-DETR зависит от требований твоего конкретного проекта, ограничений развертывания и предпочтений в экосистеме.
Link to this sectionКогда выбирать YOLOv8#
YOLOv8 — отличный выбор для:
- Универсального развертывания с несколькими задачами: проектов, требующих проверенной модели для обнаружения, сегментации, классификации и оценки позы в рамках экосистемы Ultralytics.
- Устоявшихся производственных систем: существующих производственных сред, уже построенных на архитектуре YOLOv8 со стабильными и хорошо протестированными пайплайнами развертывания.
- Широкой поддержки сообщества и экосистемы: приложений, которым нужны обширные руководства по YOLOv8, сторонние интеграции и активные ресурсы сообщества.
Link to this sectionКогда выбирать RT-DETR#
RT-DETR рекомендуется для:
- Исследований детектирования на основе Transformer: проектов, изучающих механизмы внимания и архитектуры трансформеров для end-to-end детектирования объектов без NMS.
- Сценариев с высокой точностью и гибкой задержкой: приложений, где точность детектирования является главным приоритетом, а немного большая задержка вывода допустима.
- Детектирования крупных объектов: сцен преимущественно со средними и крупными объектами, где глобальный механизм внимания трансформеров дает естественное преимущество.
Link to this sectionКогда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и опыта разработчика:
- Развертывания на периферии без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложности постобработки подавления немаксимумов.
- Среды только с CPU: устройств без выделенного GPU-ускорения, где до 43% более быстрый вывод на CPU у YOLO26 дает решающее преимущество.
- Детектирования мелких объектов: сложных сценариев, таких как аэросъемка с дронов или анализ датчиков IoT, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Link to this sectionПреимущество Ultralytics#
Выбор модели выходит за рамки простых метрик; окружающая экосистема программного обеспечения имеет решающее значение для продуктивности разработчика. Экосистема Ultralytics известна своей простотой использования, предоставляя унифицированный Python API, который упрощает весь жизненный цикл машинного обучения.
От управления наборами данных до распределенного обучения, Ultralytics берет на себя сложный шаблонный код. Разработчики получают выгоду от готовых к использованию предобученных весов и бесшовной интеграции с такими платформами, как Hugging Face, и инструментами мониторинга. Эта поддерживаемая экосистема гарантирует активную разработку, частые обновления и надежную поддержку сообщества.
Более того, эффективность обучения является отличительной чертой моделей Ultralytics YOLO. Они высоко оптимизированы для быстрой сходимости и меньшего потребления памяти во время процесса обучения, что значительно ускоряет циклы экспериментов по сравнению с детекторами на основе Transformer, такими как RTDETRv2.
Link to this sectionВзгляд в будущее: мощь YOLO26#
Хотя YOLOv8 остается мощным инструментом, разработчикам, стремящимся к абсолютно передовым технологиям, стоит рассмотреть переход на долгожданную YOLO26, выпущенную в январе 2026 года. YOLO26 переопределяет современное состояние области с помощью нескольких инноваций:
- Дизайн без NMS (End-to-End): YOLO26 исключает постобработку Non-Maximum Suppression (NMS), что приводит к более быстрым и детерминированным рабочим процессам развертывания.
- Удаление DFL: Удаление Distribution Focal Loss оптимизирует модель для повышения совместимости с периферийными и маломощными устройствами.
- Оптимизатор MuSGD: Интегрируя инновации в обучении LLM, оптимизатор MuSGD обеспечивает более стабильные прогоны обучения и быструю сходимость.
- До 43% более быстрый вывод на CPU: Сильно оптимизировано для сред, где отсутствуют выделенные GPU.
- ProgLoss + STAL: Эти продвинутые функции потерь дают заметные улучшения в распознавании мелких объектов, что критически важно для аэрофотосъемки и робототехники.
Другие современные альтернативы, которые стоит изучить в рамках набора инструментов Ultralytics, включают YOLO11, обеспечивающую надежную производительность для устаревших проектов, хотя для всех новых развертываний рекомендуется YOLO26.
Link to this sectionПример кода: обучение и инференс#
Простота Ultralytics API означает, что ты можешь загружать, обучать и развертывать модели всего в несколько строк кода 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, упрощая варианты развертывания модели на различных аппаратных архитектурах.
Link to this sectionЗаключение#
Как YOLOv8, так и RTDETRv2 предлагают убедительные возможности для обнаружения объектов в реальном времени. RTDETRv2 демонстрирует мощь трансформеров в улавливании глобального контекста, что делает её подходящей для задач сложного пространственного мышления, где скорость вывода и затраты памяти не являются основными ограничениями.
Однако для разработчиков, которые ставят во главу угла исключительный баланс скорости, точности и эффективности ресурсов, модели Ultralytics YOLO остаются лучшим выбором. Легкая природа YOLOv8 в сочетании с непревзойденной простотой использования, универсальностью в решении множества задач компьютерного зрения и процветающей экосистемой с открытым исходным кодом делает её идеальным решением для масштабируемых сред продакшена. Для тех, кто ищет абсолютную вершину производительности на периферии, недавно выпущенная YOLO26 предлагает непревзойденную эффективность без NMS, которая продолжает лидировать в отрасли.