YOLOv7 против YOLOv9: подробное техническое сравнение
При выборе модели YOLO для обнаружения объектов крайне важно понимать нюансы между различными версиями. На этой странице представлено подробное техническое сравнение YOLOv7 и YOLOv9, двух значимых моделей в серии YOLO, разработанных исследователями из Института информатики, Academia Sinica, Тайвань. Мы рассмотрим их архитектурные инновации, показатели производительности и пригодность для различных приложений, чтобы помочь вам принять обоснованное решение для вашего следующего проекта в области компьютерного зрения.
YOLOv7: Эффективное и быстрое обнаружение объектов
Выпущенная в июле 2022 года, YOLOv7 была знаковой моделью, целью которой была значительная оптимизация скорости и точности для обнаружения объектов в реальном времени, установив новые стандарты эффективности на тот момент.
Авторы: Чен-Яо Ванг, Алексей Бочковский и Хонг-Юань Марк Ляо
Организация: Институт информатики, Academia Sinica, Тайвань
Дата: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
Документация: https://docs.ultralytics.com/models/yolov7/
Архитектура и ключевые особенности
Философия проектирования YOLOv7 сосредоточена на максимизации скорости вывода без ущерба для точности. В ней представлены несколько ключевых архитектурных элементов и стратегий обучения для достижения этого баланса:
- Расширенная сеть агрегации эффективных слоев (E-ELAN): Этот основной компонент backbone повышает способность сети к обучению за счет более эффективного управления агрегацией признаков. Как подробно описано в исследовательской работе, это позволяет модели изучать более надежные признаки без существенного увеличения вычислительных затрат.
- Составное масштабирование модели: YOLOv7 представила методы составного масштабирования для глубины и ширины модели, обеспечивая эффективную оптимизацию в диапазоне размеров модели в соответствии с различными вычислительными бюджетами.
- Обучаемый набор бесплатных улучшений: Эта концепция включает в себя включение различных методов оптимизации в процессе обучения, таких как расширенная аугментация данных и стратегии назначения меток. Эти методы повышают точность окончательной модели, не добавляя никаких накладных расходов к стоимости вывода.
Сильные и слабые стороны
Сильные стороны
- Высокая скорость инференса: Оптимизирована для приложений реального времени, YOLOv7 часто обеспечивает более быстрый инференс, чем многие последующие модели в определенных конфигурациях оборудования и размера пакета.
- Высокая производительность: Он достигает конкурентоспособных показателей mAP, что делает его надежным и мощным выбором для многих задач обнаружения.
- Устоявшаяся модель: Будучи доступной в течение некоторого времени, YOLOv7 выигрывает от более широкого распространения, обширных ресурсов сообщества и многочисленных проверенных примеров развертывания.
Слабые стороны
- Более низкая пиковая точность: По сравнению с более новой YOLOv9, YOLOv7 может демонстрировать несколько более низкую максимальную точность, особенно в сложных сценариях со множеством мелких или перекрывающихся объектов.
- Детектирование на основе Anchor: Он опирается на предопределенные anchor boxes, которые иногда могут быть менее гибкими, чем подходы без anchor, для обнаружения объектов с необычными или сильно различающимися пропорциями.
Случаи использования
YOLOv7 исключительно хорошо подходит для приложений, где скорость inference является наиболее важным фактором:
- Системы анализа видео и видеонаблюдения в реальном времени.
- Edge AI развертывания на устройствах с ограниченными ресурсами, таких как в робототехнике и дронах.
- Быстрое прототипирование и разработка систем обнаружения объектов, где важны быстрые сроки выполнения.
YOLOv9: Программируемая градиентная информация для повышения точности
YOLOv9, представленная в феврале 2024 года, представляет собой значительную архитектурную эволюцию, непосредственно решающую проблему потери информации в глубоких нейронных сетях, что приводит к существенному повышению точности.
Авторы: Чен-Яо Ванг и Хонг-Юань Марк Ляо
Организация: Институт информатики, Academia Sinica, Тайвань
Дата: 2024-02-21
Arxiv: https://arxiv.org/abs/2402.13616
GitHub: https://github.com/WongKinYiu/yolov9
Документация: https://docs.ultralytics.com/models/yolov9/
Архитектура и ключевые особенности
YOLOv9 представляет новые концепции, разработанные для улучшения потока информации через сеть, что приводит к более эффективному обучению и более высокой точности.
- Программируемая градиентная информация (PGI): Это краеугольный камень инноваций YOLOv9. PGI решает проблему информационного узкого места, присущую глубоким сетям, генерируя надежные градиенты через вспомогательные обратимые ветви. Это гарантирует, что важная информация сохраняется для обновлений в более глубоких слоях, предотвращая потерю ключевых деталей, необходимых для точного обнаружения.
- Обобщенная эффективная сеть агрегации слоев (GELAN): Основываясь на успехах таких архитектур, как CSPNet (используемая в YOLOv5), GELAN — это новая, высокоэффективная сетевая архитектура. Она оптимизирует использование параметров и вычислительную эффективность, позволяя YOLOv9 достигать лучшей производительности с меньшими ресурсами.
Сильные и слабые стороны
Сильные стороны
- Повышенная точность: Комбинация PGI и GELAN обеспечивает превосходное извлечение признаков и значительно более высокие показатели mAP по сравнению с YOLOv7, что особенно заметно в более крупных вариантах моделей.
- Повышенная эффективность: YOLOv9 достигает лучшей точности с меньшим количеством параметров и вычислений, чем предыдущие модели. Для заданного уровня точности YOLOv9 часто более эффективна, чем YOLOv7.
- Передовые инновации: Он представляет собой последние достижения из оригинальной исследовательской линии YOLO, расширяя границы возможного в обнаружении объектов в реальном времени.
Слабые стороны
- Вычислительные требования: Несмотря на эффективность с точки зрения точности, продвинутая архитектура, особенно в более крупных вариантах, таких как YOLOv9e, все еще может требовать значительных вычислительных ресурсов для обучения и развертывания.
- Более новая модель: Будучи более новым релизом, поддержка сообщества и руководства по развертыванию от сторонних разработчиков могут быть менее обширными, чем для хорошо зарекомендовавшей себя модели, такой как YOLOv7. Однако ее интеграция в экосистему Ultralytics помогает смягчить это, обеспечивая удобство работы.
Случаи использования
YOLOv9 — идеальный выбор для приложений, требующих высочайшего уровня точности и эффективности:
- Сложные задачи обнаружения в автономных транспортных средствах и передовых системах помощи водителю.
- Высокоточные системы безопасности, требующие минимизации ложных срабатываний и пропусков.
- Приложения, где размер модели и вычислительные затраты являются критическими ограничениями, и при этом нельзя жертвовать высокой точностью.
Прямое сравнение производительности и эффективности
При непосредственном сравнении YOLOv7 и YOLOv9 выявляется четкая тенденция: YOLOv9 предлагает превосходный компромисс между точностью и вычислительными затратами. Например, модель YOLOv9m достигает того же mAP 51,4%, что и YOLOv7l, но делает это почти с половиной параметров (20,0M против 36,9M) и меньшим количеством FLOPs. Аналогично, YOLOv9c обеспечивает производительность, сопоставимую с YOLOv7x (53,0% против 53,1% mAP), будучи при этом значительно более эффективным, используя всего 25,3M параметров по сравнению с 71,3M у YOLOv7x. Этот выигрыш в эффективности является прямым результатом архитектурных улучшений в YOLOv9, особенно PGI и GELAN, которые обеспечивают более эффективное обучение.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT10 (мс) |
параметры (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
YOLOv9t | 640 | 38.3 | - | 2.30 | 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 |
Заключение и рекомендации
YOLOv7 и YOLOv9 — это впечатляющие модели обнаружения объектов, но они ориентированы на несколько разные приоритеты.
-
YOLOv7 остается сильным конкурентом, особенно для приложений, где скорость логического вывода является первостепенной задачей и предпочтительна устоявшаяся, широко поддерживаемая архитектура. Это проверенная рабочая лошадка для многих систем реального времени.
-
YOLOv9 является явным преемником и рекомендуемым выбором для новых проектов, требующих современной точности и эффективности. Ее инновационная архитектура решает ключевые проблемы в глубоком обучении, в результате чего получается модель, которая является одновременно более точной и более вычислительно эффективной, чем ее предшественница.
Несмотря на то, что обе модели превосходны, разработчикам, ищущим более интегрированное и универсальное решение, следует также рассмотреть модели из экосистемы Ultralytics, такие как Ultralytics YOLOv8 и новейшая YOLO11. Эти модели предлагают оптимизированный пользовательский интерфейс, обширную документацию и поддержку широкого спектра задач, помимо обнаружения, включая сегментацию экземпляров, оценку позы и классификацию, и все это в рамках единой, хорошо поддерживаемой структуры.
Изучите другие модели
Для дальнейших сравнений и изучения других современных моделей ознакомьтесь с этими другими страницами в документации Ultralytics:
- YOLOv5: Известна своим балансом производительности и широким распространением.
- YOLOv8: Универсальная и мощная модель, поддерживающая множество задач компьютерного зрения.
- YOLOv10: Ориентирован на обнаружение объектов в реальном времени и сквозную обработку за счет устранения необходимости в NMS.
- YOLO11: Новейшая современная модель от Ultralytics, предлагающая первоклассную производительность и эффективность.
- RT-DETR: Детектор на основе transformer-архитектуры, предлагающий другой архитектурный подход.