YOLOv10 против YOLOv6-3.0: техническое сравнение
Выбор оптимальной модели обнаружения объектов — это критически важное решение, которое балансирует точность, скорость и вычислительные затраты. На этой странице представлено подробное техническое сравнение между YOLOv10, недавней инновацией, ориентированной на сквозную эффективность, и YOLOv6-3.0, моделью, разработанной для промышленных применений. Мы проанализируем их архитектуры, показатели производительности и идеальные варианты использования, чтобы помочь вам выбрать лучшую модель для вашего проекта, выделив преимущества YOLOv10 в рамках комплексной экосистемы Ultralytics.
YOLOv10: Сквозная эффективность в реальном времени
YOLOv10, представленная в мае 2024 года исследователями из Университета Цинхуа, знаменует собой значительный шаг вперед в области обнаружения объектов в реальном времени. Ее основное новшество — достижение сквозного обнаружения за счет устранения необходимости в Non-Maximum Suppression (NMS), что снижает задержку постобработки и упрощает конвейеры развертывания.
Авторы: Ао Ванг, Хуэй Чен, Лихао Лю и др.
Организация: Университет Цинхуа
Дата: 2024-05-23
Arxiv: https://arxiv.org/abs/2405.14458
GitHub: https://github.com/THU-MIG/yolov10
Документация: https://docs.ultralytics.com/models/yolov10/
Архитектура и ключевые особенности
В основе разработки YOLOv10 лежит целостный подход к максимальному увеличению как эффективности, так и точности.
- Обучение без NMS: Используя согласованные двойные назначения для меток, YOLOv10 удаляет этап постобработки NMS. Это является большим преимуществом для вывода в реальном времени, поскольку снижает вычислительные затраты и уменьшает задержку при выводе.
- Комплексный подход к эффективности и точности: Архитектура модели была всесторонне оптимизирована. Это включает в себя облегченные классификационные головы и пространственно-канальную разделенную дискретизацию, которые снижают вычислительную избыточность, одновременно расширяя возможности модели по сохранению важных признаков.
- Превосходная эффективность параметров: Модели YOLOv10 стабильно обеспечивают более высокую точность с меньшим количеством параметров и FLOPs по сравнению со многими альтернативами, что делает их идеальными для развертывания на периферийных устройствах с ограниченными ресурсами.
- Бесшовная интеграция Ultralytics: Как часть экосистемы Ultralytics, YOLOv10 выигрывает от оптимизированного пользовательского опыта. Его легко использовать через простой Python API и CLI, он поддерживается обширной документацией и интегрируется с такими инструментами, как Ultralytics HUB для эффективного обучения и развертывания.
Сильные стороны
- Передовая производительность: Достигает превосходного баланса между скоростью и точностью, часто превосходя предыдущие модели.
- Сквозное развертывание: Отсутствие NMS упрощает весь конвейер от обучения до развертывания.
- Высокая эффективность: Требует меньше параметров и вычислительных ресурсов для сопоставимой или лучшей точности, что делает ее очень подходящей для таких приложений, как робототехника и автономные системы.
- Хорошо поддерживаемая экосистема: Преимущества активной разработки, сильной поддержки сообщества и частых обновлений в рамках фреймворка Ultralytics.
Слабые стороны
- Актуальность: Поскольку это очень новая модель, сообщество и сторонние инструменты все еще развиваются по сравнению с более устоявшимися моделями, такими как Ultralytics YOLOv8.
Идеальные варианты использования
YOLOv10 исключительно хорошо подходит для приложений, где низкая задержка и высокая эффективность имеют первостепенное значение.
- Edge AI: Идеально подходит для развертывания на устройствах с ограниченной вычислительной мощностью, таких как мобильные телефоны, NVIDIA Jetson и Raspberry Pi.
- Аналитика в реальном времени: Идеально подходит для динамичных сред, требующих немедленного обнаружения объектов, таких как управление дорожным движением и видеонаблюдение в реальном времени.
- Промышленная автоматизация: Может использоваться для высокоскоростного контроля качества и мониторинга процессов в производстве.
YOLOv6-3.0: оптимизирован для промышленных приложений
YOLOv6-3.0, разработанный Meituan и выпущенный в начале 2023 года, представляет собой фреймворк для обнаружения объектов, разработанный с особым акцентом на промышленные приложения. Он направлен на обеспечение практического баланса между скоростью и точностью инференса для реальных сценариев развертывания.
Авторы: Chuyi Li, Lulu Li, Yifei Geng и др.
Организация: 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 представляет несколько архитектурных модификаций для повышения производительности, особенно для развертывания на различных аппаратных платформах.
- Адаптация к оборудованию: Сеть разработана для эффективной работы на различном оборудовании с использованием таких методов, как Efficient Reparameterization Backbone. Это позволяет оптимизировать структуру сети после обучения для более быстрого инференса.
- Гибридные блоки: В архитектуре используются гибридные блоки для баланса между возможностями извлечения признаков и вычислительной эффективностью.
- Самодистилляция: Стратегия обучения включает самодистилляцию для повышения производительности без увеличения стоимости логического вывода.
Сильные стороны
- Высокая скорость инференса: Оптимизирована для высокой производительности, что делает ее подходящей для промышленных задач, требующих работы в реальном времени.
- Хорошая точность: Обеспечивает конкурентоспособную точность, особенно с его более крупными вариантами модели.
- Поддержка квантования: Предоставляет надежную поддержку и учебные пособия по квантованию моделей, что полезно для развертывания на оборудовании с ограниченными ресурсами.
Слабые стороны
- Ограниченная универсальность задач: YOLOv6-3.0 в основном ориентирован на обнаружение объектов. Ему не хватает встроенной поддержки других задач компьютерного зрения, таких как сегментация, классификация и оценка позы, которые являются стандартными в моделях Ultralytics, таких как YOLOv8 и YOLO11.
- Более высокое использование ресурсов: Для аналогичного mAP модели YOLOv6-3.0 могут иметь значительно больше параметров и FLOPs, чем эквиваленты YOLOv10, что потенциально требует большей вычислительной мощности.
- Экосистема и обслуживание: Будучи проектом с открытым исходным кодом, его экосистема не так всеобъемлюща и активно поддерживается, как платформа Ultralytics, что может привести к замедлению обновлений и уменьшению поддержки сообщества.
Идеальные варианты использования
Сочетание скорости и точности YOLOv6-3.0 делает его надежным выбором для конкретных высокопроизводительных приложений.
- Промышленный контроль качества: Эффективен для автоматизированных систем контроля, где скорость обнаружения имеет решающее значение.
- Продвинутая робототехника: Подходит для роботизированных систем, которым требуется быстрое и точное обнаружение объектов для навигации и взаимодействия.
- Наблюдение в реальном времени: Может быть развернуто в сценариях, где важны как точность, так и скорость для своевременного анализа, например, в системах безопасности.
Прямое сравнение производительности: YOLOv10 против YOLOv6-3.0
Сравнение производительности YOLOv10 и YOLOv6-3.0 подчеркивает достижения 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 |
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 |
Как видно из таблицы, модели YOLOv10 стабильно достигают более высоких показателей mAP при значительно меньшем количестве параметров и FLOPs по сравнению с их аналогами YOLOv6-3.0. Например, YOLOv10-S достигает 46,7 mAP, имея всего 7,2M параметров, в то время как YOLOv6-3.0s требует 18,5M параметров для достижения более низкого показателя 45,0 mAP. Хотя YOLOv6-3.0n демонстрирует немного более высокую скорость инференса на GPU T4, YOLOv10n обеспечивает гораздо лучший компромисс между точностью и эффективностью, имея почти вдвое меньше параметров. Это демонстрирует превосходную архитектурную конструкцию YOLOv10 для современного оборудования.
Заключение: какую модель вам следует выбрать?
Для большинства разработчиков и исследователей YOLOv10 является рекомендуемым выбором. Он предлагает превосходное сочетание точности, скорости и эффективности, и все это в рамках надежной и удобной экосистемы. Его конструкция без NMS представляет собой настоящее комплексное решение, которое упрощает развертывание и повышает производительность, что делает его идеальным для широкого спектра приложений от периферии до облака. Полная интеграция с инструментами Ultralytics обеспечивает значительное преимущество с точки зрения простоты использования, активного обслуживания и всесторонней поддержки.
YOLOv6-3.0 остается компетентной моделью, особенно для промышленных применений, где ее специфические аппаратные оптимизации могут быть полезны. Однако ее направленность более узкая, и ей не хватает универсальности и оптимизированной экосистемы, предлагаемой моделями Ultralytics.
Для тех, кто заинтересован в изучении других современных моделей, Ultralytics предоставляет ряд вариантов, включая универсальную YOLOv8 и новейшую YOLO11. Вы также можете найти более подробные сравнения, такие как YOLOv10 vs. YOLOv8 и YOLOv9 vs. YOLOv8, чтобы помочь вам принять наилучшее решение для вашего проекта.