Datensatzübersicht

Ultralytics bietet Unterstützung für verschiedene Datensätze, um Computer-Vision-Aufgaben wie Detektion, Instanzsegmentierung, Pose-Schätzung, Klassifizierung und Multi-Objekt-Tracking zu erleichtern. Nachfolgend findest du eine Liste der wichtigsten Ultralytics-Datensätze, gefolgt von einer Zusammenfassung jeder Computer-Vision-Aufgabe und der entsprechenden Datensätze.



Watch: Ultralytics Datasets Overview

Objektdetektion

Bounding-Box-Objektdetektion ist eine Computer-Vision-Technik, bei der Objekte in einem Bild erkannt und lokalisiert werden, indem eine Begrenzungsbox um jedes Objekt gezeichnet wird.

  • African-wildlife: Ein Datensatz mit Bildern von afrikanischen Wildtieren, darunter Büffel, Elefanten, Nashörner und Zebras.
  • Argoverse: Ein Datensatz mit 3D-Tracking- und Bewegungs-Vorhersagedaten aus städtischen Umgebungen mit umfangreichen Annotationen.
  • Brain-tumor: Ein Datensatz zur Erkennung von Hirntumoren, der MRT- oder CT-Scan-Bilder mit Details zu Tumorvorkommen, Lage und Merkmalen enthält.
  • COCO: Common Objects in Context (COCO) ist ein groß angelegter Datensatz für Objektdetektion, Segmentierung und Bildbeschriftung mit 80 Objektkategorien.
  • COCO8: Eine kleinere Teilmenge der ersten 4 Bilder aus COCO train und COCO val, geeignet für schnelle Tests.
  • COCO8-Grayscale: Eine Graustufen-Version von COCO8, die durch Konvertierung von RGB in Graustufen erstellt wurde und für die Bewertung einkanaliger Modelle nützlich ist.
  • COCO8-Multispectral: Eine 10-kanalige multispektrale Version von COCO8, die durch Interpolation von RGB-Wellenlängen erstellt wurde und für die spektrale Modellbewertung nützlich ist.
  • COCO128: Eine kleinere Teilmenge der ersten 128 Bilder aus COCO train und COCO val, geeignet für Tests.
  • Construction-PPE: Ein Datensatz von Baustellenbildern, der mit wichtiger Sicherheitsausrüstung wie Helmen, Westen, Handschuhen, Stiefeln und Schutzbrillen sowie mit Labels für fehlende Ausrüstung annotiert ist, um die Entwicklung von KI-Modellen für Compliance und Arbeitnehmerschutz zu unterstützen.
  • Global Wheat 2020: Ein Datensatz mit Bildern von Weizenähren für die Global Wheat Challenge 2020.
  • HomeObjects-3K: Ein Datensatz annotierter Innenraumszenen mit 12 häufigen Haushaltsgegenständen, ideal für die Entwicklung und das Testen von Computer-Vision-Modellen in Smart-Home-Systemen, Robotik und Augmented Reality.
  • KITTI Neu: Ein bekannter Datensatz für autonomes Fahren mit Stereo-, LiDAR- und GPS/IMU-Eingaben, der für 2D-Objektdetektion in verschiedenen Straßenszenen verwendet wird.
  • LVIS: Ein groß angelegter Datensatz für Objektdetektion, Segmentierung und Bildbeschriftung mit 1203 Objektkategorien.
  • Medical-pills: Ein Datensatz mit gelabelten Bildern medizinischer Tabletten, der zur Unterstützung bei Aufgaben wie pharmazeutischer Qualitätskontrolle, Sortierung und Sicherstellung der Einhaltung von Industriestandards entwickelt wurde.
  • Objects365: Ein hochwertiger, groß angelegter Datensatz für Objektdetektion mit 365 Objektkategorien und über 600.000 annotierten Bildern.
  • OpenImagesV7: Ein umfassender Datensatz von Google mit 1,7 Mio. Trainingsbildern und 42.000 Validierungsbildern.
  • RF100: Ein vielfältiger Objektdetektions-Benchmark mit 100 Datensätzen, die sieben Bilddomänen für eine umfassende Modellbewertung abdecken.
  • Signature: Ein Datensatz mit Bildern verschiedener Dokumente mit annotierten Unterschriften, der die Forschung zu Dokumentenverifizierung und Betrugserkennung unterstützt.
  • SKU-110K: Ein Datensatz mit dichter Objektdetektion in Einzelhandelsumgebungen mit über 11.000 Bildern und 1,7 Millionen Bounding Boxes.
  • VisDrone: Ein Datensatz mit Objektdetektions- und Multi-Objekt-Tracking-Daten aus Drohnenaufnahmen mit über 10.000 Bildern und Videosequenzen.
  • VOC: Der Pascal Visual Object Classes (VOC) Datensatz für Objektdetektion und Segmentierung mit 20 Objektklassen und über 11.000 Bildern.
  • xView: Ein Datensatz für Objektdetektion in Luftbildern mit 60 Objektkategorien und über 1 Million annotierten Objekten.

