Zum Inhalt springen

Übersicht über die Bildklassifizierungsdatensätze

Datensatzstruktur für YOLO Klassifizierungsaufgaben

Für Ultralytics YOLO Klassifizierungsaufgaben muss der Datensatz in einer bestimmten Split-Direcotry-Struktur unter der root Verzeichnis, um die Schulung, die Prüfung und den optionalen Validierungsprozess zu erleichtern. Diese Struktur umfasst separate Verzeichnisse für die Ausbildung (train) und Prüfung (test), mit einem optionalen Verzeichnis zur Validierung (val).

Jedes dieser Verzeichnisse sollte ein Unterverzeichnis für jede Klasse des Datensatzes enthalten. Die Unterverzeichnisse werden nach der entsprechenden Klasse benannt und enthalten alle Bilder für diese Klasse. Achte darauf, dass jede Bilddatei einen eindeutigen Namen hat und in einem gängigen Format wie JPEG oder PNG gespeichert ist.

Beispiel für eine Ordnerstruktur

Nimm den CIFAR-10-Datensatz als Beispiel. Die Ordnerstruktur sollte wie folgt aussehen:

cifar-10-/
|
|-- train/
|   |-- airplane/
|   |   |-- 10008_airplane.png
|   |   |-- 10009_airplane.png
|   |   |-- ...
|   |
|   |-- automobile/
|   |   |-- 1000_automobile.png
|   |   |-- 1001_automobile.png
|   |   |-- ...
|   |
|   |-- bird/
|   |   |-- 10014_bird.png
|   |   |-- 10015_bird.png
|   |   |-- ...
|   |
|   |-- ...
|
|-- test/
|   |-- airplane/
|   |   |-- 10_airplane.png
|   |   |-- 11_airplane.png
|   |   |-- ...
|   |
|   |-- automobile/
|   |   |-- 100_automobile.png
|   |   |-- 101_automobile.png
|   |   |-- ...
|   |
|   |-- bird/
|   |   |-- 1000_bird.png
|   |   |-- 1001_bird.png
|   |   |-- ...
|   |
|   |-- ...
|
|-- val/ (optional)
|   |-- airplane/
|   |   |-- 105_airplane.png
|   |   |-- 106_airplane.png
|   |   |-- ...
|   |
|   |-- automobile/
|   |   |-- 102_automobile.png
|   |   |-- 103_automobile.png
|   |   |-- ...
|   |
|   |-- bird/
|   |   |-- 1045_bird.png
|   |   |-- 1046_bird.png
|   |   |-- ...
|   |
|   |-- ...

Dieser strukturierte Ansatz stellt sicher, dass das Modell in der Trainingsphase effektiv von gut organisierten Klassen lernen und die Leistung in der Test- und Validierungsphase genau bewerten kann.

Verwendung

Beispiel

from ultralytics import YOLO

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

# Train the model
results = model.train(data='path/to/dataset', epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=path/to/data model=yolov8n-cls.pt epochs=100 imgsz=640

Unterstützte Datensätze

Ultralytics unterstützt die folgenden Datensätze mit automatischem Download:

  • Caltech 101: Ein Datensatz mit Bildern von 101 Objektkategorien für Bildklassifizierungsaufgaben.
  • Caltech 256: Eine erweiterte Version von Caltech 101 mit 256 Objektkategorien und noch anspruchsvolleren Bildern.
  • CIFAR-10: Ein Datensatz mit 60K 32x32 Farbbildern in 10 Klassen, mit 6K Bildern pro Klasse.
  • CIFAR-100: Eine erweiterte Version von CIFAR-10 mit 100 Objektkategorien und 600 Bildern pro Klasse.
  • Fashion-MNIST: Ein Datensatz bestehend aus 70.000 Graustufenbildern von 10 Modekategorien für Bildklassifizierungsaufgaben.
  • ImageNet: Ein großer Datensatz zur Objekterkennung und Bildklassifizierung mit über 14 Millionen Bildern und 20.000 Kategorien.
  • ImageNet-10: Eine kleinere Teilmenge von ImageNet mit 10 Kategorien zum schnelleren Experimentieren und Testen.
  • Imagenette: Eine kleinere Teilmenge von ImageNet, die 10 leicht unterscheidbare Klassen enthält, um das Training und Testen zu beschleunigen.
  • Imagewoof: Eine anspruchsvollere Teilmenge von ImageNet mit 10 Hunderassenkategorien für Bildklassifizierungsaufgaben.
  • MNIST: Ein Datensatz mit 70.000 Graustufenbildern von handgeschriebenen Ziffern für Bildklassifizierungsaufgaben.

Hinzufügen deines eigenen Datensatzes

Wenn du deinen eigenen Datensatz hast und ihn für das Training von Klassifizierungsmodellen mit Ultralytics verwenden möchtest, stelle sicher, dass er dem oben unter "Datensatzformat" angegebenen Format entspricht, und zeige dann deine data Argument auf das Verzeichnis des Datensatzes.



Erstellt am 2023-11-12, Aktualisiert am 2024-04-10
Autoren: stormsson (1), glenn-jocher (4), GreatV (1)

Kommentare