İçeriğe geç

Baidu'nun RT-DETR: Görüş Dönüştürücüsü Tabanlı Gerçek Zamanlı Nesne Algılayıcısı

Genel Bakış

Baidu tarafından geliştirilen Real-Time Detection Transformer (RT-DETR), yüksek doğruluğu korurken gerçek zamanlı performans sağlayan son teknoloji uçtan uca bir nesne dedektörüdür. DETR (NMS içermeyen çerçeve) fikrine dayanır, bu arada gerçek zamanlı hız kazanmak için conv tabanlı omurga ve verimli bir hibrit kodlayıcı sunar. RT-DETR , ölçek içi etkileşimi ve ölçekler arası füzyonu ayırarak çok ölçekli özellikleri verimli bir şekilde işler. Model son derece uyarlanabilirdir ve yeniden eğitim olmadan farklı kod çözücü katmanları kullanarak çıkarım hızının esnek bir şekilde ayarlanmasını destekler. RT-DETR , TensorRT ile CUDA gibi hızlandırılmış arka uçlarda üstünlük sağlar ve diğer birçok gerçek zamanlı nesne dedektöründen daha iyi performans gösterir.



İzle: Gerçek Zamanlı Algılama Transformatörü (RT-DETR)

Örnek model görüntüsü Baidu'ya Genel Bakış RT-DETR. RT-DETR model mimari diyagramı, kodlayıcıya girdi olarak omurganın son üç aşamasını {S3, S4, S5} göstermektedir. Etkili hibrit kodlayıcı, ölçek içi özellik etkileşimi (AIFI) ve ölçekler arası özellik füzyon modülü (CCFM) aracılığıyla çok ölçekli özellikleri bir dizi görüntü özelliğine dönüştürür. IoU farkındalı sorgu seçimi, kod çözücü için ilk nesne sorguları olarak hizmet edecek sabit sayıda görüntü özelliğini seçmek için kullanılır. Son olarak, yardımcı tahmin kafalarına sahip kod çözücü, kutuları ve güven puanlarını oluşturmak için nesne sorgularını yinelemeli olarak optimize eder (kaynak).

Temel Özellikler

  • Verimli Hibrit Kodlayıcı: Baidu RT-DETR , ölçek içi etkileşimi ve ölçekler arası füzyonu ayrıştırarak çok ölçekli özellikleri işleyen verimli bir hibrit kodlayıcı kullanır. Bu benzersiz Vision Transformers tabanlı tasarım, hesaplama maliyetlerini azaltır ve gerçek zamanlı nesne tespitine olanak tanır.
  • IoU farkındalı Sorgu Seçimi: Baidu'nun RT-DETR adresi, IoU farkındalı sorgu seçimini kullanarak nesne sorgusu başlatmayı geliştirir. Bu, modelin sahnedeki en alakalı nesnelere odaklanmasını sağlayarak algılama doğruluğunu artırır.
  • Uyarlanabilir Çıkarım Hızı: Baidu'nun RT-DETR adresi, yeniden eğitime gerek kalmadan farklı kod çözücü katmanları kullanarak çıkarım hızının esnek bir şekilde ayarlanmasını destekler. Bu uyarlanabilirlik, çeşitli gerçek zamanlı nesne algılama senaryolarında pratik uygulamayı kolaylaştırır.

Önceden Eğitilmiş Modeller

Ultralytics Python API, farklı ölçeklerde önceden eğitilmiş PaddlePaddle RT-DETR modelleri sağlar:

  • RT-DETR-L: COCO val2017'de %53,0 AP, T4'te 114 FPS GPU
  • RT-DETR-X: COCO val2017 üzerinde %54,8 AP, T4 üzerinde 74 FPS GPU

Kullanım Örnekleri

Bu örnek basit RT-DETR eğitim ve çıkarım örnekleri sağlar. Bu ve diğer modlar hakkında tam dokümantasyon için Predict, Train, Val ve Export docs sayfalarına bakın.

Örnek

from ultralytics import RTDETR

# Load a COCO-pretrained RT-DETR-l model
model = RTDETR("rtdetr-l.pt")

# Display model information (optional)
model.info()

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the RT-DETR-l model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
# Load a COCO-pretrained RT-DETR-l model and train it on the COCO8 example dataset for 100 epochs
yolo train model=rtdetr-l.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained RT-DETR-l model and run inference on the 'bus.jpg' image
yolo predict model=rtdetr-l.pt source=path/to/bus.jpg

Desteklenen Görevler ve Modlar

Bu tabloda model türleri, önceden eğitilmiş belirli ağırlıklar, her model tarafından desteklenen görevler ve ✅ emojileriyle gösterilen desteklenen çeşitli modlar(Train, Val, Predict, Export) sunulmaktadır.

Model Tipi Önceden Eğitilmiş Ağırlıklar Desteklenen Görevler Çıkarım Doğrulama Eğitim İhracat
RT-DETR Büyük rtdetr-l.pt Nesne Algılama
RT-DETR Ekstra Büyük rtdetr-x.pt Nesne Algılama

Atıflar ve Teşekkür

Araştırma veya geliştirme çalışmalarınızda Baidu'nun RT-DETR adresini kullanırsanız, lütfen orijinal makaleye atıfta bulunun:

