Datensätze Übersicht
Ultralytics bietet Unterstützung für verschiedene Datensätze zur Erleichterung von Bildverarbeitungsaufgaben wie Erkennung, Instanzsegmentierung, Posenschätzung, Klassifizierung und Verfolgung mehrerer Objekte. Nachfolgend finden Sie eine Liste der wichtigsten Ultralytics Datensätze, gefolgt von einer Zusammenfassung der einzelnen Bildverarbeitungsaufgaben und der entsprechenden Datensätze.
Beobachten: Ultralytics Datensätze Übersicht
Ultralytics Entdecker
Gemeinschaftsnote ⚠️
Ab dem ultralytics>=8.3.10
Die Unterstützung von Ultralytics explorer wurde abgeschafft. Aber keine Sorge! Sie können jetzt auf ähnliche und sogar erweiterte Funktionen über Ultralytics HUBunserer intuitiven No-Code-Plattform, die Ihren Arbeitsablauf optimiert. Mit Ultralytics HUB können Sie Ihre Daten mühelos erforschen, visualisieren und verwalten, ohne eine einzige Zeile Code zu schreiben. Probieren Sie es aus und nutzen Sie die Vorteile der leistungsstarken Funktionen!🚀
Erstellen Sie Einbettungen für Ihren Datensatz, suchen Sie nach ähnlichen Bildern, führen Sie SQL-Abfragen durch, führen Sie eine semantische Suche durch und suchen Sie sogar mit natürlicher Sprache! Sie können mit unserer GUI-Anwendung beginnen oder mit der API Ihre eigene Anwendung erstellen. Erfahren Sie hier mehr.
- Testen Sie die GUI-Demo
- Erfahren Sie mehr ĂĽber die Explorer API
Objekt-Erkennung
Bei der Bounding-Box-Objekterkennung handelt es sich um eine Computer-Vision-Technik, bei der Objekte in einem Bild erkannt und lokalisiert werden, indem ein Begrenzungsrahmen um jedes Objekt gezeichnet wird.
- Argoverse: Ein Datensatz mit 3D-Tracking- und Bewegungsvorhersagedaten aus städtischen Umgebungen mit umfangreichen Anmerkungen.
- COCO: Common Objects in Context (COCO) ist ein umfangreicher Datensatz zur Objekterkennung, Segmentierung und Beschriftung mit 80 Objektkategorien.
- LVIS: Ein umfangreicher Datensatz zur Objekterkennung, Segmentierung und Beschriftung mit 1203 Objektkategorien.
- COCO8: Eine kleinere Teilmenge der ersten 4 Bilder aus COCO train und COCO val, geeignet fĂĽr schnelle Tests.
- COCO128: Eine kleinere Teilmenge der ersten 128 Bilder aus COCO train und COCO val, geeignet fĂĽr Tests.
- Global Wheat 2020: Ein Datensatz mit Bildern von Weizenköpfen für die Global Wheat Challenge 2020.
- Objekte365: Ein hochwertiger, umfangreicher Datensatz zur Objekterkennung mit 365 Objektkategorien und ĂĽber 600.000 kommentierten Bildern.
- OpenImagesV7: Ein umfassender Datensatz von Google mit 1,7 Millionen Trainingsbildern und 42.000 Validierungsbildern.
- SKU-110K: Ein Datensatz mit dichter Objekterkennung in Einzelhandelsumgebungen mit ĂĽber 11.000 Bildern und 1,7 Millionen Bounding Boxes.
- VisDrone: Ein Datensatz mit Objekterkennungs- und Multi-Objektverfolgungsdaten aus von Drohnen aufgenommenen Bildern mit ĂĽber 10.000 Bildern und Videosequenzen.
- VOC: Der Pascal Visual Object Classes (VOC)-Datensatz zur Objekterkennung und -segmentierung mit 20 Objektklassen und ĂĽber 11K Bildern.
- xView: Ein Datensatz zur Objekterkennung in Overhead-Bildern mit 60 Objektkategorien und ĂĽber 1 Million kommentierter Objekte.
- RF100: Ein vielseitiger Benchmark zur Objekterkennung mit 100 Datensätzen aus sieben Bildbereichen für eine umfassende Modellbewertung.
- Hirntumor: Ein Datensatz zur Erkennung von Hirntumoren umfasst MRT- oder CT-Scan-Bilder mit Angaben zu Vorhandensein, Lage und Merkmalen des Tumors.
- Afrikanische Wildtiere: Ein Datensatz mit Bildern von afrikanischen Wildtieren, darunter Büffel, Elefanten, Nashörner und Zebras.
- Unterschrift: Ein Datensatz mit Bildern verschiedener Dokumente mit kommentierten Unterschriften zur UnterstĂĽtzung der DokumentenprĂĽfung und Betrugserkennung.
Instanz-Segmentierung
Die Instanzsegmentierung ist eine Technik der Computer Vision, die die Identifizierung und Lokalisierung von Objekten in einem Bild auf Pixelebene beinhaltet.
- COCO: Ein umfangreicher Datensatz fĂĽr Objekterkennung, Segmentierung und Beschriftungsaufgaben mit ĂĽber 200.000 beschrifteten Bildern.
- COCO8-seg: Ein kleinerer Datensatz für Instanzsegmentierungsaufgaben, der eine Teilmenge von 8 COCO-Bildern mit Segmentierungskommentaren enthält.
- COCO128-seg: Ein kleinerer Datensatz für Instanzsegmentierungsaufgaben, der eine Teilmenge von 128 COCO-Bildern mit Segmentierungskommentaren enthält.
- Crack-seg: Spezieller Datensatz fĂĽr die Erkennung von Rissen auf StraĂźen und Mauern, der sowohl fĂĽr die Objekterkennung als auch fĂĽr Segmentierungsaufgaben geeignet ist.
- Paket-seg: Maßgeschneiderter Datensatz für die Identifizierung von Paketen in Lagerhäusern oder industriellen Umgebungen, geeignet sowohl für die Objekterkennung als auch für Segmentierungsanwendungen.
- Carparts-seg: Speziell entwickelter Datensatz zur Identifizierung von Fahrzeugteilen fĂĽr Design-, Fertigungs- und Forschungszwecke. Er dient sowohl der Objekterkennung als auch Segmentierungsaufgaben.
Schätzung der Pose
Die Pose-Schätzung ist eine Technik zur Bestimmung der Pose des Objekts in Bezug auf die Kamera oder das Weltkoordinatensystem.
- COCO: Ein umfangreicher Datensatz mit Anmerkungen zur menschlichen Körperhaltung, der für Aufgaben zur Schätzung der Körperhaltung entwickelt wurde.
- COCO8-pose: Ein kleinerer Datensatz für Posenschätzungsaufgaben, der eine Teilmenge von 8 COCO-Bildern mit Anmerkungen zur menschlichen Pose enthält.
- Tiger-Pose: Ein kompakter Datensatz bestehend aus 263 Bildern von Tigern, die mit 12 Keypoints pro Tiger für Posenschätzungsaufgaben versehen sind.
- Hand-Keypoints: Ein übersichtlicher Datensatz mit über 26.000 Bildern menschlicher Hände, die mit 21 Keypoints pro Hand beschriftet sind und für Posenschätzungsaufgaben konzipiert wurden.
- Dog-pose: Ein umfassender Datensatz mit ca. 6.000 Bildern von Hunden, die mit 24 Keypoints pro Hund beschriftet sind und für Posenschätzungsaufgaben zugeschnitten sind.
Klassifizierung
Bei der Bildklassifizierung handelt es sich um eine Computer-Vision-Aufgabe, bei der ein Bild auf der Grundlage seines visuellen Inhalts in eine oder mehrere vordefinierte Klassen oder Kategorien eingeordnet wird.
- 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 von 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.
- Mode-MNIST: Ein Datensatz bestehend aus 70.000 Graustufenbildern von 10 Modekategorien fĂĽr Bildklassifizierungsaufgaben.
- ImageNet: Ein umfangreicher 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 Hunderassen-Kategorien fĂĽr Bildklassifizierungsaufgaben.
- MNIST: Ein Datensatz mit 70.000 Graustufenbildern von handgeschriebenen 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)
Oriented Bounding Boxes (OBB) ist eine Methode der Computer Vision zur Erkennung von schrägen Objekten in Bildern mit Hilfe von gedrehten Bounding Boxes, die häufig bei Luft- und Satellitenbildern angewendet wird.
- 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 Training und 4 fĂĽr Validierung, geeignet fĂĽr schnelle Tests.
Multi-Objekt-Verfolgung
Bei der Verfolgung mehrerer Objekte handelt es sich um ein Computer-Vision-Verfahren, bei dem mehrere Objekte in einer Videosequenz erkannt und über einen längeren Zeitraum verfolgt werden.
- Argoverse: Ein Datensatz, der 3D-Tracking- und Bewegungsvorhersagedaten aus städtischen Umgebungen mit reichhaltigen Anmerkungen für Multi-Objekt-Tracking-Aufgaben enthält.
- VisDrone: Ein Datensatz mit Objekterkennungs- und Multi-Objektverfolgungsdaten aus von Drohnen aufgenommenen Bildern mit ĂĽber 10.000 Bildern und Videosequenzen.
Neue Datensätze beisteuern
Das Einbringen eines neuen Datensatzes erfordert mehrere Schritte, um sicherzustellen, dass er sich gut in die bestehende Infrastruktur einfĂĽgt. Im Folgenden sind die notwendigen Schritte aufgefĂĽhrt:
Schritte zum Beitragen eines neuen Datensatzes
- Bilder sammeln: Sammeln Sie die Bilder, die zum Datensatz gehören. Diese können aus verschiedenen Quellen stammen, z. B. aus öffentlichen Datenbanken oder aus Ihrer eigenen Sammlung.
- Bilder annotieren: Beschriften Sie diese Bilder je nach Aufgabe mit Bounding Boxes, Segmenten oder Keypoints.
- Anmerkungen exportieren: Konvertieren Sie diese Anmerkungen in die YOLO
*.txt
Dateiformat, das Ultralytics unterstĂĽtzt. -
Datensatz organisieren: Ordnen Sie Ihren Datensatz in der richtigen Ordnerstruktur an. Sie sollten Folgendes haben
train/
undval/
Verzeichnisse der obersten Ebene, und innerhalb jedes Verzeichnisses einimages/
undlabels/
Unterverzeichnis. -
Erstellen einer
data.yaml
Datei: Erstellen Sie im Stammverzeichnis Ihres Datensatzes einedata.yaml
Datei, die den Datensatz, die Klassen und andere notwendige Informationen beschreibt. - Bilder optimieren (optional): Wenn Sie die Größe des Datensatzes für eine effizientere Verarbeitung reduzieren möchten, können Sie die Bilder mit dem unten stehenden Code optimieren. Dies ist nicht erforderlich, wird aber empfohlen, um die Größe des Datensatzes zu verringern und die Downloadgeschwindigkeit zu erhöhen.
- Datensatz zippen: Komprimieren Sie den gesamten Datensatzordner in eine Zip-Datei.
- Dokumentation und PR: Erstellen Sie eine Dokumentationsseite, in der Sie Ihren Datensatz beschreiben und erläutern, wie er in den bestehenden Rahmen passt. Danach reichen Sie einen Pull Request (PR) ein. Weitere Einzelheiten zum Einreichen eines PR finden Sie in den Ultralytics Contribution Guidelines.
Beispielcode zum Optimieren und Komprimieren eines Datensatzes
Optimieren und Komprimieren eines Datensatzes
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)
Wenn Sie diese Schritte befolgen, können Sie einen neuen Datensatz beisteuern, der sich gut in die bestehende Struktur von Ultralytics einfügt.
FAQ
Welche Datensätze werden von Ultralytics für die Objekterkennung unterstützt?
Ultralytics unterstützt eine Vielzahl von Datensätzen für die Objekterkennung, darunter:
- COCO: Ein umfangreicher Datensatz zur Objekterkennung, Segmentierung und Beschriftung mit 80 Objektkategorien.
- LVIS: Ein umfangreicher Datensatz mit 1203 Objektkategorien, der fĂĽr eine feinere Objekterkennung und -segmentierung entwickelt wurde.
- Argoverse: Ein Datensatz mit 3D-Tracking- und Bewegungsvorhersagedaten aus städtischen Umgebungen mit umfangreichen Anmerkungen.
- VisDrone: Ein Datensatz mit Objekterkennungs- und Multi-Objektverfolgungsdaten aus von Drohnen aufgenommenem Bildmaterial.
- SKU-110K: Dichte Objekterkennung in Einzelhandelsumgebungen mit ĂĽber 11.000 Bildern.
Diese Datensätze erleichtern das Training robuster Modelle für verschiedene Anwendungen der Objekterkennung.
Wie kann ich einen neuen Datensatz zu Ultralytics beitragen?
Das Einbringen eines neuen Datensatzes umfasst mehrere Schritte:
- Bilder sammeln: Sammeln Sie Bilder aus öffentlichen Datenbanken oder persönlichen Sammlungen.
- Bilder annotieren: Wenden Sie Bounding Boxes, Segmente oder Keypoints an, je nach Aufgabe.
- Anmerkungen exportieren: Konvertieren von Anmerkungen in die YOLO
*.txt
Format. - Datensatz organisieren: Verwenden Sie die Ordnerstruktur mit
train/
undval/
Verzeichnisse, die jeweils Folgendes enthaltenimages/
undlabels/
Unterverzeichnisse. - Erstellen einer
data.yaml
Datei: Enthalten Sie Datensatzbeschreibungen, Klassen und andere relevante Informationen. - Bilder optimieren (optional): Verringern Sie die Größe des Datensatzes für mehr Effizienz.
- Dataset komprimieren: Komprimieren Sie den Datensatz in eine Zip-Datei.
- Dokument und PR: Beschreiben Sie Ihren Datensatz und reichen Sie einen Pull Request gemäß den Ultralytics Contribution Guidelines ein.
Einen umfassenden Leitfaden finden Sie unter Neue Datensätze beisteuern.
Warum sollte ich Ultralytics Explorer fĂĽr meinen Datensatz verwenden?
Ultralytics Explorer bietet leistungsstarke Funktionen für die Analyse von Datensätzen, darunter:
- Erzeugung von Einbettungen: Erstellen von Vektoreinbettungen fĂĽr Bilder.
- Semantische Suche: Suche nach ähnlichen Bildern mithilfe von Einbettungen oder KI.
- SQL-Abfragen: FĂĽhren Sie erweiterte SQL-Abfragen fĂĽr detaillierte Datenanalysen aus.
- Suche in natĂĽrlicher Sprache: Die Suche erfolgt ĂĽber Abfragen in einfacher Sprache, um die Nutzung zu erleichtern.
Unter Ultralytics finden Sie weitere Informationen und können die GUI-Demo ausprobieren.
Was sind die besonderen Merkmale von Ultralytics YOLO Modellen fĂĽr die Computer Vision?
Ultralytics YOLO Modelle bieten mehrere einzigartige Merkmale:
- Leistung in Echtzeit: Hochgeschwindigkeitsinferenz und -training.
- Vielseitigkeit: Geeignet für Erkennungs-, Segmentierungs-, Klassifizierungs- und Posenschätzungsaufgaben.
- Vorgefertigte Modelle: Zugang zu hochleistungsfähigen, vortrainierten Modellen für verschiedene Anwendungen.
- Umfassender Community-Support: Aktive Community und umfassende Dokumentation fĂĽr Fehlerbehebung und Entwicklung.
Entdecken Sie mehr ĂĽber YOLO auf der Ultralytics YOLO Seite.
Wie kann ich einen Datensatz mit den Tools von Ultralytics optimieren und zippen?
Um einen Datensatz mit den Tools von Ultralytics zu optimieren und zu zippen, folgen Sie diesem Beispielcode:
Optimieren und Komprimieren eines Datensatzes
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)
Erfahren Sie mehr darüber, wie Sie einen Datensatz optimieren und zippen können.