Salta para o conteúdo

Classificação de imagens

Exemplos de classificação de imagens

Image classification is the simplest of the three tasks and involves classifying an entire image into one of a set of predefined classes.

O resultado de um classificador de imagens é uma etiqueta de classe única e uma pontuação de confiança. A classificação de imagens é útil quando apenas precisa de saber a que classe pertence uma imagem e não precisa de saber onde estão localizados os objectos dessa classe ou qual é a sua forma exacta.



Observa: Explora Ultralytics YOLO Tasks: Classificação de imagens usando Ultralytics HUB

Dica

YOLO11 Classify models use the -cls sufixo, ou seja yolo11n-cls.pt e são pré-treinados em ImageNet.

Modelos

YOLO11 pretrained Classify models are shown here. Detect, Segment and Pose models are pretrained on the COCO dataset, while Classify models are pretrained on the ImageNet dataset.

Os modelos são transferidos automaticamente a partir daversão mais recente de Ultralytics na primeira utilização.

Modelotamanho
(pixéis)
acc
top1
acc
top5
Velocidade
CPU ONNX
(ms)
Speed
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B) at 640
YOLO11n-cls22470.089.45.0 ± 0.31.1 ± 0.01.63.3
YOLO11s-cls22475.492.77.9 ± 0.21.3 ± 0.05.512.1
YOLO11m-cls22477.393.917.2 ± 0.42.0 ± 0.010.439.3
YOLO11l-cls22478.394.323.2 ± 0.32.8 ± 0.012.949.4
YOLO11x-cls22479.594.941.4 ± 0.93.8 ± 0.028.4110.4
  • ac são as precisões do modelo no ImageNet conjunto de validação do conjunto de dados.
    Reproduzir por yolo val classify data=path/to/ImageNet device=0
  • Velocidade calcula a média das imagens ImageNet val utilizando um Amazon EC2 P4d instância.
    Reproduzir por yolo val classify data=path/to/ImageNet batch=1 device=0|cpu

Comboio

Train YOLO11n-cls on the MNIST160 dataset for 100 epochs at image size 64. For a full list of available arguments see the Configuration page.

Exemplo

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

Formato do conjunto de dados

YOLO O formato do conjunto de dados de classificação pode ser consultado em pormenor no Guia do conjunto de dados.

Val

Validate trained YOLO11n-cls model accuracy on the MNIST160 dataset. No arguments are needed as the model mantém a sua formação data e argumentos como atributos do modelo.

Exemplo

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
yolo classify val model=yolo11n-cls.pt  # val official model
yolo classify val model=path/to/best.pt  # val custom model

Prevê

Use a trained YOLO11n-cls model to run predictions on images.

Exemplo

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

# Predict with the model
results = model("https://ultralytics.com/images/bus.jpg")  # predict on an image
yolo classify predict model=yolo11n-cls.pt source='https://ultralytics.com/images/bus.jpg'  # predict with official model
yolo classify predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg'  # predict with custom model

Ver completo predict detalhes do modo no Prevê página.

Exportação

Export a YOLO11n-cls model to a different format like ONNX, CoreML, etc.

Exemplo

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 trained model

# Export the model
model.export(format="onnx")
yolo export model=yolo11n-cls.pt format=onnx  # export official model
yolo export model=path/to/best.pt format=onnx  # export custom trained model

Available YOLO11-cls export formats are in the table below. You can export to any format using the format argumento, ou seja format='onnx' ou format='engine'. Podes prever ou validar diretamente nos modelos exportados, ou seja yolo predict model=yolo11n-cls.onnx. São apresentados exemplos de utilização para o teu modelo após a conclusão da exportação.

Formatoformat ArgumentaModeloMetadadosArgumentos
PyTorch-yolo11n-cls.pt-
TorchScripttorchscriptyolo11n-cls.torchscriptimgsz, optimize, batch
ONNXonnxyolo11n-cls.onnximgsz, half, dynamic, simplify, opset, batch
OpenVINOopenvinoyolo11n-cls_openvino_model/imgsz, half, int8, batch
TensorRTengineyolo11n-cls.engineimgsz, half, dynamic, simplify, workspace, int8, batch
CoreMLcoremlyolo11n-cls.mlpackageimgsz, half, int8, nms, batch
TF SavedModelsaved_modelyolo11n-cls_saved_model/imgsz, keras, int8, batch
TF GraphDefpbyolo11n-cls.pbimgsz, batch
TF Levetfliteyolo11n-cls.tfliteimgsz, half, int8, batch
TF Borda TPUedgetpuyolo11n-cls_edgetpu.tfliteimgsz
TF.jstfjsyolo11n-cls_web_model/imgsz, half, int8, batch
PaddlePaddlepaddleyolo11n-cls_paddle_model/imgsz, batch
MNNmnnyolo11n-cls.mnnimgsz, batch, int8, half
NCNNncnnyolo11n-cls_ncnn_model/imgsz, half, batch

Ver completo export detalhes no Exportação página.

FAQ

What is the purpose of YOLO11 in image classification?

YOLO11 models, such as yolo11n-cls.ptsão concebidos para uma classificação eficiente de imagens. Atribui uma única etiqueta de classe a uma imagem inteira, juntamente com uma pontuação de confiança. Isto é particularmente útil para aplicações em que é suficiente conhecer a classe específica de uma imagem, em vez de identificar a localização ou a forma dos objectos na imagem.

How do I train a YOLO11 model for image classification?

To train a YOLO11 model, you can use either Python or CLI commands. For example, to train a yolo11n-cls no conjunto de dados MNIST160 para 100 épocas com um tamanho de imagem de 64:

Exemplo

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="mnist160", epochs=100, imgsz=64)
yolo classify train data=mnist160 model=yolo11n-cls.pt epochs=100 imgsz=64

Para mais opções de configuração, visita a página Configuração.

Where can I find pretrained YOLO11 classification models?

Pretrained YOLO11 classification models can be found in the Modelos secção. Modelos como yolo11n-cls.pt, yolo11s-cls.pt, yolo11m-cls.pt, etc., são pré-treinados no ImageNet e pode ser facilmente descarregado e utilizado para várias tarefas de classificação de imagens.

How can I export a trained YOLO11 model to different formats?

You can export a trained YOLO11 model to various formats using Python or CLI commands. For instance, to export a model to ONNX format:

Exemplo

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")  # load the trained model

# Export the model to ONNX
model.export(format="onnx")
yolo export model=yolo11n-cls.pt format=onnx  # export the trained model to ONNX format

Para opções de exportação detalhadas, consulta a página Exportar.

How do I validate a trained YOLO11 classification model?

Para validar a precisão de um modelo treinado num conjunto de dados como o MNIST160, podes utilizar os seguintes comandos Python ou CLI :

Exemplo

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")  # load the trained model

# Validate the model
metrics = model.val()  # no arguments needed, uses the dataset and settings from training
metrics.top1  # top1 accuracy
metrics.top5  # top5 accuracy
yolo classify val model=yolo11n-cls.pt  # validate the trained model

Para mais informações, visita a secção Validar.

📅 Created 11 months ago ✏️ Updated 1 month ago

Comentários