Roboflow 100 Datensatz
Roboflow 100, entwickelt von Roboflow entwickelt und von Intel gesponsert, ist ein bahnbrechender Benchmark zur Objekterkennung. Er umfasst 100 verschiedene DatensĂ€tze, die aus ĂŒber 90.000 öffentlichen DatensĂ€tzen ausgewĂ€hlt wurden. Dieser Benchmark wurde entwickelt, um die AnpassungsfĂ€higkeit von Modellen in verschiedenen Bereichen wie dem Gesundheitswesen, Luftbildern und Videospielen zu testen.
Hauptmerkmale
- EnthÀlt 100 DatensÀtze aus sieben Bereichen: Luftbild, Videospiele, Mikroskopie, Unterwasser, Dokumente, Elektromagnetik und reale Welt.
- Der Benchmark umfasst 224.714 Bilder in 805 Klassen, die in ĂŒber 11.170 Stunden beschriftet wurden.
- Alle Bilder werden auf 640x640 Pixel verkleinert, wobei darauf geachtet wird, dass keine Mehrdeutigkeit der Klassen entsteht und unterreprÀsentierte Klassen herausgefiltert werden.
- Die Annotationen enthalten Bounding Boxes fĂŒr Objekte und eignen sich daher zum Trainieren und Bewerten von Objekterkennungsmodellen.
Struktur des Datensatzes
Der Roboflow 100-Datensatz ist in sieben Kategorien unterteilt, jede mit einem eigenen Satz von DatensÀtzen, Bildern und Klassen:
- Luftbilder: Besteht aus 7 DatensÀtzen mit insgesamt 9.683 Bildern, die 24 verschiedene Klassen abdecken.
- Videospiele: EnthÀlt 7 DatensÀtze mit 11.579 Bildern in 88 Klassen.
- Mikroskopisch: Umfasst 11 DatensÀtze mit 13.378 Bildern, die 28 Klassen abdecken.
- Unterwasser: EnthÀlt 5 DatensÀtze, die 18.003 Bilder in 39 Klassen umfassen.
- Dokumente: Besteht aus 8 DatensÀtzen mit 24.813 Bildern, die in 90 Klassen unterteilt sind.
- Elektromagnetisch: Besteht aus 12 DatensÀtzen mit insgesamt 36.381 Bildern in 41 Klassen.
- Reale Welt: Die gröĂte Kategorie mit 50 DatensĂ€tzen, die 110.615 Bilder in 495 Klassen enthalten.
Diese Struktur ermöglicht ein vielfĂ€ltiges und umfangreiches Testfeld fĂŒr Modelle zur Objekterkennung, das reale Anwendungsszenarien widerspiegelt.
Benchmarking
Beim Datensatz-Benchmarking wird die Leistung von Machine-Learning-Modellen auf bestimmten DatensÀtzen anhand von standardisierten Kennzahlen wie Genauigkeit, durchschnittlicher PrÀzision und F1-Score bewertet.
Benchmarking
Die Benchmarking-Ergebnisse werden in "ultralytics-benchmarks/evaluation.txt" gespeichert.
Benchmarking Beispiel
import os
import shutil
from pathlib import Path
from ultralytics.utils.benchmarks import RF100Benchmark
# Initialize RF100Benchmark and set API key
benchmark = RF100Benchmark()
benchmark.set_key(api_key="YOUR_ROBOFLOW_API_KEY")
# Parse dataset and define file paths
names, cfg_yamls = benchmark.parse_dataset()
val_log_file = Path("ultralytics-benchmarks") / "validation.txt"
eval_log_file = Path("ultralytics-benchmarks") / "evaluation.txt"
# Run benchmarks on each dataset in RF100
for ind, path in enumerate(cfg_yamls):
path = Path(path)
if path.exists():
# Fix YAML file and run training
benchmark.fix_yaml(str(path))
os.system(f"yolo detect train data={path} model=yolov8s.pt epochs=1 batch=16")
# Run validation and evaluate
os.system(f"yolo detect val data={path} model=runs/detect/train/weights/best.pt > {val_log_file} 2>&1")
benchmark.evaluate(str(path), str(val_log_file), str(eval_log_file), ind)
# Remove the 'runs' directory
runs_dir = Path.cwd() / "runs"
shutil.rmtree(runs_dir)
else:
print("YAML file path does not exist")
continue
print("RF100 Benchmarking completed!")
Anwendungen
Roboflow 100 ist von unschĂ€tzbarem Wert fĂŒr verschiedene Anwendungen in den Bereichen Computer Vision und Deep Learning. Forscher und Ingenieure können diesen Benchmark nutzen, um:
- Evaluiere die Leistung von Objekterkennungsmodellen in einem Multi-Domain-Kontext.
- Teste die AnpassungsfĂ€higkeit der Modelle an reale Szenarien, die ĂŒber die normale Objekterkennung hinausgehen.
- Vergleiche die FÀhigkeiten von Objekterkennungsmodellen mit verschiedenen DatensÀtzen, z. B. aus dem Gesundheitswesen, Luftbildern und Videospielen.
Weitere Ideen und Inspirationen fĂŒr praktische Anwendungen findest du in unseren LeitfĂ€den fĂŒr praktische Projekte.
Verwendung
Der Roboflow 100 Datensatz ist sowohl auf GitHub als auch auf Roboflow Universe verfĂŒgbar.
Du kannst direkt ĂŒber das Roboflow 100 GitHub Repository darauf zugreifen. AuĂerdem hast du auf Roboflow Universe die Möglichkeit, einzelne DatensĂ€tze herunterzuladen, indem du einfach auf den Export-Button in jedem Datensatz klickst.
Beispieldaten und Anmerkungen
Roboflow 100 besteht aus DatensĂ€tzen mit verschiedenen Bildern und Videos, die aus verschiedenen Blickwinkeln und DomĂ€nen aufgenommen wurden. Hier ist ein Blick auf Beispiele fĂŒr kommentierte Bilder im RF100-Benchmark.
Die Vielfalt im Roboflow 100 Benchmark, die oben zu sehen ist, ist ein bedeutender Fortschritt gegenĂŒber den traditionellen Benchmarks, die sich oft auf die Optimierung einer einzigen Metrik innerhalb eines begrenzten Bereichs konzentrieren.
Zitate und Danksagungen
Wenn du den Roboflow 100-Datensatz in deiner Forschungs- oder Entwicklungsarbeit verwendest, zitiere bitte das folgende Dokument:
Unser Dank gilt dem Team von Roboflow und allen Mitwirkenden fĂŒr ihre harte Arbeit bei der Erstellung und Pflege des Roboflow 100 Datensatzes.
Wenn du an weiteren DatensÀtzen interessiert bist, um deine Projekte zur Objekterkennung und zum maschinellen Lernen zu verbessern, kannst du unsere umfangreiche Datensatzsammlung besuchen.
FAQ
Was ist der Roboflow 100-Datensatz und warum ist er fĂŒr die Objekterkennung wichtig?
Der Roboflow 100-Datensatz, entwickelt von Roboflow entwickelt und von Intel gesponsert wurde, ist ein wichtiger Benchmark fĂŒr die Objekterkennung. Er enthĂ€lt 100 verschiedene DatensĂ€tze aus ĂŒber 90.000 öffentlichen DatensĂ€tzen, die Bereiche wie das Gesundheitswesen, Luftbilder und Videospiele abdecken. Diese Vielfalt stellt sicher, dass sich die Modelle an verschiedene reale Szenarien anpassen können, was ihre Robustheit und Leistung erhöht.
Wie kann ich den Roboflow 100-Datensatz zum Benchmarking meiner Objekterkennungsmodelle verwenden?
Um den Roboflow 100-Datensatz fĂŒr das Benchmarking zu nutzen, kannst du die Klasse RF100Benchmark aus der Bibliothek Ultralytics implementieren. Hier ist ein kurzes Beispiel:
Benchmarking Beispiel
import os
import shutil
from pathlib import Path
from ultralytics.utils.benchmarks import RF100Benchmark
# Initialize RF100Benchmark and set API key
benchmark = RF100Benchmark()
benchmark.set_key(api_key="YOUR_ROBOFLOW_API_KEY")
# Parse dataset and define file paths
names, cfg_yamls = benchmark.parse_dataset()
val_log_file = Path("ultralytics-benchmarks") / "validation.txt"
eval_log_file = Path("ultralytics-benchmarks") / "evaluation.txt"
# Run benchmarks on each dataset in RF100
for ind, path in enumerate(cfg_yamls):
path = Path(path)
if path.exists():
# Fix YAML file and run training
benchmark.fix_yaml(str(path))
os.system(f"yolo detect train data={path} model=yolov8s.pt epochs=1 batch=16")
# Run validation and evaluate
os.system(f"yolo detect val data={path} model=runs/detect/train/weights/best.pt > {val_log_file} 2>&1")
benchmark.evaluate(str(path), str(val_log_file), str(eval_log_file), ind)
# Remove 'runs' directory
runs_dir = Path.cwd() / "runs"
shutil.rmtree(runs_dir)
else:
print("YAML file path does not exist")
continue
print("RF100 Benchmarking completed!")
Welche Bereiche deckt der Datensatz Roboflow 100 ab?
Der Datensatz Roboflow 100 umfasst sieben Bereiche, die jeweils einzigartige Herausforderungen und Anwendungen fĂŒr Modelle zur Objekterkennung bieten:
- Luftbild: 7 DatensÀtze, 9.683 Bilder, 24 Klassen
- Videospiele: 7 DatensÀtze, 11.579 Bilder, 88 Klassen
- Mikroskopisch: 11 DatensÀtze, 13.378 Bilder, 28 Klassen
- Unterwasser: 5 DatensÀtze, 18.003 Bilder, 39 Klassen
- Dokumente: 8 DatensÀtze, 24.813 Bilder, 90 Klassen
- Elektromagnetisch: 12 DatensÀtze, 36.381 Bilder, 41 Klassen
- Reale Welt: 50 DatensÀtze, 110.615 Bilder, 495 Klassen
Auf diese Weise lassen sich die Modelle in verschiedenen realen Anwendungen ausgiebig und vielfÀltig testen.
Wie kann ich auf den Datensatz Roboflow 100 zugreifen und ihn herunterladen?
Der Roboflow 100-Datensatz ist auf GitHub und Roboflow Universe zugĂ€nglich. Du kannst den gesamten Datensatz von GitHub herunterladen oder einzelne DatensĂ€tze auf Roboflow Universe ĂŒber den Export-Button auswĂ€hlen.
Was sollte ich angeben, wenn ich den Roboflow 100-Datensatz in meiner Forschung zitiere?
Wenn du den Roboflow 100-Datensatz in deiner Forschung verwendest, musst du darauf achten, dass du ihn richtig zitierst. Hier ist die empfohlene Zitierweise:
Weitere Details findest du in unserer umfassenden Datensammlung.