Перейти к содержимому

YOLOv8

Обзор

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

Ultralytics YOLOv8



Смотри: Ultralytics YOLOv8 Обзор моделей

Основные характеристики

  • Усовершенствованные архитектуры позвоночника и шеи: на YOLOv8 используются современные архитектуры позвоночника и шеи, что позволяет повысить производительность извлечения признаков и обнаружения объектов.
  • Безъякорная сплит-головка Ultralytics : YOLOv8 использует безъякорную сплит-головку Ultralytics , что способствует повышению точности и эффективности процесса обнаружения по сравнению с подходами, основанными на якорях.
  • Оптимизированный компромисс между точностью и скоростью: Благодаря тому, что в центре внимания находится оптимальный баланс между точностью и скоростью, YOLOv8 подходит для задач обнаружения объектов в реальном времени в различных областях применения.
  • Разнообразие предварительно обученных моделей: YOLOv8 предлагает ряд предварительно обученных моделей для решения различных задач и требований к производительности, что облегчает поиск подходящей модели для твоего конкретного случая использования.

Поддерживаемые задачи и режимы

Серия YOLOv8 предлагает разнообразный набор моделей, каждая из которых специализируется на решении конкретных задач в области компьютерного зрения. Эти модели предназначены для удовлетворения различных требований, начиная от обнаружения объектов и заканчивая более сложными задачами, такими как сегментация объектов, определение положения/ключевых точек, обнаружение ориентированных объектов и классификация.

Каждый вариант серии YOLOv8 оптимизирован под соответствующую задачу, что обеспечивает высокую производительность и точность. Кроме того, эти модели совместимы с различными режимами работы, включая Inference, Validation, Training и Export, что облегчает их использование на разных этапах развертывания и разработки.

Модель Имена файлов Задание Заключение Валидация Тренировка Экспорт
YOLOv8 yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt Обнаружение
YOLOv8-seg yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt Сегментация экземпляров
YOLOv8-pose yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt Поза/ключи
YOLOv8-obb yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt Ориентированное обнаружение
YOLOv8-cls yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt Классификация

В этой таблице представлен обзор вариантов моделей YOLOv8, подчеркивающий их применимость в конкретных задачах и совместимость с различными рабочими режимами, такими как Inference, Validation, Training и Export. Она демонстрирует универсальность и надежность серии YOLOv8, что делает их подходящими для различных приложений в области компьютерного зрения.

Показатели производительности

Производительность

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

Модель Размер
(пикселей)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
A100 TensorRT
(мс)
params
(M)
FLOPs
(B)
YOLOv8n 640 37.3 80.4 0.99 3.2 8.7
YOLOv8s 640 44.9 128.4 1.20 11.2 28.6
YOLOv8m 640 50.2 234.7 1.83 25.9 78.9
YOLOv8l 640 52.9 375.2 2.39 43.7 165.2
YOLOv8x 640 53.9 479.1 3.53 68.2 257.8

Примеры использования этих моделей, обученных на Open Image V7 и включающих 600 предварительно обученных классов, смотри в Detection Docs.

Модель Размер
(пикселей)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
A100 TensorRT
(мс)
params
(M)
FLOPs
(B)
YOLOv8n 640 18.4 142.4 1.21 3.5 10.5
YOLOv8s 640 27.7 183.1 1.40 11.4 29.7
YOLOv8m 640 33.6 408.5 2.26 26.2 80.6
YOLOv8l 640 34.9 596.9 2.43 44.1 167.4
YOLOv8x 640 36.3 860.6 3.56 68.7 260.6

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

Модель Размер
(пикселей)
mAPbox
50-95
mAPmask
50-95
Скорость
CPU ONNX
(мс)
Скорость
A100 TensorRT
(мс)
params
(M)
FLOPs
(B)
YOLOv8n-seg 640 36.7 30.5 96.1 1.21 3.4 12.6
YOLOv8s-seg 640 44.6 36.8 155.7 1.47 11.8 42.6
YOLOv8m-seg 640 49.9 40.8 317.0 2.18 27.3 110.2
YOLOv8l-seg 640 52.3 42.6 572.4 2.79 46.0 220.5
YOLOv8x-seg 640 53.4 43.4 712.1 4.02 71.8 344.1

