İçeriğe geç

RTDETRv2 ve YOLOX: Gerçek Zamanlı Nesne Algılama için Teknik Karşılaştırma

Bilgisayar görüşü alanındaki hızlı gelişmelerde, hız ve doğruluk arasındaki optimum dengeyi bulma arayışı yenilikleri yönlendirmeye devam ediyor. İki farklı yaklaşım öncü olarak ortaya çıkmıştır: Transformatör tabanlı RTDETRv2 ve ankrajsız CNN tabanlı YOLOX. Bu karşılaştırma, geliştiricilerin özel ihtiyaçları için doğru aracı seçmelerine yardımcı olmak için mimari farklılıklarını, performans metriklerini ve ideal kullanım durumlarını incelemektedir.

Model Genel Bakışları

Teknik detaylara girmeden önce, bu iki etkili modelin kökenlerini ve temel felsefelerini belirleyelim.

RTDETRv2

RTDETRv2 (Gerçek Zamanlı Algılama Dönüştürücü sürüm 2), Transformer mimarilerini gerçek zamanlı uygulamalara getirmede önemli bir adımı temsil eder. Baidu'daki araştırmacılar tarafından geliştirilen bu model, çıkarım gecikmesini artırmadan eğitim kararlılığını ve performansını artıran bir "Bag-of-Freebies" (Bedava Hediyeler Çantası) sunarak orijinal RT-DETR üzerine inşa edilmiştir. Tipik olarak Vision Transformers (ViTs) ile ilişkili yüksek hesaplama maliyetini çözerken, doğruluk açısından geleneksel CNN dedektörlerinden daha iyi performans göstermeyi amaçlar.

RTDETRv2 hakkında daha fazla bilgi edinin

YOLOX

YOLOX, 2021'de bağlantısız bir mekanizmaya geçerek ve ayrıştırılmış başlıklar ve SimOTA etiket ataması gibi gelişmiş teknikleri dahil ederek YOLO ailesini yeniden canlandırdı. YOLO serisinin Darknet tarzı backbone özelliğini korurken, mimari değişiklikleri bağlantı tabanlı dedektörlerin birçok sınırlamasını ele aldı ve sonuç olarak uç cihazlarda olağanüstü iyi performans gösteren oldukça verimli ve esnek bir model ortaya çıktı.

YOLOX hakkında daha fazla bilgi edinin

Performans Analizi

RTDETRv2 ve YOLOX arasındaki performans ödünleşimleri farklıdır. RTDETRv2, karmaşık sahneleri ve gizlenmiş nesneleri daha iyi anlamak için transformatörlerin küresel dikkat mekanizmalarından yararlanarak en yüksek doğruluğu (mAP) önceliklendirir. Ancak, bu özellikle GPU bellek kullanımıyla ilgili olarak daha yüksek hesaplama talepleriyle birlikte gelir.

Aksine, YOLOX hız ve verimlilik için optimize edilmiştir. Bağlantısız tasarımı, algılama başlığını basitleştirerek tasarım parametrelerinin sayısını azaltır ve işlem sonrası (NMS) hızını artırır. YOLOX modelleri, özellikle Nano ve Tiny varyantları, donanım kaynaklarının kısıtlı olduğu uç AI dağıtımları için sıklıkla tercih edilir.

Aşağıdaki tablo bu farklılıkları vurgulamaktadır. RTDETRv2 daha yüksek mAP puanları elde etse de, YOLOX-s'nin TensorRT'de daha hızlı çıkarım hızları sağladığına ve bunun da gecikmeye duyarlı uygulamalar için uygunluğunu gösterdiğine dikkat edin.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametreler
(M)
FLOP'lar
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Mimari Derinlemesine İnceleme

Yapısal farklılıkları anlamak, bu modellerin neden farklı performans gösterdiğini netleştirmeye yardımcı olur.

RTDETRv2: Hibrit Kodlayıcı-Çözücü

