Roboflow Ensemble de données 100
Roboflow 100, développé par Roboflow et sponsorisé par Intel, est un test de référence révolutionnaire pour la détection d'objets. Il comprend 100 ensembles de données divers échantillonnés à partir de plus de 90 000 ensembles de données publiques. Ce benchmark est conçu pour tester l'adaptabilité des modèles à différents domaines, notamment les soins de santé, l'imagerie aérienne et les jeux vidéo.
Caractéristiques principales
- Comprend 100 ensembles de données dans sept domaines : Aérien, Jeux vidéo, Microscopique, Sous-marin, Documents, Électromagnétique et Monde réel.
- Le benchmark comprend 224 714 images réparties en 805 classes, grâce à plus de 11 170 heures d'efforts d'étiquetage.
- Toutes les images sont redimensionnées à 640x640 pixels, l'accent étant mis sur l'élimination de l'ambiguïté des classes et le filtrage des classes sous-représentées.
- Les annotations comprennent des boîtes de délimitation pour les objets, ce qui permet d'entraîner et d'évaluer les modèles de détection d'objets.
Structure de l'ensemble de données
L'ensemble de données Roboflow 100 est organisé en sept catégories, chacune comportant un ensemble distinct d'ensembles de données, d'images et de classes :
- Aérien: Il s'agit de 7 ensembles de données avec un total de 9 683 images, couvrant 24 classes distinctes.
- Jeux vidéo: Comprend 7 ensembles de données, comprenant 11 579 images réparties en 88 classes.
- Microscopique: Comprend 11 ensembles de données avec 13 378 images, couvrant 28 classes.
- Sous l'eau: Contient 5 ensembles de données, comprenant 18 003 images dans 39 classes.
- Documents: Il s'agit de 8 ensembles de données comprenant 24 813 images, réparties en 90 classes.
- Électromagnétique: Composé de 12 ensembles de données, totalisant 36 381 images dans 41 classes.
- Monde réel: La plus grande catégorie avec 50 ensembles de données, offrant 110 615 images dans 495 classes.
Cette structure permet de tester les modèles de détection d'objets sur un terrain varié et étendu, reflétant les scénarios d'application du monde réel.
Analyse comparative
L'étalonnage des ensembles de données évalue les performances des modèles d'apprentissage automatique sur des ensembles de données spécifiques à l'aide de mesures normalisées telles que l'exactitude, la précision moyenne et le score F1.
Analyse comparative
Les résultats de l'évaluation comparative seront stockés dans "ultralytics-benchmarks/evaluation.txt"
Exemple de benchmarking
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=yolo11s.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!")
Applications
Roboflow 100 est inestimable pour diverses applications liées à la vision par ordinateur et à l'apprentissage profond. Les chercheurs et les ingénieurs peuvent utiliser ce benchmark pour :
- Évaluer les performances des modèles de détection d'objets dans un contexte multi-domaine.
- Tester l'adaptabilité des modèles à des scénarios réels allant au-delà de la simple reconnaissance d'objets.
- Étudier les capacités des modèles de détection d'objets dans divers ensembles de données, notamment dans les domaines de la santé, de l'imagerie aérienne et des jeux vidéo.
Pour plus d'idées et d'inspiration sur les applications concrètes, n'oubliez pas de consulter nos guides sur les projets concrets.
Utilisation
L'ensemble de données Roboflow 100 est disponible sur GitHub et Roboflow Universe.
Vous pouvez y accéder directement à partir du dépôt GitHub Roboflow 100. En outre, sur Roboflow Universe, vous avez la possibilité de télécharger des ensembles de données individuels en cliquant simplement sur le bouton d'exportation dans chaque ensemble de données.
Exemples de données et d'annotations
Roboflow 100 se compose d'ensembles de données contenant diverses images et vidéos capturées sous différents angles et dans différents domaines. Voici quelques exemples d'images annotées dans le benchmark RF100.
La diversité du benchmark Roboflow 100 que l'on peut voir ci-dessus est une avancée significative par rapport aux benchmarks traditionnels qui se concentrent souvent sur l'optimisation d'une seule métrique dans un domaine limité.
Citations et remerciements
Si vous utilisez l'ensemble de données Roboflow 100 dans vos travaux de recherche ou de développement, veuillez citer l'article suivant :
Nous remercions l'équipe de Roboflow et tous les contributeurs pour leur travail acharné dans la création et le maintien de l'ensemble de données Roboflow 100.
Si vous souhaitez explorer d'autres ensembles de données pour améliorer vos projets de détection d'objets et d'apprentissage automatique, n'hésitez pas à consulter notre collection complète d'ensembles de données.
FAQ
Qu'est-ce que l'ensemble de données Roboflow 100 et pourquoi est-il important pour la détection d'objets ?
L'ensemble de données Roboflow 100, développé par Roboflow et sponsorisé par Intel, est une référence cruciale en matière de détection d'objets. Il comprend 100 ensembles de données divers parmi plus de 90 000 ensembles de données publiques, couvrant des domaines tels que les soins de santé, l'imagerie aérienne et les jeux vidéo. Cette diversité garantit que les modèles peuvent s'adapter à divers scénarios du monde réel, améliorant ainsi leur robustesse et leurs performances.
Comment puis-je utiliser l'ensemble de données Roboflow 100 pour évaluer mes modèles de détection d'objets ?
Pour utiliser l'ensemble de données Roboflow 100 à des fins d'analyse comparative, vous pouvez mettre en œuvre la classe RF100Benchmark de la bibliothèque Ultralytics . Voici un bref exemple :
Exemple de benchmarking
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=yolo11n.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!")
Quels sont les domaines couverts par l'ensemble de données Roboflow 100 ?
L'ensemble de données Roboflow 100 couvre sept domaines, chacun offrant des défis et des applications uniques pour les modèles de détection d'objets:
- Aérien: 7 ensembles de données, 9 683 images, 24 classes
- Jeux vidéo: 7 ensembles de données, 11 579 images, 88 classes
- Microscopique: 11 ensembles de données, 13 378 images, 28 classes
- Sous l'eau: 5 ensembles de données, 18 003 images, 39 classes
- Documents: 8 ensembles de données, 24 813 images, 90 classes
- Électromagnétique: 12 ensembles de données, 36 381 images, 41 classes
- Monde réel: 50 ensembles de données, 110 615 images, 495 classes
Cette configuration permet de tester les modèles de manière approfondie et variée dans le cadre de différentes applications du monde réel.
Comment puis-je accéder à l'ensemble de données Roboflow 100 et le télécharger ?
L'ensemble de données Roboflow 100 est accessible sur GitHub et Roboflow Universe. Vous pouvez télécharger l'ensemble du jeu de données sur GitHub ou sélectionner des jeux de données individuels sur Roboflow Universe à l'aide du bouton d'exportation.
Que dois-je inclure lorsque je cite l'ensemble de données Roboflow 100 dans ma recherche ?
Lorsque vous utilisez l'ensemble de données Roboflow 100 dans votre recherche, veillez à le citer correctement. Voici la citation recommandée :
Pour plus de détails, vous pouvez consulter notre collection complète d'ensembles de données.