Перейти к содержанию

YOLOv10 против YOLOv8: техническое сравнение для обнаружения объектов

Выбор подходящей модели обнаружения объектов имеет решающее значение для успеха любого проекта в области компьютерного зрения. На этой странице представлено подробное техническое сравнение YOLOv10 и Ultralytics YOLOv8, двух современных моделей в этой области. Мы проанализируем их архитектурные различия, показатели производительности и идеальные приложения, чтобы помочь вам принять обоснованное решение, основанное на ваших конкретных потребностях в скорости, точности и эффективности использования ресурсов.

YOLOv10: Расширяя границы эффективности

Авторы: Ао Ванг, Хуэй Чен, Лихао Лю и др.
Организация: Университет Цинхуа
Дата: 2024-05-23
Arxiv: https://arxiv.org/abs/2405.14458
GitHub: https://github.com/THU-MIG/yolov10
Документация: https://docs.ultralytics.com/models/yolov10/

YOLOv10, представленный в мае 2024 года, представляет собой значительный шаг на пути к достижению истинного сквозного обнаружения объектов в реальном времени. Его основная инновация заключается в сосредоточении внимания на устранении узких мест постобработки и оптимизации архитектуры модели для максимальной эффективности. Ключевой особенностью является его подход к обучению без NMS, который использует согласованные двойные назначения для устранения необходимости в Non-Maximum Suppression (NMS), тем самым снижая задержку при выводе.

Архитектура и ключевые особенности

YOLOv10 представляет целостный подход к проектированию модели, ориентированный на эффективность и точность. Он оптимизирует различные компоненты, такие как реализация облегченной классификационной головы и использование пространственно-канальной разделенной дискретизации, для уменьшения вычислительной избыточности и повышения возможностей обнаружения. Хотя YOLOv10 разработан Университетом Цинхуа, он построен на базе фреймворка Ultralytics и интегрирован в него, что делает его доступным и простым в использовании с помощью знакомого API Ultralytics.

Сильные стороны

  • Повышенная эффективность: Предлагает более высокую скорость вывода и меньшие размеры моделей в прямых сравнениях, что очень выгодно для сред с ограниченными ресурсами, таких как периферийные устройства.
  • Дизайн без NMS: Упрощает конвейер развертывания за счет удаления этапа постобработки NMS, что приводит к снижению сквозной задержки.
  • Передовая производительность: Достигает отличной производительности, особенно в тестах, ориентированных на задержку, расширяя границы современного уровня для компромиссов между скоростью и точностью.

Слабые стороны

  • Более новая модель: Будучи более новым релизом, она имеет меньшее сообщество и меньше интеграций со сторонними разработчиками по сравнению с хорошо зарекомендовавшей себя YOLOv8.
  • Специализация по задачам: YOLOv10 в основном ориентирован на обнаружение объектов. Ему не хватает встроенной универсальности для других задач компьютерного зрения, таких как сегментация и оценка позы, которые являются родными для YOLOv8.
  • Развитость экосистемы: Будучи интегрированной в экосистему Ultralytics, она еще не имеет такой глубины ресурсов и примеров, созданных сообществом, как YOLOv8.

Идеальные варианты использования

YOLOv10 особенно хорошо подходит для приложений, где производительность в реальном времени и эффективность использования ресурсов являются абсолютными приоритетами:

  • Edge AI: Идеально подходит для развертывания на устройствах с ограниченной вычислительной мощностью, таких как мобильные телефоны и встроенные системы, такие как NVIDIA Jetson.
  • Высокоскоростная обработка: Подходит для приложений, требующих очень низкой задержки, таких как автономные дроны и робототехника.
  • Аналитика в реальном времени: Идеально подходит для динамичных сред, требующих немедленного обнаружения объектов, таких как управление дорожным движением.

Узнайте больше о YOLOv10

Ultralytics YOLOv8: Универсальность и зрелость

Авторы: Glenn Jocher, Ayush Chaurasia и Jing Qiu
Организация: Ultralytics
Дата: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
Документация: https://docs.ultralytics.com/models/yolov8/

Ultralytics YOLOv8, запущенная в январе 2023 года, представляет собой зрелую и очень универсальную модель, основанную на сильных сторонах своих предшественников YOLO. Она разработана для обеспечения скорости, точности и простоты использования в широком спектре задач визуального ИИ. Это делает ее мощным и надежным выбором как для разработчиков, так и для исследователей.

Архитектура и ключевые особенности

YOLOv8 использует подход без anchor boxes для обнаружения объектов, что упрощает архитектуру модели и улучшает обобщение. Гибкий backbone и оптимизированные функции потерь способствуют повышению точности и более стабильному обучению. Отличительной особенностью YOLOv8 является встроенная поддержка нескольких задач компьютерного зрения, включая обнаружение объектов, сегментацию экземпляров, классификацию изображений, оценку позы и ориентированные ограничивающие рамки (OBB).