Instanzsegmentierung

Instanzsegmentierung ist eine Computer-Vision-Technik, bei der Objekte in einem Bild auf Pixelebene identifiziert und lokalisiert werden. Im Gegensatz zur semantischen Segmentierung, die nur jedes Pixel klassifiziert, unterscheidet die Instanzsegmentierung zwischen verschiedenen Instanzen derselben Klasse.

  • Carparts-seg: Speziell entwickelter Datensatz zur Identifizierung von Fahrzeugteilen, der Design-, Fertigungs- und Forschungsanforderungen abdeckt. Er dient sowohl für Objektdetektions- als auch für Segmentierungsaufgaben.
  • COCO: Ein groß angelegter Datensatz für Objektdetektions-, Segmentierungs- und Bildbeschriftungsaufgaben mit über 200.000 gelabelten Bildern.
  • COCO8-seg: Ein kleinerer Datensatz für Instanzsegmentierungsaufgaben, der eine Teilmenge von 8 COCO-Bildern mit Segmentierungsannotationen enthält.
  • COCO128-seg: Ein kleinerer Datensatz für Instanzsegmentierungsaufgaben, der eine Teilmenge von 128 COCO-Bildern mit Segmentierungsannotationen enthält.
  • Crack-seg: Ein speziell erstellter Datensatz zur Erkennung von Rissen auf Straßen und Wänden, anwendbar für Objektdetektions- und Segmentierungsaufgaben.
  • Package-seg: Ein maßgeschneiderter Datensatz zur Identifizierung von Paketen in Lagern oder industriellen Umgebungen, geeignet für Objektdetektions- und Segmentierungsanwendungen.

Pose-Schätzung

Pose-Schätzung ist eine Technik zur Bestimmung der Pose eines Objekts relativ zur Kamera oder zum Weltkoordinatensystem. Dies beinhaltet die Identifizierung von Schlüsselpunkten oder Gelenken an Objekten, insbesondere bei Menschen oder Tieren.

  • COCO: Ein groß angelegter Datensatz mit menschlichen Pose-Annotationen für Pose-Schätzungsaufgaben.
  • COCO8-pose: Ein kleinerer Datensatz für Pose-Schätzungsaufgaben, der eine Teilmenge von 8 COCO-Bildern mit menschlichen Pose-Annotationen enthält.
  • Dog-pose: Ein umfassender Datensatz mit etwa 6.000 Bildern, die auf Hunde fokussiert sind, annotiert mit 24 Schlüsselpunkten pro Hund, maßgeschneidert für Pose-Schätzungsaufgaben.
  • Hand-Keypoints: Ein prägnanter Datensatz mit über 26.000 Bildern, die auf menschliche Hände zentriert sind, annotiert mit 21 Schlüsselpunkten pro Hand, konzipiert für Pose-Schätzungsaufgaben.
  • Tiger-pose: Ein kompakter Datensatz, bestehend aus 263 Bildern, die auf Tiger fokussiert sind, annotiert mit 12 Schlüsselpunkten pro Tiger für Pose-Schätzungsaufgaben.

