YOLOv9 ve PP-YOLOE+ Karşılaştırması#
Gerçek zamanlı nesne algılama alanı hızla gelişmeye devam ediyor ve bilgisayarlı görü mühendislerine uç ve bulut altyapılarında yüksek doğruluklu modelleri dağıtmak için çok çeşitli seçenekler sunuyor. Bu alandaki öne çıkan iki model YOLOv9 ve PP-YOLOE+. Her ikisi de doğruluk ve hız sınırlarını zorlasa da farklı araştırma geleneklerinden ve yazılım ekosistemlerinden geliyor.
Bu kapsamlı teknik karşılaştırmada modellerin mimarileri, eğitim yöntemleri, performans ölçütleri ve gerçek dünyadaki ideal uygulamaları inceleniyor. Ayrıca kullanım kolaylığına, bellek verimliliğine ve çok yönlü dağıtıma önem veren geliştiriciler için daha geniş Ultralytics ekosisteminin sağladığı önemli avantajları da ele alacağız.
Modellerin Kökeni ve Teknik Özellikleri#
Bu modellerin geçmişini anlamak, mimari kararlarını ve çerçeve bağımlılıklarını bağlam içine yerleştirmeye yardımcı olur.
YOLOv9: Bilgi Darboğazını Çözme#
2024'ün başlarında tanıtılan YOLOv9, bilgi derin sinir ağlarından geçerken ortaya çıkan veri kaybını ele alır. Parametre verimliliğini en üst düzeye çıkarmak için tasarlanmış, son derece optimize edilmiş bir evrişimli sinir ağıdır.
- Yazarlar: Chien-Yao Wang, Hong-Yuan Mark Liao
- Kuruluş: Academia Sinica, Tayvan, Bilgi Bilimleri Enstitüsü
- Tarih: 21 Şubat 2024
- Arxiv: 2402.13616
- GitHub: WongKinYiu/yolov9
- Belgeler: Ultralytics YOLOv9 Belgeleri
YOLOv9 hakkında daha fazla bilgi edin
PP-YOLOE+: Paddle Ekosistemini İleriye Taşıma#
2022'de Baidu tarafından yayımlanan PP-YOLOE+, PP-YOLOv2'nin yinelemeli bir geliştirmesidir. Yakınsamayı ve doğruluğu artırmak için bağlantısız çerçeve yaklaşımını kullanır ve PaddlePaddle çerçevesi içinde dinamik bir etiket atama stratejisi sunar.
- Yazarlar: PaddlePaddle yazarları
- Kuruluş: Baidu
- Tarih: 2 Nisan 2022
- Arxiv: 2203.16250
- GitHub: PaddleDetection
- Belgeler: PP-YOLOE+ Yapılandırması
PP-YOLOE+ hakkında daha fazla bilgi edin
Mimari Karşılaştırması#
Programlanabilir Gradyan Bilgisi ve CSPRepResStage#
YOLOv9'un temel yeniliği Programlanabilir Gradyan Bilgisi (PGI)'dir. PGI, yardımcı bir denetim çerçevesi olarak görev yapar ve eğitim sırasında hayati gradyan bilgilerinin korunarak sığ katmanlara doğru biçimde geri yayılmasını sağlar. Bu yapı, CSPNet ve ELAN'ın güçlü yönlerini birleştirerek hesaplama maliyetini (FLOPs) önemli ölçüde azaltırken yüksek doğruluk sunan Genelleştirilmiş Verimli Katman Birleştirme Ağı (GELAN) ile desteklenir.
PP-YOLOE+, CSPRepResStage adlı özel bir omurgaya dayanır. Dağıtım sırasında evrişim katmanlarını birleştirerek çıkarımı hızlandırmak için yeniden parametreleştirme tekniklerinden (RepVGG'de kullanılanlara benzer) yararlanır. Ayrıca sınıflandırma ve regresyon görevlerini dengelemek için Verimli Görev Hizalı başlığı (ET-head) kullanır.
PP-YOLOE+ sağlam bir model olsa da YOLOv9'un GELAN mimarisi, eğitim ve çıkarım sırasında genellikle daha az bellek alanı gerektirir ve bu da onu uç AI cihazları için özellikle uygun hâle getirir.
Performans Karşılaştırması#
Üretim ortamı için modelleri değerlendirirken mAP (ortalama Ortalama Hassasiyet), çıkarım hızı ve model boyutu arasındaki denge kritik önem taşır.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
Analiz#
- Parametre Verimliliği: YOLOv9 kayda değer ölçüde daha yüksek verimlilik sunar. Örneğin YOLOv9c yalnızca 25.5M parametreyle %53.0 mAP elde ederken PP-YOLOE+l, biraz daha düşük olan %52.9 mAP değerine ulaşmak için bunun iki katından fazla parametre (52.2M) gerektirir. Bu, YOLOv9'un bellek gereksinimlerini önemli ölçüde azaltır.
- Çıkarım Hızı: YOLOv9 modelleri TensorRT gibi donanım hızlandırıcılar için mükemmel optimizasyon sunar ve gerçek zamanlı çıkarım için kritik olan NVIDIA T4 GPU'larda rekabetçi çıkarım hızlarına ulaşır.
Eğitim Yöntemleri ve Ekosistem#
Bu modeller arasındaki seçim çoğu zaman yazılım ekosistemine bağlıdır.
PP-YOLOE+ ve PaddlePaddle#
PP-YOLOE+, PaddleDetection paketine sıkı sıkıya bağlıdır. Güçlü olsa da kullanıcıların yapılandırma dosyaları ve komut satırı kullanımı ağırlıklı bir ortamda çalışmasını gerektirir. PyTorch veya TensorFlow ekosistemlerine derinlemesine bağlı ekipler için PaddlePaddle'a geçiş önemli zorluklar ve daha dik bir öğrenme eğrisi getirir.
Ultralytics'in Avantajı: Kolaylaştırılmış İş Akışları#
Buna karşılık YOLOv9, gelişmiş Ultralytics ekosistemi içinde çalışır. Geliştiriciler ve araştırmacılar için tasarlanan Ultralytics, olağanüstü kullanım kolaylığına öncelik verir. Python API, karmaşık tekrar eden kodları tamamen soyutlar.
from ultralytics import YOLO
# Önceden eğitilmiş bir YOLOv9 modeli yükle
model = YOLO("yolov9c.pt")
# Özel veri kümesinde zahmetsizce eğit
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# Çıkarım yap ve sonuçları görselleştir
results = model("https://ultralytics.com/images/bus.jpg")
# Üretim dağıtımı için ONNX biçimine aktar
model.export(format="onnx")Bu iş akışı, Ultralytics modellerinin üstün Eğitim Verimliliğini gösterir. Veri artırımı, dağıtık eğitim ve Weights & Biases veya MLflow gibi platformlara otomatik günlük kaydı için yerel destek standart olarak sunulur.
YOLOv9 olağanüstü performans sunsa da yeni projeler için yeni yayımlanan Ultralytics YOLO26 modelini değerlendirmeni önemle öneririz. YOLO26, dağıtımı büyük ölçüde basitleştiren yerel bir Uçtan Uca, NMS Gerektirmeyen Tasarım sunar (nms=False üzerinden isteğe bağlı). DFL'nin Kaldırılması sayesinde (daha kolay dışa aktarma ve uç cihazlar/düşük güç tüketimli cihazlarla daha iyi uyumluluk için Dağılım Odaklı Kayıp kaldırılmıştır) uç bilişimde %43'e kadar daha hızlı CPU çıkarımı sağlar. MuSGD Optimize Edicisi ile desteklenen model, kararlı eğitim ve hızlı yakınsama sunar. Ayrıca ProgLoss + STAL, IoT, robotik ve hava görüntüleri için kritik önem taşıyan küçük nesne tanımada kayda değer iyileştirmelerle daha iyi kayıp işlevleri sağlar.
Çok Yönlülük ve Görev Desteği#
Modern bilgisayarlı görü projeleri nadiren yalnızca sınırlayıcı kutularla sınırlı kalır.
PP-YOLOE+ öncelikli olarak standart nesne algılama için tasarlanmıştır. Mimarisini diğer görevlere uyarlamak kapsamlı özel mühendislik çalışmaları gerektirir.
Buna karşılık Ultralytics çerçevesi, çok görevli güçlü bir çözümdür. Birleşik bir API kullanan geliştiriciler standart nesne algılamadan karmaşık Örnek Segmentasyonuna, yüksek doğruluklu Poz Tahminine, hava görüntüleri için Yönlendirilmiş Sınırlayıcı Kutu (OBB) algılamaya ve görüntü Sınıflandırmasına zahmetsizce geçebilir. Kurumsal ekiplerin YOLOv9, YOLO11 ve YOLO26 gibi Ultralytics destekli modelleri sürekli tercih etmesinin nedeni bu benzersiz çok yönlülüktür.
İdeal Kullanım Alanları ve Uygulamalar#
- Akıllı Şehir Analitiği ve Trafik Yönetimi: YOLOv9'un (ve sonraki YOLO26'nın) yüksek parametre verimliliği ve düşük gecikmesi, onları trafik akışını ve kent güvenliğini izlemek için kısıtlı uç donanımlara (NVIDIA Jetson cihazları gibi) dağıtıma uygun hâle getirir.
- Perakende Envanter Sistemleri: Raflardaki küçük ürünlerin yoğun biçimde dizildiği durumları algılamak için YOLOv9'un PGI özelliği ince ayrıntılı uzamsal bilgileri etkili biçimde korur ve küçük nesne algılama görevlerinde PP-YOLOE+'dan daha iyi performans gösterir.
- Eski Sistem Dağıtımları: PP-YOLOE+, yalnızca mevcut eski altyapılarında Baidu/PaddlePaddle yazılım yığınını kullanması zorunlu tutulan ekipler için geçerli bir seçenek olmaya devam eder.
Transformer tabanlı mimarileri araştıranlar için Ultralytics, RT-DETR modelini de aynı kullanımı kolay API içinde yerel olarak destekler; böylece dağıtım gereksinimlerine en uygun modele her zaman erişebilirsin.