LabelMe-Annotationen in die Ultralytics Platform importieren#
LabelMe ist ein Offline-Tool zur Bildannotation mit einer Python-Anwendung mit offenem Quellcode. Es gibt keine Live-Verbindung zu LabelMe und keinen API-Schlüssel, den du in der Ultralytics Platform einrichten musst, und auch keinen Konvertierungsschritt: Die Platform liest die LabelMe-JSON-Dateien direkt. Annotiere in LabelMe, packe den Ordner als ZIP-Datei und lade ihn als Platform-Datensatz hoch.
1. Bilder in LabelMe annotieren#
Installiere LabelMe über die Desktop-App oder das Python-Paket mit offenem Quellcode und öffne dann das Verzeichnis mit deinen Bildern. Die LabelMe-Einführung erklärt, wie du Bilder öffnest, Formen zeichnest und Annotationen speicherst.
Zeichne Rechtecke für einen Erkennungsdatensatz oder Polygone für einen Segmentierungsdatensatz. LabelMe speichert die Annotationen jedes Bildes in einer JSON-Datei daneben:
your_dataset/
├── image_001.jpg
├── image_001.json
├── image_002.jpg
└── image_002.json2. ZIP-Archiv erstellen#
Komprimiere den Ordner mit seinen Bildern und JSON-Dateien. Unter macOS oder Linux:
zip -r your_dataset.zip your_datasetIn Windows PowerShell:
Compress-Archive -Path .\your_dataset -DestinationPath .\your_dataset.zipEin übergeordneter Ordner, verschachtelte Unterordner und getrennte Bild- und Annotationsordner funktionieren alle, solange imagePath jeder JSON-Datei auf ein Bild im ZIP-Archiv verweist. Die Platform liest diese Bilddatei und nicht die Kopie, die LabelMe als imageData in die JSON-Datei einbetten kann. Lass die Bilddateien also im Archiv. Bilder in Ordnern, deren Namen mit train, val oder test beginnen, behalten diese Aufteilung bei. LabelMe-JSON-Dateien werden nur gelesen, wenn das Archiv keine data.yaml- oder COCO-JSON-Datei enthält. Lass diese Dateien daher aus einem LabelMe-ZIP-Archiv weg.
3. Auf die Ultralytics Platform hochladen#
- Öffne Einstellungen > Integrationen > LabelMe.
- Klicke auf Export hochladen.
- Lade
your_dataset.ziphoch und schließe die Erstellung des Datensatzes ab. - Warte, bis die Verarbeitung abgeschlossen ist, und überprüfe dann die Bilder, Klassen und Annotationen.
- Bearbeite die Annotationen, trainiere ein Modell und stelle es bereit – alles im selben Arbeitsbereich.

LabelMe läuft vollständig offline. Nur die ZIP-Datei, die du im Upload-Dialog auswählst, wird an die Platform gesendet.
So werden LabelMe-Formen importiert#
| LabelMe-Form | Importiert als |
|---|---|
rectangle | Begrenzungsrahmen oder 4-Punkt-Polygon in einem Segmentierungsdatensatz |
polygon | Polygon |
oriented_rectangle | 4-Punkt-Polygon |
circle | 32-Punkt-Polygon |
mask | Polygon entlang der äußeren Kontur der Maske, wobei Löcher gefüllt werden |
line, linestrip, point, points | Übersprungen, da diese Formen keine Fläche haben, mit der trainiert werden kann |
- Aufgabe: Ein Datensatz, der ausschließlich mit Rechtecken annotiert ist, wird als Erkennungsdatensatz importiert. Jedes Polygon, jedes gedrehte Rechteck, jeder Kreis und jede Maske macht daraus einen Segmentierungsdatensatz; Rechtecke werden dabei in 4-Punkt-Polygone umgewandelt, damit keine Annotation verloren geht.
- Klassen: Die LabelMe-Bezeichnungen werden alphabetisch sortiert zu Klassennamen. Beim Import in einen vorhandenen Datensatz werden Bezeichnungen anhand ihres Namens den Klassen zugeordnet und alle übrigen hinzugefügt.
- Gruppierte Formen: Formen mit derselben Bezeichnung und Gruppen-ID bilden ein Objekt. Ihre Teile werden zu einem einzigen Polygon oder bei einem Erkennungsdatensatz zu einem einzigen Rahmen zusammengeführt.
- Übersprungen: Formen ohne Bezeichnung, Formen mit der Bezeichnung
__ignore__und bildbezogene Flags werden nicht importiert. Formen, die über den Bildrand hinausragen, werden darauf beschnitten.
Fehlerbehebung#
- Bilder ohne Annotationen importiert: Prüfe, ob sich die JSON-Dateien im ZIP-Archiv befinden und ob
imagePathjeder Datei ein Bild im Archiv angibt. Die Platform gleicht Bilder auch anhand des Dateinamens ab. Daher funktioniert ein veralteter absoluter Pfad weiterhin, wenn der Bilddateiname unverändert ist. - Polygone wurden zu 4-Punkt-Rahmen: Rechtecke werden in Segmentierungsdatensätzen in 4-Punkt-Polygone umgewandelt. Zeichne Polygone für Objekte, die eine genaue Kontur benötigen.
- Linien oder Punkte fehlen: Diese Formen haben keine Fläche und können daher nicht für Erkennung oder Segmentierung verwendet werden; sie werden übersprungen.
- Der Datensatz enthält keine Bilder: LabelMe kann Bilder in die JSON-Dateien einbetten, aber die Platform liest die Bilddateien. Füge die Bilder zum ZIP-Archiv hinzu.
Häufig gestellte Fragen#
Nein. LabelMe läuft lokal, die Platform liest die JSON-Dateien direkt und nur das ZIP-Archiv, das du hochlädst, wird an die Platform gesendet. Eine LabelMe-Pro-Mitgliedschaft oder ein Toolkit-Export ist nicht erforderlich.
Ja. Polygone, gedrehte Rechtecke, Kreise und Masken werden als Segmentierungspolygone importiert, und der Datensatz wird zu einem Segmentierungsdatensatz.
Die Klassennamen stammen aus den LabelMe-Bezeichnungen und werden alphabetisch sortiert. So werden dieselben Bezeichnungen immer denselben Klassen-IDs zugeordnet. Wenn du einem vorhandenen Datensatz etwas hinzufügst, werden die Bezeichnungen anhand ihres Namens den Klassen zugeordnet.
Ja. Ein
labelmetk export-to-yolo-Export wird als gewöhnlicher YOLO-Datensatz hochgeladen. Lass dieclasses.txt-Datei des Exports im ZIP-Archiv (die Platform liest die oberste Datei), damit deine Klassennamen übernommen werden.