PP-YOLOE+ vs YOLOv10: техническое сравнение
Выбор оптимальной модели обнаружения объектов — это критически важное решение, которое балансирует точность, скорость и вычислительные ресурсы для любого проекта компьютерного зрения. На этой странице представлено подробное техническое сравнение PP-YOLOE+, разработанной Baidu, и YOLOv10, современной модели от Университета Цинхуа, которая полностью интегрирована в экосистему Ultralytics. Мы проанализируем их архитектуры, показатели производительности и идеальные варианты использования, чтобы помочь вам сделать осознанный выбор.
PP-YOLOE+: Высокая точность в экосистеме PaddlePaddle
PP-YOLOE+ (Practical PaddlePaddle You Only Look One-level Efficient Plus) — это одноэтапная модель обнаружения объектов без привязки к anchor boxes из фреймворка PaddleDetection компании Baidu. Представленная в 2022 году, она в первую очередь ориентирована на обеспечение высокой точности при сохранении эффективности, особенно для пользователей в среде глубокого обучения PaddlePaddle.
Авторы: Авторы PaddlePaddle
Организация: Baidu
Дата: 2022-04-02
ArXiv: https://arxiv.org/abs/2203.16250
GitHub: https://github.com/PaddlePaddle/PaddleDetection/
Документация: https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md
Архитектура и ключевые особенности
PP-YOLOE+ улучшает стандартную архитектуру YOLO с помощью нескольких ключевых модификаций для повышения производительности.
- Дизайн без привязки к якорям (Anchor-Free Design): Отказываясь от предопределенных ограничивающих рамок (anchor boxes), PP-YOLOE+ упрощает конвейер обнаружения и снижает сложность настройки гиперпараметров. Этот подход является распространенным во многих современных детекторах без привязки к якорям (anchor-free detectors).
- Эффективные компоненты: Он использует ResNet backbone и Path Aggregation Network (PAN) neck для эффективного объединения признаков, что является проверенным сочетанием для балансировки скорости и точности.
- Decoupled Head (Разделенная голова): Модель разделяет задачи классификации и регрессии в голове обнаружения, что, как известно, повышает точность обнаружения за счет предотвращения интерференции задач.
- Обучение выравниванию задач (TAL): Использует специализированную функцию потерь, предназначенную для лучшего выравнивания задач классификации и локализации, что приводит к более точным прогнозам.
Сильные и слабые стороны
PP-YOLOE+ демонстрирует высокую производительность, но имеет определенные компромиссы.
- Преимущества: Модель может достигать очень высокой точности, особенно с ее более крупными вариантами. Ее anchor-free дизайн эффективен, и она хорошо оптимизирована для пользователей, уже инвестировавших в фреймворк PaddlePaddle.
- Недостатки: Ее основной недостаток — тесная связь с экосистемой PaddlePaddle. Это может создать крутую кривую обучения и проблемы с интеграцией для разработчиков, работающих с более распространенными фреймворками, такими как PyTorch. Кроме того, поддержка сообщества и доступные ресурсы могут быть менее обширными по сравнению с моделями в экосистеме Ultralytics.
Случаи использования
PP-YOLOE+ хорошо подходит для приложений, где высокая точность является приоритетом, и среда разработки основана на PaddlePaddle.
- Проверка качества в промышленности: Обнаружение мелких дефектов в производственных процессах.
- Умная розничная торговля: Обеспечение работы таких приложений, как автоматизированная оплата и управление запасами.
- Автоматизация переработки: Идентификация различных материалов для автоматизированных систем сортировки.
YOLOv10: Сквозная эффективность в реальном времени
Ultralytics YOLOv10 — это последняя эволюция в серии YOLO, разработанная исследователями из Университета Цинхуа. Выпущенная в мае 2024 года, она представляет собой новаторские архитектурные изменения для достижения истинного сквозного обнаружения объектов в реальном времени за счет устранения узких мест постобработки и оптимизации модели для превосходной эффективности.
Авторы: Ао Ванг, Хуэй Чен, Лихао Лю и др.
Организация: Университет Цинхуа
Дата: 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 является использование согласованных двойных назначений во время обучения. Это устраняет необходимость в Non-Maximum Suppression (NMS) во время постобработки, что значительно снижает задержку при выводе и упрощает конвейер развертывания.
- Комплексный подход к эффективности и точности: Модель отличается комплексной оптимизацией backbone, neck и head. Инновации, такие как облегченная классификационная голова и пространственно-канальная разделенная дискретизация, снижают вычислительные затраты, сохраняя при этом богатую информацию о признаках.
- Превосходная эффективность и масштабируемость: YOLOv10 предлагает широкий спектр масштабируемых моделей, от Nano (N) до Extra-large (X). Эти модели стабильно превосходят конкурентов, обеспечивая более высокую точность с меньшим количеством параметров и более низкой вычислительной стоимостью (FLOPs).
- Преимущество экосистемы Ultralytics: YOLOv10 легко интегрируется в экосистему Ultralytics. Это предоставляет пользователям беспрецедентный опыт, характеризующийся простотой использования благодаря простому Python API и CLI, обширной документации, эффективному обучению с легкодоступными предварительно обученными весами и более низким требованиям к памяти. Модель поддерживается надежным сообществом и активной разработкой через Ultralytics HUB.
Сильные и слабые стороны
YOLOv10 устанавливает новый стандарт для детекторов объектов в реальном времени.
- Преимущества: Современная скорость и точность, действительно сквозной NMS-free дизайн, исключительная вычислительная эффективность и отличная масштабируемость. Ее интеграция в хорошо поддерживаемую экосистему Ultralytics делает ее невероятно простой в обучении, развертывании и обслуживании.
- Недостатки: Будучи более новой моделью, сообщество и сторонние инструменты все еще развиваются по сравнению с давно зарекомендовавшими себя моделями, такими как YOLOv8.
Случаи использования
Благодаря своей эффективности и сквозной конструкции, YOLOv10 является идеальным выбором для приложений, где скорость и ограниченность ресурсов имеют решающее значение.
- Приложения реального времени: Идеально подходит для автономных систем, таких как самоуправляемые автомобили, робототехника и системы высокоскоростного наблюдения для предотвращения краж.
- Развертывание на периферийных устройствах: Меньшие варианты (YOLOv10n, YOLOv10s) в высшей степени оптимизированы для периферийных устройств с ограниченными ресурсами, таких как Raspberry Pi и NVIDIA Jetson.
- Задачи с высокой точностью: Более крупные модели (YOLOv10l, YOLOv10x) обеспечивают высочайшую точность для требовательных областей, таких как анализ медицинских изображений.
Анализ производительности: PP-YOLOE+ в сравнении с YOLOv10
Эталонные тесты производительности наглядно демонстрируют преимущества современной архитектуры YOLOv10. Хотя PP-YOLOE+x достигает наивысшего mAP с небольшим отрывом, YOLOv10 стабильно обеспечивает лучший баланс скорости, точности и эффективности для всех размеров моделей.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT10 (мс) |
параметры (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
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 |
Например, YOLOv10m достигает более высокого mAP, чем PP-YOLOE+m, при этом являясь более быстрой и имея значительно меньше параметров (15,4M против 23,43M). Аналогично, YOLOv10l превосходит PP-YOLOE+l по точности, имея почти вдвое меньше параметров. Даже в самом высоком сегменте YOLOv10x гораздо эффективнее, чем PP-YOLOE+x, предлагая сопоставимую точность с гораздо меньшей задержкой и вычислительными требованиями.
Заключение: какую модель вам следует выбрать?
Хотя PP-YOLOE+ является мощной моделью для пользователей, приверженных фреймворку PaddlePaddle, YOLOv10 является явной рекомендацией для подавляющего большинства разработчиков и исследователей.
Превосходная эффективность, инновационная архитектура без NMS и современная производительность YOLOv10 делают ее более универсальным и перспективным выбором. Ее полная интеграция в экосистему Ultralytics устраняет барьеры для входа, предоставляя простое в использовании, хорошо поддерживаемое и высокопроизводительное решение для широкого спектра реальных приложений, от периферийных устройств до высокопроизводительных облачных серверов.
Изучите другие модели
Если вы изучаете другие варианты, рассмотрите возможность ознакомления с другими современными моделями в экосистеме Ultralytics. Вы можете найти подробные сравнения, такие как YOLOv10 vs. YOLOv9 и YOLOv10 vs. YOLOv8. Для тех, кто следит за последними разработками, ознакомьтесь с новой Ultralytics YOLO11.