Klassifizierung

Bildklassifizierung ist eine Computer-Vision-Aufgabe, die darin besteht, ein Bild basierend auf seinem visuellen Inhalt in eine oder mehrere vordefinierte Klassen oder Kategorien einzuordnen.

  • Caltech 101: Ein Datensatz mit Bildern von 101 Objektkategorien für Bildklassifizierungsaufgaben.
  • Caltech 256: Eine erweiterte Version von Caltech 101 mit 256 Objektkategorien und anspruchsvolleren Bildern.
  • CIFAR-10: Ein Datensatz mit 60.000 32x32 Farbbildern in 10 Klassen, mit 6.000 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ß angelegter Datensatz für Objektdetektion und Bildklassifizierung mit über 14 Millionen Bildern und 20.000 Kategorien.
  • ImageNet-10: Eine kleinere Teilmenge von ImageNet mit 10 Kategorien für schnellere Experimente und Tests.
  • Imagenette: Eine kleinere Teilmenge von ImageNet, die 10 leicht unterscheidbare Klassen für schnelleres Training und Testen enthält.
  • Imagewoof: Eine anspruchsvollere Teilmenge von ImageNet, die 10 Hunderassenkategorien für Bildklassifizierungsaufgaben enthält.
  • MNIST: Ein Datensatz von 70.000 Graustufenbildern handgeschriebener Ziffern für Bildklassifizierungsaufgaben.
  • MNIST160: Die ersten 8 Bilder jeder MNIST-Kategorie aus dem MNIST-Datensatz. Der Datensatz enthält insgesamt 160 Bilder.

Orientierte Bounding Boxes (OBB)

Orientierte Bounding Boxes (OBB) sind eine Methode in der Computer Vision zur Erkennung abgewinkelter Objekte in Bildern mithilfe rotierter Bounding Boxes, die häufig auf Luft- und Satellitenbilder angewendet werden. Im Gegensatz zu traditionellen Bounding Boxes kann OBB Objekte in verschiedenen Ausrichtungen besser umschließen.

  • DOTA-v2: Ein beliebter OBB-Luftbilddatensatz mit 1,7 Millionen Instanzen und 11.268 Bildern.
  • DOTA8: Eine kleinere Teilmenge der ersten 8 Bilder aus dem DOTAv1-Split-Set, 4 für das Training und 4 für die Validierung, geeignet für schnelle Tests.
  • DOTA128: Eine Teilmenge von 128 Bildern aus dem DOTA-Datensatz für Training und Validierung, die ein gutes Gleichgewicht zwischen Größe und Vielfalt für das Testen von OBB-Modellen bietet.

Multi-Objekt-Tracking

Multi-Objekt-Tracking ist eine Computer-Vision-Technik, bei der mehrere Objekte über die Zeit hinweg in einer Videosequenz erkannt und verfolgt werden. Diese Aufgabe erweitert die Objektdetektion, indem sie konsistente Identitäten der Objekte über Frames hinweg beibehält.

  • Argoverse: Ein Datensatz mit 3D-Tracking- und Bewegungs-Vorhersagedaten aus städtischen Umgebungen mit umfangreichen Annotationen für Multi-Objekt-Tracking-Aufgaben.
  • VisDrone: Ein Datensatz mit Objektdetektions- und Multi-Objekt-Tracking-Daten aus Drohnenaufnahmen mit über 10.000 Bildern und Videosequenzen.

Neue Datensätze beisteuern

Das Beisteuern eines neuen Datensatzes umfasst mehrere Schritte, um sicherzustellen, dass er gut mit der vorhandenen Infrastruktur harmoniert. Nachfolgend sind die notwendigen Schritte aufgeführt:



