Ultralytics YOLO27:

YOLOv10 и YOLOv7#

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

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

Профили и происхождение моделей#

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

Сведения о YOLOv10#

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

Сведения о YOLOv7#

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

Архитектурные инновации#

Подход YOLOv7#

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

Прорыв YOLOv10#

YOLOv10 напрямую устранила узкое место, связанное с NMS. Благодаря введению согласованных двойных назначений во время обучения команда Университета Цинхуа реализовала обнаружение от начала до конца без NMS. Этот подход с двумя головами использует одну ветвь с назначениями «один-ко-многим» для получения богатых обучающих сигналов, а другую — с назначениями «один-к-одному» для вывода без NMS. Такой переход в архитектуре обеспечивает стабильную сверхнизкую задержку вывода, подходящую для высокоскоростной видеоаналитики. Кроме того, YOLOv10 использует целостный дизайн модели, ориентированный на эффективность и точность, устраняя вычислительную избыточность, характерную для предыдущих поколений.

Влияние постобработки

Удаление постобработки NMS не только ускоряет вывод, но и значительно упрощает развёртывание на периферийном оборудовании для ИИ, например на ИИ-ускорителях и NPU, где пользовательские операции NMS notoriously сложно компилировать.

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

При сравнении исходных метрик на наборе данных MS COCO разрыв между поколениями становится очевидным. YOLOv10 обеспечивает гораздо более выгодный баланс между количеством параметров, вычислительными требованиями и точностью.

Модельразмер
(пиксели)
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
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Как видно выше, YOLOv10x обеспечивает более высокий показатель mAP — 54,4% против 53,1% у YOLOv7x, используя при этом примерно на 20% меньше параметров. Кроме того, облегчённые модели YOLOv10 (Nano и Small) обеспечивают исключительную скорость развёртывания в TensorRT, что делает их особенно привлекательными для мобильного развёртывания.

Преимущества экосистемы Ultralytics#

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

Оптимизированная разработка#

И YOLOv10, и YOLOv7 доступны через стандартный пакет Ultralytics для Python. Это обеспечивает непревзойдённую простоту использования, заменяя тысячи строк шаблонного кода простым и интуитивно понятным API. Кроме того, модели Ultralytics YOLO требуют значительно меньше памяти CUDA при обучении по сравнению с тяжёлыми архитектурами Transformer, что позволяет использовать большие размеры пакетов на потребительском оборудовании.

Непревзойдённая универсальность#

Если старые репозитории часто сосредоточены исключительно на обнаружении ограничивающих рамок, интегрированный фреймворк Ultralytics без дополнительных настроек поддерживает огромное разнообразие задач. Выполняешь ли ты сегментацию экземпляров, оценку позы или обнаружение ориентированных ограничивающих рамок (OBB), рабочий процесс остаётся одинаковым.

Пример кода: согласованные рабочие процессы обучения#

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

from ultralytics import YOLO

# Load the desired model (YOLOv10, YOLOv7, or the recommended YOLO26)
model = YOLO("yolo26n.pt")

# Train the model effortlessly on your dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, batch=16, device=0)

# Export to ONNX format for rapid deployment
model.export(format="onnx")

Варианты применения и рекомендации#

Выбор между YOLOv10 и YOLOv7 зависит от конкретных требований проекта, ограничений развёртывания и предпочтений в отношении экосистемы.

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

YOLOv10 — подходящий выбор для:

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

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

YOLOv7 рекомендуется для:

  • Академического тестирования: воспроизведения передовых результатов 2022 года или изучения влияния E-ELAN и методов обучаемого набора бесплатных улучшений.
  • Исследований перепараметризации: изучения запланированных перепараметризованных свёрток и стратегий составного масштабирования моделей.
  • Существующих пользовательских конвейеров: проектов со значительно изменёнными конвейерами, построенными вокруг специфической архитектуры YOLOv7, которые сложно переработать.

