Link to this sectionExporter des annotations LabelMe vers YOLO et Ultralytics Platform#
LabelMe est un outil d'annotation d'images hors ligne doté d'une application Python open-source. Il n'y a pas de connexion LabelMe en direct ni de clé API à configurer dans Ultralytics Platform. L'intégration complète repose sur un flux de travail local : annote les images dans LabelMe, convertis les annotations JSON de LabelMe au format YOLO à l'aide du LabelMe Toolkit et importe le fichier ZIP obtenu en tant que jeu de données sur la plateforme.
Link to this section1. Annote les images dans LabelMe#
Installe LabelMe en utilisant l'application de bureau ou le paquet Python open-source, puis ouvre le répertoire contenant tes images. LabelMe enregistre les annotations de chaque image dans un fichier JSON correspondant.
Pour le flux de travail de détection YOLO de ce guide, dessine des rectangles autour de chaque objet et attribue un nom de classe. Le guide de démarrage LabelMe explique comment ouvrir des images, dessiner des formes et enregistrer des annotations, tandis que le guide des jeux de données LabelMe couvre l'examen et la préparation d'un jeu de données annoté complet.
Ton répertoire source doit contenir les images et les fichiers JSON de LabelMe :
your_dataset/
├── image_001.jpg
├── image_001.json
├── image_002.jpg
└── image_002.jsonLink to this section2. Installe le LabelMe Toolkit#
Installe le LabelMe Toolkit en suivant le guide d'installation du kit d'outils de LabelMe. Le kit d'outils et ses exportations s'exécutent localement.
export-to-yolo fait partie du LabelMe Pro Toolkit, et le téléchargement de son programme d'installation nécessite une connexion à LabelMe. Il s'agit d'une exigence du produit LabelMe ; le fichier ZIP résultant peut être importé sur n'importe quel plan de la plateforme.
Vérifie l'installation, puis liste toutes les étiquettes trouvées dans le jeu de données source :
labelmetk --version
labelmetk list-labels your_dataset/Examine le résultat avant d'exporter. Les étiquettes omises de --class-names sont ignorées, et l'ordre que tu fournis devient l'ordre des ID de classe YOLO.
Link to this section3. Exporte au format YOLO#
Exécute export-to-yolo avec le répertoire source et une liste de noms de classes séparés par des virgules :
labelmetk export-to-yolo your_dataset/ --class-names crack,normalRemplace crack,normal par les étiquettes renvoyées par list-labels. LabelMe écrit le résultat dans your_dataset.export/ :
your_dataset.export/
├── classes.txt
├── images/
│ ├── image_001.jpg
│ └── image_002.jpg
└── labels/
├── image_001.txt
└── image_002.txtclasses.txt préserve les noms de classes dans le même ordre que celui utilisé par les fichiers d'étiquettes YOLO. Conserve-le à la racine de l'exportation.
Le LabelMe Toolkit exporte les rectangles sous forme de boîtes englobantes YOLO. Il réduit également les polygones et les masques à leurs boîtes englobantes alignées sur les axes, de sorte que export-to-yolo ne préserve pas la géométrie de segmentation. Dessine des rectangles lors de la préparation d'un jeu de données de détection avec ce flux de travail.
Link to this section4. Crée l'archive ZIP#
Compresse le contenu de your_dataset.export/, et non le répertoire qui l'entoure. Sur macOS ou Linux :
cd your_dataset.export
zip -r ../your_dataset.zip classes.txt images labelsSur Windows PowerShell :
Compress-Archive -Path .\your_dataset.export\* -DestinationPath .\your_dataset.zipOuvre le fichier ZIP avant de l'importer et confirme que classes.txt, images/ et labels/ se trouvent à sa racine. Un conteneur your_dataset.export/ supplémentaire empêche la plateforme de trouver la liste des classes racine.
Link to this section5. Importe sur Ultralytics Platform#
- Ouvre Settings > Integrations > LabelMe.
- Clique sur Upload export.
- Importe
your_dataset.zipet termine la création du jeu de données. - Attends que le traitement soit terminé, puis examine les images, les classes et les annotations.
- Modifie les annotations, entraîne un modèle et déploie-le depuis le même espace de travail.
LabelMe et l'exportation YOLO restent entièrement hors ligne. Seul le fichier ZIP que tu sélectionnes dans la boîte de dialogue d'importation est envoyé à la plateforme.
Link to this sectionDépannage#
- Les classes sont nommées
class0,class1, etc. : confirme queclasses.txtest présent à la racine du fichier ZIP. - Certaines annotations manquent : exécute à nouveau
labelmetk list-labels your_dataset/et inclus toutes les étiquettes requises dans--class-names. - Les polygones sont devenus des boîtes : c'est le comportement documenté de
export-to-yolode LabelMe ; il convertit les formes non rectangulaires en boîtes englobantes. - Le jeu de données ne contient aucune image : confirme que le répertoire exporté
images/est inclus dans le fichier ZIP. - La plateforme ne trouve pas les classes : supprime tout répertoire externe de l'archive afin que
classes.txt,images/etlabels/soient les entrées de niveau supérieur.
Pour connaître le flux de travail local complet, consulte le guide d'entraînement YOLO et la référence export-to-yolo de LabelMe.