@misc{lv2023detrs,
      title={DETRs Beat YOLOs on Real-time Object Detection},
      author={Wenyu Lv and Shangliang Xu and Yian Zhao and Guanzhong Wang and Jinman Wei and Cheng Cui and Yuning Du and Qingqing Dang and Yi Liu},
      year={2023},
      eprint={2304.08069},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Baidu'ya ve aşağıdaki kuruluşlara teşekkür etmek isteriz PaddlePaddle ekibine bilgisayarla görme topluluğu için bu değerli kaynağı oluşturdukları ve sürdürdükleri için teşekkür ederiz. Vision Transformers tabanlı gerçek zamanlı nesne dedektörü RT-DETR'un geliştirilmesiyle alana yaptıkları katkı büyük takdir görmektedir.

SSS

Baidu'nun RT-DETR modeli nedir ve nasıl çalışır?

Baidu'nun RT-DETR (Gerçek Zamanlı Algılama Dönüştürücüsü) Vision Transformer mimarisi üzerine inşa edilmiş gelişmiş bir gerçek zamanlı nesne algılayıcısıdır. Verimli hibrit kodlayıcısı aracılığıyla ölçek içi etkileşimi ve ölçekler arası füzyonu ayrıştırarak çok ölçekli özellikleri verimli bir şekilde işler. Model, IoU farkındalı sorgu seçimi kullanarak en alakalı nesnelere odaklanır ve algılama doğruluğunu artırır. Kod çözücü katmanlarını yeniden eğitmeden ayarlayarak elde edilen uyarlanabilir çıkarım hızı, RT-DETR 'u çeşitli gerçek zamanlı nesne algılama senaryoları için uygun hale getirir. RT-DETR özellikleri hakkında daha fazla bilgiyi buradan edinebilirsiniz.

Ultralytics tarafından sağlanan önceden eğitilmiş RT-DETR modellerini nasıl kullanabilirim?

Önceden eğitilmiş PaddlePaddle RT-DETR modellerini kullanmak için Ultralytics Python API'sinden yararlanabilirsiniz. Örneğin, COCO val2017 üzerinde önceden eğitilmiş bir RT-DETR-l modelini yüklemek ve T4 GPU üzerinde yüksek FPS elde etmek için aşağıdaki örnekten yararlanabilirsiniz:

Örnek

from ultralytics import RTDETR

# Load a COCO-pretrained RT-DETR-l model
model = RTDETR("rtdetr-l.pt")

# Display model information (optional)
model.info()

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the RT-DETR-l model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
# Load a COCO-pretrained RT-DETR-l model and train it on the COCO8 example dataset for 100 epochs
yolo train model=rtdetr-l.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained RT-DETR-l model and run inference on the 'bus.jpg' image
yolo predict model=rtdetr-l.pt source=path/to/bus.jpg

Neden Baidu'nun RT-DETR adresini diğer gerçek zamanlı nesne algılayıcılarına tercih etmeliyim?

Baidu RT-DETR , yüksek doğruluğu korurken hesaplama maliyetlerini büyük ölçüde azaltan verimli hibrit kodlayıcı ve IoU farkındalı sorgu seçimi ile öne çıkmaktadır. Yeniden eğitim olmadan farklı kod çözücü katmanları kullanarak çıkarım hızını ayarlama konusundaki benzersiz yeteneği önemli bir esneklik sağlar. Bu da onu CUDA gibi hızlandırılmış arka uçlarda TensorRT ile gerçek zamanlı performans gerektiren uygulamalar için özellikle avantajlı kılmakta ve diğer birçok gerçek zamanlı nesne dedektörünü geride bırakmaktadır.

RT-DETR farklı gerçek zamanlı uygulamalar için uyarlanabilir çıkarım hızını nasıl destekliyor?

Baidu'nun RT-DETR adresi, yeniden eğitim gerektirmeden farklı kod çözücü katmanları kullanarak çıkarım hızının esnek bir şekilde ayarlanmasına olanak tanır. Bu uyarlanabilirlik, çeşitli gerçek zamanlı nesne algılama görevlerinde performansı ölçeklendirmek için çok önemlidir. İster daha düşük hassasiyetli ihtiyaçlar için daha hızlı işlemeye, ister daha yavaş, daha doğru tespitlere ihtiyacınız olsun, RT-DETR özel gereksinimlerinizi karşılayacak şekilde uyarlanabilir.

RT-DETR modellerini eğitim, doğrulama ve dışa aktarma gibi diğer Ultralytics modlarıyla kullanabilir miyim?

Evet, RT-DETR modelleri eğitim, doğrulama, tahmin ve dışa aktarma dahil olmak üzere çeşitli Ultralytics modlarıyla uyumludur. Bu modların nasıl kullanılacağına ilişkin ayrıntılı talimatlar için ilgili belgelere başvurabilirsiniz: Train, Val, Predict ve Export. Bu, nesne algılama çözümlerinizi geliştirmek ve dağıtmak için kapsamlı bir iş akışı sağlar.



Oluşturma 2023-11-12, Güncelleme 2024-07-04
Yazarlar: glenn-jocher (15), RizwanMunawar (1)

Yorumlar