Link to this sectionYOLOv10 против YOLOv7#
Стремительное развитие компьютерного зрения за последние несколько лет привело к появлению все более эффективных архитектур для приложений реального времени. Сравнение YOLOv10 и YOLOv7 подчеркивает критический переходный период в этой эволюции. В то время как YOLOv7 представил высокоэффективные стратегии обучения и масштабирование архитектуры, YOLOv10 произвел революцию в развертывании, устранив давнюю зависимость от Non-Maximum Suppression (NMS).
Обе модели расширили границы обнаружения объектов в момент своего выхода, однако современная экосистема Ultralytics и появление моделей следующего поколения, таких как YOLO26, предлагают гораздо более качественные рабочие процессы для современных AI-специалистов.
Link to this sectionПрофили и происхождение моделей#
Понимание происхождения этих моделей дает ценный контекст относительно их архитектурных решений и академических исследований, стоящих за ними.
Link to this sectionДетали YOLOv10#
- Авторы: Ао Ван, Хуэй Чен, Лихао Лю и др.
- Организация: Tsinghua University
- Дата: 2024-05-23
- Arxiv: YOLOv10: Real-Time End-to-End Object Detection
- GitHub: THU-MIG/yolov10
- Docs: Документация Ultralytics YOLOv10
Link to this sectionДетали YOLOv7#
- Авторы: Chien-Yao Wang, Alexey Bochkovskiy и Hong-Yuan Mark Liao
- Организация: Institute of Information Science, Academia Sinica, Taiwan
- Дата: 2022-07-06
- Arxiv: YOLOv7: Trainable bag-of-freebies sets new state-of-the-art
- GitHub: WongKinYiu/yolov7
- Docs: Документация Ultralytics YOLOv7
Link to this sectionАрхитектурные инновации#
Link to this sectionПодход YOLOv7#
Выпущенная в 2022 году, YOLOv7 была в значительной степени сосредоточена на оптимизации градиентных путей. Она представила Extended Efficient Layer Aggregation Network (E-ELAN), что позволило модели изучать более разнообразные признаки, не разрушая исходный градиентный путь. Кроме того, авторы реализовали методологию «trainable bag-of-freebies», используя методы перепараметризации во время обучения, которые могли быть объединены во время вывода для поддержания высокой скорости выполнения. Несмотря на эти впечатляющие оптимизации, YOLOv7 по-прежнему сильно зависела от NMS при постобработке, создавая переменную задержку при анализе сложных сцен.
Link to this sectionПрорыв YOLOv10#
YOLOv10 напрямую устранила узкое место NMS. Внедряя последовательные двойные назначения во время обучения, команда Tsinghua University обеспечила NMS-free сквозное обнаружение. Этот двухголовый подход использует одну ветвь с назначением «один-ко-многим» для богатых контрольных сигналов во время обучения и другую ветвь с назначением «один-к-одному» для вывода без NMS. Этот архитектурный сдвиг обеспечивает стабильную, сверхнизкую задержку вывода, подходящую для высокоскоростной видеоаналитики. Кроме того, YOLOv10 использует целостный дизайн модели, основанный на эффективности и точности, устраняя вычислительную избыточность, обнаруженную в предыдущих поколениях.
Удаление постобработки NMS не только ускоряет вывод, но и значительно упрощает развертывание на пограничном AI-оборудовании, таком как AI-ускорители и NPU, где нестандартные операции NMS, как известно, трудно компилировать.
Link to this sectionСравнение производительности#
При сравнении исходных метрик на наборе данных MS COCO становится очевидным разрыв между поколениями. YOLOv10 достигает гораздо более выгодного компромисса между параметрами, вычислительными требованиями и точностью.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Как показано выше, YOLOv10x обеспечивает превосходный mAP 54,4% по сравнению с 53,1% у YOLOv7x, используя при этом примерно на 20% меньше параметров. Кроме того, легкие модели YOLOv10 (Nano и Small) предлагают исключительные скорости развертывания TensorRT, что делает их весьма привлекательными для мобильного использования.
Link to this sectionПреимущества экосистемы Ultralytics#
Хотя изучение архитектурных статей дает много полезного, современная разработка в области компьютерного зрения опирается на надежные, хорошо поддерживаемые фреймворки. Выбор модели, поддерживаемой Ultralytics, дает огромное преимущество разработчикам, стремящимся быстро перейти от прототипа к производству.
Link to this sectionУпрощенная разработка#
Доступ как к YOLOv10, так и к YOLOv7 возможен через стандартный пакет Ultralytics Python. Это обеспечивает непревзойденную простоту использования, заменяя тысячи строк шаблонного кода простым и интуитивно понятным API. Более того, модели Ultralytics YOLO требуют значительно меньше памяти CUDA во время обучения по сравнению с тяжелыми архитектурами Transformer, что позволяет использовать большие размеры пакетов (batch sizes) на потребительском оборудовании.
Link to this sectionНепревзойденная универсальность#
В то время как старые репозитории часто ориентированы строго на обнаружение ограничивающих рамок (bounding box), интегрированный фреймворк Ultralytics бесшовно поддерживает огромное разнообразие задач. Независимо от того, выполняешь ли ты сегментацию экземпляров, оценку позы или обнаружение ориентированных ограничивающих рамок (OBB), рабочий процесс остается идентичным.
Link to this sectionПример кода: последовательные рабочие процессы обучения#
Следующий фрагмент кода демонстрирует процесс бесшовного обучения, который автоматически обрабатывает аугментацию данных и планирование скорости обучения:
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")Link to this sectionСценарии использования и рекомендации#
Выбор между YOLOv10 и YOLOv7 зависит от твоих конкретных проектных требований, ограничений развертывания и предпочтений в экосистеме.
Link to this sectionКогда стоит выбрать YOLOv10#
YOLOv10 — отличный выбор для:
- Детекции в реальном времени без NMS: Приложения, которым полезна сквозная (end-to-end) детекция без использования Non-Maximum Suppression, что снижает сложность развертывания.
- Сбалансированного соотношения скорости и точности: Проекты, требующие оптимального баланса между скоростью вывода и точностью детекции для различных масштабов моделей.
- Приложений с постоянной задержкой: Сценарии развертывания, где критически важна предсказуемость времени вывода, например, в робототехнике или автономных системах.
Link to this sectionКогда выбирать YOLOv7#
YOLOv7 рекомендуется для:
- Академического бенчмаркинга: воспроизведение результатов уровня state-of-the-art 2022 года или изучение эффектов E-ELAN и методов trainable bag-of-freebies.
- Исследований репараметризации: изучение плановых репараметризованных сверток и стратегий составного масштабирования моделей.
- Существующих кастомных конвейеров: проектов с сильно модифицированными конвейерами, построенными вокруг специфической архитектуры YOLOv7, которые нельзя легко переработать.
Link to this sectionКогда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и опыта разработчика:
- Развертывания на периферии без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложности постобработки подавления немаксимумов.
- Среды только с CPU: устройств без выделенного GPU-ускорения, где до 43% более быстрый вывод на CPU у YOLO26 дает решающее преимущество.
- Детектирования мелких объектов: сложных сценариев, таких как аэросъемка с дронов или анализ датчиков IoT, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Link to this sectionНовый стандарт: представляем YOLO26#
Хотя YOLOv10 был огромным шагом вперед в 2024 году, ландшафт компьютерного зрения движется невероятно быстро. Для всех новых разработок мы настоятельно рекомендуем модель последнего поколения: Ultralytics YOLO26. Выпущенная в январе 2026 года, она представляет собой абсолютную вершину AI для компьютерного зрения в реальном времени, значительно превосходя как YOLOv7, так и YOLOv10.
YOLO26 предлагает беспрецедентные инновации, разработанные специально для современных сред развертывания:
- Сквозной дизайн без NMS: основываясь на фундаменте, заложенном YOLOv10, YOLO26 нативно устраняет постобработку NMS для более простых конвейеров развертывания и стабильного высокоскоростного вывода.
- До 43% более быстрый вывод на CPU: значительно оптимизирован для пограничных вычислений и устройств без выделенных GPU, обеспечивая огромную экономию на затратах на оборудование.
- Удаление DFL: Distribution Focal Loss была полностью удалена, что радикально упрощает логику экспорта и значительно улучшает совместимость с маломощными пограничными устройствами и микроконтроллерами.
- Оптимизатор MuSGD: вдохновленный Kimi K2 от Moonshot AI, этот гибрид SGD и Muon привносит инновации в обучении больших языковых моделей (LLM) непосредственно в компьютерное зрение, обеспечивая невероятно стабильную динамику обучения и более быструю сходимость.
- ProgLoss + STAL: эти передовые функции потерь обеспечивают заметные улучшения в распознавании мелких объектов — исторически сложной области, которая критически важна для дронов, робототехники и мониторинга умных городов.
- Улучшения для конкретных задач: YOLO26 — это не просто детектор. Он включает специализированную функцию потерь для семантической сегментации, Residual Log-Likelihood Estimation (RLE) для сверхточного отслеживания позы и специализированные алгоритмы угловых потерь для устранения проблем с границами OBB.
Для наилучшего опыта управления наборами данных, обучения YOLO26 и развертывания моделей в облаке изучи Ultralytics Platform. Она предлагает no-code интерфейс, который идеально дополняет Python SDK.
Link to this sectionРеальные сценарии использования#
Выбор правильной архитектуры во многом зависит от ограничений твоего оборудования и приложения.
Link to this sectionКогда использовать YOLOv7#
YOLOv7 остается надежным выбором для поддержки устаревших конвейеров, которые уже глубоко интегрированы с ее специфическими тензорными структурами, или при воспроизведении академических бенчмарков 2022 и 2023 годов. Она отлично работает на серверных GPU высокого класса.
Link to this sectionКогда использовать YOLOv10#
YOLOv10 блистает в сценариях, требующих строгой, неизменной задержки. Поскольку она не использует NMS, она отлично подходит для подсчета толпы высокой плотности или обнаружения производственных дефектов, где количество объектов сильно колеблется, но время обработки одного кадра должно оставаться постоянным.
Link to this sectionКогда использовать YOLO26#
YOLO26 — это окончательный выбор для любого нового проекта. От развертывания сложных систем охранной сигнализации на обычном Raspberry Pi до запуска масштабной облачной видеоаналитики, превосходные скорости CPU и продвинутое обнаружение мелких объектов делают ее значительно лучше старых поколений.
Для разработчиков, заинтересованных в изучении альтернативных современных архитектур, мы также предоставляем широкую поддержку детекторов на базе Transformer, таких как RT-DETR, и предыдущих поколений, таких как Ultralytics YOLO11.