Когда выбирать Ultralytics (YOLO26)#

Для большинства новых проектов Ultralytics YOLO26 предлагает лучшее сочетание производительности и удобства для разработчиков:

  • Развертывания на периферийных устройствах без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложной постобработки с подавлением немаксимумов.
  • Сред без GPU: устройств без выделенного ускорения GPU, где до 43% более быстрый вывод YOLO26 на CPU дает решающее преимущество.
  • Обнаружения мелких объектов: сложных сценариев, таких как аэрофотосъемка с дронов или анализ данных IoT-сенсоров, где ProgLoss и STAL значительно повышают точность обнаружения крошечных объектов.

Новый стандарт: знакомство с YOLO26#

Хотя YOLOv10 стала огромным шагом вперёд в 2024 году, ландшафт компьютерного зрения развивается невероятно быстро. Для всех новых разработок мы настоятельно рекомендуем модель последнего поколения: Ultralytics YOLO26. Выпущенная в январе 2026 года, она представляет собой абсолютную вершину ИИ для компьютерного зрения в реальном времени, значительно превосходя YOLOv7 и YOLOv10.

YOLO26 предлагает беспрецедентные инновации, специально разработанные для современных сред развёртывания:

  • Сквозной дизайн без NMS: развивая основу, заложенную YOLOv10, YOLO26 изначально устраняет постобработку NMS, упрощая конвейеры развёртывания и обеспечивая стабильный высокоскоростной вывод.
  • До 43% более быстрый вывод на CPU: модель тщательно оптимизирована для периферийных вычислений и устройств без выделенных GPU, что обеспечивает значительную экономию на оборудовании.
  • Удаление DFL: функция потерь с фокусировкой на распределении полностью удалена, что радикально упрощает логику экспорта и значительно повышает совместимость с маломощными периферийными устройствами и микроконтроллерами.
  • Оптимизатор MuSGD: вдохновлённый Kimi K2 от Moonshot AI, этот гибрид SGD и Muon переносит инновации в обучении больших языковых моделей (LLM) непосредственно в компьютерное зрение, обеспечивая невероятно стабильную динамику обучения и более быструю сходимость.
  • ProgLoss + STAL: эти продвинутые функции потерь заметно улучшают распознавание небольших объектов — исторически сложную задачу, критически важную для дронов, робототехники и мониторинга умных городов.
  • Улучшения для конкретных задач: YOLO26 — это не просто детектор. Она включает специализированную функцию потерь для семантической сегментации, оценивание остаточного логарифмического правдоподобия (RLE) для сверхточного отслеживания позы и специализированные алгоритмы угловых потерь, устраняющие проблемы границ OBB.
Управление наборами данных и обучение

Чтобы получить максимально удобный опыт управления наборами данных, обучения YOLO26 и развёртывания моделей в облаке, изучи платформу Ultralytics. Она предлагает интерфейс без кода, который идеально дополняет Python SDK.

Практические сценарии использования#

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

Когда использовать YOLOv7#

YOLOv7 остаётся надёжным выбором для поддержки устаревших конвейеров, уже глубоко интегрированных с её специфическими структурами тензоров, а также для воспроизведения академических тестов 2022 и 2023 годов. На мощных серверных GPU она демонстрирует отличные результаты.

Когда использовать YOLOv10#

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

Когда использовать YOLO26#

YOLO26 — однозначный выбор для любого нового проекта. От развёртывания сложных систем охранной сигнализации на обычном Raspberry Pi до запуска масштабной облачной видеоаналитики — её превосходная скорость на CPU и улучшенное обнаружение небольших объектов делают её намного лучше моделей предыдущих поколений.

Для разработчиков, заинтересованных в изучении альтернативных современных архитектур, мы также предлагаем широкую поддержку детекторов на основе Transformer, таких как RT-DETR, и проверенных временем моделей предыдущего поколения, таких как Ultralytics YOLO11.

Комментарии