Meet YOLO26: next-gen vision AI.

Link to this sectionJeu de données Roboflow 100#

Roboflow 100, sponsorisé par Intel, est un jeu de données de référence révolutionnaire pour la détection d'objets. Il comprend 100 jeux de données variés. Ce benchmark est spécifiquement conçu pour tester l'adaptabilité des modèles de vision par ordinateur, comme les modèles Ultralytics YOLO, à divers domaines, notamment la santé, l'imagerie aérienne et les jeux vidéo.

Licences

Ultralytics propose deux options de licence pour répondre à différents cas d'utilisation :

  • Licence AGPL-3.0 : Cette licence open source approuvée par l'OSI est idéale pour les étudiants et les passionnés, favorisant la collaboration ouverte et le partage des connaissances. Consulte le fichier LICENSE pour plus de détails et visite notre page de licence AGPL-3.0.
  • Licence Entreprise : Pour une utilisation en développement et en production, cette licence permet une intégration transparente des logiciels et des modèles d'IA d'Ultralytics dans des produits et services commerciaux, y compris les outils internes, les flux de travail automatisés et les déploiements en production, en contournant les exigences open source de l'AGPL-3.0. Pour commencer, contacte-nous via Licences Ultralytics.

Roboflow 100 diverse object detection benchmark

Link to this sectionFonctionnalités clés#

  • Domaines diversifiés : Inclut 100 jeux de données répartis dans sept domaines distincts : Aérien, Jeux vidéo, Microscopique, Sous-marin, Documents, Électromagnétique et Monde réel.
  • Échelle : Le benchmark comprend 224 714 images réparties sur 805 classes, représentant plus de 11 170 heures d'effort d'étiquetage de données.
  • Standardisation : Toutes les images sont prétraitées et redimensionnées à 640x640 pixels pour une évaluation cohérente.
  • Évaluation propre : Se concentre sur l'élimination de l'ambiguïté des classes et filtre les classes sous-représentées pour garantir une évaluation de modèle plus propre.
  • Annotations : Comprend des boîtes englobantes pour les objets, adaptées à l'entraînement et à l'évaluation des modèles de détection d'objets en utilisant des métriques comme le mAP.

Link to this sectionStructure du jeu de données#

Le jeu de données Roboflow 100 est organisé en sept catégories, chacune contenant une collection unique de jeux de données, d'images et de classes :

  • Aérien : 7 jeux de données, 9 683 images, 24 classes.
  • Jeux vidéo : 7 jeux de données, 11 579 images, 88 classes.
  • Microscopique : 11 jeux de données, 13 378 images, 28 classes.
  • Sous-marin : 5 jeux de données, 18 003 images, 39 classes.
  • Documents : 8 jeux de données, 24 813 images, 90 classes.
  • Électromagnétique : 12 jeux de données, 36 381 images, 41 classes.
  • Monde réel : 50 jeux de données, 110 615 images, 495 classes.

Cette structure fournit un terrain d'essai vaste et diversifié pour les modèles de détection d'objets, reflétant un large éventail de scénarios d'application réels trouvés dans diverses solutions Ultralytics.

Link to this sectionÉvaluation des performances#

Le benchmarking de jeux de données implique l'évaluation des performances des modèles d'apprentissage automatique sur des jeux de données spécifiques en utilisant des métriques standardisées. Les métriques courantes incluent l'exactitude, la Précision Moyenne (mAP) et le score F1. Tu peux en apprendre davantage à ce sujet dans notre guide des métriques de performance YOLO.

Résultats du benchmarking

Chaque sortie est regroupée dans un seul répertoire runs/<task>/multitrain/ : chaque jeu de données est affiné dans son propre sous-répertoire (avec son propre results.png), et les métriques par jeu de données et moyennes sont écrites dans multitrain_results.json aux côtés d'un graphique à barres multitrain_results.png. L'appel model.train() renvoie également un dictionnaire {dataset: metrics} pour un accès programmatique.

Exemple de benchmarking

Le script ci-dessous télécharge les jeux de données Roboflow 100 listés dans datasets_links.txt depuis Roboflow, puis affine un modèle de base unique (par ex. YOLO26n) sur toute la collection en un seul appel model.train(). Passer une liste de jeux de données affine le modèle de base sur chacun d'eux en série et visualise automatiquement les résultats inter-jeux de données. Une clé API Roboflow gratuite est nécessaire pour télécharger les jeux de données.

import re
from pathlib import Path

from ultralytics import YOLO
from ultralytics.utils import ASSETS_URL, YAML
from ultralytics.utils.checks import check_requirements
from ultralytics.utils.downloads import safe_download

# Download the RF100 datasets from Roboflow (requires a free Roboflow API key)
check_requirements("roboflow")
from roboflow import Roboflow

rf = Roboflow(api_key="YOUR_ROBOFLOW_API_KEY")
safe_download(f"{ASSETS_URL}/datasets_links.txt")  # list of RF100 dataset links

datasets = []
for line in Path("datasets_links.txt").read_text().splitlines():
    try:
        _, _url, workspace, project, version = re.split("/+", line.strip())
        location = f"rf-100/{project}-{version}"
        rf.workspace(workspace).project(project).version(version).download("yolov8", location=location)
        yaml = Path(location) / "data.yaml"
        cfg = YAML.load(yaml)  # point train/val at the downloaded image folders
        cfg["train"], cfg["val"] = "train/images", "valid/images"
        YAML.save(yaml, cfg)
        datasets.append(str(yaml))
    except Exception:
        continue

# Fine-tune one base model across all RF100 datasets and visualize the cross-dataset results
model = YOLO("yolo26n.pt")
results = model.train(data=datasets, epochs=100, imgsz=640)  # {dataset: metrics}

