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

YOLOv10 против YOLOv9: всестороннее техническое сравнение

Область обнаружения объектов стремительно развивается, и очередные итерации архитектуры YOLO (You Only Look Once) расширяют границы скорости и точности. Два наиболее значительных последних вклада в эту область - это YOLOv10 и YOLOv9. Несмотря на то, что обе модели достигли передовой производительности на наборе данныхCOCO , они значительно отличаются друг от друга философией разработки и архитектурными задачами.

YOLOv10 ставит во главу угла низкую задержку и сквозную эффективность, устраняя необходимость в не максимальном подавленииNMS), в то время как YOLOv9 фокусируется на максимальном сохранении информации и точности благодаря программируемой градиентной информации (PGI). В данном руководстве приводится подробное техническое сравнение, которое поможет разработчикам и исследователям выбрать оптимальную модель для своих приложений компьютерного зрения.

YOLOv10: сквозной детектор реального времени

Выпущен в мае 2024 года исследователями из Университета Цинхуа, YOLOv10 представляет собой смену парадигмы в линейке YOLO . Основное нововведение - удаление этапа постобработки Non-Maximum Suppression (NMS), который традиционно был узким местом в задержке вывода.

Технические детали:

Архитектура и Ключевые Инновации

Эффективность YOLOv10 достигается благодаря сочетанию последовательных двойных назначений и целостного дизайна модели, ориентированного на эффективность и точность.

  1. ОбучениеNMS: Традиционные модели YOLO полагаются на NMS для отсеивания дубликатов ограничительных рамок. В YOLOv10 используется стратегия двойного назначения при обучении модели. Ветвь "один ко многим" обеспечивает богатые сигналы супервизора для обучения, а ветвь "один к одному" гарантирует, что модель генерирует один наилучший прогноз для каждого объекта во время вывода. Это позволяет развертывать модель без NMS, значительно сокращая задержки в выводах.
  2. Оптимизация модели: Архитектура включает в себя облегченные классификационные головки, понижающую дискретизацию с развязкой по пространственным каналам и ранговый дизайн блоков. Эти особенности снижают избыточность вычислений и уменьшают потребление памяти, что делает модель высокоэффективной на оборудовании с ограниченными ресурсами.

Преимущество эффективности

Устранение NMS в YOLOv10 особенно полезно для пограничного развертывания. На устройствах с ограниченными ресурсами CPU отказ от вычислительных затрат на сортировку и фильтрацию тысяч ящиков-кандидатов может привести к значительному ускорению.

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

YOLOv9: мастерство сохранения информации

Представлена в феврале 2024 года Чиен-Яо Вангом и Хонг-Юаном Марком Ляо, YOLOv9 направлена на решение проблемы "информационного узкого места", присущей глубоким нейронным сетям. При прохождении данных через последовательные слои (извлечение признаков) важная информация может быть потеряна, что приводит к снижению точности, особенно для маленьких или detect объектов.

Технические детали:

Архитектура и Ключевые Инновации

В YOLOv9 представлены новые концепции, позволяющие сети сохранять и использовать как можно больше входной информации.

  1. Программируемая градиентная информация (PGI): PGI - это вспомогательная система контроля, которая генерирует надежные градиенты для обновления весов сети. Это гарантирует, что глубокие слои получают полную входную информацию, смягчает проблему исчезающего градиента и улучшает сходимость.
  2. Обобщенная эффективная сеть агрегации уровней (Generalized Efficient Layer Aggregation Network, GELAN): Эта новая архитектура заменяет традиционную ELAN, использовавшуюся в предыдущих версиях. GELAN оптимизирует использование параметров и эффективность вычислений (FLOPs), позволяя YOLOv9 достичь более высокой точности при размере модели, сравнимом с предшественниками.

Глубокое обучение

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

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

Метрики производительности: Скорость против точности

Выбор между этими двумя моделями часто сводится к компромиссу между скоростью вывода и точностью обнаружения. В таблице ниже показаны различия в производительности при различных масштабах модели.

