YOLOv10 против PP-YOLOE+: Всестороннее техническое сравнение
Выбор правильной модели обнаружения объектов является ключевым шагом в разработке эффективных приложений компьютерного зрения. При выборе часто приходится взвешивать компромиссы между скоростью вывода, точностью обнаружения и аппаратными ограничениями. Данное техническое сравнение анализирует YOLOv10сквозной детектор реального времени от Университета Цинхуа, и PP-YOLOE+, высокоточную модель от экосистемы PaddlePaddle компании Baidu. В обеих моделях реализованы значительные архитектурные инновации, но они отвечают различным потребностям развертывания и средам разработки.
YOLOv10: новый стандарт для сквозного обнаружения в режиме реального времени
YOLOv10 - это значительный скачок в серии YOLO (You Only Look Once), направленный на устранение узких мест в производительности, связанных с традиционной постобработкой. Разработанный исследователями из Университета Цинхуа, он обеспечивает более низкую задержку и более высокую эффективность за счет отсутствия необходимости в немаксимальном подавленииNMS).
Авторы: Ao Wang, Hui Chen, Lihao Liu, et al.
Organization:Tsinghua University
Date: 2024-05-23
ArXiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
Docsultralytics
Архитектура и ключевые особенности
В YOLOv10 применяется последовательная стратегия двойного назначения в процессе обучения. Этот метод позволяет модели предсказывать один лучший бокс для каждого объекта во время вывода, эффективно устраняя необходимость в постобработкеNMS . Такая конструкцияNMS" значительно сокращает время ожидания вывода, особенно в сценах с плотным скоплением объектов.
Основные архитектурные достижения включают в себя:
- Целостный дизайн эффективности и точности: В модели используются облегченные классификационные головки и пространственно-канальная понижающая дискретизация для снижения вычислительных затрат(FLOPs) без ущерба для точности.
- Дизайн блоков, ориентированный на ранг: Для оптимизации компромисса между скоростью и точностью на разных этапах модели используется различный дизайн блоков, что позволяет сократить избыточность в глубоких слоях.
- Конволюты с большими ядрами: Стратегическое использование сверток с большими ядрами улучшает рецептивное поле, позволяя модели лучше понимать контекст и detect мелкие объекты.
Сильные и слабые стороны
YOLOv10 разработан для максимальной эффективности, что делает его отличным выбором для приложений, работающих в режиме реального времени.
- Сильные стороны: Устранение NMS приводит к более высокой скорости детерминированного вывода. Он обеспечивает превосходную эффективность использования параметров, достигая высоких показателейmAP с меньшим количеством параметров, чем предшественники. Интеграция в экосистему Ultralytics обеспечивает простоту обучения и развертывания с помощью простого API на Python .
- Слабые стороны: Будучи специализированным детектором объектов, в настоящее время он ориентирован в основном на обнаружение ограничивающих рамок, в то время как другие модели из набора Ultralytics поддерживают более широкий спектр задач, таких как сегментация и оценка позы.
Идеальные варианты использования
- Автономная робототехника: Низкая задержка YOLOv10 очень важна для робототехники, где для навигации и обхода препятствий требуются доли секунды для принятия решений.
- Развертывание краевого ИИ: Благодаря таким небольшим вариантам, как YOLOv10, он идеально подходит для таких устройств, как NVIDIA Jetson или Raspberry Pi.
- Мониторинг трафика: Способность модели обрабатывать плотные сцены без лишних затрат на NMS делает ее идеальной для управления трафиком в режиме реального времени.
PP-YOLOE+: Точная инженерия в экосистеме PaddlePaddle
PP-YOLOE+ - это эволюция серии PP-YOLOE, разработанной компанией Baidu. Он разработан как масштабируемый безъякорный детектор, для которого приоритетом является высокая точность. Он служит краеугольной моделью в серии PaddlePaddle оптимизированной специально для этой среды.
Авторы: PaddlePaddle Authors
Organization:Baidu
Date: 2022-04-02
ArXiv:https://arxiv.org/abs/2203.16250
GitHubPaddlePaddle
DocsPaddlePaddle
Архитектура и ключевые особенности
PP-YOLOE+ использует архитектуру без якорей, что упрощает пространство поиска гиперпараметров по сравнению с предшественниками, основанными на якорях.
Ключевые особенности включают:
- Магистраль CSPRepResNet: Эта основа сочетает в себе преимущества градиентного потока CSPNet с эффективностью выводов повторно параметризованных блоков ResNet.
- Task Alignment Learning (TAL): специализированная стратегия присвоения меток, которая динамически согласовывает качество классификации якорей с точностью локализации.
- Эффективная головка с выравниванием задач (ET-Head): Разделенная головка обнаружения, которая обрабатывает признаки классификации и локализации независимо друг от друга, чтобы избежать конфликтов.
Сильные и слабые стороны
PP-YOLOE+ - это надежная модель, но она связана с зависимостями, которые могут повлиять на ее принятие.
- Сильные стороны: Обеспечивает превосходную точность при выполнении таких эталонов, как COCOособенно в больших конфигурациях (L и X). Он хорошо оптимизирован для аппаратного обеспечения, поддерживаемого механизмом вывода PaddlePaddle .
- Слабые стороны: Основное ограничение - зависимость от экосистемы PaddlePaddle . Для разработчиков, привыкших к PyTorchпереход на PP-YOLOE+ сопряжен с более сложной кривой обучения и потенциальными трениями при интеграции инструментов. Кроме того, количество параметров значительно выше, чем YOLOv10 , что приводит к увеличению объема памяти.
Идеальные варианты использования
- Промышленный контроль: Высокая точность делает его пригодным для обнаружения мельчайших дефектов в производстве.
- Аналитика розничной торговли: Эффективны для инвентаризации и распознавания товаров в интеллектуальной розничной торговле.
- Сортировка материалов: Используется на предприятиях по переработке отходов для автоматизированной сортировки различных материалов.
Анализ производительности: Эффективность и точность
При сравнении технических показателей YOLOv10 демонстрирует явное преимущество в эффективности. Он достигает сопоставимой или превосходящей точностиmAP), используя при этом значительно меньше параметров и вычислительных ресурсов (FLOPs).
| Модель | размер (пиксели) | 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 |
Основные выводы
- Эффективность: YOLOv10l достигает более высокого показателя mAP (53,3%), чем PP-YOLOE+l (52,9%), при этом используя почти на 44% меньше параметров. Благодаря этому YOLOv10 значительно легче хранить и быстрее загружать.
- Скорость: конструкция YOLOv10 NMS обеспечивает более низкую задержку по всем параметрам. Например, скорость YOLOv10n составляет 1,56 мс, что делает его превосходным для высокоскоростной видеоаналитики.
- Масштабируемость: Хотя PP-YOLOE+x имеет небольшое преимущество в сыром mAP (на 0,3% выше), он требует почти вдвое больше параметров (98,42M против 56,9M) и FLOPs по сравнению с YOLOv10x.
Эффективность памяти
Модели Ultralytics , такие как YOLOv10 и YOLO11 , обычно требуют меньше памяти как при обучении, так и при выводах по сравнению со старыми архитектурами или моделями на основе тяжелых трансформаторов. Такая эффективность позволяет использовать большие объемы партий и ускорять циклы обучения на стандартном оборудовании GPU .
Преимущество Ultralytics
Несмотря на то, что обе модели обладают широкими возможностями, выбор модели в экосистемеUltralytics - например, YOLOv10 или современная модель YOLO11-дает разработчикам определенные преимущества.
- Простота использования:API Ultralytics Python абстрагирует от сложного шаблонного кода. Вы можете обучить, проверить и развернуть модель всего за несколько строк на Python.
- Хорошо поддерживаемая экосистема: Пользователи получают выгоду от частых обновлений, активного сообщества на GitHub и бесшовной интеграции с такими инструментами MLOps, как Ultralytics HUB и Weights & Biases.
- Универсальность: Помимо стандартного обнаружения объектов, фреймворки Ultralytics поддерживают сегментацию объектов, классификацию изображений, оценку позы и обнаружение ориентированных ограничительных рамок (OBB), предлагая единое решение для различных задач компьютерного зрения.
Пример кода: Запуск YOLOv10 с Ultralytics
Интегрировать YOLOv10 в рабочий процесс очень просто с помощью библиотеки Ultralytics :
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model.predict("path/to/image.jpg")
# Display the results
results[0].show()
Заключение
В сравнении между YOLOv10 и PP-YOLOE+, YOLOv10 оказывается лучшим выбором для большинства приложений компьютерного зрения общего назначения. Его архитектураNMS решает давнюю проблему задержки обнаружения объектов, а высокая эффективность использования параметров делает его доступным для развертывания на широком спектре аппаратных средств, от граничных устройств до облачных серверов.
PP-YOLOE+ остается сильным соперником для пользователей, строго привязанных к фреймворку PaddlePaddle , или тех, для кого незначительный прирост точности важнее вычислительной эффективности. Однако для разработчиков, ищущих баланс между скоростью, точностью и простотой использования, YOLOv10более широкая экосистема Ultralytics предлагают более перспективный и удобный для разработчиков путь.
Изучите другие модели
Если вы заинтересованы в изучении других возможностей экосистемы Ultralytics , ознакомьтесь с этими сравнениями:
- YOLO11 против YOLOv10: Узнайте, как новейшая флагманская модель отличается от YOLOv10, ориентированной на экономичность.
- YOLOv10 против RT-DETR: Сравнение трансформаторов реального времени с архитектурами YOLO на основе CNN.
- YOLOv8 против PP-YOLOE+: Проанализируйте производительность широко распространенного YOLOv8 в сравнении с моделью Baidu.