RTDETRv2, bir verimli hibrit kodlayıcı sunarak standart DETR modellerinin hesaplama darboğazlarını ele alır. Bu bileşen, ölçek içi etkileşimi (aynı özellik katmanı içinde) ve ölçekler arası füzyonu (katmanlar arasında) ayırarak çok ölçekli özellikleri işler.

  • IoU-Farkındalıklı Sorgu Seçimi: RTDETRv2, statik nesne sorguları seçmek yerine, başlatmayı iyileştirerek sınıflandırma puanlarına göre ilk nesne sorguları olarak hizmet etmek üzere sabit sayıda görüntü özelliği seçer.
  • Esnek Kod Çözücü: Kod çözücü, çıkarım sırasında sorgu sayılarının dinamik olarak ayarlanmasını destekler ve kullanıcıların yeniden eğitim yapmadan hız ve doğruluk arasında denge kurmasına olanak tanır.

YOLOX: Bağlantısız ve Ayrıştırılmış

YOLOX, YOLOv4 ve YOLOv5'te kullanılan anchor tabanlı paradigmadan uzaklaşır.

  • Çapa Olmayan: YOLOX, nesne merkezlerini ve boyutlarını doğrudan tahmin ederek, manuel çapa kutusu tasarımına olan ihtiyacı ortadan kaldırır ve hiperparametre ayarlama karmaşıklığını azaltır.
  • Ayrıştırılmış Kafa (Decoupled Head): Sınıflandırma ve regresyon görevlerini ağ kafasının farklı dallarına ayırır. Bu ayrım genellikle daha hızlı yakınsamaya ve daha iyi doğruluğa yol açar.
  • SimOTA: Atama sürecini bir Optimal Taşıma problemi olarak gören, global bir optimizasyon maliyetine dayalı olarak pozitif örnekleri dinamik olarak yer doğruluklarına atayan gelişmiş bir etiket atama stratejisidir.

Anchor Tabanlı - Anchorsız Karşılaştırması

Geleneksel detectörler, nesne konumlarını tahmin etmek için önceden tanımlanmış kutular (çapalar) kullanır. YOLOX bu bağımlılığı ortadan kaldırarak mimariyi basitleştirir ve modeli çeşitli nesne şekillerine karşı daha sağlam hale getirir. Bir transformer olan RTDETRv2 ise, çapalar yerine tamamen nesne sorguları kullanır ve ilgili görüntü bölgelerine dinamik olarak katılmayı öğrenir.

Güçlü ve Zayıf Yönler

RTDETRv2

  • Güçlü Yönler:
    • High Accuracy: COCO benchmarklarında en son teknoloji mAP'ı elde eder.
    • Global Bağlam: Transformer dikkat mekanizmaları, uzun menzilli bağımlılıkları etkili bir şekilde yakalar.
    • Uyarlanabilirlik: Ayarlanabilir sorgu seçimi, çıkarım zamanında esneklik sağlar.
  • Zayıflıklar:
    • Kaynak Yoğun: CNN'lere kıyasla eğitim ve çıkarım için önemli miktarda GPU belleği gerektirir.
    • Daha Yavaş Eğitim: Transformer'lar genellikle CNN tabanlı mimarilerden daha uzun sürede yakınsar.

YOLOX

  • Güçlü Yönler:
    • Çıkarım Hızı: Özellikle daha küçük varyantlar (Nano, Tiny, S) olmak üzere son derece hızlıdır.
    • Dağıtım Dostu: Daha düşük FLOP'lar ve parametre sayıları nedeniyle uç cihazlarda ve CPU'larda dağıtımı daha kolaydır.
    • Sadelik: Bağlantısız tasarım, mühendislik karmaşıklığını azaltır.
  • Zayıflıklar:
    • Daha Düşük Tepe Doğruluğu: RTDETRv2-x gibi büyük transformatör modellerinin en üst düzey doğruluğuyla eşleşmekte zorlanır.
    • Özellik Evrimi: Daha yeni frameworklerde bulunan çok modlu özelliklerin bazılarını içermez.

Ultralytics Avantajı: Neden YOLO11'i Seçmelisiniz?

