YOLOv9 против PP-YOLOE+: Технический глубокий анализ современного обнаружения объектов
Ландшафт обнаружения объектов в реальном времени продолжает быстро развиваться, предлагая инженерам компьютерного зрения широкий спектр вариантов для развертывания высокоточных моделей на периферийной и облачной инфраструктуре. Двумя выдающимися моделями в этой области являются YOLOv9 и PP-YOLOE+. Хотя обе модели расширяют границы точности и скорости, они происходят из разных исследовательских направлений и программных экосистем.
Этот всесторонний технический обзор исследует их архитектуры, методологии обучения, метрики производительности и идеальные сценарии применения в реальном мире. Мы также рассмотрим, как более широкая экосистема Ultralytics предоставляет значительные преимущества разработчикам, для которых приоритетны простота использования, эффективность памяти и универсальность развертывания.
Происхождение моделей и технические характеристики
Понимание предыстории этих моделей помогает контекстуализировать их архитектурные решения и зависимости от фреймворков.
YOLOv9: Решение проблемы узкого места информации
Представленный в начале 2024 года, YOLOv9 решает проблему потери данных, возникающую при прохождении информации через глубокие нейронные сети. Это высокооптимизированная сверточная нейронная сеть, разработанная для максимизации эффективности параметров.
- Авторы: Чен-Яо Ванг, Хонг-Юань Марк Ляо
- Организация: Institute of Information Science, Academia Sinica, Taiwan
- Дата: 21 февраля 2024 г.
- Arxiv:2402.13616
- GitHub:WongKinYiu/yolov9
- Документация:Документация Ultralytics YOLOv9
PP-YOLOE+: Развитие экосистемы Paddle
Выпущенный Baidu в 2022 году, PP-YOLOE+ является итеративным улучшением PP-YOLOv2. Он использует безанкерную парадигму и внедряет стратегию динамического присвоения меток для улучшения сходимости и точности в рамках PaddlePaddle framework.
- Авторы: Авторы PaddlePaddle
- Организация: Baidu
- Дата: 2 апреля 2022 г.
- Arxiv:2203.16250
- GitHub:PaddleDetection
- Документация:Конфигурация PP-YOLOE+
Архитектурное сравнение
Программируемая градиентная информация против CSPRepResStage
Ключевым нововведением в YOLOv9 является Программируемая Градиентная Информация (PGI). PGI действует как вспомогательная система контроля, обеспечивая сохранение жизненно важной градиентной информации и ее точное распространение обратно в неглубокие слои во время обучения. Это сочетается с Обобщенной Эффективной Сетью Агрегации Слоев (GELAN), которая объединяет преимущества CSPNet и ELAN для обеспечения высокой точности при значительном снижении вычислительных затрат (FLOPs).
PP-YOLOE+ опирается на специализированный backbone под названием CSPRepResStage. Он использует методы репараметризации (аналогичные тем, что используются в RepVGG) для ускорения инференса путем слияния сверточных слоев во время развертывания. Кроме того, он использует Efficient Task-aligned head (ET-head) для балансировки задач классификации и регрессии.
Хотя PP-YOLOE+ является надежным решением, архитектура GELAN в YOLOv9 обычно требует меньшего объема памяти как во время обучения, так и во время инференса, что делает ее исключительно подходящей для устройств граничного ИИ.
Сравнение производительности
При оценке моделей для производства компромисс между mAP (средней точностью), скоростью инференса и размером модели имеет решающее значение.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| 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 |
Анализ
- Эффективность по параметрам: YOLOv9 достигает значительно более высокой эффективности. Например, YOLOv9c достигает mAP 53.0% при использовании всего 25.3 млн параметров, в то время как PP-YOLOE+l требует более чем вдвое больше параметров (52.2 млн) для достижения немного более низкого mAP в 52.9%. Это значительно снижает требования к памяти для YOLOv9.
- Скорость инференса: Модели YOLOv9 демонстрируют отличную оптимизацию для аппаратных ускорителей, таких как TensorRT, обеспечивая конкурентоспособные скорости инференса на GPU NVIDIA T4, которые критически важны для инференса в реальном времени.
Методологии обучения и экосистема
Выбор между этими моделями часто сводится к программной экосистеме.
PP-YOLOE+ и PaddlePaddle
PP-YOLOE+ тесно интегрирован с пакетом PaddleDetection. Хотя он мощный, он требует от пользователей работы в среде, сильно зависящей от конфигурации и управляемой через командную строку. Для команд, глубоко интегрированных в экосистемы PyTorch или TensorFlow, переход на PaddlePaddle создает значительные трудности и требует более длительного обучения.
Преимущества Ultralytics: Оптимизированные рабочие процессы
В отличие от этого, YOLOv9 работает в высококачественной экосистеме Ultralytics. Разработанный для разработчиков и исследователей, Ultralytics уделяет первостепенное внимание исключительной простоте использования. Python API полностью абстрагирует сложный шаблонный код.
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Train on a custom dataset effortlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# Run inference and visualize results
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX for production deployment
model.export(format="onnx")
Этот рабочий процесс подчеркивает превосходную эффективность обучения моделей Ultralytics. Нативная поддержка аугментации данных, распределенного обучения и автоматическое логирование на такие платформы, как Weights & Biases или MLflow, предоставляется по умолчанию.
Изучите новейшие достижения в области ИИ для зрения
Хотя YOLOv9 предлагает исключительную производительность, мы настоятельно рекомендуем рассмотреть недавно выпущенный Ultralytics YOLO26 для новых проектов. YOLO26 обладает нативной сквозной NMS-Free архитектурой, что значительно упрощает развертывание. Благодаря удалению DFL (Distribution Focal Loss удален для упрощенного экспорта и лучшей совместимости с периферийными/маломощными устройствами) он обеспечивает до 43% более быструю CPU inference для периферийных вычислений. Оптимизатор MuSGD обеспечивает стабильное обучение и быструю сходимость. Кроме того, ProgLoss + STAL предлагает улучшенные функции потерь с заметными улучшениями в распознавании мелких объектов, что критически важно для IoT, робототехники и аэрофотосъемки.
Универсальность и поддержка задач
Современные проекты компьютерного зрения редко ограничиваются простыми ограничивающими рамками.
PP-YOLOE+ в первую очередь разработан для стандартного детектирования объектов. Адаптация его архитектуры для других задач требует обширной индивидуальной инженерной работы.
Напротив, фреймворк Ultralytics является многозадачным инструментом. Используя унифицированный API, разработчики могут легко переключаться от стандартного обнаружения объектов к сложной сегментации экземпляров, высокоточному оцениванию позы, обнаружению ориентированных ограничивающих рамок (OBB) для аэрофотоснимков и классификации изображений. Эта беспрецедентная универсальность является причиной того, почему корпоративные команды постоянно выбирают модели Ultralytics, такие как YOLOv9, YOLO11 и YOLO26.
Идеальные варианты использования и применения
- Аналитика умного города и управление дорожным движением: Высокая эффективность параметров и низкая задержка YOLOv9 (и последующего YOLO26) делают их идеальными для развертывания на ограниченном периферийном оборудовании (например, устройствах NVIDIA Jetson) для мониторинга транспортного потока и городской безопасности.
- Системы инвентаризации розничной торговли: Для обнаружения плотных конфигураций мелких предметов на полках PGI YOLOv9 эффективно сохраняет мелкозернистые пространственные детали, превосходя PP-YOLOE+ в задачах обнаружения мелких объектов.
- Устаревшие развертывания:PP-YOLOE+ остается жизнеспособным вариантом строго для команд, которым явно предписано использовать программный стек Baidu/PaddlePaddle в существующей устаревшей инфраструктуре.
Для исследователей, изучающих архитектуры на основе трансформеров, Ultralytics также нативно поддерживает RT-DETR в рамках того же простого в использовании API, обеспечивая постоянный доступ к оптимальной модели для ваших конкретных требований развертывания.