Watch: How to Contribute to Ultralytics Datasets

Schritte, um einen neuen Datensatz beizusteuern

  1. Bilder sammeln: Sammle die Bilder, die zum Datensatz gehören. Diese können aus verschiedenen Quellen stammen, wie z. B. öffentlichen Datenbanken oder deiner eigenen Sammlung.

  2. Bilder annotieren: Annotiere diese Bilder mit Bounding Boxes, Segmenten oder Schlüsselpunkten, abhängig von der Aufgabe.

  3. Annotationen exportieren: Konvertiere diese Annotationen in das YOLO *.txt Dateiformat, das Ultralytics unterstützt.

  4. Datensatz organisieren: Ordne deinen Datensatz in der richtigen Ordnerstruktur an. Du solltest Verzeichnisse der obersten Ebene images/ und labels/ haben und innerhalb jedes davon ein train/ und val/ Unterverzeichnis.

    dataset/
    ├── images/
    │   ├── train/
    │   └── val/
    └── labels/
        ├── train/
        └── val/
  5. Eine data.yaml Datei erstellen: Erstelle in deinem Datensatz-Stammverzeichnis eine data.yaml Datei, die den Datensatz, Klassen und andere notwendige Informationen beschreibt.

  6. Bilder optimieren (optional): Wenn du die Größe des Datensatzes für eine effizientere Verarbeitung reduzieren möchtest, kannst du die Bilder mit dem untenstehenden Code optimieren. Dies ist nicht erforderlich, aber für kleinere Datensatzgrößen und schnellere Download-Geschwindigkeiten empfehlenswert.

  7. Datensatz zippen: Komprimiere den gesamten Datensatzordner in eine Zip-Datei.

  8. Dokumentation und PR: Erstelle eine Dokumentationsseite, die deinen Datensatz beschreibt und erklärt, wie er in das bestehende Framework passt. Danach reiche einen Pull Request (PR) ein. Siehe Ultralytics Contribution Guidelines für weitere Details zum Einreichen eines PR.

Beispielcode zum Optimieren und Zippen eines Datensatzes

Datensatz optimieren und zippen
   from pathlib import Path

   from ultralytics.data.utils import compress_one_image
   from ultralytics.utils.downloads import zip_directory

   # Define dataset directory
   path = Path("path/to/dataset")

   # Optimize images in dataset (optional)
   for f in path.rglob("*.jpg"):
       compress_one_image(f)

   # Zip dataset into 'path/to/dataset.zip'
   zip_directory(path)

Indem du diese Schritte befolgst, kannst du einen neuen Datensatz beisteuern, der sich gut in die bestehende Struktur von Ultralytics integriert.

FAQ

Welche Datensätze unterstützt Ultralytics für die Objektdetektion?

Ultralytics unterstützt eine große Vielfalt an Datensätzen für die Objektdetektion, einschließlich:

  • COCO: Ein groß angelegter Datensatz für Objektdetektion, Segmentierung und Bildbeschriftung mit 80 Objektkategorien.
  • LVIS: Ein umfangreicher Datensatz mit 1203 Objektkategorien, konzipiert für eine feingranulare Objektdetektion und Segmentierung.
  • Argoverse: Ein Datensatz mit 3D-Tracking- und Bewegungs-Vorhersagedaten aus städtischen Umgebungen mit umfangreichen Annotationen.
  • VisDrone: Ein Datensatz mit Objektdetektions- und Multi-Objekt-Tracking-Daten aus Drohnenaufnahmen.
  • SKU-110K: Bietet dichte Objektdetektion in Einzelhandelsumgebungen mit über 11.000 Bildern.

Diese Datensätze erleichtern das Training robuster Ultralytics YOLO Modelle für verschiedene Objektdetektionsanwendungen.

Wie trage ich einen neuen Datensatz zu Ultralytics bei?