Анализ:

  • Задержка: YOLOv10 постоянно превосходит YOLOv9 по задержке, особенно в моделях меньшего размера (N и S). Например, YOLOv10n достигает скорости вывода 1,56 мс на TensorRT, что значительно быстрее, чем у сопоставимых моделей.
  • Точность: YOLOv9 отличается высокой точностью. Модель YOLOv9e достигает замечательного показателя 55,6 % mAP, что делает ее превосходным выбором для приложений, где точность имеет первостепенное значение.
  • Эффективность: YOLOv10 обеспечивает превосходную точность по каждому параметру. YOLOv10b достигает 52,7% mAP при меньшей задержке, чем YOLOv9c, демонстрируя эффективность целостного дизайна.
Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Идеальные варианты использования

Понимание сильных сторон каждой модели помогает выбрать инструмент, подходящий для конкретных целей проекта.

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

  • Развертывание краевого ИИ: Приложения, работающие на таких устройствах, как NVIDIA Jetson или Raspberry Pi, получают преимущества благодаря NMS, что снижает нагрузку на CPU .
  • Высокочастотный видеоанализ: Сценарии, требующие обработки видеопотоков с высокой частотой кадров в секунду, например, мониторинг трафика или спортивная аналитика.
  • Робототехника в реальном времени: Автономные системы, которые полагаются на контуры обратной связи с малой задержкой для навигации и обхода препятствий.

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

  • Высокоточный контроль: Контроль качества в промышленности, где пропуск дефекта (ложное срабатывание) обходится дорого.
  • Обнаружение мелких объектов: Приложения, связанные с анализом спутниковых снимков или медицинской визуализацией, где объекты имеют малые размеры и бедные признаками.
  • Сложные сцены: Окружение с высокой окклюзией или беспорядком, где для различения объектов необходимо сохранить максимум информации.

Использование с Ultralytics

Одним из существенных преимуществ использования этих моделей является их интеграция в экосистему Ultralytics . И YOLOv10 , и YOLOv9 можно использовать через единый Python API и интерфейс командной строкиCLI), что упрощает рабочий процесс от обучения до развертывания.

Пример на Python

Следующий код демонстрирует, как загрузить и запустить вывод для обеих моделей, используя ultralytics пакет.

from ultralytics import YOLO

# Load a YOLOv10 model (NMS-free, high speed)
model_v10 = YOLO("yolov10n.pt")

# Load a YOLOv9 model (High accuracy)
model_v9 = YOLO("yolov9c.pt")

# Run inference on an image
# The API remains consistent regardless of the underlying architecture
results_v10 = model_v10("https://ultralytics.com/images/bus.jpg")
results_v9 = model_v9("https://ultralytics.com/images/bus.jpg")

# Print results
for r in results_v10:
    print(f"YOLOv10 Detections: {r.boxes.shape[0]}")

for r in results_v9:
    print(f"YOLOv9 Detections: {r.boxes.shape[0]}")

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

Выбор Ultralytics для реализации проектов в области компьютерного зрения дает ряд преимуществ, помимо архитектуры моделей:

  • Простота использования: Удобный API позволяет переключаться между YOLOv9, YOLOv10 и другими моделями, такими как YOLO11 просто изменив имя файла весов.
  • Баланс производительности: Реализации Ultralytics оптимизированы для реальной производительности, балансируя между скоростью и точностью.
  • Эффективность обучения: Фреймворк поддерживает такие функции, как автоматическая смешанная точность (AMP) и обучение на нескольких GPU , что упрощает обучение пользовательских моделей на собственных наборах данных.
  • Требования к памяти: Модели Ultralytics обычно занимают меньше памяти по сравнению с альтернативами на основе трансформаторов, что облегчает обучение на графических процессорах потребительского класса.

Заключение

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

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

Изучите другие модели

  • Ultralytics YOLO11 - Новейшая современная модель.
  • Ultralytics YOLOv8 - Универсальная и зрелая модель для различных задач зрения.
  • RT-DETR - Детектор на основе трансформатора для высокоточных приложений.

Комментарии