Примеры использования этих моделей, обученных на ImageNet и включающих 1000 предварительно обученных классов, смотри в Classification Docs.

Модель Размер
(пикселей)
acc
top1
Акк
топ5
Скорость
CPU ONNX
(мс)
Скорость
A100 TensorRT
(мс)
params
(M)
FLOPs
(B) при 640
YOLOv8n-cls 224 69.0 88.3 12.9 0.31 2.7 4.3
YOLOv8s-cls 224 73.8 91.7 23.4 0.35 6.4 13.5
YOLOv8m-cls 224 76.8 93.5 85.4 0.62 17.0 42.7
YOLOv8l-cls 224 76.8 93.5 163.0 0.87 37.5 99.7
YOLOv8x-cls 224 79.0 94.6 232.0 1.01 57.4 154.8

Примеры использования этих моделей, обученных на COCO, см. в Pose Estimation Docs, где приводится 1 предварительно обученный класс - "человек".

Модель Размер
(пикселей)
mAPpose
50-95
mAPpose
50
Скорость
CPU ONNX
(мс)
Скорость
A100 TensorRT
(мс)
params
(M)
FLOPs
(B)
YOLOv8n-pose 640 50.4 80.1 131.8 1.18 3.3 9.2
YOLOv8s-pose 640 60.0 86.2 233.2 1.42 11.6 30.2
YOLOv8m-pose 640 65.0 88.8 456.3 2.00 26.4 81.0
YOLOv8l-pose 640 67.6 90.0 784.5 2.59 44.4 168.6
YOLOv8x-pose 640 69.2 90.2 1607.1 3.73 69.4 263.2
YOLOv8x-pose-p6 1280 71.6 91.2 4088.7 10.04 99.1 1066.4

Примеры использования этих моделей, обученных на DOTAv1 и включающих 15 предварительно обученных классов, смотри в Oriented Detection Docs.

Модель Размер
(пикселей)
mAPtest
50
Скорость
CPU ONNX
(мс)
Скорость
A100 TensorRT
(мс)
params
(M)
FLOPs
(B)
YOLOv8n-obb 1024 78.0 204.77 3.57 3.1 23.3
YOLOv8s-obb 1024 79.5 424.88 4.07 11.4 76.3
YOLOv8m-obb 1024 80.5 763.48 7.61 26.4 208.6
YOLOv8l-obb 1024 80.7 1278.42 11.83 44.5 433.8
YOLOv8x-obb 1024 81.36 1759.10 13.23 69.5 676.7

Примеры использования

В этом примере приведены простые примеры обучения и вывода YOLOv8 . Полную документацию по этим и другим режимам можно найти на страницах Predict, Train, Val и Export docs.

Обрати внимание, что ниже приведен пример с моделями YOLOv8 Detect для обнаружения объектов. О дополнительных поддерживаемых задачах читай в документах Segment, Classify, OBB и Pose.

Пример

PyTorch предварительно обученный *.pt модели, а также конфигурации *.yaml файлы могут быть переданы в YOLO() класс, чтобы создать экземпляр модели в python:

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")

# Display model information (optional)
model.info()

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

# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

CLI Для непосредственного запуска моделей доступны команды:

# Load a COCO-pretrained YOLOv8n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLOv8n model and run inference on the 'bus.jpg' image
yolo predict model=yolov8n.pt source=path/to/bus.jpg

Цитаты и благодарности

Если ты используешь в своей работе модель YOLOv8 или любое другое программное обеспечение из этого репозитория, пожалуйста, цитируй его, используя следующий формат:

@software{yolov8_ultralytics,
  author = {Glenn Jocher and Ayush Chaurasia and Jing Qiu},
  title = {Ultralytics YOLOv8},
  version = {8.0.0},
  year = {2023},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0002-7603-6750, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

Обрати внимание, что DOI находится на рассмотрении и будет добавлен в цитату, как только станет доступен. Модели YOLOv8 предоставляются под лицензиями AGPL-3.0 и Enterprise лицензиями.



Created 2023-11-12, Updated 2024-06-10
Authors: glenn-jocher (15), Burhan-Q (1), Laughing-q (2), AyushExel (1), fcakyon (1)

Комментарии