YOLOv10 в сравнении с PP-YOLOE+: техническое сравнение для обнаружения объектов
Выбор оптимальной модели обнаружения объектов имеет решающее значение для балансировки точности, скорости и вычислительных ресурсов в задачах компьютерного зрения. На этой странице представлено техническое сравнение между YOLOv10, новейшей разработкой Университета Цинхуа, интегрированной в экосистему Ultralytics, и PP-YOLOE+, моделью высокой точности от Baidu. Мы анализируем их архитектуры, производительность и приложения, чтобы помочь вам принять решение, выделяя преимущества YOLOv10.
YOLOv10: Сквозная эффективность
Ultralytics YOLOv10 – это революционная итерация в серии YOLO, ориентированная на обнаружение объектов в режиме реального времени и end-to-end. Разработанная исследователями из Университета Цинхуа, ее основное новшество заключается в устранении необходимости в постобработке Non-Maximum Suppression (NMS), что значительно снижает задержку при выводе и упрощает конвейеры развертывания.
Технические детали:
- Авторы: Ao Wang, Hui Chen, Lihao Liu и др.
- Организация: Tsinghua University
- Дата: 2024-05-23
- Ссылка на Arxiv: https://arxiv.org/abs/2405.14458
- Ссылка на GitHub: https://github.com/THU-MIG/yolov10
- Ссылка на документацию: https://docs.ultralytics.com/models/yolov10/
Ключевые особенности и архитектура
- Обучение без NMS: YOLOv10 использует согласованные двойные назначения во время обучения, что позволяет генерировать четкие прогнозы, не требуя NMS во время вывода. Это является большим преимуществом для приложений реального времени, где важна каждая миллисекунда задержки.
- Комплексный подход к эффективности и точности: Архитектура модели была всесторонне оптимизирована для снижения вычислительной избыточности. Это включает в себя такие инновации, как облегченная классификационная голова и пространственно-канальная разделенная дискретизация, которые расширяют возможности модели, сводя к минимуму использование ресурсов.
- Обнаружение без привязки к якорям (Anchor-Free Detection): Как и многие современные детекторы, он использует подход без привязки к якорям (anchor-free), упрощая архитектуру и улучшая обобщение для объектов разных размеров и соотношений сторон.
- Интеграция в экосистему Ultralytics: Как модель, поддерживаемая Ultralytics, YOLOv10 выигрывает от надежной и хорошо поддерживаемой экосистемы. Это предоставляет пользователям оптимизированный опыт благодаря простому Python API, обширной документации, эффективным процессам обучения с легкодоступными предварительно обученными весами и бесшовной интеграции с Ultralytics HUB для сквозного управления проектами.
Случаи использования
- Видеоаналитика в реальном времени: Идеально подходит для таких приложений, как автономное вождение, робототехника и высокоскоростное видеонаблюдение, где критически важна низкая задержка вывода.
- Edge Deployment: Уменьшенные варианты (YOLOv10n/s) высоко оптимизированы для устройств с ограниченными ресурсами, таких как NVIDIA Jetson и Raspberry Pi, что делает передовой ИИ доступным на периферии.
- Приложения с высокой точностью: Более крупные модели обеспечивают современную точность для требовательных задач, таких как анализ медицинских изображений или детальный контроль качества в производстве.
Сильные и слабые стороны
Преимущества:
- Превосходная скорость и эффективность благодаря конструкции без NMS.
- Превосходный баланс между скоростью и точностью для всех размеров моделей.
- Высокая масштабируемость, предлагающая варианты от Nano (N) до Extra-large (X).
- Сниженные требования к памяти и эффективное обучение.
- Простота использования и надежная поддержка в рамках хорошо поддерживаемой экосистемы Ultralytics.
Слабые стороны:
- Как более новая модель, сообщество за пределами экосистемы Ultralytics все еще растет.
- Для достижения максимальной производительности может потребоваться аппаратная оптимизация, такая как TensorRT.
PP-YOLOE+: Высокая точность в фреймворке PaddlePaddle
PP-YOLOE+, разработанный Baidu, является улучшенной версией PP-YOLOE, которая фокусируется на достижении высокой точности при сохранении эффективности. Это ключевая модель в рамках платформы глубокого обучения PaddlePaddle.
Технические детали:
- Авторы: PaddlePaddle Authors
- Организация: 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
Ключевые особенности и архитектура
- Anchor-Free Design: Как и YOLOv10, это детектор без anchor, что упрощает головную часть обнаружения и уменьшает количество гиперпараметров для настройки.
- CSPRepResNet Backbone: Он использует backbone, который сочетает в себе принципы CSPNet и RepResNet для мощного извлечения признаков.
- Продвинутая функция потерь и голова: Модель включает Varifocal Loss (функцию потерь) и эффективную ET-Head для улучшения согласования между задачами классификации и локализации.
Случаи использования
- Проверка качества в промышленности: Высокая точность делает его пригодным для обнаружения незначительных дефектов на производственных линиях.
- Умная розничная торговля: Может использоваться для таких приложений, как автоматизированное управление запасами и анализ поведения клиентов.
- Автоматизация переработки: Эффективно определяет различные материалы для автоматизированных систем сортировки.
Сильные и слабые стороны
Преимущества:
- Достигает высокой точности, особенно с более крупными вариантами моделей.
- Хорошо интегрирована в экосистему PaddlePaddle.
- Эффективная конструкция без привязки к якорям.
Слабые стороны:
- В основном оптимизирован для фреймворка PaddlePaddle, что может создать крутую кривую обучения и проблемы с интеграцией для разработчиков, использующих другие фреймворки, такие как PyTorch.
- Поддержка сообщества и доступные ресурсы могут быть менее обширными по сравнению с обширной экосистемой, окружающей модели Ultralytics.
- Более крупные модели имеют значительно больше параметров, чем эквиваленты 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 |
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 |
Метрики производительности выявляют четкое различие между двумя моделями. YOLOv10 стабильно демонстрирует превосходную параметрическую и вычислительную эффективность. Например, YOLOv10-L достигает сопоставимого 53.3% mAP с 52.9% mAP у PP-YOLOE+-l, но почти на 44% меньшим количеством параметров (29.5M против 52.2M). Эта тенденция сохраняется и для самых больших моделей, где YOLOv10-X достигает 54.4% mAP с 56.9M параметрами, в то время как PP-YOLOE+-x требует огромных 98.42M параметров для достижения незначительно более высокого 54.7% mAP.
С точки зрения скорости, архитектура YOLOv10 без NMS дает ему явное преимущество, особенно для развертывания в реальном времени. Самая маленькая модель, YOLOv10-N, может похвастаться впечатляющей задержкой в 1,56 мс, что делает ее лучшим выбором для приложений edge AI. Хотя PP-YOLOE+ может достичь высокой точности, это часто достигается за счет гораздо большего размера модели и более высоких вычислительных требований, что делает YOLOv10 более эффективным и практичным выбором для более широкого спектра сценариев развертывания.
Заключение: почему YOLOv10 является рекомендуемым выбором
Несмотря на то, что YOLOv10 и PP-YOLOE+ являются мощными детекторами объектов, YOLOv10 становится превосходным выбором для подавляющего большинства разработчиков и исследователей. Его новаторская архитектура без NMS обеспечивает значительное преимущество в реальных приложениях за счет снижения задержки и упрощения конвейера развертывания.
Ключевые преимущества YOLOv10 включают:
- Беспрецедентная эффективность: Обеспечивает лучшее соотношение скорости и точности, достигая конкурентоспособных показателей mAP со значительно меньшим количеством параметров и FLOPs, чем PP-YOLOE+. Это приводит к снижению вычислительных затрат и возможности запуска на менее мощном оборудовании.
- Настоящее сквозное обнаружение: Благодаря устранению узкого места NMS, YOLOv10 быстрее и проще в развертывании, особенно в средах, чувствительных к задержкам, таких как робототехника и автономные системы.
- Превосходный пользовательский опыт: Интегрированный в экосистему Ultralytics, YOLOv10 предлагает беспрецедентную простоту использования, исчерпывающую документацию, активную поддержку сообщества и простые рабочие процессы обучения и экспорта. Это значительно сокращает время и усилия на разработку.
PP-YOLOE+ — это мощный инструмент с точки зрения необработанной точности, но он в значительной степени ограничен экосистемой PaddlePaddle. Его больший размер модели и зависимость от платформы делают его менее гибким и более ресурсоемким вариантом по сравнению с высокооптимизированным и удобным для пользователя YOLOv10. Для проектов, требующих баланса высокой производительности, эффективности и простоты разработки, YOLOv10 является явным победителем.
Изучите другие модели
Для тех, кто заинтересован в изучении других современных моделей, Ultralytics предоставляет подробные сравнения для широкого спектра архитектур. Рекомендуем ознакомиться с YOLOv8 за ее проверенную универсальность в различных задачах компьютерного зрения или ознакомиться с нашими сравнениями с моделями, такими как RT-DETR и YOLOv9, чтобы найти идеальный вариант для вашего проекта.