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

YOLOv7 YOLOv10: сравнение архитектур для обнаружения в реальном времени

Эволюция моделей обнаружения объектов характеризуется постоянным стремлением к повышению точности и снижению задержки. Двумя важными вехами на этом пути являются YOLOv7, выпущенная в середине 2022 года, и YOLOv10, представленный в середине 2024 года. Хотя обе архитектуры были передовыми на момент своего выпуска, они представляют собой принципиально разные философии проектирования. YOLOv7 на оптимизации процесса обучения с помощью «мешка бесплатных подарков», тогда как YOLOv10 сквозного подхода, который устраняет необходимость в немаксимальном подавлении (NMS).

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

Сравнение производительности моделей

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

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
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

YOLOv7: Мощный инструмент «Bag-of-Freebies»

Выпущен в июле 2022 года, YOLOv7 был разработан для оптимизации процесса обучения без увеличения затрат на инференцию. Авторы ввели концепцию «trainable bag-of-freebies» (обучаемый набор бесплатных элементов), которая относится к методам оптимизации, которые повышают точность во время обучения, но отбрасываются во время инференции, сохраняя быстродействие модели.

Ключевые технические детали:

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

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

YOLOv10: Обнаружение объектов в реальном времени End-to-End

Выпущенный в мае 2024 года исследователями из Университета Цинхуа, YOLOv10 отметил значительный сдвиг в YOLO , представив обучение NMS.

Ключевые технические детали:

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

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

Критическое сравнение: архитектура и удобство использования

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

Без NMS против на основе якорей

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

Эффективность и использование ресурсов

YOLOv10 превосходную эффективность. Как показано в сравнительной таблице, YOLOv10b достигает точности, сопоставимой с YOLOv7, но с примерно на 65% меньшим количеством параметров. Это резкое уменьшение размера модели приводит к снижению потребления памяти, что делает YOLOv10 подходящим для сред с ограниченным объемом памяти, таких как мобильные приложения или устройства IoT.

Эффективность памяти

Для разработчиков, ориентированных на периферийные устройства, уменьшенное количество параметров YOLOv10 значительно меньшее использование оперативной памяти во время вывода. Это позволяет запускать более крупные пакеты данных или выполнять многозадачность вместе с другими моделями ИИ на одном и том же оборудовании.

Обучение и экосистема

Экосистема, окружающая модель, определяет ее практическую применимость для разработчиков. Именно в этом и заключается преимущество Ultralytics . Обе модели доступны черезPython Ultralytics Python , который унифицирует пользовательский интерфейс.

  • Простота использования: Вы можете переключаться между моделями, изменив одну строку (например, model = YOLO("yolov10n.pt")).
  • Унифицированные режимы: Ultralytics команды для обучения, валидации и экспорта в такие форматы, как ONNX, TensorRT и CoreML.
  • Эффективность обучения: Ultralytics оптимизированы для более низкого использования CUDA по сравнению с исходными PyTorch , что позволяет использовать более крупные пакеты данных на потребительских графических процессорах.
from ultralytics import YOLO

# Load a pre-trained YOLOv10 model (swappable with YOLOv7)
model = YOLO("yolov10n.pt")

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

# Run inference
results = model("path/to/image.jpg")

Будущее: YOLO26

Хотя YOLOv7 YOLOv10 отличными решениями, в этой области все быстро меняется. Недавно выпущенная версия YOLO26 (январь 2026 г.) основана на NMS фундаменте YOLOv10 в нее добавлены дополнительные инновации для еще большей скорости и точности.

  • Беспрерывная работа NMS: как и YOLOv10, YOLO26 изначально работает в беспрерывном режиме, обеспечивая детерминированную задержку.
  • Оптимизатор MuSGD: Вдохновленный обучением LLM, этот гибридный оптимизатор обеспечивает стабильное обучение и более быструю сходимость.
  • Оптимизация по краям: благодаря удалению Distribution Focal Loss (DFL) YOLO26 работает на 43 % быстрее на CPU, что делает его лучшим выбором для пограничных вычислений.
  • Универсальность: YOLO26 поддерживает все задачи, включая OBB, оценку позы и сегментацию.

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

Заключение

Выбор между YOLOv7 YOLOv10 от ваших конкретных ограничений.

  • Выберите YOLOv7, если вы обслуживаете устаревшие системы, оптимизированные для его конкретной архитектуры, или если вам требуются определенные функции «bag-of-freebies» для сравнения в исследовательских целях.
  • Выбирайте YOLOv10 для новых развертываний, требующих низкой задержки и высокой эффективности. Его конструкция NMS и уменьшенное количество параметров делают его идеальным для приложений реального времени на периферии.

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

Дополнительная литература


Комментарии