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

YOLOv8 PP-YOLOE+: подробное исследование высокопроизводительного обнаружения объектов

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

Обзор модели

Ultralytics YOLOv8

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

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

PP-YOLOE+

PP-YOLOE+ — это усовершенствованная версия серии PP-YOLOE от PaddlePaddle компании Baidu. Она направлена на доработку механизма без анкеров и улучшение стратегий обучения для достижения конкурентоспособной производительности, особенно в PaddlePaddle .

Узнайте больше о PP-YOLOE+

Сравнение производительности

При оценке детекторов объектов крайне важно найти оптимальный баланс между скоростью вывода (задержкой) и средней точностью (mAP). На приведенном ниже графике визуально представлена эта зависимость, а далее приведена подробная таблица показателей.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Примечание: Показатели производительности подчеркивают, что, хотя PP-YOLOE+ демонстрирует высокую теоретическую эффективность FLOP, YOLOv8 обеспечивает более высокую реальную пропускную способность и эффективность параметров, особенно на периферийных устройствах CPU.

Архитектурные различия

YOLOv8 Ultralytics YOLOv8

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

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

  • Модуль C2f: Заменяя модуль C3, модуль C2f (Cross-Stage Partial Bottleneck с двумя сверчками) улучшает градиентный поток и обогащает представление признаков, сохраняя при этом небольшой размер.
  • Разделенная головка: задачи классификации и регрессии обрабатываются отдельными ветвями, что позволяет модели сосредоточиться на конкретных типах признаков для каждой задачи, что приводит к более высокой точности.
  • Task-Aligned Assigner: сложная стратегия присвоения меток, которая динамически сопоставляет положительные образцы с эталонными данными на основе результатов классификации и регрессии.

Архитектура PP-YOLOE+

PP-YOLOE+ построен на основе структуры PP-YOLOE с использованием магистрали CSPResNet и упрощенной сети агрегации путей (PANet). Он делает акцент на перепараметризации и эффективном присвоении меток.

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

  • RepResBlock: использует методы перепараметризации для объединения нескольких слоев в одну свертку во время вывода, что позволяет сократить задержку без ущерба для возможностей обучения.
  • TAL (Task Alignment Learning): Подобно YOLOv8, использует обучение с выравниванием задач для оптимизации выравнивания анкоров.
  • Предварительная подготовка Object365: Символ «+» в PP-YOLOE+ означает использование крупномасштабной предварительной подготовки на наборе данных Objects365, что способствует высокому показателю mAP увеличивает сложность обучения для пользователей, которые хотят повторить результаты с нуля.

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

Преимущество Ultralytics

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

  • Единый API: разработчики могут переключаться между задачами —обнаружение, сегментация, оценка позы, OBB и классификация— просто изменив один строковый аргумент.
  • Ultralytics : Ultralytics позволяет без труда управлять наборами данных, обучать модели и развертывать их прямо из браузера.
  • Широкая интеграция: встроенная поддержка инструментов MLOps, таких как Weights & Biases, Cometи MLflow обеспечивает отслеживание экспериментов по принципу «подключи и работай».

Простой интерфейс Python

Для выполнения инференции с помощью YOLOv8 всего несколько строк кода:

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n.pt")

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

Экосистема PP-YOLOE+

PP-YOLOE+ глубоко интегрирован в PaddlePaddle . Несмотря на свою мощность, это может представлять собой более сложный процесс обучения для разработчиков, привыкших к PyTorch TensorFlow. Развертывание часто зависит от PaddleLite или преобразования моделей в ONNX Paddle2ONNX, что добавляет дополнительный шаг по сравнению с возможностями прямого экспорта Ultralytics .

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

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

YOLOv8 для обеспечения эффективности обучения. Он поддерживает автоматическое определение размера пакета иGPU без дополнительных настроек. Его архитектура оптимизирована для уменьшения потребления VRAM во время обучения по сравнению с моделями на основе трансформаторов, такими как RT-DETR, что позволяет пользователям обучать более крупные модели на потребительском оборудовании.

Предварительно обученные веса

Ultralytics широкий спектр предварительно обученных весов для различных задач и размеров (от Nano до X-Large). Эти модели доступны мгновенно и автоматически загружаются при первом использовании, что значительно ускоряет цикл разработки проектов по переносу обучения. В отличие от этого, для использования всех возможностей PP-YOLOE+ часто требуется навигация по конкретным конфигурациям библиотеки PaddleDetection.

Сценарии использования и рекомендации

Когда выбирать YOLOv8

Ultralytics YOLOv8 является рекомендуемым выбором для большинства разработчиков и предприятий благодаря своей универсальности и простоте использования.

  • Развертывание Edge: идеально подходит для работы на устройствах, таких как Raspberry Pi или мобильных телефонах, использующих TFLite или CoreML.
  • Мультимодальные задачи: если ваш проект требует сегментации или оценки позы наряду с обнаружением, YOLOv8 унифицированное решение.
  • Быстрое прототипирование: простой CLI Python позволяют быстро выполнять итерации, что делает его идеальным решением для стартапов и хакатонов.
  • Поддержка сообщества: благодаря огромному сообществу на GitHub и Discord поиск решений проблем происходит быстро и надежно.

Когда следует выбирать PP-YOLOE+

PP-YOLOE+ — отличный вариант, если вы уже инвестировали в инфраструктуру Baidu.

  • PaddlePaddle : Необходимо для команд, чьи производственные процессы полностью построены на PaddlePaddle.
  • Серверы с высокой вычислительной мощностью: модель хорошо работает в средах, где доступны высокопроизводительные графические процессоры, позволяющие использовать ее сложную архитектуру для достижения максимального mAP, независимо от сложности развертывания.

Будущее: YOLO26

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

YOLO26 представляет собой комплексную конструкцию NMS, устраняющую необходимость в постобработке с помощью не максимального подавления. Это приводит к более быстрому выводу и упрощению логики развертывания. Кроме того, такие инновации, как оптимизатор MuSGD и удаление DFL, делают YOLO26 на 43 % быстрее на CPU по сравнению с предыдущими поколениями, укрепляя его позицию в качестве лучшего выбора для пограничных вычислений.

Разработчикам, начинающим сегодня новые проекты, настоятельно YOLOv8 оценить YOLO26 наряду с YOLOv8 , чтобы обеспечить будущую совместимость своих приложений.

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

Заключение

YOLOv8 PP-YOLOE+ — это отличные модели для обнаружения объектов. Однако Ultralytics YOLOv8 отличается своим ориентированным на пользователя дизайном, исчерпывающей документацией и непревзойденной универсальностью. Снижая барьер для входа на рынок и сохраняя при этом передовую производительность, YOLOv8и его преемник YOLO26 позволяют разработчикам создавать сложные решения в области искусственного интеллекта с минимальными затратами.

Для более подробного изучения сравнения моделей ознакомьтесь с нашими анализами YOLOv8 EfficientDet и YOLOv8 YOLOv6.


Комментарии