Exporter les annotations LabelMe vers YOLO et Ultralytics Platform#
LabelMe est un outil d'annotation d'images hors ligne doté d'une application Python open source. Aucune connexion LabelMe active ni clé API n'est à configurer dans Ultralytics Platform. L'intégration complète repose sur un workflow local : annote dans LabelMe, convertis les annotations JSON LabelMe au format YOLO avec LabelMe Toolkit, puis importe le fichier ZIP obtenu comme jeu de données Platform.
1. Annote les images dans LabelMe#
Installe LabelMe à l'aide de l'application de bureau ou du package 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 workflow de détection YOLO présenté dans ce guide, dessine des rectangles autour de chaque objet et attribue-lui un nom de classe. Le guide de démarrage LabelMe explique comment ouvrir des images, dessiner des formes et enregistrer les annotations, tandis que le guide des jeux de données LabelMe explique comment vérifier et préparer un jeu de données annoté complet.
Ton répertoire source doit contenir les images et les fichiers JSON LabelMe :
your_dataset/
├── image_001.jpg
├── image_001.json
├── image_002.jpg
└── image_002.json2. Installe LabelMe Toolkit#
Installe LabelMe Toolkit en suivant le guide d'installation de la boîte à outils de LabelMe. La boîte à outils et ses exports s'exécutent en local.
export-to-yolo fait partie de LabelMe Pro Toolkit, et le téléchargement de son programme d'installation nécessite de se connecter à LabelMe.
Il s'agit d'une exigence du produit LabelMe ; le fichier ZIP obtenu peut être importé avec n'importe quel forfait Platform.
Vérifie l'installation, puis liste chaque étiquette trouvée dans le jeu de données source :
labelmetk --version
labelmetk list-labels your_dataset/Vérifie le résultat avant l'exportation. Les étiquettes absentes de --class-names sont ignorées, et l'ordre que tu fournis devient
l'ordre des ID de classe YOLO.
3. 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 conserve 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.
LabelMe Toolkit exporte les rectangles sous forme de BBox YOLO. Il réduit également les polygones et les masques à leurs
BBox alignées sur les axes ; export-to-yolo ne conserve donc 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 workflow.
4. Crée l'archive ZIP#
Compresse le contenu de your_dataset.export/, et non le répertoire qui le contient. Sous macOS ou Linux :
cd your_dataset.export
zip -r ../your_dataset.zip classes.txt images labelsDans Windows PowerShell :
Compress-Archive -Path .\your_dataset.export\* -DestinationPath .\your_dataset.zipOuvre le fichier ZIP avant de l'importer et vérifie que classes.txt, images/ et labels/ se trouvent à sa racine. Un répertoire
your_dataset.export/ supplémentaire empêche Platform de trouver la liste des classes à la racine.
5. Importe dans Ultralytics Platform#
- Ouvre Settings > Integrations > LabelMe.
- Clique sur Upload export.
- Importe
your_dataset.zipet termine la création du jeu de données. - Attends la fin du traitement, puis vérifie 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é à Platform.
Dépannage#
- Les classes sont nommées
class0,class1, etc. : vérifie queclasses.txtest présent à la racine du fichier ZIP. - Certaines annotations sont manquantes : exécute à nouveau
labelmetk list-labels your_dataset/et inclus chaque étiquette requise dans--class-names. - Les polygones sont devenus des boîtes : il s'agit du comportement documenté de
export-to-yolode LabelMe ; il convertit les formes qui ne sont pas des rectangles en BBox. - Le jeu de données ne contient aucune image : vérifie que le répertoire
images/exporté est inclus dans le fichier ZIP. - Platform ne trouve pas les classes : supprime tout répertoire externe de l'archive afin que
classes.txt,images/etlabels/soient les entrées de premier niveau.
Pour le workflow local complet, consulte le
guide d'entraînement YOLO de LabelMe ainsi que la
référence export-to-yolo.
FAQ#
Non. LabelMe et l'exportation s'exécutent localement, et seul le fichier ZIP que tu télécharges est envoyé à Platform. La commande
export-to-yolofait partie de la boîte à outils LabelMe Pro Toolkit, qui est une exigence de LabelMe, mais le fichier ZIP résultant se télécharge sur n'importe quel forfait Platform.Pas avec ce flux de travail. LabelMe Toolkit réduit les polygones et les masques à leurs boîtes englobantes alignées sur les axes, de sorte que le résultat est toujours un ensemble de données de détection. Dessine des rectangles lors de la préparation des données pour cette exportation.
Platform lit les noms de classe à partir de
classes.txtà la racine du fichier ZIP. Compresse le contenu du dossier d'exportation, et non le dossier lui-même, afin queclasses.txt,images/etlabels/soient les entrées de niveau supérieur.Seules les étiquettes transmises à
--class-names, dans l'ordre où tu les listes. Exécute d'abordlabelmetk list-labelset inclus chaque étiquette que tu souhaites conserver.