YOLOv6-3.0 vs RTDETRv2: техническое сравнение
Выбор подходящей модели обнаружения объектов — это критически важное решение, которое обеспечивает баланс между точностью, скоростью и вычислительными затратами. Это сравнение углубляется в две мощные, но архитектурно различные модели: YOLOv6-3.0, высокооптимизированный детектор на основе CNN, и RTDETRv2, современная модель на основе трансформера реального времени. В то время как YOLOv6-3.0 разработана для высокоскоростных промышленных применений, RTDETRv2 использует Vision Transformer (ViT) для достижения исключительной точности.
На этой странице представлен углубленный анализ их архитектур, показателей производительности и идеальных вариантов использования, чтобы помочь вам определить, что лучше всего подходит для вашего проекта.
YOLOv6-3.0
Авторы: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu и Xiangxiang Chu
Организация: Meituan
Дата: 2023-01-13
Arxiv: https://arxiv.org/abs/2301.05586
GitHub: https://github.com/meituan/YOLOv6
Документация: https://docs.ultralytics.com/models/yolov6/
YOLOv6-3.0 — это одноэтапный фреймворк обнаружения объектов, разработанный компанией Meituan, специально для промышленных приложений, где скорость инференса является главным приоритетом. Он построен на классической архитектуре YOLO с несколькими ключевыми оптимизациями.
Архитектура и ключевые особенности
YOLOv6-3.0 представляет аппаратный дизайн нейронной сети для максимальной эффективности. Его архитектура включает эффективный репараметризованный backbone и переработанный neck для балансировки точности и скорости. Модель также включает оптимизированную стратегию обучения, включая самодистилляцию, для повышения производительности без увеличения накладных расходов на инференс. Это классический одностадийный детектор объектов, что делает его изначально быстрым и простым в развертывании.
Сильные стороны
- Высокая скорость инференса: Оптимизирована для высокой производительности, что делает ее очень подходящей для инференса в реальном времени в промышленных условиях.
- Хороший компромисс между точностью и скоростью: Обеспечивает конкурентоспособную точность, особенно с его более крупными вариантами, сохраняя при этом высокую пропускную способность.
- Квантование и поддержка мобильных устройств: Обеспечивает надежную поддержку квантования моделей и включает варианты YOLOv6Lite, адаптированные для развертывания на мобильных устройствах или устройствах на базе CPU.
Слабые стороны
- Ограниченная универсальность задач: В основном ориентирован на обнаружение объектов, не хватает встроенной поддержки других задач, таких как сегментация, классификация и оценка позы, которые есть в более полных фреймворках, таких как Ultralytics YOLO.
- Экосистема и обслуживание: Будучи проектом с открытым исходным кодом, его экосистема не так обширна и активно поддерживается, как платформа Ultralytics, что может означать меньшее количество обновлений и меньшую поддержку сообщества.
Идеальные варианты использования
YOLOv6-3.0 превосходен в сценариях, где скорость имеет первостепенное значение:
- Промышленная автоматизация: Идеально подходит для контроля качества и мониторинга процессов в производстве.
- Системы реального времени: Идеально подходят для приложений со строгими требованиями к задержке, таких как робототехника и видеонаблюдение.
- Edge Computing: Его эффективная конструкция и мобильные варианты делают его отличным выбором для развертывания на устройствах с ограниченными ресурсами, таких как NVIDIA Jetson.
RTDETRv2
Авторы: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang и Yi Liu
Организация: Baidu
Дата: 2023-04-17
Arxiv: https://arxiv.org/abs/2304.08069
GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Документация: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch#readme
RT-DETRv2 (Детектор-трансформер реального времени v2) — это передовой детектор объектов, который адаптирует архитектуру Transformer для работы в реальном времени. Он построен на основе оригинальной структуры DETR и обеспечивает высокую точность за счет эффективного захвата глобального контекста изображения.
Архитектура и ключевые особенности
RTDETRv2 использует структуру кодировщика-декодировщика transformer, которая позволяет моделировать долгосрочные зависимости между объектами в сцене. Это глобальное контекстное понимание часто приводит к превосходной точности, особенно в сложных изображениях со многими перекрывающимися объектами. Как детектор без привязки к anchor, он упрощает конвейер обнаружения, устраняя необходимость в проектировании anchor box и немаксимальном подавлении (NMS) в декодере.
Сильные стороны
- Высокая точность: Трансформерная архитектура обеспечивает глубокое понимание контекста изображения, что приводит к самой современной точности обнаружения.
- Надёжное извлечение признаков: Отлично захватывает как глобальный контекст, так и детализацию, что делает его надежным в загроможденных сценах.
- Возможность работы в реальном времени: Оптимизирован для быстрого инференса, особенно при ускорении с помощью таких инструментов, как TensorRT, что делает его пригодным для приложений реального времени.
Слабые стороны
- Высокая вычислительная стоимость: Transformers, как известно, требуют больших ресурсов. Модели RTDETRv2 обычно имеют больше параметров и FLOPs, чем их аналоги на основе CNN.
- Demanding Training Requirements (Высокие требования к обучению): Обучение моделей на основе трансформеров обычно требует значительно больше данных, более длительного времени обучения и гораздо большего объема памяти CUDA, что делает его менее доступным для пользователей с ограниченным оборудованием. В отличие от этого, модели Ultralytics YOLO разработаны для эффективного обучения на стандартных GPU.
Идеальные варианты использования
RTDETRv2 лучше всего подходит для приложений, где максимальная точность является основной целью:
- Автономное вождение: Высокоточное восприятие имеет решающее значение для безопасности автомобилей с автоматическим управлением.
- Продвинутая робототехника: Позволяет роботам перемещаться и взаимодействовать со сложными, динамическими средами.
- Высокоточное наблюдение: Полезно в системах безопасности, где необходима точная детекция небольших или перекрытых объектов.
Сравнение производительности: YOLOv6-3.0 против RTDETRv2
В таблице ниже представлено сравнение производительности на наборе данных COCO.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT10 (мс) |
параметры (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
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 |
Судя по метрикам, RTDETRv2-x достигает наивысшего mAP, демонстрируя преимущества точности своей transformer-архитектуры. Однако это достигается за счет скорости и размера модели. В отличие от этого, модели YOLOv6-3.0 предлагают значительно более быстрое время inference с меньшим количеством параметров. Например, YOLOv6-3.0s почти в два раза быстрее, чем RTDETRv2-s, и при этом обеспечивает конкурентоспособный mAP, равный 45,0. Выбор явно зависит от приоритета проекта: максимальная точность (RTDETRv2) или оптимальная скорость и эффективность (YOLOv6-3.0).
Методологии обучения
YOLOv6-3.0 обучается с использованием стандартных методов глубокого обучения, распространенных в CNN, включая такие методы, как самодистилляция, для повышения производительности. Его процесс обучения, как правило, эффективен и менее ресурсоемок.
RTDETRv2, будучи моделью на основе трансформеров, имеет более требовательный режим обучения. Эти модели часто требуют больших наборов данных, более длительных графиков обучения и значительно больше памяти GPU для эффективной сходимости. Этот более высокий порог входа может сделать их менее практичными для команд, не имеющих доступа к высокопроизводительным вычислительным ресурсам.
Заключение
И YOLOv6-3.0, и RTDETRv2 — сильные игроки в своих нишах. YOLOv6-3.0 — отличный выбор для промышленных приложений, где скорость и эффективность имеют решающее значение. RTDETRv2 расширяет границы точности, что делает его идеальным для задач с высокими ставками, где нельзя идти на компромисс с точностью.
Однако, для большинства разработчиков и исследователей модели Ultralytics YOLO, такие как YOLOv8, YOLOv10 и последняя версия YOLO11, предлагают более привлекательный общий пакет. Модели Ultralytics обеспечивают исключительный баланс скорости и точности, очень эффективны в обучении и поддерживают широкий спектр задач, помимо обнаружения объектов, включая сегментацию, оценку позы и классификацию.
Кроме того, они поддерживаются надежной и активно поддерживаемой экосистемой, включающей в себя исчерпывающую документацию, простой API python и интеграцию с Ultralytics HUB для оптимизированного обучения и развертывания. Это сочетание производительности, универсальности и простоты использования делает модели Ultralytics YOLO рекомендуемым выбором для широкого спектра проектов компьютерного зрения.
Изучите другие модели
Если вам интересны дальнейшие сравнения, вы можете изучить другие модели в документации Ultralytics:
- YOLOv8 против YOLOv6-3.0
- YOLOv8 против RT-DETR
- YOLOv7 против YOLOv6-3.0
- YOLOv5 против YOLOv6-3.0
- EfficientDet в сравнении с YOLOv6-3.0