Ultralytics YOLO Sıkça Sorulan Sorular (SSS)
Bu SSS bölümü, kullanıcıların Ultralytics YOLO depolarıyla çalışırken karşılaşabilecekleri yaygın soruları ve sorunları ele almaktadır.
SSS
Ultralytics nedir ve ne sunar?
Ultralytics is a computer vision AI company specializing in state-of-the-art object detection and image segmentation models, with a focus on the YOLO (You Only Look Once) family. Their offerings include:
- YOLO26 (en yeni) ve YOLO11 (önceki nesil) için açık kaynaklı uygulamalar
- Çeşitli bilgisayarlı görü görevleri için geniş bir önceden eğitilmiş model yelpazesi
- YOLO modellerinin projelere sorunsuz entegrasyonu için kapsamlı bir Python paketi
- Modelleri eğitmek, test etmek ve dağıtmak için çok yönlü araçlar
- Kapsamlı dokümantasyon ve destekleyici bir topluluk
Ultralytics paketini nasıl kurarım?
Ultralytics paketini kurmak pip kullanarak oldukça kolaydır:
pip install ultralyticsEn güncel geliştirme sürümü için doğrudan GitHub deposundan yükle:
pip install git+https://github.com/ultralytics/ultralytics.gitDetaylı kurulum talimatlarını başlangıç kılavuzunda bulabilirsin.
Ultralytics modellerini çalıştırmak için sistem gereksinimleri nelerdir?
Minimum gereksinimler:
- Python 3.8+
- PyTorch 1.8+
- CUDA uyumlu GPU (GPU hızlandırma için)
Önerilen kurulum:
- Python 3.8+
- PyTorch 1.10+
- CUDA 11.2+ sürümüne sahip NVIDIA GPU
- 8 GB+ RAM
- 50 GB+ boş disk alanı (veri seti depolama ve model eğitimi için)
Yaygın sorunları gidermek için YOLO Yaygın Sorunlar sayfasını ziyaret et.
Kendi veri setimde nasıl özel bir YOLO modeli eğitebilirim?
Özel bir YOLO modeli eğitmek için:
-
Veri setini YOLO formatında (görseller ve ilgili etiket txt dosyaları) hazırla.
-
Veri seti yapını ve sınıflarını tanımlayan bir YAML dosyası oluştur (bkz: veri seti YAML örneği).
-
Eğitimi başlatmak için şu Python kodunu kullan:
from ultralytics import YOLO # Load a model model = YOLO("yolo26n.yaml") # build a new model from scratch model = YOLO("yolo26n.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
Veri hazırlığı ve ileri düzey eğitim seçenekleri dahil daha derinlemesine bir kılavuz için kapsamlı eğitim kılavuzuna başvur.
Ultralytics'te hangi önceden eğitilmiş modeller mevcuttur?
Ultralytics, çeşitli görevler için geniş bir önceden eğitilmiş model yelpazesi sunar:
- Nesne Algılama: YOLO26n, YOLO26s, YOLO26m, YOLO26l, YOLO26x
- Örnek Segmentasyonu: YOLO26n-seg, YOLO26s-seg, YOLO26m-seg, YOLO26l-seg, YOLO26x-seg
- Sınıflandırma: YOLO26n-cls, YOLO26s-cls, YOLO26m-cls, YOLO26l-cls, YOLO26x-cls
- Poz Tahmini: YOLO26n-pose, YOLO26s-pose, YOLO26m-pose, YOLO26l-pose, YOLO26x-pose
- Yönelimli Algılama (OBB): YOLO26n-obb, YOLO26s-obb, YOLO26m-obb, YOLO26l-obb, YOLO26x-obb
Bu modeller boyut ve karmaşıklık açısından farklılık gösterir; hız ve doğruluk arasında farklı dengeler sunar. Projen için en uygun olanı bulmak üzere önceden eğitilmiş modellerin tamamını keşfet.
Eğitilmiş bir Ultralytics modeli ile nasıl çıkarım yaparım?
Eğitilmiş bir modelle çıkarım yapmak için:
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/your/model.pt")
# Perform inference
results = model("path/to/image.jpg")
# Process results
for r in results:
print(r.boxes) # print bbox predictions
print(r.masks) # print mask predictions
print(r.probs) # print class probabilitiesToplu işleme ve video çıkarımı dahil ileri düzey çıkarım seçenekleri için detaylı tahmin kılavuzuna göz at.
Ultralytics modelleri uç cihazlarda veya üretim ortamlarında dağıtılabilir mi?
Kesinlikle! Ultralytics modelleri çeşitli platformlarda çok yönlü dağıtım için tasarlanmıştır:
- Uç cihazlar: TensorRT, ONNX veya OpenVINO kullanarak NVIDIA Jetson veya Intel Neural Compute Stick gibi cihazlarda çıkarımı optimize et.
- Mobil: Modelleri TFLite veya CoreML'ye dönüştürerek Android veya iOS cihazlarda dağıt.
- Bulut: Ölçeklenebilir bulut dağıtımları için TensorFlow Serving veya PyTorch Serve gibi çerçevelerden yararlan.
- Web: ONNX.js veya TensorFlow.js kullanarak tarayıcı içi çıkarımı uygula.
Ultralytics, modelleri dağıtım için çeşitli formatlara dönüştürecek dışa aktarma işlevleri sağlar. Kullanım durumun için en iyi çözümü bulmak üzere geniş dağıtım seçeneklerini keşfet.
YOLO11 ve YOLO26 arasındaki fark nedir?
Temel farklar şunlardır:
- Uçtan Uca NMS-Free Çıkarım: YOLO26, yerel olarak uçtan uca çalışır; tahminleri non-maximum suppression (NMS) olmadan doğrudan üretir, gecikmeyi azaltır ve dağıtımı basitleştirir.
- DFL Kaldırma: YOLO26, Distribution Focal Loss modülünü kaldırarak dışa aktarımı basitleştirir ve uç cihazlar ile düşük güç tüketen cihazlarla uyumluluğu artırır.
- MuSGD Optimize Edici: Daha kararlı eğitim ve daha hızlı yakınsama için SGD ve Muon'un (Moonshot AI'nin Kimi K2'sinden esinlenilmiştir) bir hibritidir.
- CPU Performansı: YOLO26, %43'e kadar daha hızlı CPU çıkarımı sunarak GPU'su olmayan cihazlar için ideal hale gelir.
- Göreve Özel Optimizasyonlar: Anlamsal kayıp ve çok ölçekli protos ile geliştirilmiş segmentasyon, hassas poz tahmini için RLE ve açı kaybıyla iyileştirilmiş OBB kod çözme.
- Görevler: Her iki model de nesne algılama, örnek segmentasyonu, sınıflandırma, poz tahmini ve yönelimli nesne algılamayı (OBB) birleşik bir çerçevede destekler.
Özelliklerin ve performans metriklerinin derinlemesine karşılaştırması için YOLO26 dokümantasyon sayfasını ziyaret et.
Ultralytics açık kaynak projesine nasıl katkıda bulunabilirim?
Ultralytics'e katkıda bulunmak, projeyi geliştirmenin ve becerilerini genişletmenin harika bir yoludur. İşte dahil olabileceğin yollar:
- GitHub'daki Ultralytics deposunu forklayarak başla.
- Özelliğin veya hata düzeltmen için yeni bir dal oluştur.
- Değişikliklerini yap ve tüm testlerin geçtiğinden emin ol.
- Değişikliklerinin net bir açıklamasıyla bir çekme isteği (pull request) gönder.
- Kod inceleme sürecine katıl.
Ayrıca hataları bildirerek, özellikler önererek veya dokümantasyonu geliştirerek de katkıda bulunabilirsin. Detaylı yönergeler ve en iyi uygulamalar için katkı kılavuzuna başvur.
Python'da Ultralytics paketini nasıl kurarım?
Python'da Ultralytics paketini kurmak basittir. Terminalinde veya komut isteminde şu komutu çalıştırarak pip'i kullan:
pip install ultralyticsEn son geliştirme sürümü için doğrudan GitHub deposundan yükle:
pip install git+https://github.com/ultralytics/ultralytics.gitOrtama özel kurulum talimatları ve sorun giderme ipuçları için kapsamlı başlangıç kılavuzuna başvur.
Ultralytics YOLO'nun temel özellikleri nelerdir?
Ultralytics YOLO, ileri düzey bilgisayarlı görü görevleri için zengin özelliklere sahiptir:
- Gerçek Zamanlı Algılama: Gerçek zamanlı senaryolarda nesneleri verimli bir şekilde algıla ve sınıflandır.
- Çoklu Görev Yetenekleri: Tek bir çerçeveyle nesne algılama, örnek segmentasyonu, sınıflandırma ve poz tahmini işlemlerini gerçekleştir.
- Önceden Eğitilmiş Modeller: Farklı kullanım durumları için hız ve doğruluk dengesi sunan çeşitli önceden eğitilmiş modellere eriş.
- Özel Eğitim: Esnek eğitim hattı ile modelleri özel veri setlerinde kolayca ince ayarla.
- Geniş Dağıtım Seçenekleri: Farklı platformlarda dağıtım için modelleri TensorRT, ONNX ve CoreML gibi çeşitli formatlara aktar.
- Kapsamlı Dokümantasyon: Bilgisayarlı görü iş akışların için kapsamlı dokümantasyondan ve destekleyici bir topluluktan yararlan.
YOLO modelimin performansını nasıl artırabilirim?
YOLO modelinin performansını artırmak birkaç teknikle mümkündür:
- Hiperparametre Ayarı: Model performansını optimize etmek için Hiperparametre Ayarı Kılavuzunu kullanarak farklı hiperparametrelerle deney yap.
- Veri Artırma: Eğitim veri setini geliştirmek ve model genellemesini iyileştirmek için döndürme, ölçeklendirme ve renk ayarlamaları gibi teknikleri uygula.
- Transfer Öğrenme: Önceden eğitilmiş modellerden yararlan ve Eğitim kılavuzunu kullanarak bunları kendi veri setine göre ince ayarla.
- Verimli Formatlara Aktar: Dışa Aktarma kılavuzunu kullanarak daha hızlı çıkarım için modelini TensorRT veya ONNX gibi optimize edilmiş formatlara dönüştür.
- Kıyaslama: Çıkarım hızını ve doğruluğunu sistematik olarak ölçmek ve iyileştirmek için Kıyaslama Modunu kullan.
Ultralytics YOLO modellerini mobil ve uç cihazlarda dağıtabilir miyim?
Evet, Ultralytics YOLO modelleri mobil ve uç cihazlar dahil olmak üzere çok yönlü dağıtım için tasarlanmıştır:
- Mobil: Android veya iOS uygulamalarına sorunsuz entegrasyon için modelleri TFLite veya CoreML'ye dönüştür. Platforma özel talimatlar için TFLite Entegrasyon Kılavuzuna ve CoreML Entegrasyon Kılavuzuna başvur.
- Uç Cihazlar: TensorRT veya ONNX kullanarak NVIDIA Jetson veya diğer uç donanımlarda çıkarımı optimize et. Edge TPU Entegrasyon Kılavuzu, uç dağıtım için detaylı adımlar sağlar.
Çeşitli platformlardaki dağıtım stratejilerine dair kapsamlı bir genel bakış için dağıtım seçenekleri kılavuzuna bak.
Eğitilmiş bir Ultralytics YOLO modeli ile nasıl çıkarım yapabilirim?
Eğitilmiş bir Ultralytics YOLO modeli ile çıkarım yapmak oldukça basittir:
-
Modeli Yükle:
from ultralytics import YOLO model = YOLO("path/to/your/model.pt") -
Çıkarımı Çalıştır:
results = model("path/to/image.jpg") for r in results: print(r.boxes) # print bounding box predictions print(r.masks) # print mask predictions print(r.probs) # print class probabilities
Toplu işleme, video çıkarımı ve özel ön işleme dahil ileri düzey çıkarım teknikleri için detaylı tahmin kılavuzuna başvur.
Ultralytics kullanımıyla ilgili örnekleri ve eğitimleri nerede bulabilirim?
Ultralytics, başlamana ve araçlarında uzmanlaşmana yardımcı olacak çok sayıda kaynak sunar:
- 📚 Resmi dokümantasyon: Kapsamlı kılavuzlar, API referansları ve en iyi uygulamalar.
- 💻 GitHub deposu: Kaynak kodu, örnek betikler ve topluluk katkıları.
- ✍️ Ultralytics blogu: Derinlemesine makaleler, kullanım durumları ve teknik bilgiler.
- 💬 Topluluk forumları: Diğer kullanıcılarla bağlantı kur, soru sor ve deneyimlerini paylaş.
- 🎥 YouTube kanalı: Çeşitli Ultralytics konularında video eğitimleri, demolar ve web seminerleri.
Bu kaynaklar, Ultralytics modellerini kullanarak çeşitli görevler için kod örnekleri, gerçek dünya kullanım senaryoları ve adım adım rehberler sunar.
Daha fazla yardıma ihtiyacın olursa, Ultralytics belgelerine göz at veya GitHub Issues ya da resmi tartışma forumu üzerinden topluluğa ulaş.