Сильные стороны

  • Развитая и хорошо документированная: Преимуществами являются обширная документация, большое сообщество и легкодоступные ресурсы, что делает ее удобной в использовании и простой в реализации с помощью простых интерфейсов Python и CLI.
  • Универсальность и многозадачность: Поддерживает широкий спектр задач компьютерного зрения из коробки, предлагая беспрецедентную гибкость для сложных проектов, требующих больше, чем просто обнаружение.
  • Хорошо поддерживаемая экосистема: Легко интегрируется с Ultralytics HUB и другими инструментами MLOps, оптимизируя рабочие процессы от обучения до развертывания. Поддерживается активной разработкой и частыми обновлениями.
  • Баланс производительности: Обеспечивает превосходный компромисс между скоростью, точностью и размером модели, что делает его подходящим для широкого спектра реальных сценариев развертывания.
  • Эффективность обучения: Предлагает эффективные процессы обучения и легкодоступные предварительно обученные веса, ускоряя циклы разработки. Также имеет более низкие требования к памяти по сравнению со многими другими архитектурами, особенно моделями на основе трансформеров.

Слабые стороны

  • Несмотря на высокую эффективность, новые модели, такие как YOLOv10, могут предложить незначительные улучшения в конкретных метриках, таких как количество параметров или задержка, в условиях сильных ограничений.

Идеальные варианты использования

Универсальность и простота использования YOLOv8 делают ее идеальным выбором для широкого спектра применений:

  • Системы безопасности: Отлично подходит для обнаружения объектов в реальном времени в системах охранной сигнализации.
  • Аналитика розничной торговли: Полезна в интеллектуальной розничной торговле для понимания поведения клиентов и управления запасами.
  • Промышленный контроль качества: Применим в производстве для автоматизированного визуального контроля.
  • Многозадачные проекты: Идеальный выбор для проектов, требующих одновременного обнаружения, сегментации и оценки позы с помощью одной эффективной модели.

Узнайте больше о YOLOv8

Анализ производительности: YOLOv10 против YOLOv8

Метрики производительности на наборе данных COCO выявляют ключевые различия между двумя моделями. YOLOv10 стабильно достигает более высоких показателей mAP с меньшим количеством параметров и FLOPs по сравнению со своими аналогами YOLOv8 аналогичного размера. Например, YOLOv10-S достигает 46.7% mAP с 7.2M параметрами, в то время как YOLOv8-S достигает 44.9% mAP с 11.2M параметрами. Это подчеркивает превосходную архитектурную эффективность YOLOv10.

Тем не менее, YOLOv8 поддерживает высокую конкурентоспособную скорость инференса, особенно на GPU. Самая маленькая модель, YOLOv8n, немного быстрее на GPU T4 с TensorRT, чем YOLOv10n (1,47 мс против 1,56 мс). Кроме того, YOLOv8 предоставляет полный набор хорошо зарекомендовавших себя тестов CPU, демонстрируя свою надежную и стабильную производительность для развертываний, которые могут не иметь доступа к GPU.

Модель размер
(пиксели)
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
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

Заключение и рекомендации

И YOLO10, и YOLOv8 — мощные модели, но они отвечают разным приоритетам. YOLO10 превосходен в чистой эффективности, предлагая современную производительность с меньшей задержкой и меньшим количеством параметров, что делает его отличным выбором для специализированных приложений, критичных к задержке.

Однако, для подавляющего большинства разработчиков и исследователей Ultralytics YOLOv8 является рекомендуемым выбором. Его ключевые преимущества заключаются в его зрелости, универсальности и надежной экосистеме. Встроенная поддержка YOLOv8 для нескольких задач (обнаружение, сегментация, поза, классификация и OBB) предоставляет значительное преимущество для создания сложных, многогранных решений на основе искусственного интеллекта. Обширная документация, активное сообщество и полная интеграция с такими инструментами, как Ultralytics HUB, создают превосходный и более оптимизированный процесс разработки. Он предлагает выдающийся и проверенный баланс скорости и точности, который является надежным для самого широкого спектра реальных приложений.

Изучение других моделей

Пользователям, заинтересованным в изучении других современных моделей, Ultralytics предлагает широкий набор, включающий базовую YOLOv5, эффективную YOLOv9 и новейшую YOLO11. Подробные сравнения, такие как YOLOv9 vs. YOLOv8 и YOLOv5 vs. YOLOv8, также доступны, чтобы помочь вам выбрать идеальную модель для вашего проекта.



📅 Создано 1 год назад ✏️ Обновлено 1 месяц назад

Комментарии