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

YOLOv7 YOLOv6. YOLOv6: баланс между инновациями и скоростью в обнаружении объектов

В быстро развивающейся области обнаружения объектов в реальном времени выбор правильной архитектуры имеет решающее значение для оптимизации производительности и эффективности. В этом подробном сравнении рассматриваются YOLOv7 и YOLOv6.YOLOv6, двух ключевых моделей, которые оказали значительное влияние на эту область. Мы анализируем их архитектурные инновации, тестовые показатели и пригодность для различных задач компьютерного зрения. Кроме того, мы представляем YOLO26 нового поколения, который основан на этих принципах и предлагает превосходную производительность и удобство использования.

Обзор модели

YOLOv7

YOLOv7 был разработан, чтобы превзойти предыдущие передовые детекторы как по скорости, так и по точности. Он представляет собой обучаемый «bag-of-freebies», который оптимизирует обучение без увеличения затрат на вывод.

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

YOLOv6-3.0

YOLOv6.YOLOv6 (также известный как YOLOv6 .0) в значительной степени ориентирован на промышленное применение и оптимизирован для пропускной способности аппаратного обеспечения на графических процессорах. Он является частью обновления «reloading», которое значительно улучшило предыдущие YOLOv6 .

  • Авторы: Чуйи Ли, Лулу Ли, Ифэй Генг, Хунлян Цзян, Мэн Чэн, Бо Чжан, Зайдан Ке, Сяомин Сюй и Сянсян Чу
  • Организация:Meituan
  • Дата: 13 января 2023 г.
  • Arxiv:YOLOv6 v3.0: A Full-Scale Reloading
  • GitHub:meituan/YOLOv6

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

Техническое сравнение

Обе модели нацелены на обеспечение производительности в реальном времени, но достигают этого с помощью разных архитектурных концепций.

Архитектура

YOLOv7 использует расширенную эффективную сеть агрегации слоев (E-ELAN). Эта архитектура контролирует самые короткие и самые длинные пути градиента, позволяя сети обучаться более разнообразным особенностям без нарушения потока градиента. Она также использует масштабирование модели, которое соединяет слои, а не просто масштабирует глубину или ширину, сохраняя оптимальную структуру во время масштабирования.

YOLOv6.YOLOv6 использует модуль двунаправленной конкатенации (BiC) в своей «шее» и полностью свободный от анкеров дизайн. Он ориентирован на аппаратно-дружественные структуры, оптимизируя затраты на доступ к памяти для графических процессоров. В обновлении версии 3.0 были обновлены стратегии обнаружения и присвоения меток, чтобы повысить скорость сходимости и конечную точность.

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

В следующей таблице представлены сравнительные данные по ключевым показателям эффективности на основе COCO .

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7

Сильные и слабые стороны

Преимущества YOLOv7:

  • Богатство функций: структура E-ELAN отлично справляется с захватом мелких деталей, что полезно для обнаружения небольших объектов.
  • Вспомогательная головка: использует «грубое-точное» назначение этикеток с направляющей, обеспечивая более строгий контроль во время обучения.

YOLOv7: слабые стороны

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

Преимущества YOLOv6-3.0:

  • Пропускная способность: специально оптимизирована для сценариев с высокой пропускной способностью на Tesla T4 и аналогичных графических процессорах с использованием TensorRT.
  • Квантование: разработано с учетом квантования (QAT), что упрощает развертывание в формате INT8 на периферийных устройствах.

Недостатки YOLOv6-3.0:

  • CPU : несмотря на отличную производительность на GPU, его архитектура менее оптимизирована для чистых CPU по сравнению с более новыми «Lite»-вариантами или вариантами, специально предназначенными для мобильных устройств.

Приложения в реальном мире

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

Промышленная инспекция с помощью YOLOv6.0

