İçeriğe geç

Roboflow 100 Veri Kümesi

Roboflow 100, tarafından geliştirilmiştir Roboflow Intel tarafından desteklenen ve çığır açan bir nesne algılama ölçütüdür. 90.000'den fazla halka açık veri kümesinden örneklenen 100 farklı veri kümesi içerir. Bu kıyaslama, modellerin sağlık hizmetleri, hava görüntüleri ve video oyunları gibi çeşitli alanlara uyarlanabilirliğini test etmek için tasarlanmıştır.

Roboflow 100 Genel Bakış

Temel Özellikler

  • Yedi alanda 100 veri kümesi içerir: Hava, Video oyunları, Mikroskobik, Sualtı, Belgeler, Elektromanyetik ve Gerçek Dünya.
  • Karşılaştırma ölçütü, 11.170 saatten fazla süren etiketleme çalışmaları sayesinde 805 sınıfta 224.714 görüntüden oluşmaktadır.
  • Tüm görüntüler, sınıf belirsizliğini ortadan kaldırmaya ve yetersiz temsil edilen sınıfları filtrelemeye odaklanılarak 640x640 piksele yeniden boyutlandırılmıştır.
  • Ek açıklamalar nesneler için sınırlayıcı kutular içerir, bu da onu nesne algılama modellerini eğitmek ve değerlendirmek için uygun hale getirir.

Veri Kümesi Yapısı

Roboflow 100 veri seti, her biri farklı veri setleri, görüntüler ve sınıflar içeren yedi kategori halinde düzenlenmiştir:

  • Hava: 24 farklı sınıfı kapsayan toplam 9.683 görüntü içeren 7 veri kümesinden oluşur.
  • Video Oyunları: 88 sınıfta 11.579 görüntü içeren 7 veri kümesi içerir.
  • Mikroskobik: 28 sınıfa yayılan 13.378 görüntü içeren 11 veri kümesinden oluşur.
  • Sualtı: 39 sınıfta 18.003 görüntüyü kapsayan 5 veri kümesi içerir.
  • Belgeler: 90 sınıfa ayrılmış 24.813 görüntü içeren 8 veri kümesinden oluşur.
  • Elektromanyetik: 41 sınıfta toplam 36.381 görüntü içeren 12 veri kümesinden oluşur.
  • Gerçek Dünya: 495 sınıfta 110.615 görüntü sunan 50 veri setiyle en büyük kategori.

Bu yapı, gerçek dünyadaki uygulama senaryolarını yansıtan nesne algılama modelleri için çeşitli ve kapsamlı bir test alanı sağlar.

Kıyaslama

Veri kümesi kıyaslaması, doğruluk, ortalama ortalama kesinlik ve F1 puanı gibi standartlaştırılmış ölçütleri kullanarak belirli veri kümeleri üzerindeki makine öğrenimi model performansını değerlendirir.

Kıyaslama

Kıyaslama sonuçları "ultralytics-benchmarks/evaluation.txt" adresinde saklanacaktır.

Kıyaslama örneği

from pathlib import Path
import shutil
import os
from ultralytics.utils.benchmarks import RF100Benchmark

# Initialize RF100Benchmark and set API key
benchmark = RF100Benchmark()
benchmark.set_key(api_key="YOUR_ROBOFLOW_API_KEY")

# Parse dataset and define file paths
names, cfg_yamls = benchmark.parse_dataset()
val_log_file = Path("ultralytics-benchmarks") / "validation.txt"
eval_log_file = Path("ultralytics-benchmarks") / "evaluation.txt"

# Run benchmarks on each dataset in RF100
for ind, path in enumerate(cfg_yamls):
    path = Path(path)
    if path.exists():
        # Fix YAML file and run training
        benchmark.fix_yaml(str(path))
        os.system(f'yolo detect train data={path} model=yolov8s.pt epochs=1 batch=16')

        # Run validation and evaluate
        os.system(f'yolo detect val data={path} model=runs/detect/train/weights/best.pt > {val_log_file} 2>&1')
        benchmark.evaluate(str(path), str(val_log_file), str(eval_log_file), ind)

        # Remove the 'runs' directory
        runs_dir = Path.cwd() / "runs"
        shutil.rmtree(runs_dir)
    else:
        print("YAML file path does not exist")
        continue

print("RF100 Benchmarking completed!")

Uygulamalar

Roboflow 100, bilgisayarla görme ve derin öğrenme ile ilgili çeşitli uygulamalar için çok değerlidir. Araştırmacılar ve mühendisler bu ölçütü şu amaçlarla kullanabilir:

  • Nesne algılama modellerinin performansını çok alanlı bir bağlamda değerlendirin.
  • Modellerin yaygın nesne tanımanın ötesinde gerçek dünya senaryolarına uyarlanabilirliğini test edin.
  • Sağlık hizmetleri, hava görüntüleri ve video oyunları da dahil olmak üzere çeşitli veri kümelerinde nesne algılama modellerinin yeteneklerini karşılaştırın.

Gerçek dünya uygulamaları hakkında daha fazla fikir ve ilham almak için gerçek dünya projelerine ilişkin kılavuzlarımıza göz atmayı unutmayın.

Kullanım

Roboflow 100 veri seti hem GitHub 'da hem de Roboflow Universe'de mevcuttur.

Buna doğrudan Roboflow 100 GitHub deposundan erişebilirsiniz. Buna ek olarak, Roboflow Universe adresinde, her bir veri kümesi içindeki dışa aktar düğmesine tıklayarak tek tek veri kümelerini indirme esnekliğine sahipsiniz.

Örnek Veriler ve Açıklamalar

Roboflow 100, çeşitli açılardan ve alanlardan çekilmiş çeşitli görüntü ve videolar içeren veri kümelerinden oluşur. İşte RF100 kıyaslamasındaki açıklamalı görüntü örneklerine bir göz atın.

Örnek Veriler ve Açıklamalar

Yukarıda görülebilen Roboflow 100 kıyaslamasındaki çeşitlilik, genellikle sınırlı bir alanda tek bir metriği optimize etmeye odaklanan geleneksel kıyaslamalardan önemli bir ilerlemedir.

Atıflar ve Teşekkür

Araştırma veya geliştirme çalışmalarınızda Roboflow 100 veri setini kullanıyorsanız, lütfen aşağıdaki makaleye atıfta bulunun:

@misc{2211.13523,
    Author = {Floriana Ciaglia and Francesco Saverio Zuppichini and Paul Guerrie and Mark McQuade and Jacob Solawetz},
    Title = {Roboflow 100: A Rich, Multi-Domain Object Detection Benchmark},
    Eprint = {arXiv:2211.13523},
}

Roboflow ekibine ve Roboflow 100 veri setinin oluşturulması ve sürdürülmesindeki yoğun çalışmaları için tüm katkıda bulunanlara teşekkür ederiz.

Nesne algılama ve makine öğrenimi projelerinizi geliştirmek için daha fazla veri kümesi keşfetmekle ilgileniyorsanız, kapsamlı veri kümesi koleksiyonumuzu ziyaret etmekten çekinmeyin.



Oluşturuldu 2024-02-07, Güncellendi 2024-04-29
Yazarlar: RizwanMunawar (2), glenn-jocher (1), abirami-vina (1)

Yorumlar