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

YOLO11 против YOLOv6-3.0: Сравнение современных методов обнаружения объектов

Выбор оптимальной модели компьютерного зрения является ключевым решением, которое влияет на эффективность, точность и масштабируемость приложений AI. В этом руководстве представлен всесторонний технический анализ, сравнивающий Ultralytics YOLO11 и YOLOv6-3.0. Мы рассмотрим их архитектурные инновации, эталонные показатели производительности, методологии обучения и пригодность для различных сценариев развертывания в реальном мире. Хотя обе структуры внесли значительный вклад в эту область, YOLO11 представляет собой последнюю эволюцию в эффективности, универсальности и удобстве использования.

Ultralytics YOLO11

Авторы: Glenn Jocher и Jing Qiu
Организация: Ultralytics
Дата: 2024-09-27
GitHub: https://github.com/ultralytics/ultralytics
Документация: https://docs.ultralytics.com/models/yolo11/

YOLO11 — это передовая эволюция серии YOLO (You Only Look Once), запущенная Ultralytics в конце 2024 года. Основываясь на успехе предшественников, таких как YOLOv8, она представляет собой усовершенствованную архитектуру, разработанную для максимальной производительности при минимизации вычислительных затрат. YOLO11 спроектирована для решения разнообразных задач компьютерного зрения, что делает ее универсальным решением для отраслей от автомобильной до здравоохранения.

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

Архитектура YOLO11 фокусируется на улучшении извлечения признаков и эффективности обработки. Она включает в себя улучшенный backbone и neck design, который уменьшает избыточные вычисления, обеспечивая более высокую скорость вывода как на периферийных устройствах, так и на облачных серверах. Как детектор без anchor-ов, YOLO11 устраняет необходимость в ручной настройке anchor box, упрощая конвейер обучения и улучшая адаптивность к различным формам объектов.

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

  • Непревзойденный баланс производительности: YOLO11 обеспечивает более высокий средний показатель точности (mAP) со значительно меньшим количеством параметров и FLOPs, чем сопоставимые модели. Эта эффективность снижает требования к хранилищу и ускоряет время обработки.
  • Comprehensive Versatility: В отличие от многих детекторов, ограниченных ограничивающими рамками, YOLO11 изначально поддерживает object detection, instance segmentation, image classification, pose estimation и oriented bounding boxes (OBB) в рамках единой структуры.
  • Оптимизированная экосистема: Пользователи получают преимущества от надежной экосистемы Ultralytics, которая включает в себя удобный Python API, простую интеграцию с Ultralytics HUB для обучения без кода и широкую поддержку сообщества.
  • Эффективность обучения: Модель оптимизирована для более быстрой сходимости и снижения использования памяти во время обучения. Это является явным преимуществом перед архитектурами на основе трансформеров, которые часто требуют значительного объема памяти GPU.

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

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

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

YOLO11 превосходно подходит для сценариев, требующих высокой пропускной способности и точности:

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

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

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 — это фреймворк для detect object, разработанный компанией Meituan, специально предназначенный для промышленных применений. Выпущенный в начале 2023 года, он был разработан для обеспечения конкурентного компромисса между скоростью inference и точностью, удовлетворяя потребности систем реального времени в логистике и автоматизации.

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

Архитектура YOLOv6-3.0 представляет собой «полномасштабную перезагрузку» сети. Она использует эффективный перепараметризуемый backbone (EfficientRep) и структуру разделенной головы. Ключевые инновации включают использование методов самодистилляции во время обучения для повышения точности без увеличения затрат на вывод и специальные оптимизации для развертывания TensorRT.

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

  • Промышленная направленность: Архитектура модели адаптирована для промышленного оборудования, особенно для оптимизации задержки на NVIDIA GPUs.
  • Готовность к квантованию: YOLOv6 обеспечивает специальную поддержку квантования моделей, что облегчает развертывание на оборудовании с ограниченной вычислительной точностью.
  • Мобильные варианты: Фреймворк включает версии YOLOv6-Lite, оптимизированные для мобильных CPUS и архитектур DSP.

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

  • Интенсивность использования ресурсов: Как показано в данных о производительности, YOLOv6-3.0 часто требует значительно больше параметров и FLOPs для достижения точности, сопоставимой с более новыми моделями, такими как YOLO11.
  • Ограниченная область задач: Основное внимание уделяется object detection. Ему не хватает бесшовной встроенной поддержки нескольких задач (segmentation, pose, classification, OBB), которая есть в унифицированном фреймворке Ultralytics.
  • Фрагментация экосистемы: Будучи открытым исходным кодом, экосистема менее интегрирована, чем Ultralytics, что потенциально требует больше ручных усилий для таких задач, как управление набором данных, track и облачное обучение.

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