# Per-dataset runs, multitrain_results.json (per-dataset + mean), and multitrain_results.png are saved
# together under runs/detect/multitrain. Read results in-memory or from the JSON for custom post-processing.
for dataset, metrics in results.items():
    if metrics:  # None if that dataset failed to train
        print(f"{dataset}: mAP50-95 = {metrics['metrics/mAP50-95(B)']:.4f}")

Link to this sectionApplications#

Roboflow 100 est inestimable pour diverses applications liées à la vision par ordinateur et à l'apprentissage profond. Les chercheurs et les ingénieurs peuvent tirer parti de ce benchmark pour :

Pour plus d'idées et d'inspiration sur les applications réelles, explore nos guides sur les projets pratiques ou consulte la plateforme Ultralytics pour un entraînement de modèle et un déploiement simplifiés.

Link to this sectionUtilisation#

Le jeu de données Roboflow 100, y compris les métadonnées et les liens de téléchargement, est disponible sur le dépôt GitHub officiel Roboflow 100. Tu peux accéder au jeu de données et l'utiliser directement à partir de là pour tes besoins de benchmarking. Une fois les jeux de données téléchargés et préparés comme indiqué ci-dessus, les modèles Ultralytics peuvent être affinés sur l'ensemble de la collection en un seul appel model.train() en passant la liste des YAML de jeux de données.

Link to this sectionExemples de données et d'annotations#

Roboflow 100 se compose de jeux de données avec des images diverses capturées sous différents angles et domaines. Tu trouveras ci-dessous des exemples d'images annotées incluses dans le benchmark RF100, présentant la variété des objets et des scènes. Des techniques comme l'augmentation de données peuvent encore améliorer la diversité pendant l'entraînement.

Roboflow 100 sample images with annotations

La diversité observée dans le benchmark Roboflow 100 représente une avancée significative par rapport aux benchmarks traditionnels, qui se concentrent souvent sur l'optimisation d'une seule métrique au sein d'un domaine limité. Cette approche complète aide à développer des modèles de vision par ordinateur plus robustes et polyvalents, capables de bien fonctionner à travers une multitude de scénarios différents.

Link to this sectionCitations et remerciements#

Si tu utilises le jeu de données Roboflow 100 dans tes travaux de recherche ou de développement, merci de citer l'article original :

Citation
@misc{rf100benchmark,
    Author = {Floriana Ciaglia and Francesco Saverio Zuppichini and Paul Guerrie and Mark McQuade and Jacob Solawetz},
    Title = {Roboflow 100: A Rich, Multi-Domain Object Detection Benchmark},
    Year = {2022},
    Eprint = {arXiv:2211.13523},
    url = {https://arxiv.org/abs/2211.13523}
}

Nous exprimons notre gratitude à l'équipe Roboflow et à tous les contributeurs pour leurs efforts significatifs dans la création et la maintenance du jeu de données Roboflow 100 en tant que ressource précieuse pour la communauté de la vision par ordinateur.

Si tu souhaites explorer davantage de jeux de données pour améliorer tes projets de détection d'objets et d'apprentissage automatique, n'hésite pas à visiter notre collection complète de jeux de données, qui inclut une variété d'autres jeux de données de détection.

Link to this sectionFAQ#

Link to this sectionQu'est-ce que le jeu de données Roboflow 100, et pourquoi est-il significatif pour la détection d'objets ?#

Le jeu de données Roboflow 100 est un benchmark pour les modèles de détection d'objets. Il comprend 100 jeux de données divers couvrant des domaines comme la santé, l'imagerie aérienne et les jeux vidéo. Sa signification réside dans le fait de fournir un moyen standardisé de tester l'adaptabilité et la robustesse des modèles à travers un large éventail de scénarios réels, allant au-delà des benchmarks traditionnels, souvent limités à un domaine.

Link to this sectionQuels domaines sont couverts par le jeu de données Roboflow 100 ?#

Le jeu de données Roboflow 100 couvre sept domaines divers, offrant des défis uniques pour les modèles de détection d'objets :

  1. Aérien : 7 jeux de données (par ex. imagerie satellite, vues par drone).
  2. Jeux vidéo : 7 jeux de données (par ex. objets provenant de divers environnements de jeu).
  3. Microscopique : 11 jeux de données (par ex. cellules, particules).
  4. Sous-marin : 5 jeux de données (par ex. vie marine, objets submergés).
  5. Documents : 8 jeux de données (par ex. régions de texte, éléments de formulaire).
  6. Électromagnétique : 12 jeux de données (par ex. signatures radar, visualisations de données spectrales).
  7. Monde réel : 50 jeux de données (une vaste catégorie incluant des objets du quotidien, des scènes, du commerce de détail, etc.).

Cette variété fait du RF100 une excellente ressource pour évaluer la généralisabilité des modèles de vision par ordinateur.

Link to this sectionQue dois-je inclure lorsque je cite le jeu de données Roboflow 100 dans mes recherches ?#

Lorsque tu utilises le jeu de données Roboflow 100, merci de citer l'article original pour attribuer le mérite aux créateurs. Voici la citation BibTeX recommandée :

Citation
@misc{rf100benchmark,
    Author = {Floriana Ciaglia and Francesco Saverio Zuppichini and Paul Guerrie and Mark McQuade and Jacob Solawetz},
    Title = {Roboflow 100: A Rich, Multi-Domain Object Detection Benchmark},
    Year = {2022},
    Eprint = {arXiv:2211.13523},
    url = {https://arxiv.org/abs/2211.13523}
}

Pour une exploration plus approfondie, pense à visiter notre collection complète de jeux de données ou à parcourir d'autres jeux de données de détection compatibles avec les modèles Ultralytics.

Commentaires