LabelMe Açıklamalarını YOLO ve Ultralytics Platform'a Aktarma#
LabelMe, açık kaynaklı bir Python uygulamasına sahip çevrimdışı bir görüntü açıklama aracıdır. Ultralytics Platform içinde yapılandırılacak canlı bir LabelMe bağlantısı veya API anahtarı yoktur. Eksiksiz entegrasyon yerel bir iş akışıdır: LabelMe'de açıklama ekle, LabelMe JSON açıklamalarını LabelMe Toolkit ile YOLO biçimine dönüştür ve ortaya çıkan ZIP dosyasını Platform veri kümesi olarak yükle.
1. LabelMe'de Görüntülere Açıklama Ekle#
LabelMe'yi masaüstü uygulamasını veya açık kaynaklı Python paketini kullanarak yükle, ardından görüntülerini içeren dizini aç. LabelMe, her görüntünün açıklamalarını eşleşen bir JSON dosyasına kaydeder.
Bu kılavuzdaki YOLO nesne algılama iş akışı için her nesnenin etrafına dikdörtgenler çiz ve bir sınıf adı ata. LabelMe başlangıç kılavuzu görüntüleri açmayı, şekiller çizmeyi ve açıklamaları kaydetmeyi ele alırken LabelMe veri kümesi kılavuzu, açıklamaları tamamlanmış bir veri kümesini incelemeyi ve hazırlamayı ele alır.
Kaynak dizinin görüntüleri ve LabelMe JSON dosyalarını içermelidir:
your_dataset/
├── image_001.jpg
├── image_001.json
├── image_002.jpg
└── image_002.json2. LabelMe Toolkit'i Yükle#
LabelMe Toolkit'i, LabelMe'nin toolkit yükleme kılavuzunu izleyerek yükle. Toolkit ve dışa aktarımları yerel olarak çalışır.
export-to-yolo, LabelMe Pro Toolkit'in bir parçasıdır ve yükleyicisini indirmek için LabelMe'de oturum açman gerekir. Bu, LabelMe'nin bir ürün gereksinimidir; ortaya çıkan ZIP dosyası herhangi bir Platform planına yüklenebilir.
Yüklemeyi doğrula, ardından kaynak veri kümesinde bulunan tüm etiketleri listele:
labelmetk --version
labelmetk list-labels your_dataset/Dışa aktarmadan önce çıktıyı incele. --class-names içinde yer almayan etiketler atlanır ve sağladığın sıra, YOLO sınıf kimliği sırası olur.
3. YOLO Biçimine Aktar#
export-to-yolo komutunu kaynak dizin ve virgülle ayrılmış bir sınıf adları listesiyle çalıştır:
labelmetk export-to-yolo your_dataset/ --class-names crack,normalcrack,normal değerini list-labels tarafından döndürülen etiketlerle değiştir. LabelMe sonucu your_dataset.export/ konumuna yazar:
your_dataset.export/
├── classes.txt
├── images/
│ ├── image_001.jpg
│ └── image_002.jpg
└── labels/
├── image_001.txt
└── image_002.txtclasses.txt, sınıf adlarını YOLO etiket dosyalarında kullanılan sırayla korur. Bunu dışa aktarımın kök dizininde tut.
LabelMe Toolkit, dikdörtgenleri YOLO sınırlayıcı kutularına aktarır. Ayrıca çokgenleri ve maskeleri eksenlere hizalı sınırlayıcı kutulara dönüştürür; bu nedenle export-to-yolo, segmentasyon geometrisini korumaz. Bu iş akışıyla bir nesne algılama veri kümesi hazırlarken dikdörtgenler çiz.
4. ZIP Arşivini Oluştur#
your_dataset.export/ dizininin çevresindeki dizini değil, içeriğini sıkıştır. macOS veya Linux'ta:
cd your_dataset.export
zip -r ../your_dataset.zip classes.txt images labelsWindows PowerShell'de:
Compress-Archive -Path .\your_dataset.export\* -DestinationPath .\your_dataset.zipYüklemeden önce ZIP dosyasını aç ve classes.txt, images/ ve labels/ öğelerinin kök dizininde olduğunu doğrula. Ek bir your_dataset.export/ sarmalayıcısı, Platform'un kök sınıf listesini bulmasını engeller.
5. Ultralytics Platform'a Yükle#
- Settings > Integrations > LabelMe sayfasını aç.
- Upload export düğmesine tıkla.
your_dataset.zipdosyasını yükle ve veri kümesini oluşturmayı tamamla.- İşlemenin tamamlanmasını bekle, ardından görüntüleri, sınıfları ve açıklamaları incele.
- Aynı çalışma alanından açıklamaları düzenle, bir model eğit ve modeli dağıt.

LabelMe ve YOLO dışa aktarımı tamamen çevrimdışı kalır. Yalnızca yükleme iletişim kutusunda seçtiğin ZIP dosyası Platform'a gönderilir.
Sorun Giderme#
- Sınıflar
class0,class1ve benzeri şekilde adlandırılmış:classes.txtdosyasının ZIP dosyasının kök dizininde bulunduğunu doğrula. - Bazı açıklamalar eksik:
labelmetk list-labels your_dataset/komutunu yeniden çalıştır ve--class-namesiçine gereken tüm etiketleri ekle. - Çokgenler kutulara dönüştü: Bu, LabelMe'nin
export-to-yoloaracının belgelenmiş davranışıdır; dikdörtgen olmayan şekilleri sınırlayıcı kutulara dönüştürür. - Veri kümesinde görüntü yok: Dışa aktarılan
images/dizininin ZIP dosyasına dahil edildiğini doğrula. - Platform sınıfları bulamıyor: Arşivdeki dış dizinleri kaldır; böylece
classes.txt,images/velabels/en üst düzey öğeler olur.
Eksiksiz yerel iş akışı için LabelMe'nin YOLO eğitim kılavuzuna ve export-to-yolo başvurusuna bak.
SSS#
Hayır. LabelMe ve dışa aktarım yerel olarak çalışır ve yalnızca yüklediğin ZIP dosyası Platform'a gönderilir.
export-to-yolokomutu, bir LabelMe gereksinimi olan LabelMe Pro Toolkit'in bir parçasıdır, ancak ortaya çıkan ZIP dosyası herhangi bir Platform planında yüklenebilir.Bu iş akışıyla hayır. LabelMe Toolkit, çokgenleri ve maskeleri eksene hizalanmış sınırlayıcı kutularına indirger, bu nedenle sonuç her zaman bir nesne tespiti veri seti olur. Bu dışa aktarım için veri hazırlarken dikdörtgenler çiz.
Platform, sınıf adlarını ZIP dosyasının kök dizinindeki
classes.txtkonumundan okur.classes.txt,images/velabels/en üst düzey girdiler olacak şekilde dışa aktarım klasörünün kendisini değil, içeriğini sıkıştır.Yalnızca listelediğin sırayla
--class-namesöğesine iletilen etiketler. Öncelabelmetk list-labelskomutunu çalıştır ve saklamak istediğin her etiketi dahil et.