RTDETRv2 ve YOLOX zorlu modeller olsa da, en son teknolojiye sahip YOLO11 öncülüğünde olan Ultralytics YOLO ekosistemi, genellikle tek tek modellerin faydalarından daha ağır basan kapsamlı bir çözüm sunmaktadır.

  • Performans Dengesi: YOLO11, hız ve doğruluk arasında optimum bir denge sağlamak için tasarlanmıştır. Genellikle transformer tabanlı modellerin doğruluğuyla eşleşir veya onu aşarken, YOLO ailesinin çıkarım hızı karakteristiğini korur.
  • Kullanım Kolaylığı: Ultralytics, geliştirici deneyimine öncelik verir. Birleşik bir Python API ve CLI ile, modelleri sadece birkaç satır kodla eğitebilir, doğrulayabilir ve dağıtabilirsiniz.
  • Bellek Verimliliği: GPU VRAM'i üzerinde ağır olabilen RTDETRv2'nin aksine, YOLO11 hem eğitim hem de çıkarım sırasında oldukça bellek verimlidir. Bu, onu tüketici sınıfı donanıma sahip araştırmacılar ve geliştiriciler için erişilebilir kılar.
  • İyi Yönetilen Ekosistem: Ultralytics modelleri, sık güncellemeler, canlı bir topluluk ve kapsamlı dokümantasyon tarafından desteklenmektedir. Ultralytics HUB gibi özellikler, sorunsuz model yönetimini ve bulut eğitimini kolaylaştırır.
  • Çeşitlilik: Basit nesne tespitinin ötesinde, YOLO11 yerel olarak örnek segmentasyonunu, poz tahminini, OBB'yi ve sınıflandırmayı desteklerken, YOLOX ve RTDETRv2 öncelikle detect işlemine odaklanmıştır.
  • Eğitim Verimliliği: Çeşitli görevler için mevcut önceden eğitilmiş ağırlıklar ve gelişmiş transfer öğrenimi yetenekleriyle YOLO11, yüksek performanslı modelleri eğitmek için gereken süreyi ve enerjiyi önemli ölçüde azaltır.

YOLO11 hakkında daha fazla bilgi edinin

Kod Örneği

Ultralytics, bu gelişmiş modelleri kullanmayı inanılmaz derecede kolaylaştırır. Aşağıda, YOLO11 kullanarak çıkarımın nasıl çalıştırılacağına dair bir örnek verilmiştir ve özellikle Ultralytics, orijinal depoya kıyasla kullanımını önemli ölçüde basitleştirerek RT-DETR'yi de doğrudan desteklemektedir.

from ultralytics import RTDETR, YOLO

# Load the Ultralytics YOLO11 model (Recommended)
model_yolo = YOLO("yolo11n.pt")

# Run inference on an image
results_yolo = model_yolo("path/to/image.jpg")

# Load an RT-DETR model via Ultralytics API
model_rtdetr = RTDETR("rtdetr-l.pt")

# Run inference with RT-DETR
results_rtdetr = model_rtdetr("path/to/image.jpg")

Sonuç

RTDETRv2 ve YOLOX arasındaki seçim nihayetinde özel kısıtlamalarınıza bağlıdır.

  • Uygulamanız akademik araştırma veya yüksek hassasiyetli endüstriyel inceleme gibi mutlak en yüksek doğruluğu gerektiriyorsa ve güçlü GPU kaynaklarına erişiminiz varsa RTDETRv2'yi seçin.
  • Gecikmenin her milisaniyesinin önemli olduğu Raspberry Pi veya mobil cihazlar gibi kaynak kısıtlı ortamlara dağıtım yapıyorsanız YOLOX'i seçin.

Ancak, gerçek dünya uygulamalarının büyük çoğunluğu için Ultralytics YOLO11 üstün çok yönlü bir seçim olarak ortaya çıkıyor. Modern mimarilerin doğruluk avantajlarını CNN'lerin hızı ve verimliliği ile birleştirir ve bunların hepsi kullanıcı dostu, üretime hazır bir ekosistemde sunulur. İster uçta ister bulutta geliştirme yapıyor olun, YOLO11 başarılı olmak için araçları ve performansı sağlar.

Diğer Karşılaştırmaları İnceleyin

Kararınızı daha iyi bilgilendirmek için, diğer model karşılaştırmalarını keşfetmeyi düşünün:


Yorumlar