ImageWoof-Datensatz#
Das ImageWoof Dataset ist eine Untermenge von ImageNet, die aus 10 Hunderassen-Klassen besteht, die absichtlich schwer voneinander zu unterscheiden sind. Es wurde von fast.ai als härtere Herausforderung für image classification-Algorithmen entwickelt. Es enthält 12.954 Farbbilder – 9.025 für das Training und 3.929 für die Validierung – aus Rassen wie Beagle, Shih-Tzu und Golden Retriever, was Modelle dazu bringt, subtile, feine Unterschiede anstelle offensichtlicher Objektkategorien zu unterscheiden.
Hauptfunktionen#
- ImageWoof enthält 12.954 Bilder von 10 Hunderassen: Australian Terrier, Border Terrier, Samojede, Beagle, Shih-Tzu, English Foxhound, Rhodesian Ridgeback, Dingo, Golden Retriever und Old English Sheepdog.
- Er wird mit einer vordefinierten Aufteilung von 9.025 Trainings- und 3.929 Validierungsbildern ausgeliefert und ist in verschiedenen Auflösungen (Originalgröße, 320px, 160px) verfügbar, um unterschiedlichen Rechenbudgets gerecht zu werden.
- Er enthält auch eine Version mit verrauschten Labels, die ein realistischeres Szenario bietet, in dem Labels nicht immer zuverlässig sind.
Datensatzstruktur#
ImageWoof wird mit einer vordefinierten Trainings-/Validierungsaufteilung ausgeliefert, wobei jede Hunderasse in ihrem eigenen Ordner gespeichert ist:
| Split | Bilder | Klassen |
|---|---|---|
| Trainieren | 9,025 | 10 |
| Validation | 3,929 | 10 |
Da es sich bei allen 10 Klassen um Hunderassen handelt, ist die Aufteilung darauf ausgelegt, eine feinkörnige Klassifizierung zu testen – also die Unterscheidung optisch ähnlicher Kategorien –, anstatt die allgemeine Objekterkennung des vollständigen ImageNet-Datensatzes.
Anwendungen#
Das ImageWoof Dataset wird häufig zum Training und zur Evaluierung von deep learning-Modellen für komplexere und ähnlichere Klassen verwendet. Seine Herausforderung liegt in den subtilen Unterschieden zwischen den Hunderassen, die die Grenzen der Modellleistung und -generalisierung ausreizen. Es ist besonders wertvoll für:
- Benchmarking der Klassifizierungsleistung bei feinkörnigen Kategorien
- Testen der Modellrobustheit gegenüber ähnlich aussehenden Klassen
- Entwicklung von Algorithmen, die subtile visuelle Unterschiede unterscheiden können
- Evaluierung von Transfer Learning von allgemeinen auf spezifische Domänen
Verwendung#
Um ein Klassifizierungsmodell auf dem ImageWoof Dataset für 100 epochs mit einer Bildgröße von 224x224 zu trainieren, verwende die Codeausschnitte unten. Eine umfassende Liste der verfügbaren Argumente findest du auf der Training-Seite des Modells.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-cls.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="imagewoof", epochs=100, imgsz=224)Datensatzvarianten#
ImageWoof ist in drei Größen erhältlich, um unterschiedlichen Forschungsanforderungen und Rechenbudgets gerecht zu werden:
- Volle Größe (
imagewoof): Die Originalversion mit Bildern in voller Größe, ideal für das finale Training und Leistungs-Benchmarking. - Mittlere Größe (
imagewoof320): Bilder, deren maximale Kantenlänge auf 320 Pixel skaliert wurde, geeignet für schnelleres Training ohne nennenswerte Einbußen bei der Modellleistung. - Kleine Größe (
imagewoof160): Bilder, deren maximale Kantenlänge auf 160 Pixel skaliert wurde, entwickelt für schnelles Prototyping und Experimente, bei denen die Trainingsgeschwindigkeit im Vordergrund steht.
Um diese Varianten zu verwenden, ersetze einfach imagewoof im Dataset-Argument durch imagewoof320 oder imagewoof160. Zum Beispiel:
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-cls.pt") # load a pretrained model (recommended for training)
# For medium-sized dataset
model.train(data="imagewoof320", epochs=100, imgsz=224)
# For small-sized dataset
model.train(data="imagewoof160", epochs=100, imgsz=224)Beachte, dass kleinere Bilder wahrscheinlich eine geringere Klassifizierungs-accuracy liefern, aber sie sind eine hervorragende Möglichkeit, in den frühen Phasen der Modellentwicklung schnell zu iterieren. Du kannst Klassifizierungs-Datasets auch verwalten und das Training in der Cloud mit der Ultralytics Platform ausführen.
Beispielbilder und Annotationen#
Der ImageWoof-Datensatz enthält farbenfrohe Bilder verschiedener Hunderassen und bietet einen herausfordernden Datensatz für Bildklassifizierungsaufgaben. Hier sind einige Beispiele von Bildern aus dem Datensatz:

