Skip to content

Aperçu des ensembles de données

Ultralytics fournit un support pour divers ensembles de données afin de faciliter les tâches de vision par ordinateur telles que la détection, la segmentation des instances, l'estimation de la pose, la classification et le suivi de plusieurs objets. Vous trouverez ci-dessous une liste des principaux ensembles de données Ultralytics , suivie d'un résumé de chaque tâche de vision par ordinateur et des ensembles de données correspondants.



Regarder : Ultralytics Aperçu des ensembles de données

Ultralytics Explorateur

Note communautaire ⚠️

Depuis le ultralytics>=8.3.10La prise en charge de l'explorateur Ultralytics a été supprimée. Mais ne vous inquiétez pas ! Vous pouvez désormais accéder à des fonctionnalités similaires, voire améliorées, par l'intermédiaire de Ultralytics HUBHUB, notre plateforme intuitive sans code conçue pour rationaliser votre flux de travail. Avec Ultralytics HUB, vous pouvez continuer à explorer, visualiser et gérer vos données sans effort, le tout sans écrire une seule ligne de code. Ne manquez pas de le découvrir et de profiter de ses puissantes fonctionnalités!🚀

Créez des embeddings pour votre ensemble de données, recherchez des images similaires, exécutez des requêtes SQL, effectuez des recherches sémantiques et même des recherches en langage naturel ! Vous pouvez commencer avec notre application GUI ou créer votre propre application à l'aide de l'API. Pour en savoir plus , cliquez ici.

Ultralytics Capture d'Ă©cran de l'explorateur

DĂ©tection d'objets

La détection d'objets par boîte englobante est une technique de vision par ordinateur qui consiste à détecter et à localiser des objets dans une image en dessinant une boîte englobante autour de chaque objet.

  • Argoverse: Un ensemble de donnĂ©es contenant des donnĂ©es de suivi et de prĂ©vision de mouvement en 3D provenant d'environnements urbains et comportant de nombreuses annotations.
  • COCO: Common Objects in Context (COCO) est un ensemble de donnĂ©es Ă  grande Ă©chelle pour la dĂ©tection, la segmentation et le sous-titrage d'objets, comprenant 80 catĂ©gories d'objets.
  • LVIS: un ensemble de donnĂ©es Ă  grande Ă©chelle pour la dĂ©tection, la segmentation et le sous-titrage d'objets, comprenant 1203 catĂ©gories d'objets.
  • COCO8: un sous-ensemble plus petit des 4 premières images de COCO train et COCO val, adaptĂ© aux tests rapides.
  • COCO128: un sous-ensemble plus petit des 128 premières images de COCO train et COCO val, adaptĂ© aux tests.
  • Global Wheat 2020: Un ensemble de donnĂ©es contenant des images d'Ă©pis de blĂ© pour le Global Wheat Challenge 2020.
  • Objets365: Un ensemble de donnĂ©es Ă  grande Ă©chelle de haute qualitĂ© pour la dĂ©tection d'objets avec 365 catĂ©gories d'objets et plus de 600 000 images annotĂ©es.
  • OpenImagesV7: un ensemble de donnĂ©es complet de Google avec 1,7 million d'images d'entraĂ®nement et 42 000 images de validation.
  • SKU-110K: Un ensemble de donnĂ©es comprenant la dĂ©tection d'objets denses dans des environnements de vente au dĂ©tail avec plus de 11 000 images et 1,7 million de boĂ®tes de dĂ©limitation.
  • VisDrone: Un ensemble de donnĂ©es contenant des donnĂ©es de dĂ©tection d'objets et de suivi d'objets multiples Ă  partir d'images capturĂ©es par des drones, avec plus de 10 000 images et sĂ©quences vidĂ©o.
  • VOC: Le jeu de donnĂ©es Pascal Visual Object Classes (VOC) pour la dĂ©tection et la segmentation d'objets avec 20 classes d'objets et plus de 11 000 images.
  • xView: Un ensemble de donnĂ©es pour la dĂ©tection d'objets dans les images aĂ©riennes avec 60 catĂ©gories d'objets et plus d'un million d'objets annotĂ©s.
  • RF100: un benchmark de dĂ©tection d'objets divers avec 100 ensembles de donnĂ©es couvrant sept domaines d'imagerie pour une Ă©valuation complète des modèles.
  • Tumeur cĂ©rĂ©brale: Un ensemble de donnĂ©es pour la dĂ©tection des tumeurs cĂ©rĂ©brales comprend des images d'IRM ou de tomodensitomĂ©trie avec des dĂ©tails sur la prĂ©sence, l'emplacement et les caractĂ©ristiques de la tumeur.
  • Faune africaine: Un ensemble de donnĂ©es comprenant des images de la faune africaine, notamment de buffles, d'Ă©lĂ©phants, de rhinocĂ©ros et de zèbres.
  • Signature: Un ensemble de donnĂ©es comprenant des images de divers documents avec des signatures annotĂ©es, Ă  l'appui de la vĂ©rification des documents et de la recherche sur la dĂ©tection des fraudes.