На высокоскоростных производственных линиях пропускная способность имеет первостепенное значение. YOLOv6.YOLOv6 часто является предпочтительным выбором для обнаружения дефектов на конвейерных лентах. Его совместимость с TensorRT ему обрабатывать сотни кадров в секунду на пограничных графических процессорах, гарантируя, что ни один бракованный продукт не проскользнет мимо.

Комплексная система наблюдения с YOLOv7

Для систем безопасности, используемых в местах с большим скоплением людей или для мониторинга на большие расстояния, YOLOv7 является высокоэффективным. Его способность сохранять детали объектов делает его подходящим для городского обслуживания, например, для выявления повреждений дорог или мониторинга дорожного движения, где объекты могут быть небольшими или частично закрытыми.

Гибкость развертывания

Хотя обе модели являются мощными, их развертывание может значительно различаться. YOLOv6 сред, в которых можно использовать агрессивную квантование (INT8), тогда как YOLOv7 сохраняет высокую точность в режимах FP16.

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

Хотя YOLOv7 YOLOv6 надежными архитектурами, их использование в Ultralytics дает разработчикам и исследователям ряд явных преимуществ.Python Ultralytics Python объединяет эти различные модели в рамках единого оптимизированного API.

  • Простота использования: вы можете переключаться между обучением YOLOv7 и более новой архитектурой с помощью одной строки кода.
  • Хорошо поддерживаемая экосистема: Ultralytics предоставляет частые обновления, обеспечивая совместимость с последними версиями PyTorch и драйверами CUDA.
  • Универсальность: помимо стандартного обнаружения, экосистема поддерживает оценку позы и сегментацию экземпляров в совместимых семействах моделей.
  • Эффективность обучения: конвейеры Ultralytics оптимизированы для эффективного использования памяти, что часто позволяет обрабатывать на потребительском оборудовании более крупные пакеты данных, чем в исходных исследовательских хранилищах.

Пример кода

Вот как легко вы можете поэкспериментировать с этими моделями, используя Ultralytics:

from ultralytics import YOLO

# Load a YOLOv7 model (or swap to 'yolov6n.pt')
model = YOLO("yolov7.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")

Будущее: YOLO26

Хотя YOLOv7 YOLOv6. YOLOv6 по-прежнему остаются эффективными, в этой области произошли значительные изменения. Выпущенная в январе 2026 года, YOLO26 представляет собой новый стандарт эффективности и производительности, устраняющий ограничения своих предшественников.

YOLO26 разработан как идеальное решение для периферийных и облачных развертываний и обладает следующими характеристиками:

  • Сквозной дизайн NMS: в отличие от YOLOv7, YOLO26 изначально является сквозным. Это устраняет необходимость в NMS , что приводит к более быстрой и детерминированной задержке вывода, необходимой для робототехники в реальном времени.
  • MuSGD Optimizer: вдохновленный инновациями в области обучения LLM (такими как Kimi K2 от Moonshot AI), этот гибридный оптимизатор сочетает в себе SGD Muon, стабилизируя обучение и ускоряя сходимость.
  • Ускорение CPU до 43%: благодаря удалению Distribution Focal Loss (DFL) и оптимизации архитектуры YOLO26 значительно ускоряет работу на CPU, что делает его превосходным решением для периферийных устройств, таких как Raspberry Pi.
  • ProgLoss + STAL: усовершенствованные функции потерь улучшают распознавание мелких объектов, что является критически важной областью, в которой старые модели часто испытывали трудности.

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

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

Другие модели для изучения

Если вы заинтересованы в изучении других архитектур в Ultralytics , обратите внимание на следующее:

  • YOLO11: Предыдущее поколение, представляющее собой передовое достижение в своей области и отличающееся оптимальным балансом функций.
  • YOLOv10: пионер стратегий обучения NMS в YOLO .
  • RT-DETR: детектор на основе трансформатора, который отличается высокой точностью, но требует больше GPU .

Используя Ultralytics , вы можете легко сравнить эти модели с вашими конкретными наборами данных, чтобы найти идеально подходящую для вашего приложения.


Комментарии