Das Beisteuern eines neuen Datensatzes umfasst mehrere Schritte:

  1. Bilder sammeln: Sammle Bilder aus öffentlichen Datenbanken oder persönlichen Sammlungen.
  2. Bilder annotieren: Wende Bounding Boxes, Segmente oder Schlüsselpunkte an, abhängig von der Aufgabe.
  3. Annotationen exportieren: Konvertiere Annotationen in das YOLO *.txt Format.
  4. Datensatz organisieren: Verwende die Ordnerstruktur mit train/ und val/ Verzeichnissen, die jeweils images/ und labels/ Unterverzeichnisse enthalten.
  5. Eine data.yaml Datei erstellen: Füge Datensatzbeschreibungen, Klassen und andere relevante Informationen hinzu.
  6. Bilder optimieren (optional): Reduziere die Datensatzgröße zur Effizienzsteigerung.
  7. Datensatz zippen: Komprimiere den Datensatz in eine Zip-Datei.
  8. Dokumentation und PR: Beschreibe deinen Datensatz und reiche einen Pull Request gemäß den Ultralytics Contribution Guidelines ein.

Besuche Neue Datensätze beisteuern für eine umfassende Anleitung.

Warum sollte ich die Ultralytics Platform für meinen Datensatz verwenden?

Die Ultralytics Platform bietet leistungsstarke Funktionen für Datensatzverwaltung und -analyse, einschließlich:

  • Nahtlose Datensatzverwaltung: Lade deine Datensätze an einem Ort hoch, organisiere und verwalte sie.
  • Sofortige Trainingsintegration: Nutze hochgeladene Datensätze direkt für das Modelltraining ohne zusätzliche Einrichtung.
  • Visualisierungstools: Erforsche und visualisiere deine Datensatzbilder und Annotationen.
  • Datensatzanalyse: Erhalte Einblicke in die Verteilung und Eigenschaften deines Datensatzes.

Die Plattform optimiert den Übergang von der Datensatzverwaltung zum Modelltraining und macht den gesamten Prozess effizienter. Erfahre mehr über Ultralytics Platform Datasets.

Was sind die einzigartigen Funktionen von Ultralytics YOLO Modellen für Computer Vision?

Ultralytics YOLO Modelle bieten verschiedene einzigartige Funktionen für Computer Vision Aufgaben:

  • Echtzeit-Performance: Hochgeschwindigkeits-Inferenz- und Trainingsfunktionen für zeitkritische Anwendungen.
  • Vielseitigkeit: Unterstützung für Erkennungs-, Segmentierungs-, Klassifizierungs- und Pose-Estimationsaufgaben in einem einheitlichen Framework.
  • Vortrainierte Modelle: Zugriff auf leistungsstarke, vortrainierte Modelle für verschiedene Anwendungen, was die Trainingszeit verkürzt.
  • Umfangreiche Community-Unterstützung: Aktive Community und umfassende Dokumentation zur Fehlerbehebung und Entwicklung.
  • Einfache Integration: Einfache API zur Integration in bestehende Projekte und Workflows.

Entdecke mehr über YOLO Modelle auf der Ultralytics Models Seite.

Wie kann ich einen Datensatz mit Ultralytics Tools optimieren und zippen?

Um einen Datensatz mit Ultralytics Tools zu optimieren und zu zippen, folge diesem Beispiel-Code:

Datensatz optimieren und zippen
from pathlib import Path

from ultralytics.data.utils import compress_one_image
from ultralytics.utils.downloads import zip_directory

# Define dataset directory
path = Path("path/to/dataset")

# Optimize images in dataset (optional)
for f in path.rglob("*.jpg"):
    compress_one_image(f)

# Zip dataset into 'path/to/dataset.zip'
zip_directory(path)

Dieser Prozess hilft dabei, die Datensatzgröße für eine effizientere Speicherung und schnellere Download-Geschwindigkeiten zu reduzieren. Erfahre mehr darüber, wie du einen Datensatz optimierst und zippst.

Kommentare