Segmentation des instances

La segmentation des instances est une technique de vision par ordinateur qui consiste Ă  identifier et Ă  localiser des objets dans une image au niveau des pixels.

  • COCO: ensemble de donnĂ©es Ă  grande Ă©chelle conçu pour la dĂ©tection d'objets, la segmentation et les tâches de sous-titrage, avec plus de 200 000 images Ă©tiquetĂ©es.
  • COCO8-seg: un ensemble de donnĂ©es plus petit pour les tâches de segmentation d'instances, contenant un sous-ensemble de 8 images COCO avec des annotations de segmentation.
  • COCO128-seg: un ensemble de donnĂ©es plus petit pour les tâches de segmentation d'instances, contenant un sous-ensemble de 128 images COCO avec des annotations de segmentation.
  • Crack-seg: ensemble de donnĂ©es spĂ©cialement conçu pour dĂ©tecter les fissures sur les routes et les murs, applicable Ă  la fois Ă  la dĂ©tection d'objets et aux tâches de segmentation.
  • Package-seg: ensemble de donnĂ©es adaptĂ© Ă  l'identification de paquets dans des entrepĂ´ts ou des environnements industriels, convenant Ă  la fois Ă  la dĂ©tection d'objets et aux applications de segmentation.
  • Carparts-seg: ensemble de donnĂ©es conçu pour identifier les pièces de vĂ©hicules, rĂ©pondant aux besoins de la conception, de la fabrication et de la recherche. Il sert Ă  la fois Ă  la dĂ©tection d'objets et aux tâches de segmentation.

Estimation de la pose

L'estimation de la pose est une technique utilisée pour déterminer la pose de l'objet par rapport à la caméra ou au système de coordonnées du monde.

  • COCO: un ensemble de donnĂ©es Ă  grande Ă©chelle avec des annotations de pose humaine conçues pour des tâches d'estimation de la pose.
  • COCO8-pose: un ensemble de donnĂ©es plus petit pour les tâches d'estimation de la pose, contenant un sous-ensemble de 8 images COCO avec des annotations de pose humaine.
  • Tiger-pose: un ensemble de donnĂ©es compact composĂ© de 263 images de tigres, annotĂ©es avec 12 points clĂ©s par tigre pour les tâches d'estimation de la pose.
  • Hand-Keypoints: Un ensemble de donnĂ©es concises comprenant plus de 26 000 images centrĂ©es sur des mains humaines, annotĂ©es avec 21 points clĂ©s par main, conçues pour des tâches d'estimation de la pose.
  • Dog-pose: un ensemble de donnĂ©es complet comprenant environ 6 000 images de chiens, annotĂ©es avec 24 points clĂ©s par chien, adaptĂ©es aux tâches d'estimation de la pose.

Classification

La classification d'images est une tâche de vision par ordinateur qui consiste à classer une image dans une ou plusieurs classes ou catégories prédéfinies en fonction de son contenu visuel.

  • Caltech 101: un ensemble de donnĂ©es contenant des images de 101 catĂ©gories d'objets pour des tâches de classification d'images.
  • Caltech 256: Une version Ă©tendue de Caltech 101 avec 256 catĂ©gories d'objets et des images plus difficiles.
  • CIFAR-10: un ensemble de donnĂ©es de 60 000 images couleur 32x32 rĂ©parties en 10 classes, avec 6 000 images par classe.
  • CIFAR-100: Une version Ă©tendue de CIFAR-10 avec 100 catĂ©gories d'objets et 600 images par classe.
  • Fashion-MNIST: Un ensemble de donnĂ©es composĂ© de 70 000 images en niveaux de gris de 10 catĂ©gories de mode pour les tâches de classification d'images.
  • ImageNet: Un ensemble de donnĂ©es Ă  grande Ă©chelle pour la dĂ©tection d'objets et la classification d'images avec plus de 14 millions d'images et 20 000 catĂ©gories.
  • ImageNet-10: un sous-ensemble plus petit d'ImageNet avec 10 catĂ©gories pour une expĂ©rimentation et des tests plus rapides.
  • Imagenette: Un sous-ensemble plus petit d'ImageNet qui contient 10 classes faciles Ă  distinguer pour une formation et des tests plus rapides.
  • Imagewoof: Un sous-ensemble plus complexe d'ImageNet contenant 10 catĂ©gories de races de chiens pour les tâches de classification d'images.
  • MNIST: Un ensemble de donnĂ©es de 70 000 images en niveaux de gris de chiffres manuscrits pour les tâches de classification d'images.
  • MNIST160: Les 8 premières images de chaque catĂ©gorie MNIST de l'ensemble de donnĂ©es MNIST. L'ensemble de donnĂ©es contient 160 images au total.

