YOLOv8 vs YOLOv9: Nesne Algılama için Teknik Bir Karşılaştırma
Optimum bilgisayarla görme modelinin seçilmesi, yapay zeka projelerinin başarısını etkileyen, doğruluk, çıkarım hızı ve hesaplama verimliliği gereksinimlerini dengeleyen çok önemli bir karardır. Bu kapsamlı kılavuz, aşağıdakileri karşılaştırmaktadır Ultralytics YOLOv8'ye karşı çok yönlü ve üretime hazır bir model olan YOLOv9yeni gradyanlar aracılığıyla algılama doğruluğunu en üst düzeye çıkarmaya odaklanan bir mimari. Bilinçli bir seçim yapmanıza yardımcı olmak için mimari farklılıklarını, performans ölçümlerini ve ideal dağıtım senaryolarını analiz ediyoruz.
Ultralytics YOLOv8: Çok Yönlülük ve Kullanım Kolaylığı için Standart
Ultralytics tarafından başlatıldı, YOLOv8 sadece bir model olarak değil, pratik yapay zeka için eksiksiz bir çerçeve olarak tasarlanan YOLO serisinde büyük bir evrimi temsil ediyor. Sorunsuz bir kullanıcı deneyimine, donanım genelinde sağlam performansa ve basit algılamanın ötesinde çok çeşitli görme görevlerine destek vermeye öncelik verir.
- Yazarlar: Glenn Jocher, Ayush Chaurasia, Jing Qiu
- Organizasyon:Ultralytics
- Tarih: 2023-01-10
- GitHub:https://github.com/ultralytics/ultralytics
- Dokümanlar:https://docs.ultralytics.com/models/yolov8/
Mimari ve Ekosistem
YOLOv8 , çapasız bir algılama kafası ve hafif yürütmeyi korurken özellik entegrasyonunu geliştiren bir C2f (2 konvolüsyonlu Çapraz Aşamalı Kısmi) modülü sunar. Araştırma merkezli modellerin aksine, YOLOv8 dağıtım göz önünde bulundurularak oluşturulmuştur. Görüntü sınıflandırmasını, örnek segmentasyonunu, poz tahminini ve yönlendirilmiş sınırlayıcı kutu (OBB) tespitini yerel olarak destekler.
YOLOv8 'in gerçek gücü Ultralytics ekosisteminde yatmaktadır. Geliştiriciler birleşik bir Python API 'sinden ve CLI eğitim, doğrulama ve dağıtımı standartlaştırır. Bu "batarya dahil" yaklaşım, bilgisayarla görme uygulamalarının piyasaya sürülme süresini büyük ölçüde kısaltır.
Güçlü Yönler
- Eşsiz Çok Yönlülük: Algılama, segmentasyon, sınıflandırma ve poz tahminini tek bir kütüphanede gerçekleştirir.
- Dağıtıma Hazır: Aşağıdakiler için yerel dışa aktarma desteği ONNX, OpenVINO, TensorRTve CoreML uç cihazlara ve bulut sunucularına entegrasyonu kolaylaştırır.
- Bellek Verimliliği: Transformatör tabanlı mimarilere kıyasla eğitim sırasında daha düşük CUDA bellek kullanımı için optimize edilmiştir ve standart tüketici GPU'larında erişilebilir hale getirilmiştir.
- Hız-Doğruluk Dengesi: CPU ve uç donanımlarda rakiplerinden daha iyi performans gösteren olağanüstü gerçek zamanlı çıkarım hızları sunar.
- Aktif Destek: Büyük bir açık kaynak topluluğu ve Ultralytics'in sık güncellemeleri ile desteklenerek en yeni kütüphaneler ve donanımlarla uyumluluk sağlanır.
YOLOv8 hakkında daha fazla bilgi edinin
YOLOv9: Yüksek Doğruluk için Mimari Yenilik
YOLOv9 , derin öğrenmede "bilgi darboğazı" sorununu ele almaya odaklanarak piyasaya sürüldü. Öncelikle nesne algılama doğruluğunun üst sınırlarını hedefleyerek, derin katmanlardan geçerken veri bilgilerini korumayı amaçlayan teorik kavramları tanıtmaktadır.
- Yazarlar: Chien-Yao Wang, Hong-Yuan Mark Liao
- Organizasyon:Bilgi Bilimleri Enstitüsü, Academia Sinica, Tayvan
- Tarih: 2024-02-21
- Arxiv:https://arxiv.org/abs/2402.13616
- GitHub:https://github.com/WongKinYiu/yolov9
- Dokümanlar:https://docs.ultralytics.com/models/yolov9/
Temel Yenilikler
YOLOv9 'un mimarisi iki ana bileşene dayanmaktadır: Programlanabilir Gradyan Bilgisi (PGI ) ve Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN). PGI, derin ağlarda ileri besleme işlemi sırasında kritik girdi bilgilerinin kaybını önlemek için çalışır ve güncellemeler için güvenilir gradyanların oluşturulmasını sağlar. GELAN, parametre verimliliğini optimize etmek için tasarlanmıştır ve modelin saygın bir hesaplama ayak izi ile yüksek doğruluk elde etmesini sağlar.
Güçlü Yönler
- Yüksek Doğruluk: En büyük varyant olan YOLOv9, COCO veri setindemAP için etkileyici ölçütler belirler ve hassasiyetin çok önemli olduğu senaryolarda mükemmeldir.
- Parametre Verimliliği: GELAN sayesinde orta ölçekli YOLOv9 modelleri, bazı eski mimarilere göre daha az parametre ile rekabetçi doğruluk elde eder.
- Teorik İlerleme: Derin ağ eğitiminde bilginin korunmasına ilişkin temel sorunları ele alır.
Zayıflıklar
- Sınırlı Çok Yönlülük: Öncelikle nesne algılamaya odaklanmıştır. Yetenekli olsa da, çekirdek Ultralytics serisinde görülen segmentasyon, poz ve sınıflandırma için yerel, kolaylaştırılmış destekten yoksundur.
- Karmaşık Eğitim: PGI için yardımcı dalların devreye girmesi, eğitim sürecini YOLOv8 boru hattına kıyasla daha kaynak yoğun ve ayarlanması karmaşık hale getirebilir.
- Çıkarım Hızı: Verimli olsa da mimari karmaşıklık, YOLOv8'de kullanılan yüksek düzeyde optimize edilmiş bloklara kıyasla belirli donanımlarda daha yavaş çıkarım sürelerine yol açabilir.
YOLOv9 hakkında daha fazla bilgi edinin
Performans Kafa Kafaya
YOLOv8 ve YOLOv9'u karşılaştırırken, seçim genellikle dağıtım ortamınızın belirli kısıtlamalarına bağlıdır. YOLOv8 , çıkarım hızı ve dağıtım esnekliğinde baskınken, YOLOv9 algılama metriklerinin tavanını zorlar.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Veriler net bir ayrımı vurgulamaktadır: YOLOv8 , özellikle uç yapay zeka uygulamaları için kritik olan GPU TensorRT) ve CPU ONNX) üzerinde üstün hız sunuyor. Örneğin, YOLOv8n , T4 GPU'larda YOLOv9t'den önemli ölçüde daha hızlıdır (1,47 ms'ye karşı 2,3 ms). Buna karşılık, YOLOv9e en yüksek mAP 'ye (%55,6) ulaşarak, gecikmenin küçük ayrıntıları tespit etmekten daha az kritik olduğu sunucu tarafı işleme için uygun hale gelir.
Biliyor muydunuz?
Ultralytics YOLOv8 aşağıdakiler için yerel destek ile tasarlanmıştır hepsi başlıca bilgisayarla görme görevleri. Nesne algılamadan örnek segmentasyonu sadece model ağırlık dosyasını değiştirerek (örn, yolov8n.pt için yolov8n-seg.pt), standart YOLOv9 deposunda bulunmayan bir esneklik düzeyi.
İdeal Kullanım Senaryoları
Eğer Ultralytics YOLOv8 'i seçin:
- Üretime hazır bir çözüme ihtiyacınız var: Kapsamlı belgeler, topluluk desteği ve önceden oluşturulmuş entegrasyonlar ( MLFlow ve TensorBoard gibi) prototipten ürüne giden yolu kolaylaştırır.
- Hız çok önemlidir: Gerçek zamanlı video analizi, otonom navigasyon veya mobil uygulamalar için YOLOv8'in optimize edilmiş çıkarım hızı belirgin bir avantaj sağlar.
- Birden fazla görüntü görevine ihtiyacınız var: Algılamanın yanı sıra poz tahmini veya segmentasyon içeren projeler, YOLOv8'in birleşik çerçevesi tarafından en iyi şekilde sunulur.
- Kaynak kısıtlamaları mevcuttur: YOLOv8 modelleri çeşitli donanımlar için son derece optimize edilmiştir ve Raspberry Pis'ten NVIDIA Jetsons'a kadar çeşitli cihazlarda verimli çalışma sağlar.
Eğer YOLOv9 'u seçin:
- Maksimum doğruluk tek ölçüttür: mAP 'deki her bir yüzde kesrinin hız veya kullanılabilirlikten daha önemli olduğu akademik araştırmalar veya özel denetim görevleri için.
- Mimari üzerine araştırma yapıyorsunuz: PGI ve GELAN kavramları, derin ağlarda gradyan akışını inceleyen araştırmacılar için değerlidir.
Kod Uygulaması
Ultralytics ekosisteminin en büyük avantajlarından biri, her iki modeli de aynı basit API ile desteklemesidir. Bu, kendi özel veri kümelerinizde bunları kolayca karşılaştırmanıza olanak tanır.
YOLOv8 modelini sadece birkaç satır kodla nasıl eğitebileceğinizi aşağıda bulabilirsiniz:
from ultralytics import YOLO
# Load a YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model on your data
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
Ultralytics YOLOv9'u entegre ettiğinden, model dizesini şu şekilde değiştirebilirsiniz yolov9c.pt Yerel YOLOv8 modelleri genellikle dağıtım araçlarıyla daha sıkı entegrasyondan yararlansa da, aynı sağlam boru hattı içinde YOLOv9 'u denemek için.
Sonuç
Geliştiricilerin ve ticari uygulamaların büyük çoğunluğu için Ultralytics YOLOv8 önerilen seçim olmaya devam etmektedir. Üstün hız ve doğruluk dengesi, olgun, bakımlı bir ekosistemle birleştiğinde, projelerin geleceğe dönük olmasını ve bakımının daha kolay olmasını sağlar. Algılama, segmentasyon ve poz tahminini tek bir çerçeve içinde ele alma yeteneği benzersiz bir çok yönlülük sunar.
YOLOv9 heyecan verici mimari teoriler sunsa ve yüksek tepe doğruluğuna ulaşsa da, çıkarım gecikmesinin bir kısıtlama olmadığı belirli araştırma nişleri veya senaryoları için genellikle en iyi şekilde ayrılmıştır.
Bilgisayarlı görü teknolojisindeki en son yenilikleri arayanlar için YOLO11Bu da YOLOv8 tarafından belirlenen verimlilik ve performansı daha da geliştirmektedir. Ayrıca, transformatör tabanlı yaklaşımlarla ilgilenen araştırmacılar şunları keşfedebilirler RT-DETR farklı mimari ödünleşimler için.
Model karşılaştırma sayfamızda daha fazla karşılaştırma keşfedin.