YOLOv8 против YOLO11: эволюция обнаружения объектов в реальном времени
Выбор правильной архитектуры компьютерного зрения - это критически важное решение, которое влияет на скорость, точность и масштабируемость ваших проектов в области искусственного интеллекта. В этом руководстве приводится подробное техническое сравнение между Ultralytics YOLOv8широко распространенным отраслевым стандартом, выпущенным в 2023 году, и Ultralytics YOLO11новейшая разработка в серии YOLO , обеспечивающая превосходную эффективность и производительность. Мы проанализируем их архитектурные различия, эталонные показатели и идеальные сценарии использования, чтобы помочь вам выбрать лучшую модель для ваших нужд.
Ultralytics YOLOv8
Авторы: Гленн Джочер, Аюш Чаурасия и Цзин Цю
Организация:Ultralytics
Дата: 2023-01-10
GitHubultralytics
Docsyolov8
Выпущенный в начале 2023 года YOLOv8 стал важной вехой в истории обнаружения объектов. В ней был представлен единый фреймворк, поддерживающий множество задач компьютерного зрения - обнаружение, сегментацию объектов, оценку позы и классификацию изображений - в рамкаходного хранилища. YOLOv8 перешел от обнаружения на основе якорей к безъякорному подходу, что упрощает конструкцию и улучшает обобщение для различных форм объектов.
Архитектура и ключевые особенности
YOLOv8 заменил модули C3, использовавшиеся в YOLOv5модулем C2f (Cross-Stage Partial bottleneck with two convolutions). Это изменение улучшило градиентный поток и интеграцию функций, сохранив при этом малый вес. В архитектуре также реализована раздельная головка, разделяющая задачи объективации, классификации и регрессии для повышения точности.
Наследие надежности
YOLOv8 был протестирован в тысячах коммерческих приложений, от автоматизации производства до автономных транспортных средств, завоевав репутацию стабильного и простого в развертывании устройства.
Сильные и слабые стороны
- Преимущества:
- Развитая экосистема: Поддерживается огромным количеством обучающих материалов, интеграций и руководств по развертыванию.
- Универсальность: Встроенная поддержка OBB (Oriented Bounding Box) и классификации наряду со стандартным обнаружением.
- Проверенная стабильность: Надежный выбор для производственных сред, где требуется модель с длительным сроком track .
- Слабые стороны:
- Эффективность: Несмотря на высокую скорость, YOLO11 уступает YOLO11 по скорости вывода данных на CPU и эффективности использования параметров.
- Требования к вычислительным ресурсам: Более крупные варианты (L, X) требуют больше VRAM и FLOP по сравнению с оптимизированными аналогами YOLO11 .
from ultralytics import YOLO
# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
Ultralytics YOLO11
Авторы: Гленн Джочер и Цзин Цю
Организация:Ultralytics
Дата: 2024-09-27
GitHubultralytics
Docsyolo11
YOLO11 представляет собой передовую часть семейства моделей Ultralytics . Созданный для того, чтобы переосмыслить вывод в реальном времени, он опирается на успехи YOLOv8 , но вносит существенные архитектурные усовершенствования. YOLO11 ориентирована на максимальную точность при минимизации вычислительных затрат, что делает ее главным выбором для современных приложений ИИ, начиная от периферийных устройств и заканчивая облачными серверами.
Архитектура и ключевые особенности
В YOLO11 появился блок C3k2 и модуль C2PSA (Cross-Stage Partial with Spatial Attention). Эти компоненты повышают способность модели извлекать сложные особенности и справляться с окклюзией более эффективно, чем предыдущие итерации. Архитектура оптимизирована с точки зрения скорости, обеспечивая значительно более быстрое время обработки на CPU, что является критическим фактором для развертывания краевого ИИ, где ресурсы GPU могут быть недоступны.
Модель сохраняет унифицированный интерфейс, характерный для Ultralytics, что позволяет разработчикам переключаться между такими задачами, как OBB или сегментация, без изменения рабочего процесса.
Сильные и слабые стороны
- Преимущества:
- Превосходная эффективность: Достижение более высокого mAP при уменьшении количества параметров на 22 % по сравнению с YOLOv8, что позволяет уменьшить размер модели и потребность в хранении данных.
- Более быстрый вывод: Оптимизированы специально для современного оборудования и обеспечивают более высокую скорость работы как на CPU , так и на GPU .
- Улучшенное извлечение признаков: Новая основа улучшает обнаружение мелких объектов и производительность в загроможденных сценах.
- Меньшее потребление памяти: Требует меньше памяти CUDA во время обучения по сравнению с моделями на основе трансформаторов, такими как RT-DETRчто позволяет проводить обучение на более доступном оборудовании.
- Слабые стороны:
- Более новая версия: Поскольку это новая модель, для полного обновления поддержки специфических нишевых сторонних инструментов может потребоваться время, хотя основная экосистема Ultralytics поддерживает ее с первого дня.
from ultralytics import YOLO
# Load the latest YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()
Прямое сравнение производительности
Приведенное ниже сравнение подчеркивает рост эффективности YOLO11. Хотя YOLOv8 остается сильным соперником, YOLO11 неизменно обеспечивает более высокую точностьmAP) при снижении вычислительной сложности (FLOPs) и более высокой скорости вывода. Это особенно заметно в моделях "Nano" и "Small", где YOLO11n достигает 39,5 mAP по сравнению с 37,3 у YOLOv8n, при этом работая значительно быстрее на CPU.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| 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 |
Метрический анализ
YOLO11 демонстрирует явное преимущество в компромиссе между скоростью и точностью. Например, модель YOLO11l превосходит YOLOv8l по точности (+0,5 mAP), используя при этом примерно на 42 % меньше параметров и работая на 36 % быстрее на CPU.
Экосистема и простота использования
Обе модели пользуются преимуществами надежной экосистемыUltralytics , которая призвана демократизировать искусственный интеллект, делая современные технологии доступными для всех.
- Унифицированный API: Переход между YOLOv8 и YOLO11 прост - достаточно изменить строку модели с
yolov8n.ptвyolo11n.pt. Рефакторинг кода не требуется. - Эффективность обучения: Ultralytics обеспечивает автоматическую загрузку наборов данных и предварительно обученных весов, упрощая процесс сбора данных и обучения модели.
- Универсальность развертывания: Обе модели поддерживают экспорт в один клик в такие форматы, как ONNX, TensorRT, CoreML и TFLite, что облегчает развертывание на различном оборудовании, включая Raspberry Pis, мобильные телефоны и облачные инстанции.
- Поддерживается в рабочем состоянии: Частые обновления обеспечивают совместимость с последними версиями PyTorch и CUDA, поддерживаемые активным сообществом на Discord и GitHub.
Заключение и рекомендации
Пока YOLOv8 остается надежной и высокопроизводительной моделью, подходящей для обслуживания унаследованных систем, YOLO11 является однозначной рекомендацией для всех новых разработок.
- Выбирайте YOLO11 , если: Вам нужна максимальная точность, более высокая скорость вывода (особенно на CPU), или вы развертываете пограничные устройства с ограниченными ресурсами, где память и хранилище стоят дорого. Его архитектурные усовершенствования обеспечивают перспективную основу для коммерческих приложений.
- Выбирайте YOLOv8 , если: У вас есть существующий трубопровод, в значительной степени настроенный на поведение, специфичное для v8, или вы ограничены строгими требованиями проекта, которые не позволяют обновить его до новейшей архитектуры.
Для тех, кто заинтересован в изучении других архитектур, в документации Ultralytics также рассказывается о таких моделях, как YOLOv9, YOLOv10, и RT-DETR. Более подробные сравнения вы можете посмотреть на странице сравнения моделей.