Bild-Klassifizierung
Die Bildklassifizierung ist die einfachste der drei Aufgaben und beinhaltet die Einordnung eines gesamten Bildes in eine von mehreren vordefinierten Klassen.
Die Ausgabe eines Bildklassifizierers ist eine einzelne Klassenbezeichnung und ein Vertrauenswert. Die Bildklassifizierung ist nützlich, wenn Sie nur wissen müssen, zu welcher Klasse ein Bild gehört, und nicht wissen müssen, wo sich die Objekte dieser Klasse befinden oder welche Form sie genau haben.
Beobachten: Erkunden Sie Ultralytics YOLO Aufgaben: Bildklassifizierung mit Ultralytics HUB
Tipp
YOLO11 Klassifizierungsmodelle verwenden die -cls
Suffix, d.h. yolo11n-cls.pt
und sind vorgebildet auf ImageNet.
Modelle
YOLO11 Hier werden vortrainierte Klassifizierungsmodelle gezeigt. Die Modelle "Detect", "Segment" und "Pose" wurden mit dem COCO-Datensatz trainiert, während die Modelle "Classify" mit dem ImageNet-Datensatz trainiert wurden.
Die Modelle werden bei der ersten Verwendung automatisch von der neuestenVersion von Ultralytics heruntergeladen.
Modell | Größe (Pixel) |
acc top1 |
acc top5 |
Geschwindigkeit CPU ONNX (ms) |
Geschwindigkeit T4TensorRT10 (ms) |
params (M) |
FLOPs (B) bei 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 Werte sind Modellgenauigkeiten auf der ImageNet Datensatz Validierungssatz.
Reproduzieren durchyolo val classify data=path/to/ImageNet device=0
- Geschwindigkeit gemittelt über ImageNet val-Bilder unter Verwendung eines Amazon EC2 P4d Instanz.
Reproduzieren durchyolo val classify data=path/to/ImageNet batch=1 device=0|cpu
Zug
Trainieren Sie YOLO11n-cls auf dem MNIST160-Datensatz für 100 Epochen bei Bildgröße 64. Eine vollständige Liste der verfügbaren Argumente finden Sie auf der Seite Konfiguration.
Beispiel
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
Format des Datensatzes
YOLO Das Format der Klassifizierungsdatensätze ist im Dataset Guide ausführlich beschrieben.
Val
Validierung des trainierten YOLO11n-cls-Modells Genauigkeit auf dem MNIST160-Datensatz. Es werden keine Argumente benötigt, da die model
seine Ausbildung beibehält data
und Argumente als Modellattribute.
Beispiel
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
Vorhersage
Verwenden Sie ein trainiertes YOLO11n-cls-Modell, um Vorhersagen für Bilder zu treffen.
Beispiel
Vollständig sehen predict
Modus Details im Vorhersage Seite.
Exportieren
Exportieren Sie ein YOLO11n-cls-Modell in ein anderes Format wie ONNX, CoreML, etc.
Beispiel
Die verfügbaren YOLO11-cls Exportformate sind in der folgenden Tabelle aufgeführt. Sie können in jedes beliebige Format exportieren, indem Sie die format
Argument, d.h. format='onnx'
oder format='engine'
. Sie können exportierte Modelle direkt vorhersagen oder validieren, d. h. yolo predict model=yolo11n-cls.onnx
. Nach Abschluss des Exports werden Anwendungsbeispiele für Ihr Modell angezeigt.
Format | format Argument |
Modell | Metadaten | Argumente |
---|---|---|---|---|
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 Lite | tflite |
yolo11n-cls.tflite |
✅ | imgsz , half , int8 , batch |
TF Kante 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 |
Vollständig sehen export
Details im Exportieren Seite.
FAQ
Was ist der Zweck von YOLO11 bei der Bildklassifizierung?
YOLO11 Modelle, wie zum Beispiel yolo11n-cls.pt
sind für eine effiziente Bildklassifizierung konzipiert. Sie weisen einem gesamten Bild ein einziges Klassenlabel zusammen mit einem Vertrauenswert zu. Dies ist besonders nützlich für Anwendungen, bei denen es ausreicht, die spezifische Klasse eines Bildes zu kennen, anstatt den Ort oder die Form von Objekten innerhalb des Bildes zu identifizieren.
Wie trainiere ich ein YOLO11 Modell zur Bildklassifizierung?
Um ein YOLO11 Modell zu trainieren, können Sie entweder die Befehle Python oder CLI verwenden. Zum Beispiel, um ein yolo11n-cls
Modell auf dem MNIST160-Datensatz für 100 Epochen bei einer Bildgröße von 64:
Beispiel
Weitere Konfigurationsoptionen finden Sie auf der Seite Konfiguration.
Wo finde ich vortrainierte YOLO11 Klassifizierungsmodelle?
Vorgefertigte YOLO11 Klassifizierungsmodelle finden Sie in der Modelle Abschnitt. Modelle wie yolo11n-cls.pt
, yolo11s-cls.pt
, yolo11m-cls.pt
usw., werden auf den ImageNet Datensatz und kann leicht heruntergeladen und für verschiedene Bildklassifizierungsaufgaben verwendet werden.
Wie kann ich ein trainiertes YOLO11 Modell in verschiedene Formate exportieren?
Sie können ein trainiertes YOLO11 Modell mit den Befehlen Python oder CLI in verschiedene Formate exportieren. Zum Beispiel können Sie ein Modell in das Format ONNX exportieren:
Beispiel
Ausführliche Informationen zu den Exportoptionen finden Sie auf der Seite Export.
Wie kann ich ein trainiertes YOLO11 Klassifikationsmodell validieren?
Um die Genauigkeit eines trainierten Modells auf einem Datensatz wie MNIST160 zu überprüfen, können Sie die folgenden Befehle verwenden: Python oder CLI :
Beispiel
Weitere Informationen finden Sie im Abschnitt Validieren.