Das Beispiel verdeutlicht die subtilen Unterschiede und Ähnlichkeiten zwischen den verschiedenen Hunderassen und unterstreicht die Komplexität und Schwierigkeit der Klassifizierungsaufgabe.
Zitate und Danksagungen#
Wenn du das ImageWoof Dataset in deiner Forschung oder Entwicklungsarbeit verwendest, anerkenne bitte die Ersteller des Datasets, indem du auf das offizielle Dataset-Repository verweist.
Wir möchten dem fast.ai-Team für die Erstellung und Pflege von ImageWoof als wertvolle Ressource für die machine learning- und computer vision-Forschungsgemeinschaft danken. Weitere Informationen zu ImageWoof findest du im ImageWoof dataset repository.
FAQ#
Das ImageWoof Dataset ist eine anspruchsvolle Untermenge von ImageNet, die sich auf 10 Hunderassen konzentriert und 12.954 Bilder enthält (9.025 für das Training und 3.929 für die Validierung). Es wurde von fast.ai entwickelt, um die Grenzen von Bildklassifizierungsmodellen zu erweitern, und umfasst Rassen wie Beagle, Shih-Tzu und Golden Retriever. Das Dataset ist in verschiedenen Auflösungen (volle Größe, 320px, 160px) verfügbar und enthält sogar verrauschte Labels für realistischere Training Szenarien, was es ideal für die Entwicklung fortschrittlicher Deep-Learning-Modelle macht.
ImageWoof enthält insgesamt 12.954 Bilder – 9.025 für das Training und 3.929 für die Validierung – von 10 Hunderassen: Australian Terrier, Border Terrier, Samojede, Beagle, Shih-Tzu, English Foxhound, Rhodesian Ridgeback, Dingo, Golden Retriever und Old English Sheepdog. Jede Rasse ist in ihrem eigenen Ordner gespeichert, gemäß dem Standard-Klassifizierungs-Layout, das Ultralytics erwartet.
Um ein Klassifizierungsmodell auf dem ImageWoof-Datensatz mit Ultralytics YOLO für 100 Epochen bei einer Bildgröße von 224x224 zu trainieren, verwende den folgenden Code:
Trainingsbeispielfrom ultralytics import YOLO model = YOLO("yolo26n-cls.pt") # Load a pretrained model results = model.train(data="imagewoof", epochs=100, imgsz=224)Weitere Details zu verfügbaren Trainingsargumenten findest du auf der Training-Seite.
Der ImageWoof-Datensatz ist in drei Größen erhältlich:
- Volle Größe (
imagewoof): Ideal für das finale Training und Benchmarking, enthält Bilder in voller Größe. - Mittlere Größe (
imagewoof320): Skalierte Bilder mit einer maximalen Kantenlänge von 320 Pixeln, geeignet für ein schnelleres Training. - Kleine Größe (
imagewoof160): Skalierte Bilder mit einer maximalen Kantenlänge von 160 Pixeln, perfekt für schnelles Prototyping.
Verwende diese Versionen, indem du
imagewoofim Dataset-Argument entsprechend ersetzt. Beachte, dass kleinere Bilder eine geringere Klassifizierungs-accuracy liefern können, aber für schnellere Iterationen nützlich sind.- Volle Größe (
Verrauschte Labels im ImageWoof-Datensatz simulieren reale Bedingungen, in denen Labels nicht immer korrekt sind. Das Training von Modellen mit diesen Daten hilft dabei, Robustheit und Verallgemeinerung bei Bildklassifizierungsaufgaben zu entwickeln. Es bereitet Modelle darauf vor, effektiv mit mehrdeutigen oder falsch gelabelten Daten umzugehen, wie sie oft in praktischen Anwendungen auftreten.
Die primäre Herausforderung von ImageWoof liegt in den subtilen Unterschieden zwischen den darin enthaltenen Hunderassen. Da es sich auf 10 eng verwandte Rassen konzentriert, erfordert die Unterscheidung zwischen ihnen fortschrittlichere und fein abgestimmte Bildklassifizierungsmodelle. Dies macht ImageWoof zu einem hervorragenden Benchmark, um die Fähigkeiten und Verbesserungen von deep learning-Modellen zu testen.



