YOLOv10 против DAMO-YOLO: техническое сравнение
Выбор оптимальной модели обнаружения объектов — это критически важное решение, которое балансирует компромиссы между точностью, скоростью и вычислительными затратами. На этой странице представлено подробное техническое сравнение между YOLOv10, новейшей высокоэффективной моделью, интегрированной в экосистему Ultralytics, и DAMO-YOLO, мощным детектором от Alibaba Group. Мы проанализируем их архитектуры, показатели производительности и идеальные варианты использования, чтобы помочь вам сделать осознанный выбор для ваших проектов в области компьютерного зрения.
YOLOv10: Сквозное обнаружение в реальном времени
YOLOv10, представленная исследователями из Университета Цинхуа в мае 2024 года, знаменует собой значительный шаг вперед в обнаружении объектов в реальном времени. Ее основное новшество заключается в достижении сквозного обнаружения за счет устранения необходимости в немаксимальном подавлении (NMS), что снижает затраты на постобработку и уменьшает задержку при выводе.
Технические детали:
- Авторы: Ao Wang, Hui Chen, Lihao Liu, и др.
- Организация: Университет Цинхуа
- Дата: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- Документация: https://docs.ultralytics.com/models/yolov10/
Архитектура и ключевые особенности
YOLOv10 построен на базе надежной платформы Ultralytics, унаследовав ее простоту использования и мощную экосистему. В его архитектуре реализовано несколько ключевых усовершенствований для повышения эффективности и производительности:
- Обучение без NMS: YOLOv10 использует согласованные двойные назначения для меток во время обучения. Это позволяет модели выдавать четкие прогнозы, не требуя этапа постобработки NMS, что упрощает конвейер развертывания и делает его по-настоящему сквозным.
- Комплексный подход к эффективности и точности: Архитектура модели была всесторонне оптимизирована для снижения вычислительной избыточности. Это включает в себя облегченную классификационную голову и пространственно-канальную разделенную дискретизацию, что повышает как скорость, так и возможности.
- Бесшовная интеграция Ultralytics: Как часть экосистемы Ultralytics, YOLOv10 выигрывает от оптимизированного пользовательского опыта. Это включает в себя простой Python API, обширную документацию, эффективные процессы обучения и легкодоступные предварительно обученные веса. Эта интеграция позволяет разработчикам исключительно легко начать работу и быстро развертывать модели.
Сильные и слабые стороны
Преимущества:
- Передовая эффективность: YOLOv10 обеспечивает исключительный баланс между скоростью и точностью, часто превосходя конкурентов с меньшим количеством параметров и более низкой задержкой, как подробно описано в таблице производительности ниже.
- Простота использования: Модель невероятно удобна в использовании благодаря интеграции с экосистемой Ultralytics, которая включает в себя Ultralytics HUB для обучения и развертывания без программирования.
- Сквозное развертывание: Отсутствие NMS упрощает весь рабочий процесс от обучения до вывода, что делает его идеальным для реальных приложений.
- Меньшие требования к памяти: По сравнению с более сложными архитектурами, YOLOv10 эффективно использует память как во время обучения, так и во время инференса, что делает его доступным для пользователей с ограниченным оборудованием.
Слабые стороны:
- Специализация по задачам: Будучи исключительным для обнаружения объектов, YOLOv10 в настоящее время ориентирован на эту единственную задачу, в отличие от универсальной Ultralytics YOLOv8, которая поддерживает сегментацию, классификацию и оценку позы из коробки.
Идеальные варианты использования
YOLOv10 — идеальный выбор для приложений, где производительность и эффективность в реальном времени имеют первостепенное значение:
- Edge AI: Его малый размер и низкая задержка делают его идеальным для развертывания на устройствах с ограниченными ресурсами, таких как NVIDIA Jetson или Raspberry Pi.
- Автономные системы: Быстрое и надежное обнаружение имеет решающее значение для таких приложений, как автомобили с автоматическим управлением и робототехника.
- Видеоаналитика в реальном времени: Идеально подходит для высокопроизводительных систем, таких как управление дорожным движением и охранное видеонаблюдение.
DAMO-YOLO
DAMO-YOLO — это быстрая и точная модель обнаружения объектов, разработанная Alibaba Group. Выпущенная в ноябре 2022 года, она представила несколько новых методов для расширения границ производительности детекторов в стиле YOLO.
Технические детали:
- Авторы: Xianzhe Xu, Yiqi Jiang, Weihua Chen и др.
- Организация: Alibaba Group
- Дата: 23.11.2022
- Arxiv: https://arxiv.org/abs/2211.15444
- GitHub: https://github.com/tinyvision/DAMO-YOLO
- Документация: https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Архитектура и ключевые особенности
DAMO-YOLO является результатом изучения передовых методов для улучшения компромисса между скоростью и точностью. Его архитектура характеризуется следующим:
- Neural Architecture Search (NAS): Backbone DAMO-YOLO был сгенерирован с использованием NAS, что позволило создать высокооптимизированный экстрактор признаков.
- Эффективный RepGFPN Neck: Он включает в себя новую конструкцию сети feature pyramid (FPN), которая является одновременно эффективной и мощной.
- ZeroHead и AlignedOTA: Модель использует упрощенную голову с нулевым количеством параметров и улучшенную стратегию назначения меток (AlignedOTA) для повышения точности обнаружения.
- Дистилляция знаний: DAMO-YOLO использует дистилляцию для дальнейшего повышения производительности своих небольших моделей.
Сильные и слабые стороны
Преимущества:
- Высокая производительность: DAMO-YOLO обеспечивает конкурентоспособную точность и скорость, что делает его сильным претендентом в области обнаружения объектов.
- Инновационные технологии: Он включает в себя передовые исследовательские концепции, такие как NAS и расширенные стратегии назначения меток.
Слабые стороны:
- Более высокая сложность: Архитектура модели и конвейер обучения сложнее по сравнению с YOLOv10, что потенциально создает более крутую кривую обучения для пользователей.
- Ограничения экосистемы: DAMO-YOLO в основном доступна в рамках инструментария MMDetection. Это может быть барьером для разработчиков, которые не знакомы с этой экосистемой и предпочитают более интегрированное и удобное решение, такое как то, которое предлагает Ultralytics.
- Сообщество и поддержка: Несмотря на значительный вклад, модель может не иметь такого же уровня активной поддержки сообщества, частых обновлений и обширных ресурсов, как модели в экосистеме Ultralytics.
Идеальные варианты использования
DAMO-YOLO хорошо подходит для исследователей и разработчиков, которые:
- Приоритет новым архитектурам: Для тех, кто заинтересован в изучении последних тенденций исследований, таких как backbones на базе NAS.
- Работа в MMDetection: Пользователи, уже знакомые с фреймворком MMDetection, могут интегрировать DAMO-YOLO в свои рабочие процессы.
- Требуется высокая точность: В сценариях, где критически важно выжать последний бит точности и где дополнительная сложность управляема.
Прямое сравнение производительности: YOLOv10 против DAMO-YOLO
В следующей таблице сравнивается производительность различных размеров моделей YOLOv10 и DAMO-YOLO на наборе данных COCO. YOLOv10 стабильно демонстрирует превосходную производительность, предлагая более высокую точность при меньшей задержке и меньшем количестве параметров.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT10 (мс) |
параметры (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
Как показывают данные, модели YOLOv10 стабильно превосходят своих аналогов DAMO-YOLO. Например, YOLOv10-S достигает более высокого mAP (46,7 против 46,0), чем DAMO-YOLO-S, при этом работая значительно быстрее (2,66 мс против 3,45 мс) и имея менее половины параметров (7,2M против 16,3M). Эта тенденция сохраняется для всех размеров моделей, достигая кульминации в YOLOv10-X, достигающей самого высокого mAP в 54,4.
Заключение
YOLOv10 и DAMO-YOLO — впечатляющие модели обнаружения объектов, но они отвечают разным потребностям. DAMO-YOLO — это сильная исследовательская модель, демонстрирующая инновационные архитектурные идеи.
Однако, для подавляющего большинства разработчиков, исследователей и предприятий YOLOv10 является очевидным выбором. Его превосходная производительность в сочетании с конструкцией без NMS делает его более быстрым и эффективным для реального развертывания. Что еще более важно, его полная интеграция в экосистему Ultralytics обеспечивает беспрецедентный пользовательский опыт с обширной документацией, активной поддержкой сообщества и набором инструментов, таких как Ultralytics HUB, которые упрощают весь жизненный цикл MLOps.
Для тех, кто ищет другие современные варианты, также стоит изучить Ultralytics YOLOv8 за ее универсальность в различных задачах компьютерного зрения или ознакомиться с другими нашими сравнениями моделей, чтобы найти идеальный вариант для вашего проекта.