YOLOv10 против YOLO11: Глубокий анализ архитектур обнаружения объектов реального времени
Ландшафт компьютерного зрения постоянно развивается, новые архитектуры расширяют границы возможного в обработке в реальном времени. Для разработчиков и исследователей, работающих в этой быстро развивающейся области, крайне важно понимать нюансы между передовыми моделями. Это подробное сравнение исследует технические различия, компромиссы в производительности и идеальные сценарии использования для YOLOv10 и Ultralytics YOLO11, двух высокопроизводительных фреймворков для обнаружения объектов.
Хотя обе модели достигают выдающихся результатов на эталонных наборах данных, их основные философии проектирования и интеграции в экосистемы значительно различаются. Изучив их архитектуры, мы можем определить, какое решение наилучшим образом соответствует вашим ограничениям развертывания и целям проекта.
YOLOv10: Пионер сквозного обнаружения без NMS
Выпущенный весной 2024 года, YOLOv10 представил новый подход к традиционному конвейеру обнаружения объектов, путем прямого устранения накладных расходов на задержку, связанных с постобработкой.
- Авторы: Ao Wang, Hui Chen, Lihao Liu, и др.
- Организация:Университет Цинхуа
- Дата: 23 мая 2024 г.
- Научная статья:arXiv:2405.14458
- Исходный код:THU-MIG/yolov10 на GitHub
- Документация:Документация YOLOv10
Выдающимся нововведением YOLOv10 является его стратегия согласованных двойных назначений, которая обеспечивает обучение без NMS. Традиционные детекторы объектов сильно зависят от Non-Maximum Suppression (NMS) для отфильтровывания избыточных предсказаний ограничивающих рамок. Устраняя этот шаг, YOLOv10 достигает истинного сквозного обнаружения, уменьшая задержку инференса и упрощая развертывание на аппаратных ускорителях, таких как Neural Processing Units (NPUs), где пользовательские операции NMS, как известно, трудно оптимизировать.
YOLO11: Универсальность и производительность, обусловленные экосистемой
Выпущенный позже в том же году, YOLO11 представляет собой непрерывное усовершенствование семейства моделей Ultralytics, сосредоточенное на оптимальном балансе скорости, точности и удобства для разработчиков.
- Авторы: Гленн Джочер и Цзин Цю
- Организация:Ultralytics
- Дата: 27 сентября 2024 г.
- Исходный код:Ultralytics на GitHub
- Интеграция с платформой:Ultralytics Platform
YOLO11 разработан для производства. Хотя он превосходно справляется со стандартным обнаружением ограничивающих рамок, его истинная сила заключается в универсальности. В отличие от YOLOv10, который в первую очередь ориентирован на обнаружение объектов, YOLO11 нативно поддерживает сегментацию экземпляров, оценку позы, классификацию изображений и задачи обнаружения ориентированных ограничивающих рамок (OBB), используя унифицированную архитектуру. Он может похвастаться замечательно низкими требованиями к памяти во время обучения, что делает его очень доступным для команд, работающих с потребительскими GPU, по сравнению с более тяжелыми архитектурами на основе трансформеров.
Сравнение производительности и метрик
При сопоставлении этих моделей важно рассмотреть их производительность для различных вариантов масштаба на стандартных бенчмарках, таких как набор данных COCO.
В таблице ниже показаны различия в производительности. YOLO11 часто превосходит YOLOv10 по mAP в большинстве категорий размеров, сохраняя при этом высококонкурентные скорости инференса TensorRT.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
Аппаратное ускорение
Чтобы воспроизвести эти высокие скорости инференса локально, убедитесь, что вы экспортируете свои модели в оптимизированные форматы, такие как OpenVINO для CPU Intel или TensorRT для GPU NVIDIA.
Архитектурное Глубокое Погружение
Методология обучения и эффективность
Архитектура YOLOv10 акцентирует внимание на снижении вычислительной избыточности. Благодаря оптимизации архитектур Backbone и Neck с использованием комплексной стратегии, ориентированной на эффективность и точность, авторы из Университета Цинхуа смогли значительно сократить количество параметров в моделях среднего уровня (например, YOLOv10m) по сравнению с предыдущими итерациями.
Однако, Эффективность обучения является главной отличительной чертой моделей Ultralytics. YOLO11 использует высокоэффективную ultralytics Пакет python, который абстрагирует сложные настройки гиперпараметров. Этот фреймворк автоматически обрабатывает расширенные аугментации данных, планирование скорости обучения и распределенное обучение на нескольких GPU «из коробки». Архитектура YOLO11 также демонстрирует отличный поток градиентов, что приводит к более быстрой сходимости и меньшему использованию VRAM на этапе обучения.
Простота использования и преимущество экосистемы
Критическим фактором для внедрения в корпоративной среде является хорошо поддерживаемая экосистема. Исследовательские репозитории, хотя и новаторские, часто становятся неактивными после первоначальной публикации статьи. Экосистема Ultralytics, поддерживающая YOLO11, обеспечивает бесшовный, сквозной опыт для разработчиков.
Бесшовная интеграция с такими инструментами, как Weights & Biases для отслеживания экспериментов и Roboflow для управления наборами данных, YOLO11 ускоряет переход от прототипа к производству. Простота использования очевидна в оптимизированном API, позволяющем разработчикам обучать и экспортировать модели всего несколькими строками кода.
from ultralytics import YOLO
# Initialize the YOLO11 small model
model = YOLO("yolo11s.pt")
# Train the model efficiently with optimized memory handling
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device="0")
# Export to ONNX format for deployment flexibility
model.export(format="onnx")
Сценарии использования и рекомендации
Выбор между YOLOv10 и YOLO11 зависит от ваших конкретных требований проекта, ограничений развертывания и предпочтений экосистемы.
Когда выбирать YOLOv10
YOLOv10 — отличный выбор для:
- Обнаружение в реальном времени без NMS: Приложения, выигрывающие от сквозного обнаружения без Non-Maximum Suppression, что снижает сложность развертывания.
- Сбалансированный компромисс между скоростью и точностью: Проекты, требующие оптимального баланса между скоростью инференса и точностью обнаружения для моделей различных масштабов.
- Приложения с предсказуемой задержкой: Сценарии развертывания, где критически важны предсказуемые времена инференса, например, в робототехнике или автономных системах.
Когда следует выбирать YOLO11
YOLO11 рекомендуется для:
- Промышленное периферийное развертывание: Коммерческие приложения на таких устройствах, как Raspberry Pi или NVIDIA Jetson, где надежность и активное обслуживание имеют первостепенное значение.
- Многозадачные приложения компьютерного зрения: Проекты, требующие detect, сегментации, оценки позы и obb в рамках единой унифицированной среды.
- Быстрое прототипирование и развертывание: Команды, которым необходимо быстро перейти от сбора данных к производству, используя оптимизированный Ultralytics Python API.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:
- Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Исследование других архитектур
Хотя YOLOv10 и YOLO11 являются отличным выбором, ваш конкретный сценарий использования может выиграть от других архитектур, доступных в документации. Для рассуждений на основе последовательностей, модели-трансформеры, такие как RT-DETR, обеспечивают высокую точность, хотя обычно требуют больше памяти. И наоборот, если вам нужны возможности zero-shot для идентификации новых классов без переобучения, YOLO-World предлагает подход с открытым словарем, управляемый подсказками на естественном языке.
Следующее поколение: YOLO26
Для команд, стремящихся к абсолютному совершенству, недавно выпущенный Ultralytics YOLO26 сочетает в себе лучшие характеристики обеих моделей, обсуждавшихся выше. Выпущенный в январе 2026 года, YOLO26 является идеальной рекомендацией для современных сценариев развертывания.
Опираясь на основы своих предшественников, YOLO26 изначально включает в себя сквозной NMS-free дизайн, эффективно устраняя узкие места постобработки, которые впервые были решены в YOLOv10, но делает это в рамках надежного фреймворка Ultralytics. Кроме того, YOLO26 включает удаление DFL (Distribution Focal Loss), что значительно упрощает графы экспорта модели и улучшает совместимость с периферийными и маломощными IoT-устройствами.
Стабильность обучения также совершила скачок нового поколения с внедрением оптимизатора MuSGD — гибридного подхода, вдохновленного методологиями обучения LLM, который обеспечивает невероятно быструю сходимость. В сочетании с продвинутыми функциями потерь, такими как ProgLoss + STAL, YOLO26 обеспечивает заметные улучшения в распознавании мелких объектов. Для развертывания на стандартных граничных устройствах эти архитектурные усовершенствования приводят к увеличению скорости инференса на CPU до 43%, что делает YOLO26 беспрецедентным выбором для всех задач компьютерного зрения.