Are you sure you want to delete this access key?
comments | description | keywords |
---|---|---|
true | Официальная документация YOLOv8 от Ultralytics. Узнайте, как проводить обучение, проверку, предсказание и экспорт моделей в различных форматах. Включая подробные статистические данные о производительности. | YOLOv8, Ultralytics, обнаружение объектов, предобученные модели, обучение, валидация, предсказание, экспорт моделей, COCO, ImageNet, PyTorch, ONNX, CoreML |
Обнаружение объектов – это задача, которая включает идентификацию местоположения и класса объектов на изображении или видео.
Результат работы детектора объектов – это набор ограничивающих рамок, которые заключают в себе объекты на изображении, вместе с метками классов и уровнями достоверности для каждой рамки. Обнаружение объектов является хорошим выбором, когда необходимо определить объекты интереса в сцене, но не нужно точно знать, где находится объект или его точную форму.
Смотрите: Обнаружение объектов с предобученной моделью Ultralytics YOLOv8.
!!! Tip "Совет"
YOLOv8 Detect модели являются стандартными моделями YOLOv8, то есть `yolov8n.pt`, и предобучены на [COCO](https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco.yaml).
Здесь показаны предобученные модели YOLOv8 Detect. Модели Detect, Segment и Pose предобучены на датасете COCO, в то время как модели Classify предобучены на датасете ImageNet.
Модели автоматически загружаются с последнего релиза Ultralytics release при первом использовании.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость A100 TensorRT (мс) |
параметры (М) |
FLOPs (Б) |
---|---|---|---|---|---|---|
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 |
yolo val detect data=coco.yaml device=0
yolo val detect data=coco128.yaml batch=1 device=0|cpu
Обучите модель YOLOv8n на датасете COCO128 в течение 100 эпох с размером изображения 640. Полный список доступных аргументов см. на странице Конфигурация.
!!! Example "Пример"
=== "Python"
```python
from ultralytics import YOLO
# Загрузите модель
model = YOLO('yolov8n.yaml') # создать новую модель из YAML
model = YOLO('yolov8n.pt') # загрузить предобученную модель (рекомендуется для обучения)
model = YOLO('yolov8n.yaml').load('yolov8n.pt') # создать из YAML и перенести веса
# Обучите модель
results = model.train(data='coco128.yaml', epochs=100, imgsz=640)
```
=== "CLI"
```bash
# Создать новую модель из YAML и начать обучение с нуля
yolo detect train data=coco128.yaml model=yolov8n.yaml epochs=100 imgsz=640
# Начать обучение с предобученной модели *.pt
yolo detect train data=coco128.yaml model=yolov8n.pt epochs=100 imgsz=640
# Создать новую модель из YAML, перенести в нее предобученные веса и начать обучение
yolo detect train data=coco128.yaml model=yolov8n.yaml pretrained=yolov8n.pt epochs=100 imgsz=640
```
Формат датасета для обнаружения YOLO можно найти более подробно в Руководстве по датасетам. Чтобы конвертировать ваш существующий датасет из других форматов (например, COCO и т.д.) в формат YOLO, пожалуйста, используйте инструмент JSON2YOLO от Ultralytics.
Проверьте точность обученной модели YOLOv8n на датасете COCO128. Необходимо передать аргументы, поскольку model
сохраняет свои data
и аргументы обучения как атрибуты модели.
!!! Example "Пример"
=== "Python"
```python
from ultralytics import YOLO
# Загрузите модель
model = YOLO('yolov8n.pt') # загрузить официальную модель
model = YOLO('path/to/best.pt') # загрузить собственную модель
# Проверьте модель
metrics = model.val() # аргументы не нужны, набор данных и настройки запоминаются
metrics.box.map # map50-95
metrics.box.map50 # map50
metrics.box.map75 # map75
metrics.box.maps # список содержит map50-95 для каждой категории
```
=== "CLI"
```bash
yolo detect val model=yolov8n.pt # val официальная модель
yolo detect val model=path/to/best.pt # val собственная модель
```
Используйте обученную модель YOLOv8n для выполнения предсказаний на изображениях.
!!! Example "Пример"
=== "Python"
```python
from ultralytics import YOLO
# Загрузите модель
model = YOLO('yolov8n.pt') # загрузить официальную модель
model = YOLO('path/to/best.pt') # загрузить собственную модель
# Сделайте предсказание с помощью модели
results = model('https://ultralytics.com/images/bus.jpg') # сделать предсказание на изображении
```
=== "CLI"
```bash
yolo detect predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg' # предсказание с официальной моделью
yolo detect predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg' # предсказание с собственной моделью
```
Полные детали режима predict
смотрите на странице Предсказание.
Экспортируйте модель YOLOv8n в другой формат, такой как ONNX, CoreML и др.
!!! Example "Пример"
=== "Python"
```python
from ultralytics import YOLO
# Загрузите модель
model = YOLO('yolov8n.pt') # загрузить официальную модель
model = YOLO('path/to/best.pt') # загрузить собственную модель после обучения
# Экспортируйте модель
model.export(format='onnx')
```
=== "CLI"
```bash
yolo export model=yolov8n.pt format=onnx # экспорт официальной модели
yolo export model=path/to/best.pt format=onnx # экспорт собственной модели после обучения
```
Доступные форматы экспорта YOLOv8 приведены в таблице ниже. Вы можете выполнять предсказания или проверку непосредственно на экспортированных моделях, например yolo predict model=yolov8n.onnx
. Примеры использования для вашей модели показаны после завершения экспорта.
Формат | Аргумент format |
Модель | Метаданные | Аргументы |
---|---|---|---|---|
PyTorch | - | yolov8n.pt |
✅ | - |
TorchScript | torchscript |
yolov8n.torchscript |
✅ | imgsz , optimize |
ONNX | onnx |
yolov8n.onnx |
✅ | imgsz , half , dynamic , simplify , opset |
OpenVINO | openvino |
yolov8n_openvino_model/ |
✅ | imgsz , half |
TensorRT | engine |
yolov8n.engine |
✅ | imgsz , half , dynamic , simplify , workspace |
CoreML | coreml |
yolov8n.mlpackage |
✅ | imgsz , half , int8 , nms |
TF SavedModel | saved_model |
yolov8n_saved_model/ |
✅ | imgsz , keras |
TF GraphDef | pb |
yolov8n.pb |
❌ | imgsz |
TF Lite | tflite |
yolov8n.tflite |
✅ | imgsz , half , int8 |
TF Edge TPU | edgetpu |
yolov8n_edgetpu.tflite |
✅ | imgsz |
TF.js | tfjs |
yolov8n_web_model/ |
✅ | imgsz |
PaddlePaddle | paddle |
yolov8n_paddle_model/ |
✅ | imgsz |
ncnn | ncnn |
yolov8n_ncnn_model/ |
✅ | imgsz , half |
Полные детали режима export
смотрите на странице Экспорт.
Press p or to see the previous file or, n or to see the next file
Are you sure you want to delete this access key?
Are you sure you want to delete this access key?
Are you sure you want to delete this access key?
Are you sure you want to delete this access key?