RTDETRv2 против YOLOv10: техническое сравнение для обнаружения объектов
Выбор подходящей модели обнаружения объектов — это критически важное решение, которое уравновешивает сложные компромиссы между точностью, скоростью и вычислительными затратами. Это сравнение углубляется в две современные модели: RTDETRv2, архитектуру на основе трансформеров, известную своей высокой точностью, и YOLOv10, последнюю эволюцию в высокоэффективной серии YOLO. Мы предоставим углубленный анализ их архитектур, показателей производительности и идеальных вариантов использования, чтобы помочь вам выбрать оптимальную модель для вашего проекта компьютерного зрения.
RTDETRv2: высокоточное обнаружение на основе трансформеров
RT-DETRv2 (Детектор-трансформер реального времени v2) — это усовершенствованная модель обнаружения объектов от Baidu, в которой приоритет отдается максимальной точности за счет использования архитектуры на основе Transformer. Он построен на базе оригинального RT-DETR, внося улучшения для дальнейшего повышения его производительности.
- Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
- Организация: Baidu
- Дата: 24.07.2024 (статья v2)
- Arxiv: https://arxiv.org/abs/2407.17140
- GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Архитектура и особенности
Ядром RTDETRv2 является Vision Transformer (ViT). В отличие от традиционных CNN, которые обрабатывают изображения через локальные рецептивные поля, архитектура трансформера использует механизмы самовнимания для оценки важности всех входных признаков относительно друг друга. Это позволяет RTDETRv2 захватывать глобальный контекст и долгосрочные зависимости внутри изображения, что приводит к превосходной производительности в сложных сценах с окклюдированными или небольшими объектами. Дизайн модели фокусируется на расширении границ точности, пытаясь сохранить возможности работы в реальном времени.
Метрики производительности
Как показано в таблице производительности ниже, модели RTDETRv2 достигают высоких показателей mAP. Например, RTDETRv2-x достигает 54,3 mAP на наборе данных COCO. Однако эта высокая точность достигается дорогой ценой. Модели на основе Transformer, как известно, требуют больших вычислительных ресурсов, что приводит к более высокой задержке инференса, большему объему памяти и значительно более высоким требованиям к обучению. Процесс обучения для таких моделей, как RTDETRv2, часто требует значительного объема памяти CUDA и большего времени обучения по сравнению с более эффективными архитектурами, такими как YOLO.
Сильные и слабые стороны
Преимущества:
- Высокая точность: Отлично обнаруживает объекты в сложных и загроможденных сценах благодаря своей способности моделировать глобальный контекст.
- Надёжное представление признаков: Transformer-бэкбон может изучать мощные и надежные признаки, что делает его эффективным для сложных задач обнаружения.
Слабые стороны:
- Высокие вычислительные затраты: Требуется больше FLOPs и параметров, что приводит к более низкой скорости инференса по сравнению с YOLOv10.
- Большой объем памяти: Модели-трансформеры требуют значительного объема памяти CUDA во время обучения и инференса, что затрудняет их развертывание на устройствах с ограниченными ресурсами.
- Более медленное обучение: Сложность архитектуры приводит к увеличению циклов обучения.
- Менее универсальна: В основном ориентирована на обнаружение объектов, ей не хватает встроенной поддержки других задач, таких как сегментация, оценка позы и классификация, которые есть во фреймворках, таких как Ultralytics YOLO.
Идеальные приложения
RTDETRv2 лучше всего подходит для приложений, где точность имеет первостепенное значение, а вычислительные ресурсы не являются основным ограничением. Примеры использования включают:
- Автономное вождение: Для точного восприятия окружающей среды в ИИ в автомобилях с автоматическим управлением.
- Медицинская визуализация: Для детального анализа и обнаружения аномалий в ИИ в здравоохранении.
- Изображения высокого разрешения: Для анализа спутниковых или аэрофотоснимков, где крайне важно зафиксировать мелкие детали, аналогично использованию компьютерного зрения для анализа спутниковых снимков.
- Робототехника: Для обеспечения точного взаимодействия с объектами в сложных средах, расширяя возможности роли ИИ в робототехнике.
YOLOv10: Высокоэффективное обнаружение в реальном времени
YOLOv10, разработанный исследователями из Университета Цинхуа, является последней эволюцией в семействе YOLO, известной своей исключительной скоростью и эффективностью в обнаружении объектов в реальном времени. Он разработан для сквозного развертывания, что еще больше расширяет границы производительности и эффективности.
- Авторы: 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 опирается на успешную парадигму одноступенчатого детектора своих предшественников, таких как Ultralytics YOLOv8. Отличительной инновацией является стратегия обучения без NMS, в которой используются согласованные двойные назначения для устранения необходимости в постобработке Non-Maximum Suppression (NMS). Эта инновация упрощает конвейер развертывания и значительно снижает задержку при выводе.
Ключевым моментом является то, что YOLOv10 интегрирована в экосистему Ultralytics, предоставляя пользователям удобный опыт. Это включает в себя простой API, исчерпывающую документацию и доступ к активному сообществу и мощным инструментам, таким как Ultralytics HUB для MLOps.
Анализ производительности
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT10 (мс) |
параметры (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20.0 | 60.0 |
RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36.0 | 100.0 |
RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42.0 | 136.0 |
RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76.0 | 259.0 |
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.20 | 56.9 | 160.4 |
Таблица производительности наглядно иллюстрирует превосходство YOLOv10 в эффективности. YOLOv10x достигает немного более высокого mAP (54.4), чем RTDETRv2-x (54.3), но с на 25% меньшим количеством параметров и на 38% меньшим количеством FLOPs. Преимущество в скорости инференса также значительно: YOLOv10x на 23% быстрее на T4 GPU. Меньшие модели YOLOv10 находятся в своем собственном классе по скорости, при этом YOLOv10n работает всего за 1.56 мс. Этот замечательный баланс скорости и точности делает YOLOv10 более практичным выбором для более широкого спектра приложений.
Сильные и слабые стороны
Преимущества:
- Исключительная скорость и эффективность: Оптимизировано для быстрого инференса и низкой вычислительной стоимости, что делает его идеальным для систем реального времени и периферийного AI.
- Превосходный баланс производительности: Обеспечивает современный компромисс между скоростью и точностью для всех размеров моделей.
- Меньшие требования к памяти: Требует значительно меньше памяти CUDA для обучения и инференса по сравнению с моделями на основе трансформеров, такими как RTDETRv2, что делает его более доступным для разработчиков без высокопроизводительного оборудования.
- Простота использования: Преимущества хорошо поддерживаемой экосистемы Ultralytics, включающей простой Python API, обширную документацию и оптимизированный пользовательский интерфейс.
- Эффективное обучение: Предлагает готовые предварительно обученные веса и эффективные процессы обучения, что позволяет ускорить циклы разработки.
- Дизайн без NMS: Обеспечивает сквозное развертывание и снижает затраты на постобработку.
Слабые стороны:
- Компромисс в точности (для небольших моделей): Самые маленькие варианты YOLOv10 приоритезируют скорость, что может привести к более низкой точности, чем у самых больших моделей RTDETRv2, в сценариях, требующих абсолютно максимальной точности.
Идеальные варианты использования
Благодаря своей скорости и эффективности, YOLOv10 является отличным выбором для приложений реального времени и развертывания на оборудовании с ограниченными ресурсами.
- Наблюдение в реальном времени: Для быстрой детекции объектов в системах безопасности, как это рассматривается в проектах систем охранной сигнализации с Ultralytics YOLOv8.
- Edge AI: Идеально подходит для развертывания на мобильных, встроенных и IoT устройствах, таких как NVIDIA Jetson.
- Аналитика розничной торговли: Для анализа клиентов и запасов в реальном времени, например, в ИИ для интеллектуального управления запасами в розничной торговле.
- Управление трафиком: Для эффективного обнаружения транспортных средств и анализа транспортного потока, чтобы оптимизировать управление трафиком.
Заключение
RTDETRv2 и YOLOv10 — это мощные модели обнаружения объектов, но они служат разным приоритетам. RTDETRv2 — это выбор для специализированных приложений, где достижение максимально возможной точности является единственной целью и имеются достаточные вычислительные ресурсы. Его архитектура Transformer превосходно справляется с пониманием сложных сцен, но за счет сложности модели, скорости вывода и высокого потребления памяти.
В отличие от них, YOLOv10 предлагает гораздо более сбалансированное и практичное решение для подавляющего большинства реальных сценариев. Он обеспечивает превосходное сочетание скорости, эффективности и точности, что делает его весьма конкурентоспособным даже на самых высоких уровнях производительности. Интегрированный в надежную экосистему Ultralytics, YOLOv10 выигрывает от беспрецедентной простоты использования, обширной поддержки, более низких требований к памяти и эффективных рабочих процессов обучения. Для разработчиков и исследователей, которым нужна высокопроизводительная, ресурсоэффективная и простая в развертывании модель, YOLOv10 — очевидный выбор.
Пользователям, заинтересованным в других высокопроизводительных моделях, также стоит рассмотреть возможность изучения Ultralytics YOLO11 для ознакомления с последними достижениями или YOLOv8 как зрелый и универсальный вариант. Для получения дополнительных сравнений см. наши статьи о YOLOv10 vs YOLOv8 и RT-DETR vs YOLO11.