RTDETRv2 против YOLOv10: Достижения в области NMS-свободного обнаружения объектов в реальном времени
Эволюция компьютерного зрения во многом обусловлена неустанным стремлением к балансу скорости и точности. Традиционно конвейеры обнаружения объектов в реальном времени полагались на Non-Maximum Suppression (NMS) в качестве этапа постобработки для отфильтровывания перекрывающихся ограничивающих рамок. Однако NMS вносит задержки и усложняет настройку гиперпараметров. Недавно появились два различных архитектурных подхода для нативного решения этой проблемы: модели на основе трансформеров, такие как RTDETRv2, и модели на основе CNN, такие как YOLOv10.
Это руководство предоставляет всестороннее техническое сравнение этих двух моделей, анализируя их архитектуры, метрики производительности и идеальные сценарии использования, а также подчеркивая, как последние инновации в экосистеме Ultralytics предлагают оптимальное решение для современного развертывания.
RTDETRv2: Трансформеры обнаружения в реальном времени
RTDETRv2 основывается на оригинальной архитектуре RT-DETR, стремясь объединить глобальное понимание контекста Vision Transformers с требованиями к скорости в реальном времени, традиционно доминирующими в моделях YOLO.
Ключевые характеристики:
- Авторы: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang и Yi Liu
- Организация: Baidu
- Дата: 24.07.2024
- arXiv: https://arxiv.org/abs/2407.17140
- GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Архитектура и методологии обучения
RTDETRv2 использует сквозную архитектуру трансформера, которая изначально избегает NMS. Он улучшает своего предшественника, внедряя подход «Bag-of-Freebies», оптимизируя стратегию обучения и включая возможности многомасштабного обнаружения. Модель использует опорную сеть CNN для извлечения карт признаков (визуальных деталей, таких как края и текстуры), которые затем обрабатываются структурой энкодера-декодера трансформера. Это позволяет модели одновременно анализировать весь контекст изображения, что делает ее очень эффективной для понимания сложных сцен, где объекты плотно упакованы или перекрываются.
Сильные и слабые стороны
Преимущества:
- Глобальный контекст: Механизм внимания позволяет модели превосходно работать в сложных, загроможденных средах.
- Без NMS: Напрямую предсказывает координаты объектов, упрощая конвейер развертывания.
- Высокая точность: Достигает превосходной средней точности (mAP) на наборе данных COCO.
Слабые стороны:
- Ресурсоёмкость: Архитектуры Transformer обычно требуют значительно больше памяти CUDA во время обучения по сравнению с CNN, что делает их дорогостоящими для донастройки на стандартном оборудовании.
- Изменчивость скорости инференса: Хотя и быстры, интенсивные вычисления внимания могут приводить к снижению FPS в компьютерном зрении на периферийных устройствах, не имеющих специализированных ИИ-ускорителей.
YOLOv10: Обнаружение объектов в реальном времени End-to-End
YOLOv10 представляет собой значительный сдвиг в развитии обнаружения объектов YOLO, напрямую устраняя давнее узкое место NMS в рамках архитектуры CNN.
Ключевые характеристики:
- Авторы: Ao Wang, Hui Chen, Lihao Liu и др.
- Организация: Tsinghua University
- Дата: 2024-05-23
- arXiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/YOLOv10
Архитектура и методологии обучения
Ключевым нововведением YOLOv10 является его согласованное двойное назначение для обучения без NMS. Во время обучения используются две детекционные головы: одна с назначением «один-ко-многим» (как в традиционных YOLO) для обеспечения богатых сигналов контроля, и другая с назначением «один-к-одному» для устранения необходимости в NMS. Во время инференса используется только голова «один-к-одному», что приводит к сквозному процессу. Кроме того, авторы применили целостную стратегию проектирования модели, ориентированную на эффективность и точность, всесторонне оптимизируя различные компоненты для снижения вычислительной избыточности.
Сильные и слабые стороны
Преимущества:
- Экстремальная скорость: Удалив NMS и оптимизировав архитектуру, YOLOv10 достигает невероятно низкой задержки вывода.
- Эффективность: Требует меньше параметров и FLOPs для достижения сопоставимой точности с другими моделями, что делает ее очень подходящей для сред с ограниченными ресурсами.
- NMS-свободные развертывания: Упрощает интеграцию в периферийные приложения, такие как интеллектуальное видеонаблюдение.
Слабые стороны:
- Концепция первого поколения: Будучи первой YOLO, реализовавшей эту специфическую архитектуру без NMS, она заложила основу, но оставила место для многозадачной универсальности и оптимизации, наблюдаемых в последующих моделях, таких как YOLO11 и YOLO26.
Сравнение производительности
При оценке моделей для производства критически важен баланс между точностью и вычислительными затратами. В таблице ниже показаны компромиссы в производительности между различными размерами RTDETRv2 и YOLOv10.
| Модель | размер (пиксели) | 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
В то время как RTDETRv2 предлагает высокую точность, YOLOv10 демонстрирует заметное преимущество в задержке и эффективности параметров, особенно в своих меньших вариантах (Nano и Small), что делает его очень привлекательным для граничных вычислений и приложений AIoT.
Выбор правильного масштаба
Если вы развертываете на серверных GPUs, где размер пакета и VRAM менее ограничены, более крупные модели (например, -x или -l) максимизируют точность. Для периферийных устройств, таких как Raspberry Pi или мобильные телефоны, отдавайте предпочтение nano (-n) или small (-s) варианты для поддержания частоты кадров в реальном времени.
Сценарии использования и рекомендации
Выбор между RT-DETR и YOLOv10 зависит от конкретных требований вашего проекта, ограничений развертывания и предпочтений экосистемы.
Когда выбрать RT-DETR
RT-DETR — отличный выбор для:
- Исследования обнаружения на основе трансформеров: Проекты, исследующие механизмы внимания и архитектуры трансформеров для сквозного обнаружения объектов без NMS.
- Сценарии с высокой точностью и гибкой задержкой: Приложения, где точность обнаружения является главным приоритетом и допустима немного более высокая задержка вывода.
- Обнаружение крупных объектов: Сцены с преимущественно средне- и крупногабаритными объектами, где механизм глобального внимания трансформеров обеспечивает естественное преимущество.
Когда выбирать YOLOv10
YOLOv10 рекомендуется для:
- Обнаружение в реальном времени без NMS: Приложения, выигрывающие от сквозного обнаружения без Non-Maximum Suppression, что снижает сложность развертывания.
- Сбалансированный компромисс между скоростью и точностью: Проекты, требующие оптимального баланса между скоростью инференса и точностью обнаружения для моделей различных масштабов.
- Приложения с предсказуемой задержкой: Сценарии развертывания, где критически важны предсказуемые времена инференса, например, в робототехнике или автономных системах.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:
- Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Преимущество Ultralytics: Представляем YOLO26
Хотя RTDETRv2 и YOLOv10 предлагают впечатляющие академические достижения, их развертывание в реальных сценариях требует надежной, хорошо поддерживаемой программной экосистемы. Платформа Ultralytics обеспечивает беспрецедентный опыт для разработчиков, сочетая простоту использования, обширную документацию и мощные инструменты для аннотирования данных и развертывания.
Для разработчиков, ищущих абсолютное передовое решение в 2026 году, Ultralytics YOLO26 является лучшей рекомендацией. Она синтезирует лучшие идеи из обеих архитектур, одновременно внедряя новаторские улучшения:
- Сквозная архитектура без NMS: Основываясь на концепции, впервые примененной в YOLOv10, YOLO26 изначально исключает постобработку NMS, что приводит к более быстрой, простой логике развертывания и нулевой вариативности задержки.
- Удаление DFL: Удаление Distribution Focal Loss в YOLO26 упрощает экспорт модели и значительно улучшает совместимость с периферийными и маломощными устройствами.
- Оптимизатор MuSGD: Гибрид SGD и Muon (вдохновленный инновациями в обучении LLM), этот новый оптимизатор обеспечивает более стабильное обучение и значительно более быструю сходимость по сравнению с традиционными методами.
- До 43% более быстрая инференция на CPU: Тщательно оптимизирован для сред без выделенных GPU, демократизируя высокопроизводительный ИИ для компьютерного зрения.
- ProgLoss + STAL: Эти передовые функции потерь обеспечивают заметные улучшения в распознавании мелких объектов, что критически важно для приложений с использованием дронов и датчиков IoT.
- Непревзойденная универсальность: В отличие от моделей, ограниченных ограничивающими рамками, YOLO26 поддерживает полный набор задач, включая сегментацию экземпляров, оценку позы, классификацию изображений и OBB detect, дополненные специфическими для задач улучшениями, такими как Residual Log-Likelihood Estimation (RLE) для позы.
Бесшовная реализация с использованием python
Обучение и развертывание этих моделей с использованием API Ultralytics Python спроектировано так, чтобы быть беспроблемным. Требования к памяти заметно ниже во время обучения по сравнению с архитектурами, интенсивно использующими трансформеры, что позволяет обучать мощные модели на стандартном оборудовании.
from ultralytics import YOLO
# Load the cutting-edge YOLO26 model (recommended)
# Alternatively, load a YOLOv10 model using YOLO('yolov10n.pt')
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Easily export to various formats for edge deployment
model.export(format="onnx", simplify=True)
Независимо от того, внедряете ли вы системы охранной сигнализации или проводите анализ медицинских изображений, выбор модели, поддерживаемой активным сообществом Ultralytics, гарантирует наличие необходимых инструментов, руководств по настройке гиперпараметров и постоянных обновлений для достижения успеха. В то время как YOLOv10 и RTDETRv2 проложили путь для архитектур без NMS, YOLO26 доводит формулу до совершенства, предлагая оптимальный баланс производительности, универсальности и готовности к производственному использованию.