YOLOv6-3.0 подходит для:

  • Устаревшие промышленные системы: Среды, специально настроенные для архитектуры YOLOv6.
  • Выделенные задачи обнаружения (Detection): Приложения, где требуется только обнаружение (detect) ограничивающей рамки, а многозадачные возможности не нужны.
  • Специфические аппаратные развертывания: Сценарии, использующие специфические конвейеры квантования, поддерживаемые фреймворком Meituan.

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

Метрики производительности: Скорость, точность и эффективность

В следующей таблице представлено подробное сравнение YOLO11 и YOLOv6-3.0 на датасете COCO. Метрики подчеркивают достижения в эффективности, достигнутые архитектурой YOLO11.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7

Анализ данных

Сравнение выявляет четкую тенденцию: YOLO11 стабильно достигает более высокой точности (mAP) со значительно сниженными вычислительными затратами.

  • Эффективность параметров: Модель YOLO11m достигает превосходного 51,5 mAP по сравнению с 50,0 mAP у YOLOv6-3.0m, но при этом использует всего 20,1 млн параметров против 34,9 млн. Это представляет собой уменьшение размера модели почти на 42% для повышения производительности.
  • Computational Cost: Аналогично, YOLO11l требует 86.9B FLOPs для достижения 53.4 mAP, тогда как YOLOv6-3.0l требует 150.7B FLOPs для более низкого 52.8 mAP. Более низкие FLOPs напрямую приводят к снижению энергопотребления и уменьшению тепловыделения, что является критическим фактором для встроенных систем.
  • Скорость инференса: Хотя YOLOv6-3.0n демонстрирует немного более высокую скорость TensorRT, существенный разрыв в точности (2,0 mAP) и больший размер модели делают YOLO11n более сбалансированным выбором для современных приложений, где точность имеет первостепенное значение.

Преимущества развертывания

Уменьшенное количество параметров YOLO11 не только ускоряет вывод, но и снижает требования к пропускной способности памяти. Это делает YOLO11 особенно эффективной на периферийных устройствах, таких как Raspberry Pi или NVIDIA Jetson, где ресурсы памяти часто являются узким местом.

Обучение и удобство использования

Простота использования и экосистема

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

  • Простой API: Разработчики могут загружать, обучать и прогнозировать с помощью YOLO11 всего в несколько строк кода на python.
  • Документация: Обширная и активно поддерживаемая документация гарантирует, что пользователи могут легко найти руководства по всему, от аннотации данных до экспорта моделей.
  • Сообщество: Активное сообщество на GitHub и Discord обеспечивает быструю поддержку и постоянные улучшения.

В отличие от этого, хотя YOLOv6 предоставляет солидную кодовую базу, ему не хватает такого же уровня интегрированных инструментов и доступности ресурсов, управляемых сообществом, что может увеличить время развертывания для новых проектов.

Эффективность обучения

YOLO11 разработан для высокой эффективности во время обучения. Его архитектура обеспечивает более быструю сходимость, что означает, что пользователи часто могут достичь целевой точности за меньшее количество эпох по сравнению со старыми архитектурами. Кроме того, требования к памяти во время обучения оптимизированы, что позволяет использовать более крупные batch sizes на GPU потребительского класса.

Вот пример того, насколько просто начать обучение модели YOLO11:

from ultralytics import YOLO

# Load a pretrained YOLO11n model
model = YOLO("yolo11n.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

Заключение

В то время как YOLOv6-3.0 остается способной моделью для конкретных промышленных задач обнаружения, Ultralytics YOLO11 выделяется как превосходный выбор для подавляющего большинства новых проектов в области компьютерного зрения.

YOLO11 предлагает убедительное сочетание более высокой точности, меньшего потребления ресурсов и непревзойденной универсальности. Ее способность обрабатывать detect, segment, оценку позы и classify в рамках единой, простой в использовании платформы упрощает процессы разработки. Поддерживаемая активно поддерживаемой экосистемой Ultralytics и такими инструментами, как Ultralytics HUB, YOLO11 обеспечивает перспективную основу для создания масштабируемых, высокопроизводительных решений на основе ИИ.

Для разработчиков, стремящихся к наилучшему балансу производительности, эффективности и простоты использования, YOLO11 — рекомендуемый путь вперед.

Изучите другие модели

Если вам интересны дальнейшие сравнения, изучите эти связанные страницы в документации:


Комментарии