YOLO Vision 2026:

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.json

2. 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.

Dışa aktarma için LabelMe Pro gereklidir

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,normal

crack,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.txt

classes.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.

Bu iş akışı bir nesne algılama veri kümesi oluşturur

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 labels

Windows PowerShell'de:

Compress-Archive -Path .\your_dataset.export\* -DestinationPath .\your_dataset.zip

Yü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#

  1. Settings > Integrations > LabelMe sayfasını aç.
  2. Upload export düğmesine tıkla.
  3. your_dataset.zip dosyasını yükle ve veri kümesini oluşturmayı tamamla.
  4. İşlemenin tamamlanmasını bekle, ardından görüntüleri, sınıfları ve açıklamaları incele.
  5. Aynı çalışma alanından açıklamaları düzenle, bir model eğit ve modeli dağıt.

Ultralytics Platform LabelMe Veri Kümesi İçe Aktarma

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, class1 ve benzeri şekilde adlandırılmış: classes.txt dosyası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-names içine gereken tüm etiketleri ekle.
  • Çokgenler kutulara dönüştü: Bu, LabelMe'nin export-to-yolo aracı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/ ve labels/ 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-yolo komutu, 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.txt konumundan okur. classes.txt, images/ ve labels/ 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. Önce labelmetk list-labels komutunu çalıştır ve saklamak istediğin her etiketi dahil et.

Katkıda Bulunanlar

Yorumlar