Boîtes de délimitation orientées (OBB)

Les boîtes englobantes orientées (Oriented Bounding Boxes, OBB) sont une méthode de vision par ordinateur permettant de détecter des objets angulaires dans des images à l'aide de boîtes englobantes tournantes, souvent appliquée à l'imagerie aérienne et satellitaire.

  • DOTA-v2: Un ensemble de donnĂ©es populaires d'imagerie aĂ©rienne OBB avec 1,7 million d'instances et 11 268 images.
  • DOTA8: un sous-ensemble plus petit des 8 premières images de l'ensemble divisĂ© DOTAv1, 4 pour l'entraĂ®nement et 4 pour la validation, adaptĂ© aux tests rapides.

Suivi de plusieurs objets

Le suivi d'objets multiples est une technique de vision par ordinateur qui consiste à détecter et à suivre plusieurs objets au fil du temps dans une séquence vidéo.

  • Argoverse: Un ensemble de donnĂ©es contenant des donnĂ©es de suivi 3D et de prĂ©vision de mouvement provenant d'environnements urbains avec de riches annotations pour des tâches de suivi multi-objets.
  • VisDrone: Un ensemble de donnĂ©es contenant des donnĂ©es de dĂ©tection d'objets et de suivi d'objets multiples Ă  partir d'images capturĂ©es par des drones, avec plus de 10 000 images et sĂ©quences vidĂ©o.

Contribuer à de nouveaux ensembles de données

La contribution d'un nouveau jeu de données implique plusieurs étapes pour s'assurer qu'il s'aligne bien sur l'infrastructure existante. Voici les étapes nécessaires :

Étapes pour contribuer à un nouveau jeu de données

  1. Collecter les images: Rassemblez les images qui appartiennent à l'ensemble de données. Elles peuvent provenir de différentes sources, telles que des bases de données publiques ou votre propre collection.
  2. Annoter les images: Annotez ces images avec des boîtes de délimitation, des segments ou des points clés, en fonction de la tâche.
  3. Exporter des annotations: Convertir ces annotations dans le YOLO *.txt que Ultralytics prend en charge.
  4. Organiser l'ensemble des données: Organisez votre ensemble de données dans la structure de dossier correcte. Vous devez avoir train/ et val/ les répertoires de premier niveau et, dans chacun d'eux, un images/ et labels/ sous-répertoire.

    dataset/
    ├── train/
    │   ├── images/
    │   └── labels/
    └── val/
        ├── images/
        └── labels/
    
  5. Créer un data.yaml Fichier: Dans le répertoire racine de votre jeu de données, créez un fichier data.yaml qui décrit le jeu de données, les classes et d'autres informations nécessaires.

  6. Optimiser les images (facultatif): Si vous souhaitez réduire la taille de l'ensemble de données pour un traitement plus efficace, vous pouvez optimiser les images à l'aide du code ci-dessous. Cette opération n'est pas obligatoire, mais elle est recommandée pour réduire la taille des ensembles de données et accélérer les téléchargements.
  7. Zip Dataset: Compresser l'ensemble du dossier de l'ensemble des données dans un fichier zip.
  8. Documentation et relations publiques: Créez une page de documentation décrivant votre jeu de données et comment il s'intègre dans le cadre existant. Ensuite, soumettez une Pull Request (PR). Reportez-vous à Ultralytics Contribution Guidelines pour plus de détails sur la manière de soumettre une PR.

Exemple de code pour optimiser et zipper un ensemble de données

Optimiser et zipper un jeu de données

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)

En suivant ces étapes, vous pouvez contribuer à un nouveau jeu de données qui s'intègre bien à la structure existante de Ultralytics.

