Veri Kümelerine Genel Bakış#
Ultralytics, algılama, instance segmentation, anlamsal segmentasyon, derinlik tahmini, poz tahmini, sınıflandırma ve çoklu nesne takibi gibi bilgisayarlı görü görevlerini kolaylaştırmak için çeşitli veri setlerini destekler. Aşağıda ana Ultralytics veri setlerinin bir listesi ve ardından her bir bilgisayarlı görü görevinin ve ilgili veri setlerinin bir özeti yer almaktadır.
Watch: Ultralytics Datasets Overview
Nesne Algılama#
Bounding box nesne tespiti, her nesnenin etrafına bir sınırlayıcı kutu çizerek bir görüntümdeki nesneleri tespit etmeyi ve konumlandırmayı içeren bir bilgisayarlı görü tekniğidir.
- African-wildlife: Mandalar, filler, gergedanlar ve zebralar dahil olmak üzere Afrika yaban hayatı görsellerini içeren bir veri seti.
- Argoverse: Zengin etiketlere sahip kentsel ortamlardan 3B izleme ve hareket tahmin verileri içeren bir veri seti.
- Brain-tumor: Tümör varlığı, konumu ve özellikleri hakkında ayrıntılar içeren MRI veya BT tarama görüntülerini barındıran beyin tümörü tespiti için bir veri seti.
- COCO: Bağlamdaki Yaygın Nesneler (COCO), 80 nesne kategorisine sahip büyük ölçekli bir nesne tespiti, segmentasyon ve altyazılama veri setidir.
- COCO8: Hızlı testler için uygun olan, COCO train ve COCO val setlerindeki ilk 4 görselden oluşan daha küçük bir alt küme.
- COCO8-Grayscale: RGB'nin gri tonlamalıya dönüştürülmesiyle oluşturulan ve tek kanallı model değerlendirmesi için yararlı olan bir COCO8 gri tonlamalı sürümü.
- COCO8-Multispectral: RGB dalga boylarının enterpolasyonu ile oluşturulan ve spektruma duyarlı model değerlendirmesi için yararlı olan 10 kanallı çok spektrumlu bir COCO8 sürümü.
- COCO128: Testler için uygun, COCO train2017'nin ilk 128 görüntüsünden oluşan daha küçük bir alt küme.
- Construction-PPE: Uyumluluk ve işçi koruması için yapay zeka modellerinin geliştirilmesini destekleyen; baret, yelek, eldiven, çizme ve koruyucu gözlük gibi temel güvenlik ekipmanlarıyla etiketlenmiş şantiye görsellerinden oluşan bir veri seti.
- Global Wheat 2020: Global Wheat Challenge 2020 için buğday başaklarının görsellerini içeren bir veri seti.
- HomeObjects-3K: Akıllı ev sistemlerinde, robotikte ve artırılmış gerçeklikte bilgisayarlı görü modelleri geliştirmek ve test etmek için ideal olan, 12 yaygın ev eşyasını içeren etiketli iç mekan sahneleri veri seti.
- KITTI Yeni: Çeşitli yol sahnelerinde 2D nesne tespiti için kullanılan; stereo, LiDAR ve GPS/IMU girdileri içeren tanınmış bir otonom sürüş veri seti.
- LVIS: 1203 nesne kategorisine sahip büyük ölçekli bir nesne tespiti, segmentasyon ve altyazı veri seti.
- Medical-pills: İlaç kalite kontrolü, sınıflandırma ve endüstri standartlarına uyumun sağlanması gibi görevlere yardımcı olmak için tasarlanmış etiketli tıbbi hap görüntüleri içeren bir veri seti.
- Objects365: 365 nesne kategorisi ve 600 binden fazla etiketli görsel ile nesne tespiti için yüksek kaliteli, büyük ölçekli bir veri seti.
- OpenImagesV7: Google tarafından sunulan; 1,7 milyon eğitim ve 42 bin doğrulama görüntüsü içeren kapsamlı bir veri seti.
- RF100: Kapsamlı model değerlendirmesi için yedi görüntü etki alanına yayılan 100 veri setine sahip çeşitli bir nesne tespiti kıyaslaması.
- Signature: Belge doğrulama ve sahtekarlık tespit araştırmalarını destekleyen, etiketli imzalara sahip çeşitli belgelerin görüntülerinden oluşan bir veri seti.
- SKU-110K: 11 binden fazla görüntü ve 1,7 milyon sınırlayıcı kutu ile perakende ortamlarında yoğun nesne tespiti içeren bir veri seti.
- VisDrone: 10 binden fazla görüntü ve video sekmesi ile drone ile çekilen görüntülerden elde edilen nesne tespiti ve çoklu nesne izleme verilerini içeren bir veri seti.
- VOC: 20 nesne sınıfı ve 11 binden fazla görüntüyle nesne tespiti ve segmentasyonu için Pascal Visual Object Classes (VOC) veri seti.
- xView: 60 nesne kategorisi ve 1 milyondan fazla etiketli nesne ile yüksekten çekilen görüntülerde nesne tespiti için bir veri seti.
Örnek Bölütleme#
Örnek bölütleme (instance segmentation), bir görüntüdeki nesneleri piksel düzeyinde tanımlamayı ve konumlandırmayı içeren bir bilgisayarlı görü tekniğidir. Her pikseli yalnızca sınıflandıran anlamsal segmentasyonun aksine, instance segmentation aynı sınıfın farklı örnekleri arasında ayrım yapar.
- Carparts-seg: Tasarım, üretim ve araştırma ihtiyaçlarını karşılayan, araç parçalarını belirlemek için özel olarak oluşturulmuş veri seti. Hem nesne tespiti hem de segmentasyon görevleri için hizmet verir.
- COCO: 200 binden fazla etiketli görüntüye sahip nesne tespiti, segmentasyon ve altyazı görevleri için tasarlanmış büyük ölçekli bir veri seti.
- COCO8-seg: Örnek bölütleme görevleri için daha küçük bir veri seti; segmentasyon açıklamalarına sahip 8 COCO görüntüsünün bir alt kümesini içerir.
- COCO128-seg: Örnek bölütleme görevleri için daha küçük bir veri seti; segmentasyon açıklamalarına sahip 128 COCO görüntüsünün bir alt kümesini içerir.
- Crack-seg: Hem nesne tespiti hem de segmentasyon görevleri için geçerli olan, yollardaki ve duvarlardaki çatlakları tespit etmek amacıyla özel olarak hazırlanmış veri seti.
- Package-seg: Depolarda veya endüstriyel ortamlarda paketleri tanımlamak için uyarlanmış, hem nesne tespiti hem de segmentasyon uygulamaları için uygun veri seti.
Anlamsal Bölütleme#
Anlamsal bölümleme, görüntüdeki her piksele bir sınıf etiketi atayarak; otonom sürüş, sahne ayrıştırma ve arazi örtüsü haritalama gibi uygulamalar için yoğun sahne haritaları üretir.
- Cityscapes: 19 eğitim sınıfına sahip kentsel sokak sahneleri semantic segmentation veri seti.
- Cityscapes8: Hızlı anlamsal segmentasyon işlem hattı kontrolleri için kompakt 8 görüntülük bir Cityscapes alt kümesi.
- ADE20K: 150 semantic sınıfa sahip sahne ayrıştırma (scene parsing) veri seti.
Derinlik Tahmini#
Monoküler derinlik tahmini, 3D sahne oluşturma, robot navigasyonu ve AR/VR uygulamalarını destekleyerek tek bir RGB görüntüsünden metre cinsinden piksel başına derinlik haritası tahmin eder.
- NYU Depth V2: Microsoft Kinect v1 ile yakalanan standart iç mekan derinlik kıyaslaması.
- KITTI: Velodyne LiDAR derinliğine sahip gerçek dünya dış mekan otonom sürüş sahneleri.
- Depth8: Hızlı işlem hattı kontrolleri için kompakt 8 görüntülük bir SUN RGB-D alt kümesi.
Poz Tahmini#
Poz tahmini, nesnenin kameraya veya dünya koordinat sistemine göre pozunu belirlemek için kullanılan bir tekniktir. Bu, nesneler (özellikle insanlar veya hayvanlar) üzerindeki anahtar noktaların veya eklemlerin tanımlanmasını içerir.
- COCO: Poz tahmini görevleri için tasarlanmış insan pozu açıklamalarına sahip büyük ölçekli bir veri seti.
- COCO8-pose: Poz tahmini görevleri için daha küçük bir veri seti; insan pozu açıklamalarına sahip 8 COCO görüntüsünün bir alt kümesini içerir.
- Dog-pose: Poz tahmini görevleri için uyarlanmış, köpek başına 24 anahtar nokta ile etiketlenmiş, köpekler üzerine odaklanan yaklaşık 8.500 görüntü içeren kapsamlı bir veri seti.
- Hand-Keypoints: Poz tahmini görevleri için tasarlanmış, el başına 21 anahtar nokta ile etiketlenmiş, insan ellerine odaklanan 26 binden fazla görüntü içeren kısa bir veri seti.
- Tiger-pose: Poz tahmini görevleri için kaplan başına 12 anahtar nokta ile etiketlenmiş, kaplanlara odaklanan 263 görüntüden oluşan kompakt bir veri seti.
Sınıflandırma#
Image classification, görsel içeriğine dayalı olarak bir görüntüyü önceden tanımlanmış bir veya daha fazla sınıfa veya kategoriye ayırmayı içeren bir bilgisayarlı görü görevidir.
- Caltech 101: Görüntü sınıflandırma görevleri için 101 nesne kategorisinin görüntülerinden oluşan bir veri seti.
- Caltech 256: 256 nesne kategorisine ve daha zorlu görüntülere sahip Caltech 101'in genişletilmiş bir sürümü.
- CIFAR-10: 10 sınıfta 60 bin adet 32x32 renkli görüntüden oluşan, sınıf başına 6 bin görüntü içeren bir veri seti.
- CIFAR-100: 100 nesne kategorisi ve sınıf başına 600 görüntü ile CIFAR-10'un genişletilmiş bir versiyonu.
- Fashion-MNIST: Görüntü sınıflandırma görevleri için 10 moda kategorisine ait 70.000 gri tonlamalı görüntüden oluşan bir veri seti.
- ImageNet: 14 milyondan fazla görüntü ve 20 bin kategori ile nesne tespiti ve görüntü sınıflandırma için büyük ölçekli bir veri seti.
- ImageNet-10: Daha hızlı deneme ve test için 10 kategoriye sahip daha küçük bir ImageNet alt kümesi.
- Imagenette: Daha hızlı eğitim ve test için kolayca ayırt edilebilir 10 sınıf içeren daha küçük bir ImageNet alt kümesi.
- Imagewoof: Görüntü sınıflandırma görevleri için 10 köpek ırkı kategorisi içeren daha zorlu bir ImageNet alt kümesi.
- MNIST: Görüntü sınıflandırma görevleri için el yazısı rakamlarının 70.000 gri tonlamalı görüntüsünden oluşan bir veri seti.
- MNIST160: Hem MNIST eğitim hem de test kümelerinden her rakamın (0-9) ilk 8 görüntüsü. Veri seti toplam 160 görüntü içerir.
Yönlendirilmiş Sınırlayıcı Kutular (OBB)#
Yönlendirilmiş Sınırlayıcı Kutular (OBB), bilgisayarlı göride genellikle hava ve uydu görüntülerine uygulanan; döndürülmüş sınırlayıcı kutular kullanarak görüntülerdeki açılı nesnelerin tespit edilmesi yöntemidir. Geleneksel sınırlayıcı kutuların aksine OBB, nesnelere farklı yönelimlerde daha iyi uyum sağlayabilir.
- DOTA-v2: 1,7 milyon örnek ve 11.268 görüntü içeren popüler bir OBB havadan görüntü veri seti.
- DOTA8: Hızlı testler için uygun olan, DOTAv1 bölme kümesindeki ilk 8 görüntünün (4'ü eğitim ve 4'ü doğrulama için) yer aldığı daha küçük bir alt küme.
- DOTA128: OBB modellerini test etmek için boyut ve çeşitlilik arasında iyi bir denge sağlayan, eğitim ve doğrulama için 128 görüntü içeren bir DOTA veri seti alt kümesi.
Multi-Object Tracking#
Çoklu nesne takibi, bir video sekansındaki birden fazla nesnenin zaman içinde tespit edilmesini ve takip edilmesini içeren bir bilgisayarlı görü tekniğidir. Bu görev, kareler boyunca nesnelerin tutarlı kimliklerini koruyarak nesne algılamayı genişletir.
- Argoverse: Çoklu nesne takibi görevleri için zengin açıklamalara sahip kentsel ortamlardan 3B takip ve hareket tahmini verileri içeren bir veri seti.
- VisDrone: 10 binden fazla görüntü ve video sekmesi ile drone ile çekilen görüntülerden elde edilen nesne tespiti ve çoklu nesne izleme verilerini içeren bir veri seti.
Yeni Veri Kümelerine Katkıda Bulunma#
Yeni bir veri kümesine katkıda bulunmak, mevcut altyapıyla uyumlu olduğundan emin olmak için çeşitli adımlar içerir. Gerekli adımlar şunlardır:
Watch: How to Contribute to Ultralytics Datasets
Yeni Bir Veri Kümesine Katkıda Bulunma Adımları#
-
Görselleri Topla: Veri kümesine ait görselleri topla. Bunlar, genel veritabanları veya kendi koleksiyonun gibi çeşitli kaynaklardan toplanabilir.
-
Görselleri Açıkla: Göreve bağlı olarak, bu görselleri sınırlayıcı kutular, bölümler veya anahtar noktalar ile açıkla.
-
Export Annotations: Bu açıklamaları, Ultralytics'in desteklediği YOLO
*.txtdosya formatına dönüştür. -
Organize Dataset: Veri setini doğru klasör yapısına göre düzenle. En üst düzey dizinler olarak
images/velabels/olmalı ve her birinin içinde birtrain/veval/alt dizini bulunmalıdır.dataset/ ├── images/ │ ├── train/ │ └── val/ └── labels/ ├── train/ └── val/ -
Create a
data.yamlFile: Veri setinin kök dizininde, veri setini, sınıfları ve diğer gerekli bilgileri açıklayan birdata.yamldosyası oluştur. -
Görselleri Optimize Et (İsteğe bağlı): Daha verimli işleme için veri kümesinin boyutunu küçültmek istersen, aşağıdaki kodu kullanarak görselleri optimize edebilirsin. Bu zorunlu değildir ancak daha küçük veri kümesi boyutları ve daha hızlı indirme hızları için önerilir.
-
Veri Kümesini Sıkıştır: Tüm veri kümesi klasörünü bir zip dosyası haline getir.
-
Document and PR: Veri setini ve mevcut çerçeveye nasıl uyduğunu açıklayan bir belgelendirme sayfası oluştur. Ardından bir Pull Request (PR) gönder. Bir PR'ın nasıl gönderileceği hakkında daha fazla ayrıntı için Ultralytics Contribution Guidelines sayfasına göz at.
Veri Kümesini Optimize Etmek ve Sıkıştırmak İçin Örnek Kod#
from pathlib import Path
from ultralytics.data.utils import compress_one_image
from ultralytics.utils.downloads import zip_directory
# Define dataset directory
path = Path("path/to/dataset")
# Optimize images in dataset (optional)
for f in path.rglob("*.jpg"):
compress_one_image(f)
# Zip dataset into 'path/to/dataset.zip'
zip_directory(path)Bu adımları izleyerek, Ultralytics'in mevcut yapısıyla iyi bir şekilde bütünleşen yeni bir veri kümesine katkıda bulunabilirsin.
SSS#
Ultralytics, aşağıdakiler dahil olmak üzere object detection için çok çeşitli veri setlerini destekler:
- COCO: 80 nesne kategorisine sahip büyük ölçekli bir nesne tespiti, segmentasyon ve altyazılama veri setidir.
- LVIS: Daha ayrıntılı nesne tespiti ve segmentasyonu için tasarlanmış, 1203 nesne kategorisine sahip kapsamlı bir veri seti.
- Argoverse: Zengin etiketlere sahip kentsel ortamlardan 3B izleme ve hareket tahmin verileri içeren bir veri seti.
- VisDrone: İnsansız hava araçlarıyla çekilen görüntülerden elde edilen nesne tespiti ve çoklu nesne takibi verilerini içeren bir veri seti.
- SKU-110K: 11 binden fazla görüntü ile perakende ortamlarında yoğun nesne tespiti içerir.
Bu veri setleri, çeşitli nesne tespiti uygulamaları için güçlü Ultralytics YOLO modellerinin eğitilmesini kolaylaştırır.
Yeni bir veri kümesine katkıda bulunmak çeşitli adımlar içerir:
- Görselleri Topla: Genel veritabanlarından veya kişisel koleksiyonlardan görselleri topla.
- Görselleri Açıkla: Göreve bağlı olarak sınırlayıcı kutular, bölümler veya anahtar noktalar uygula.
- Export Annotations: Açıklamaları YOLO
*.txtformatına dönüştür. - Organize Dataset: Her biri
images/velabels/alt dizinlerini içerentrain/veval/dizinleriyle klasör yapısını kullan. - Create a
data.yamlFile: Veri seti açıklamalarını, sınıfları ve diğer ilgili bilgileri dahil et. - Görselleri Optimize Et (İsteğe bağlı): Verimlilik için veri kümesi boyutunu küçült.
- Veri Kümesini Sıkıştır: Veri kümesini bir zip dosyası halinde sıkıştır.
- Document and PR: Veri setini açıkla ve Ultralytics Contribution Guidelines bağlantısını takip ederek bir Pull Request gönder.
Kapsamlı bir kılavuz için Contribute New Datasets adresini ziyaret et.
Ultralytics Platform, aşağıdakiler dahil olmak üzere veri seti yönetimi ve analizi için güçlü özellikler sunar:
- Sorunsuz Veri Kümesi Yönetimi: Veri kümelerini tek bir yerden yükle, düzenle ve yönet.
- Anında Eğitim Entegrasyonu: Yüklenen veri kümelerini ek bir kuruluma gerek kalmadan doğrudan model eğitimi için kullan.
- Görselleştirme Araçları: Veri kümesi görsellerini ve ek açıklamalarını keşfet ve görselleştir.
- Veri Kümesi Analizi: Veri kümesi dağılımın ve özelliklerin hakkında bilgiler edin.
Platform, veri seti yönetiminden model eğitimine geçişi kolaylaştırarak tüm süreci daha verimli hale getirir. Ultralytics Platform Datasets hakkında daha fazla bilgi edin.
Ultralytics YOLO modelleri, computer vision görevleri için çeşitli benzersiz özellikler sağlar:
- Gerçek Zamanlı Performans: Zamana duyarlı uygulamalar için yüksek hızlı çıkarım ve eğitim yetenekleri.
- Çok Yönlülük: Tek bir çerçeve içinde tespit, instance segmentation, anlamsal bölütleme, derinlik tahmini, sınıflandırma ve poz tahmini görevleri için destek.
- Önceden Eğitilmiş Modeller: Çeşitli uygulamalar için yüksek performanslı, önceden eğitilmiş modellere erişim sağlayarak eğitim süresini kısalt.
- Kapsamlı Topluluk Desteği: Sorun giderme ve geliştirme için aktif bir topluluk ve kapsamlı dokümantasyon.
- Kolay Entegrasyon: Mevcut projeler ve iş akışlarıyla entegrasyon için basit bir API.
Ultralytics Models sayfasından YOLO modelleri hakkında daha fazlasını keşfet.
Ultralytics araçlarını kullanarak bir veri kümesini optimize etmek ve ziplemek için şu örnek kodu izle:
Veri Kümesini Optimize Et ve Sıkıştırfrom pathlib import Path from ultralytics.data.utils import compress_one_image from ultralytics.utils.downloads import zip_directory # Define dataset directory path = Path("path/to/dataset") # Optimize images in dataset (optional) for f in path.rglob("*.jpg"): compress_one_image(f) # Zip dataset into 'path/to/dataset.zip' zip_directory(path)Bu işlem, daha verimli depolama ve daha hızlı indirme hızları için veri seti boyutunu küçültmeye yardımcı olur. Nasıl Optimize and Zip a Dataset yapılacağı hakkında daha fazla bilgi edin.