Classificação de imagens
A classificação de imagens é a mais simples das três tarefas e envolve a classificação de uma imagem inteira num conjunto de classes predefinidas.
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 é necessário saber apenas a que classe pertence uma imagem e não é necessário saber onde estão localizados os objectos dessa classe ou qual é a sua forma exacta.
Ver: Explorar Ultralytics YOLO Tasks: Classificação de imagens usando Ultralytics HUB
Dica
YOLO11 Os modelos de classificação utilizam o -cls
sufixo, ou seja yolo11n-cls.pt
e são pré-treinados em ImageNet.
Modelos
YOLO11 modelos Classify pré-treinados são mostrados aqui. Os modelos Detetar, Segmentar e Pose são pré-treinados no conjunto de dados COCO, enquanto os modelos Classificar são pré-treinados no conjunto de dados ImageNet.
Os modelos são transferidos automaticamente a partir daversão mais recentede Ultralytics na primeira utilização.
Modelo | tamanho (pixéis) |
acc top1 |
acc top5 |
Velocidade CPU ONNX (ms) |
Velocidade T4TensorRT10 (ms) |
params (M) |
FLOPs (B) a 640 |
---|---|---|---|---|---|---|---|
YOLO11n-cls | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 | 1.6 | 3.3 |
YOLO11s-cls | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 | 5.5 | 12.1 |
YOLO11m-cls | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 | 10.4 | 39.3 |
YOLO11l-cls | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 | 12.9 | 49.4 |
YOLO11x-cls | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 | 28.4 | 110.4 |
- acc são as exactidões do modelo no ImageNet conjunto de validação do conjunto de dados.
Reproduzir poryolo val classify data=path/to/ImageNet device=0
- Velocidade média das imagens ImageNet val utilizando um Amazon EC2 P4d instância.
Reproduzir poryolo val classify data=path/to/ImageNet batch=1 device=0|cpu
Comboio
Treinar YOLO11n-cls no conjunto de dados MNIST160 para 100 épocas com tamanho de imagem 64. Para obter uma lista completa dos argumentos disponíveis, consulte a página Configuração.
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
Validar o modelo YOLO11n-cls treinado exatidão no conjunto de dados MNIST160. Não são necessários argumentos, uma vez que o 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
Prever
Utilizar um modelo YOLO11n-cls treinado para executar previsões em imagens.
Exemplo
Ver completo predict
detalhes do modo no Prever página.
Exportação
Exportar um modelo YOLO11n-cls para um formato diferente, como ONNX, CoreML, etc.
Exemplo
Os formatos de exportação disponíveis em YOLO11-cls encontram-se na tabela abaixo. É possível exportar para qualquer formato utilizando o format
argumento, ou seja format='onnx'
ou format='engine'
. É possível prever ou validar diretamente nos modelos exportados, ou seja yolo predict model=yolo11n-cls.onnx
. São apresentados exemplos de utilização para o seu modelo após a conclusão da exportação.
Formato | format Argumento |
Modelo | Metadados | Argumentos |
---|---|---|---|---|
PyTorch | - | yolo11n-cls.pt |
✅ | - |
TorchScript | torchscript |
yolo11n-cls.torchscript |
✅ | imgsz , optimize , batch |
ONNX | onnx |
yolo11n-cls.onnx |
✅ | imgsz , half , dynamic , simplify , opset , batch |
OpenVINO | openvino |
yolo11n-cls_openvino_model/ |
✅ | imgsz , half , int8 , batch |
TensorRT | engine |
yolo11n-cls.engine |
✅ | imgsz , half , dynamic , simplify , workspace , int8 , batch |
CoreML | coreml |
yolo11n-cls.mlpackage |
✅ | imgsz , half , int8 , nms , batch |
TF SavedModel | saved_model |
yolo11n-cls_saved_model/ |
✅ | imgsz , keras , int8 , batch |
TF GraphDef | pb |
yolo11n-cls.pb |
❌ | imgsz , batch |
TF Leve | tflite |
yolo11n-cls.tflite |
✅ | imgsz , half , int8 , batch |
TF Borda TPU | edgetpu |
yolo11n-cls_edgetpu.tflite |
✅ | imgsz |
TF.js | tfjs |
yolo11n-cls_web_model/ |
✅ | imgsz , half , int8 , 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 |
Ver completo export
pormenores no Exportação página.
FAQ
Qual é o objetivo do YOLO11 na classificação de imagens?
YOLO11 modelos, tais como yolo11n-cls.pt
são concebidos para uma classificação eficiente de imagens. Atribuem 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.
Como é que treino um modelo YOLO11 para classificação de imagens?
Para treinar um modelo YOLO11 , é possível usar os comandos Python ou CLI . Por exemplo, para treinar um modelo yolo11n-cls
no conjunto de dados MNIST160 para 100 épocas com um tamanho de imagem de 64:
Exemplo
Para obter mais opções de configuração, visite a página Configuração.
Onde posso encontrar modelos de classificação YOLO11 pré-treinados?
Os modelos de classificação YOLO11 pré-treinados podem ser encontrados no 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.
Como é que posso exportar um modelo YOLO11 treinado para diferentes formatos?
É possível exportar um modelo YOLO11 treinado para vários formatos usando os comandos Python ou CLI . Por exemplo, para exportar um modelo para o formato ONNX :
Exemplo
Para opções de exportação detalhadas, consulte a página Exportar.
Como é que valido um modelo de classificação YOLO11 treinado?
Para validar a precisão de um modelo treinado num conjunto de dados como o MNIST160, pode utilizar os seguintes comandos Python ou CLI :
Exemplo
Para mais informações, visite a secção Validar.