FAQ

Quels sont les ensembles de données pris en charge par Ultralytics pour la détection d'objets?

Ultralytics prend en charge une grande variété d'ensembles de données pour la détection d'objets, notamment :

  • COCO: ensemble de donnĂ©es Ă  grande Ă©chelle pour la dĂ©tection, la segmentation et le sous-titrage d'objets, comprenant 80 catĂ©gories d'objets.
  • LVIS: un vaste ensemble de donnĂ©es comprenant 1203 catĂ©gories d'objets, conçu pour une dĂ©tection et une segmentation plus fines des objets.
  • Argoverse: Un ensemble de donnĂ©es contenant des donnĂ©es de suivi et de prĂ©vision de mouvement en 3D provenant d'environnements urbains et comportant de nombreuses annotations.
  • VisDrone: Un ensemble de donnĂ©es contenant des donnĂ©es de dĂ©tection d'objets et de suivi d'objets multiples Ă  partir d'images capturĂ©es par des drones.
  • SKU-110K: DĂ©tection dense d'objets dans les environnements de vente au dĂ©tail avec plus de 11 000 images.

Ces ensembles de données facilitent la formation de modèles robustes pour diverses applications de détection d'objets.

Comment ajouter un nouveau jeu de données à Ultralytics?

La contribution d'un nouveau jeu de données comporte plusieurs étapes :

  1. Collecter des images: Rassembler des images à partir de bases de données publiques ou de collections personnelles.
  2. Annoter des images: Appliquer des cadres de délimitation, des segments ou des points clés, en fonction de la tâche à accomplir.
  3. Exporter des annotations: Convertir les annotations dans le YOLO *.txt format.
  4. Organiser l'ensemble des données: Utiliser la structure des dossiers avec train/ et val/ des répertoires, chacun contenant images/ et labels/ les sous-répertoires.
  5. Créer un data.yaml Fichier: Inclure les descriptions des jeux de données, les classes et d'autres informations pertinentes.
  6. Optimiser les images (optionnel): Réduire la taille de l'ensemble des données pour plus d'efficacité.
  7. Zip Dataset: Compresser le jeu de données dans un fichier zip.
  8. Document et PR: Décrivez votre jeu de données et soumettez une Pull Request en suivant les directives de contribution deUltralytics .

Un guide complet est disponible sur le site Contribuer à de nouveaux jeux de données.

Pourquoi devrais-je utiliser Ultralytics Explorer pour mon ensemble de données ?

Ultralytics Explorer offre de puissantes fonctionnalités pour l'analyse des ensembles de données, notamment

  • GĂ©nĂ©ration d'embeddings: CrĂ©er des encastrements vectoriels pour les images.
  • Recherche sĂ©mantique: Recherche d'images similaires Ă  l'aide d'incrustations ou d'IA.
  • RequĂŞtes SQL: ExĂ©cutez des requĂŞtes SQL avancĂ©es pour une analyse dĂ©taillĂ©e des donnĂ©es.
  • Recherche en langage naturel: La recherche s'effectue Ă  l'aide de requĂŞtes en langage clair pour une plus grande facilitĂ© d'utilisation.

Explorez le site Ultralytics Explorer pour plus d'informations et pour essayer la démonstration de l'interface graphique.

Quelles sont les caractéristiques uniques des modèles Ultralytics YOLO pour la vision par ordinateur?

Ultralytics YOLO présentent plusieurs caractéristiques uniques :

  • Performance en temps rĂ©el: InfĂ©rence et formation Ă  grande vitesse.
  • Polyvalence: Convient aux tâches de dĂ©tection, de segmentation, de classification et d'estimation de la pose.
  • Modèles prĂ©formĂ©s: Accès Ă  des modèles prĂ©formĂ©s très performants pour diverses applications.
  • Support communautaire Ă©tendu: CommunautĂ© active et documentation complète pour le dĂ©pannage et le dĂ©veloppement.

Pour en savoir plus sur YOLO , consultez la Ultralytics YOLO page.

Comment optimiser et zipper un jeu de données à l'aide des outils Ultralytics ?

Pour optimiser et zipper un jeu de données à l'aide des outils Ultralytics , suivez ce code d'exemple :

Optimiser et zipper un jeu de données

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)

En savoir plus sur la façon d'optimiser et de zipper un jeu de données.

📅C réé il y a 1 an ✏️ Mis à jour il y a 25 jours

Commentaires