YOLOv9 YOLO10: Nesne Algılama Evrimine Teknik Bir Derinlemesine Bakış
Gerçek zamanlı nesne algılama alanı hızla gelişmiştir ve 2024 yılında iki önemli mimari piyasaya sürülmüştür: YOLOv9 ve YOLOv10. Her iki model de doğruluk ve verimlilik sınırlarını zorlamayı amaçlasa da, bunu temelde farklı mimari felsefelerle başarmaktadır. YOLOv9 , ağın derinliklerinde bilgi tutma kapasitesini en üst düzeye çıkarmaya YOLOv9 , YOLOv10 , Non-Maximum Suppression (NMS) ihtiyacını ortadan kaldırarak dağıtım sürecinde YOLOv10 .
Bu kılavuz, araştırmacıların ve mühendislerin belirli bilgisayar görme uygulamaları için doğru aracı seçmelerine yardımcı olmak amacıyla kapsamlı bir teknik karşılaştırma sunmaktadır.
YOLOv9: Programlanabilir Gradyan Bilgisi
Chien-Yao Wang ve Hong-Yuan Mark Liao (YOLOv4 ve YOLOv7 arkasındaki ekip) tarafından Şubat 2024'te piyasaya sürülen YOLOv9 , derin sinir ağlarında var olan "bilgi darboğazı" sorununu YOLOv9 . Veriler ardışık katmanlardan geçerken, girdi verileri sıklıkla kaybolur ve bu da modelin belirli özellikleri öğrenme yeteneğini bozar.
Bununla mücadele etmek için YOLOv9 , PGI (Programlanabilir Gradyan Bilgisi) ve GELAN (Genelleştirilmiş Verimli Katman Toplama Ağı) mimarisini YOLOv9 . PGI, ana dalın eğitim sırasında kritik bilgileri muhafaza etmesini sağlayan yardımcı bir denetim dalı sağlarken, GELAN daha iyi gradyan yolu planlaması için parametre kullanımını optimize eder.
YOLOv9 hakkında daha fazla bilgi edinin.
- Yazarlar: Chien-Yao Wang, Hong-Yuan Mark Liao
- Kuruluş: Institute of Information Science, Academia Sinica, Taiwan
- Tarih: 2024-02-21
- Arxiv:YOLOv9: Programlanabilir Gradyan Bilgisi Kullanarak Ne Öğrenmek İstediğinizi Öğrenme
- GitHub:WongKinYiu/yolov9
YOLOv10: Gerçek Zamanlı Uçtan Uca Algılama
Tsinghua Üniversitesi araştırmacıları tarafından 2024 yılının Mayıs ayında kısa süre sonra piyasaya sürülen YOLOv10 , YOLO önemli bir değişime YOLOv10 . Tarihsel olarak, YOLO çakışan sınırlayıcı kutuları filtrelemek için NMS dayanıyordu. YOLOv10 , eğitim sırasında tutarlı bir çift atama stratejisi YOLOv10 : zengin denetim için bire çok atama ve çıkarım için bire bir atama kullanarak modelin doğal olarak NMS hale gelmesini sağlıyor.
Bu mimari değişiklik, çıkarım gecikmesini azaltır ve dağıtım süreçlerini basitleştirir, bu da CPU çok değerli olduğu uç bilgi işlem için özellikle cazip hale getirir.
YOLOv10 hakkında daha fazla bilgi edinin.
- Yazarlar: Ao Wang, Hui Chen, Lihao Liu, ve diğerleri.
- Kuruluş: Tsinghua University
- Tarih: 2024-05-23
- Arxiv:YOLOv10: Gerçek Zamanlı Uçtan Uca Nesne Tespiti
- GitHub:THU-MIG/yolov10
Performans Karşılaştırması
Bu iki mimariyi karşılaştırırken, ham algılama yeteneği (mAP) ile çıkarım verimliliği (gecikme süresi ve FLOP) arasındaki dengeleri inceliyoruz.
Metrik Analizi
Aşağıdaki tablo, COCO indeki performans ölçütlerini göstermektedir. YOLOv9e karmaşık görevlerde üstün doğruluk sergilerken, YOLOv10 NMS kaldırılması nedeniyle genellikle daha düşük gecikme süresi sunar.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
Temel Çıkarımlar
- Gecikme süresi ve doğruluk: YOLOv10n, YOLOv9t'den (38,3%) daha yüksek bir mAP 39,5%) elde ederken, GPU önemli ölçüde daha hızlı çalışır (1,56 ms'ye karşı 2,3 ms). Bu, v10 mimarisini küçük ölçekli dağıtımlar için oldukça verimli hale getirir.
- En üst düzey hassasiyet: Her yüzde bir doğruluk oranının önemli olduğu araştırma senaryolarında, YOLOv9e, Programlanabilir Gradyan Bilgisini kullanarak diğer modellerin gözden kaçırabileceği ince özellikleri ortaya çıkararak %55,6 mAP ile güçlü performansını sürdürüyor.
- Verimlilik: YOLOv10 , FLOP verimliliğinde YOLOv10 . YOLOv10s, YOLOv9s'un 26,4G'sine kıyasla yalnızca 21,6G FLOPs gerektirir, bu da pille çalışan cihazlarda daha düşük güç tüketimi anlamına gelir.
Donanım Hususları
CPU'lara ( Intel işlemciler gibi) veya özel kenar donanımlarına (Raspberry Pi, Jetson) dağıtım yapıyorsanız, YOLOv10 NMS tasarımı, son işlem adımlarının belirsiz işlem süresini ortadan kaldırdığı için genellikle daha sorunsuz bir iş akışı sağlar.
Eğitim ve Ekosistem
Ultralytics kullanmanın en büyük avantajlarından biri, birleşik ekosistemdir. YOLOv9 YOLOv10 seçerseniz seçin, eğitim, doğrulama ve dışa aktarma iş akışları aynı kalır. Bu tutarlılık, geliştiriciler için öğrenme eğrisini önemli ölçüde azaltır.
Ultralytics'in Avantajı
- Kullanım Kolaylığı: Basit bir Python , tek bir dizeyi değiştirerek mimarileri değiştirmenize olanak tanır (örneğin,
yolov9c.ptiçinyolov10m.pt). - İyi Yönetilen Ekosistem: Ultralytics, sık güncellemeler sağlayarak en son PyTorch sürümleri ve CUDA sürücüleri ile uyumluluğu garanti eder.
- Bellek Gereksinimleri: Bellek şişkinliği sorunu yaşayan birçok transformatör tabanlı modelin aksine, Ultralytics GPU verimliliği için optimize edilmiştir. Bu, tüketici sınıfı donanımlarda daha büyük toplu iş boyutlarına olanak tanır.
Eğitim Örneği
Her iki modeli de özel bir veri seti üzerinde eğitmek oldukça basittir. Çerçeve, veri artırma, önbellekleme ve metrik günlüğü işlemlerini otomatik olarak gerçekleştirir.
from ultralytics import YOLO
# Load a model (Swap "yolov10n.pt" for "yolov9c.pt" to switch architectures)
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
model.val()
# Export to ONNX for deployment
model.export(format="onnx")
İdeal Kullanım Senaryoları
YOLOv9 Ne Zaman Tercih Edilmeli?
YOLOv9 yüksek özellik doğruluğu gerektiren senaryolar için tercih YOLOv9 . GELAN mimarisi bilgi kaybına karşı dayanıklıdır ve aşağıdakiler için idealdir:
- Tıbbi Görüntüleme: Bir özelliğin eksikliğinin kritik olduğu durumlarda küçük tümörleri veya anomalileri tespit etme. Sağlık hizmetlerinde yapay zeka hakkındaki kılavuzumuza bakın.
- Küçük Nesne Algılama: Nesnelerin çok az piksel kapladığı hava görüntüleri veya uzaktan gözetleme senaryoları.
- Araştırma Temelleri: 2024 yılının başlarında en son teknoloji mimarilerle karşılaştırma yaparken.
YOLOv10 Ne Zaman Tercih Edilmeli?
YOLOv10 , hız ve dağıtım kolaylığı için YOLOv10 . NMS 'nin kaldırılması, onu aşağıdakiler için güçlü bir rakip NMS :
- Kenar Bilişim: Raspberry Pi veya cep telefonları gibi, sonradan işleme sırasında CPU darboğazlara neden olduğu cihazlarda çalışır.
- Gerçek Zamanlı Robotik: Otonom navigasyon gibi tutarlı, düşük gecikmeli geri bildirim döngüleri gerektiren uygulamalar.
- Karmaşık Boru Hatları: Dedektörün çıktısının izleme algoritmalarına beslendiği sistemler; NMS çıktı, aşağı akış görevleri için mantığı basitleştirir.
İleriye Bakış: YOLO26'nın Gücü
YOLOv9 YOLOv10 mükemmel modeller YOLOv10 da, yapay zeka alanı hızla gelişmektedir. 2026 yılında başlayacak yeni projeler için YOLO26'yı değerlendirmenizi şiddetle tavsiye ederiz.
2026 yılının Ocak ayında piyasaya sürülen YOLO26, YOLOv10 NMS çığır açan yeniliğini temel alır, YOLOv10 önemli mimari iyileştirmeler getirir:
- Uçtan Uca NMS: v10 gibi, YOLO26 de doğal olarak uçtan uca çalışır, ancak daha yüksek doğruluk için algılama kafasında daha fazla optimizasyon yapılmıştır.
- MuSGD Optimizer: SGD Muon'un bir karışımı olan (LLM eğitiminden esinlenerek geliştirilen) bu optimizer, bilgisayar görüşüne Büyük Dil Modeli eğitiminin istikrarını getirerek daha hızlı yakınsama sağlar.
- DFL Kaldırma: Dağıtım Odak Kaybını kaldırarak, YOLO26 dışa aktarım grafiğini basitleştirir ve NPU kısıtlı cihazlarda dağıtımı önemli ölçüde kolaylaştırır.
- ProgLoss + STAL: Gerçek zamanlı dedektörlerdeki yaygın bir zayıflığı gidermek için, küçük nesnelerin tanınmasını iyileştirmek üzere özel olarak ayarlanmış yeni kayıp fonksiyonları.
- Performans: Edge computing için özel olarak optimize edilmiş YOLO26, önceki nesillere kıyasla %43'e kadar daha hızlı CPU sunar.
YOLO26 hakkında daha fazla bilgi edinin
Ayrıca, YOLO26 sadece bir dedektör değildir; poz tahmini (RLE kullanarak), örnek segmentasyonu ve Yönlendirilmiş Sınırlayıcı Kutu (OBB) görevleri için özel iyileştirmeler içerir, bu da onu Ultralytics en çok yönlü araç yapar.
Sonuç
Hem YOLOv9 YOLOv10 , bilgisayar görüşünde büyük bir ilerleme YOLOv10 . YOLOv9 , derin ağların bilgi kaybı olmadan daha verimli hale getirilebileceğini YOLOv9 , YOLOv10 ise on yıllardır süren NMS olan bağımlılığın NMS YOLOv10
Günümüzün geliştiricileri için seçim, büyük ölçüde dağıtım kısıtlamalarına bağlıdır. Zor verilerde mutlak en yüksek doğruluk istiyorsanız, YOLOv9e güçlü bir adaydır. Gecikme süresi ve dağıtım kolaylığı öncelikliyse, YOLOv10 . Ancak hız, doğruluk ve geleceğe dönük özelliklerin en iyi dengesi için YOLO26, Ultralytics kullanıcıları için şu anda en gelişmiş öneri olarak öne çıkmaktadır.