Классификация изображений
Классификация изображений - самая простая из трех задач, которая заключается в отнесении всего изображения к одному из множества заранее определенных классов.
Результатом работы классификатора изображений является метка одного класса и балл доверия. Классификация изображений полезна, когда вам нужно знать только, к какому классу относится изображение, и не нужно знать, где расположены объекты этого класса или какова их точная форма.
Смотреть: Изучите Ultralytics YOLO Задачи: Классификация изображений с помощью Ultralytics HUB
Наконечник
YOLO11 Классифицируйте модели с помощью -cls
суффикс, т.е. yolo11n-cls.pt
и предварительно обучены на ImageNet.
Модели
YOLO11 Здесь показаны предварительно обученные модели Classify. Модели Detect, Segment и Pose предварительно обучены на наборе данных COCO, а модели Classify предварительно обучены на наборе данных ImageNet.
Модели автоматически загружаются из последнейверсии Ultralytics при первом использовании.
Модель | размер (пикселей) |
acc top1 |
акк топ5 |
Скорость CPU ONNX (мс) |
Скорость T4TensorRT10 (мс) |
params (M) |
FLOPs (B) на 224 |
---|---|---|---|---|---|---|---|
YOLO11n-cls | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 | 1.6 | 0.5 |
YOLO11s-cls | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 | 5.5 | 1.6 |
YOLO11m-cls | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 | 10.4 | 5.0 |
YOLO11l-cls | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 | 12.9 | 6.2 |
YOLO11x-cls | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 | 28.4 | 13.7 |
- acc значения - это точность модели на ImageNet Набор данных для проверки.
Размножать поyolo val classify data=path/to/ImageNet device=0
- Скорость усреднение по изображениям ImageNet val с помощью Amazon EC2 P4d например.
Размножать поyolo val classify data=path/to/ImageNet batch=1 device=0|cpu
Поезд
Обучение YOLO11n-cls на наборе данных MNIST160 в течение 100 эпох при размере изображения 64. Полный список доступных аргументов см. на странице Конфигурация.
Пример
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n-cls.yaml") # build a new model from YAML
model = YOLO("yolo11n-cls.pt") # load a pretrained model (recommended for training)
model = YOLO("yolo11n-cls.yaml").load("yolo11n-cls.pt") # build from YAML and transfer weights
# Train the model
results = model.train(data="mnist160", epochs=100, imgsz=64)
# Build a new model from YAML and start training from scratch
yolo classify train data=mnist160 model=yolo11n-cls.yaml epochs=100 imgsz=64
# Start training from a pretrained *.pt model
yolo classify train data=mnist160 model=yolo11n-cls.pt epochs=100 imgsz=64
# Build a new model from YAML, transfer pretrained weights to it and start training
yolo classify train data=mnist160 model=yolo11n-cls.yaml pretrained=yolo11n-cls.pt epochs=100 imgsz=64
Формат набора данных
YOLO Формат классификационного набора данных подробно описан в Руководстве по набору данных.
Вэл
Проверка обученной модели YOLO11n-cls точность на наборе данных MNIST160. Аргументы не требуются, так как model
сохраняет свою подготовку data
и аргументы как атрибуты модели.
Пример
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n-cls.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom model
# Validate the model
metrics = model.val() # no arguments needed, dataset and settings remembered
metrics.top1 # top1 accuracy
metrics.top5 # top5 accuracy
Предсказать
Используйте обученную модель YOLO11n-cls для прогнозирования изображений.
Пример
Смотреть полностью predict
подробности о режиме в Предсказать страница.
Экспорт
Экспортируйте модель YOLO11n-cls в другой формат, например ONNX, CoreML и т. д.
Пример
Доступные форматы экспорта YOLO11-cls приведены в таблице ниже. Вы можете экспортировать в любой формат, используя format
аргумент, т.е. format='onnx'
или format='engine'
. Вы можете прогнозировать или проверять непосредственно на экспортированных моделях, т.е. yolo predict model=yolo11n-cls.onnx
. Примеры использования показаны для вашей модели после завершения экспорта.
Формат | format Аргумент |
Модель | Метаданные | Аргументы |
---|---|---|---|---|
PyTorch | - | yolo11n-cls.pt |
✅ | - |
TorchScript | torchscript |
yolo11n-cls.torchscript |
✅ | imgsz , optimize , nms , batch |
ONNX | onnx |
yolo11n-cls.onnx |
✅ | imgsz , half , dynamic , simplify , opset , nms , batch |
OpenVINO | openvino |
yolo11n-cls_openvino_model/ |
✅ | imgsz , half , dynamic , int8 , nms , batch , data |
TensorRT | engine |
yolo11n-cls.engine |
✅ | imgsz , half , dynamic , simplify , workspace , int8 , nms , batch , data |
CoreML | coreml |
yolo11n-cls.mlpackage |
✅ | imgsz , half , int8 , nms , batch |
TF SavedModel | saved_model |
yolo11n-cls_saved_model/ |
✅ | imgsz , keras , int8 , nms , batch |
TF GraphDef | pb |
yolo11n-cls.pb |
❌ | imgsz , batch |
TF Lite | tflite |
yolo11n-cls.tflite |
✅ | imgsz , half , int8 , nms , batch , data |
TF Край TPU | edgetpu |
yolo11n-cls_edgetpu.tflite |
✅ | imgsz |
TF.js | tfjs |
yolo11n-cls_web_model/ |
✅ | imgsz , half , int8 , nms , batch |
PaddlePaddle | paddle |
yolo11n-cls_paddle_model/ |
✅ | imgsz , batch |
MNN | mnn |
yolo11n-cls.mnn |
✅ | imgsz , batch , int8 , half |
NCNN | ncnn |
yolo11n-cls_ncnn_model/ |
✅ | imgsz , half , batch |
IMX500 | imx |
yolo11n-cls_imx_model/ |
✅ | imgsz , int8 , data |
RKNN | rknn |
yolo11n-cls_rknn_model/ |
✅ | imgsz , batch , name |
Смотреть полностью export
подробности в Экспорт страница.
ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ
Какова цель YOLO11 в классификации изображений?
YOLO11 модели, такие как yolo11n-cls.pt
разработаны для эффективной классификации изображений. Они присваивают всему изображению метку одного класса вместе с оценкой доверия. Это особенно полезно для приложений, где достаточно знать конкретный класс изображения, а не определять местоположение или форму объектов на изображении.
Как обучить модель YOLO11 для классификации изображений?
Для обучения модели YOLO11 можно использовать команды Python или CLI . Например, для обучения модели yolo11n-cls
модель на наборе данных MNIST160 в течение 100 эпох при размере изображения 64:
Пример
Дополнительные параметры конфигурации можно найти на странице Конфигурация.
Где можно найти предварительно обученные модели классификации YOLO11 ?
Предварительно обученные модели классификации YOLO11 можно найти в Модели раздел. Такие модели, как yolo11n-cls.pt
, yolo11s-cls.pt
, yolo11m-cls.pt
и т.д., предварительно обучаются на ImageNet Набор данных можно легко загрузить и использовать для решения различных задач классификации изображений.
Как экспортировать обученную модель YOLO11 в различные форматы?
Обученную модель YOLO11 можно экспортировать в различные форматы с помощью команд Python или CLI . Например, чтобы экспортировать модель в формат ONNX :
Пример
Подробные параметры экспорта см. на странице "Экспорт".
Как проверить обученную модель классификации YOLO11 ?
Чтобы проверить точность обученной модели на таком наборе данных, как MNIST160, можно использовать следующие команды Python или CLI :
Пример
Для получения дополнительной информации посетите раздел Validate.