YOLOv8 против RTDETRv2: Всестороннее техническое сравнение
В быстро развивающейся области компьютерного зрения выбор правильной модели обнаружения объектов имеет решающее значение для успеха проекта. В этом сравнении рассматриваются технические различия между YOLOv8универсальной системой на основе CNN от Ultralytics и RTDETRv2, сложной моделью на основе трансформаторов от Baidu. Анализируя их архитектуры, показатели производительности и требования к ресурсам, мы стремимся направить разработчиков и исследователей к оптимальному решению для их конкретных нужд.
Визуализация различий в производительности
На приведенной ниже диаграмме показаны компромиссы между скоростью и точностью для моделей различных размеров, что подчеркивает, что YOLOv8 сохраняет превосходную эффективность по всем параметрам.
Анализ производительности: скорость в сравнении с точностью
В следующей таблице представлено прямое сравнение ключевых показателей. Хотя RTDETRv2 достигает высокой точности при использовании самых больших моделей, YOLOv8 демонстрирует значительное преимущество в скорости вывода и эффективности параметров, особенно на CPU оборудовании, где трансформаторные модели часто сталкиваются с узкими местами латентности.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
Ultralytics YOLOv8: стандарт универсальности и скорости
Запуск в производство в начале 2023 года, YOLOv8 представляет собой значительный скачок вперед в семействе YOLO , представляя единую основу для решения множества задач компьютерного зрения. Он был разработан для обеспечения наилучшего компромисса между скоростью и точностью, что делает его очень подходящим для приложений реального времени - от промышленной автоматизации до инфраструктуры "умного города".
- Авторы: Гленн Джокер, Аюш Чаурасия и Цзин Цю
- Организация:Ultralytics
- Дата: 10.01.2023
- GitHub:ultralytics
- Документация:Документация поYOLOv8
Основные архитектурные особенности
В YOLOv8 используется головка обнаружения без якорей, что упрощает процесс обучения и улучшает обобщение для различных форм объектов. Архитектура YOLOv8 включает в себя поперечную часть (CSP) Darknet для эффективного извлечения признаков и сеть Path Aggregation Network (PAN)-FPN для надежного многомасштабного слияния. В отличие от многих конкурентов, YOLOv8 поддерживает классификацию изображений, сегментацию объектов, оценку позы и обнаружение ориентированных объектов (OBB) в рамках единого и удобного API.
Сильные стороны
- Исключительная эффективность: Оптимизирует использование памяти и вычислительную нагрузку, позволяя развернуть систему на таких устройствах, как NVIDIA Jetson и Raspberry Pi.
- Скорость обучения: Требуется значительно меньше памяти CUDA и времени для обучения по сравнению с архитектурами на основе трансформаторов.
- Богатая экосистема: Подкрепленная исчерпывающей документацией, активной поддержкой сообщества и бесшовной интеграцией с такими инструментами, как TensorRT и OpenVINO.
- Простота в использовании: опыт "pip install ultralytics" позволяет разработчикам начать обучение и прогнозирование за считанные минуты.
RTDETRv2: Точность толкающего трансформатора
RTDETRv2 - это эволюция трансформатора обнаружения в реальном времениRT-DETR), разработанная для использования возможностей глобального контекста трансформаторов зрения (ViTs) при попытке смягчить присущие им проблемы задержки. Его цель - превзойти модели YOLO в тестах на точность за счет использования механизмов самовнимания.
- Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
- Организация:Baidu
- Дата: 2024-07-24 (релиз v2)
- Arxiv:RT-DETRv2 Paper
- GitHub:RT-DETR
Обзор архитектуры
RTDETRv2 использует гибридный подход, используя основу CNN (обычно ResNet) для извлечения признаков, которые затем обрабатываются кодером-декодером с трансформатором. Механизм самовнушения позволяет модели понимать взаимосвязи между удаленными частями изображения, что помогает в сложных сценах с окклюзией. В версии 2 введен оператор дискретной выборки и улучшена устойчивость динамического обучения.
Сильные и слабые стороны
- Преимущества:
- Глобальный контекст: Отлично справляется со сложными объектными связями и окклюзиями благодаря своей трансформаторной природе.
- Высокая точность: Самые крупные модели достигают немного более высоких показателейmAP на наборе данных COCO по сравнению с YOLOv8x.
- Без якоря: Как и YOLOv8, он устраняет необходимость в ручной настройке якорного ящика.
- Слабые стороны:
- Ресурсоемкость: большое количество FLOP и параметров делает его более медленным на CPU и требует дорогостоящих GPU для обучения.
- Ограниченная поддержка задач: В основном ориентирован на обнаружение объектов, не имеет встроенной многозадачности (сегментация, позиционирование и т. д.) фреймворка Ultralytics .
- Сложное развертывание: Архитектура трансформатора может быть более сложной для оптимизации для мобильных и встроенных целей по сравнению с чистыми CNN.
Подробное сравнение: Архитектура и удобство использования
Эффективность тренировок и память
Одно из самых заметных отличий заключается в процессе обучения. Модели на основе трансформаторов, такие как RTDETRv2, как известно, требовательны к данным и памяти. Им часто требуется значительно больше памятиCUDA и больше эпох обучения для сходимости по сравнению с CNN, такими как YOLOv8. Для исследователей и стартапов с ограниченными ресурсами GPU , Ultralytics YOLOv8 предлагает гораздо более доступный барьер для входа, позволяя проводить эффективное пользовательское обучение на оборудовании потребительского класса.
Универсальность и экосистема
Хотя RTDETRv2 является сильным академическим соперником для задач чистого обнаружения, ему не хватает целостной экосистемы, которая окружает модели Ultralytics . YOLOv8 - это не просто модель, это часть платформы, которая поддерживает:
- Управление данными: Простая работа с такими наборами данных, как COCO и Objects365.
- MLOps: интеграция с Weights & Biases, Cometи Ultralytics HUB.
- Развертывание: Экспорт одним щелчком мыши в такие форматы, как ONNX, CoreML и TFLite для поддержки различных аппаратных средств.
Рассмотрение аппаратного обеспечения
Если ваша цель развертывания предполагает использованиеCPU (например, стандартные серверы, ноутбуки) или маломощных пограничных устройств, YOLOv8 в подавляющем большинстве случаев является лучшим выбором благодаря оптимизированной архитектуре CNN. RTDETRv2 лучше использовать в сценариях с ускорением на высокопроизводительных GPU .
Идеальные варианты использования
Когда выбирать YOLOv8
YOLOv8 является предпочтительным выбором для подавляющего большинства реальных развертываний. Баланс скорости, точности и простоты использования делает его идеальным для:
- Аналитика в реальном времени: Мониторинг трафика, аналитика розничной торговли и спортивного анализа, где высокий FPS имеет решающее значение.
- Пограничные вычисления: Запуск ИИ на дронах, роботах или мобильных приложениях в условиях нехватки мощности и вычислительных ресурсов.
- Многозадачные приложения: Проекты, требующие одновременного отслеживания, сегментации и классификации объектов.
Когда следует выбирать RTDETRv2
RTDETRv2 отлично зарекомендовал себя в специфических нишах, где вычислительные затраты играют второстепенную роль по сравнению с незначительным повышением точности:
- Академические исследования: Изучение свойств трансформаторов зрения.
- Облачная обработка: Пакетная обработка изображений на мощных серверных фермах, где задержка не так важна, как обнаружение сложных, закрытых объектов.
Пример кода: Начало работы с YOLOv8
API Ultralytics разработан для простоты. Вы можете загрузить предварительно обученную модель, запустить прогнозирование или начать обучение с помощью всего нескольких строк кода Python .
from ultralytics import YOLO
# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()
# Train on a custom dataset
# model.train(data="coco8.yaml", epochs=100, imgsz=640)
Заключение
В то время как RTDETRv2 демонстрирует потенциал трансформаторных архитектур в достижении высокой точности, Ultralytics YOLOv8 остается лучшим выбором для практического, производственного компьютерного зрения. Эффективность архитектуры YOLOv8 обеспечивает более быстрый вывод, более низкие затраты на обучение и более широкую совместимость с оборудованием. Кроме того, надежная экосистема Ultralytics обеспечивает разработчиков инструментами, документацией и поддержкой сообщества, необходимыми для эффективного воплощения в жизнь их решений в области ИИ.
Для тех, кто ищет абсолютную производительность и эффективность, мы также рекомендуем обратить внимание на YOLO11который еще больше усовершенствовал наследие YOLO , обеспечив еще более оптимальное соотношение точности и скорости.
Изучите другие модели
Если вы хотите узнать больше о возможностях экосистемы Ultralytics или сравнить другие модели SOTA, ознакомьтесь с этими ресурсами:
- YOLO11: последняя современная модель YOLO
- YOLOv10: сквозной детектор объектов в реальном времени.
- RT-DETR: оригинальный трансформатор обнаружения в реальном времени.
- YOLOv9: фокусируется на программируемой информации о градиенте.