İçeriğe geç

YOLOv5 ve RTDETRv2: Nesne Algılama için CNN ve Transformer Mimarilerini Değerlendirme

Bilgisayar görüşü alanı son birkaç yılda önemli ölçüde genişleyerek, geliştiricilere karmaşık görsel görevleri ele almak için geniş bir mimari yelpazesi sunmuştur. En popüler paradigmalar arasında Evrişimsel Sinir Ağları (CNN'ler) ve Algılama Transformer'ları (DETR'ler) bulunmaktadır.

Bu kılavuz, bu kategorilerdeki iki önemli model arasında derinlemesine bir teknik karşılaştırma sunmaktadır: Ultralytics YOLOv5, oldukça verimli ve yaygın olarak benimsenmiş CNN tabanlı bir model ve RTDETRv2, son teknoloji bir transformer tabanlı gerçek zamanlı nesne algılayıcısı.

Ultralytics YOLOv5: Verimlilik için Endüstri Standardı

Piyasaya sürülmesinden bu yana, Ultralytics YOLOv5, yapay zeka topluluğunun temel taşlarından biri haline geldi ve küresel çapta binlerce ticari uygulamaya ve araştırma projesine güç vermektedir. Tamamen PyTorch çerçevesi üzerine inşa edilen model, gerçek zamanlı performanstan ödün vermeden sezgisel bir geliştirici deneyimine öncelik verdi.

Temel Özellikler:

Mimari ve Güçlü Yönler

YOLOv5, özellik çıkarım verimliliğini en üst düzeye çıkarmak ve aynı zamanda son derece düşük bir bellek ayak izini korumak için tasarlanmış kolaylaştırılmış bir CNN mimarisi kullanır. Bir CSPDarknet backbone'u ve bir PANet boynu kullanarak, çok ölçekli özellik füzyonu için güçlü bir kombinasyon oluşturur.

YOLOv5'in başlıca avantajlarından biri Performans Dengesi'dir. Hız ve doğruluk arasında olağanüstü bir denge kurarak, NVIDIA Jetson cihazları ve akıllı telefonlar gibi kaynak kısıtlı donanımlarda model dağıtımı için ideal bir seçim haline gelir.

Ayrıca, YOLOv5 eşsiz Çok Yönlülük sunar. Sadece sınırlayıcı kutu tahminleriyle sınırlı modellere kıyasla, YOLOv5, görüntü sınıflandırma ve örnek segmentasyonunu doğal olarak destekleyerek çeşitli görsel görevler için birleşik bir çerçeve sağlar. Eğitim verimliliği de dikkat çekicidir; transformer tabanlı mimarilere kıyasla eğitim sırasında önemli ölçüde daha az CUDA belleği gerektirir.

Zayıflıklar

Daha eski bir CNN çerçevesine dayanması nedeniyle, YOLOv5, yinelenen sınırlayıcı kutuları ortadan kaldırmak için son işlem sırasında Non-Maximum Suppression (NMS)'e doğal olarak bağlıdır. Ultralytics çerçevesinde yüksek düzeyde optimize edilmiş olsa da, NMS, özel kenar NPU'larda zaman zaman gecikme darboğazları yaratabilir.

YOLOv5 hakkında daha fazla bilgi edinin.

RTDETRv2: Baidu Tarafından Gerçek Zamanlı Transformer'lar

RTDETRv2 (Gerçek Zamanlı Algılama Transformer v2), transformer mimarilerini gerçek zamanlı nesne algılamaya uygulamada önemli bir ilerlemeyi temsil eder ve standart DETR'leri tarihsel olarak rahatsız eden hesaplama verimsizliklerini giderir.

Temel Özellikler:

Mimari ve Güçlü Yönler

RTDETRv2, görüntüleri işlemek için hibrit bir kodlayıcı ve esnek bir kod çözücü tasarımı kullanarak selefinin üzerine inşa edilmiştir. Transformer'ın kendi kendine dikkat mekanizması, modele görüntü bağlamının küresel bir anlayışını sağlar, bu da onun ciddi nesne tıkanıklığı olan karmaşık sahnelerde olağanüstü performans göstermesine olanak tanır.

RTDETRv2'nin belirleyici bir özelliği, uçtan uca, NMS'siz tasarımıdır. Anchor kutuları veya NMS son işlemi gerektirmeden nesne sorgularını doğrudan tahmin ederek, çıkarım hattını basitleştirir. Bu mimari, COCO gibi kıyaslama veri kümelerinde etkileyici bir mAP (ortalama Hassasiyet Ortalaması) elde eder.

Zayıflıklar

Gerçek zamanlı yeteneklerine rağmen, RTDETRv2'nin YOLO modellerine kıyasla belirgin şekilde daha yüksek bellek gereksinimleri vardır. Transformer'lardaki dikkat mekanizmaları, sekans uzunluğuyla karesel olarak ölçeklenir; bu da büyük GPU kümeleri kullanılmadığı sürece yüksek çözünürlüklü eğitim sırasında bellek yetersizliği hatalarına yol açabilir. Ayrıca, Ultralytics ekosisteminin kutudan çıktığı haliyle çok yönlülüğünden yoksundur ve segmentasyon veya poz tahmini için yerel destek olmaksızın öncelikli olarak yalnızca 2D nesne algılamaya odaklanır.

RTDETR hakkında daha fazla bilgi edinin

Performans Karşılaştırma Tablosu

Bu mimarileri objektif olarak değerlendirmek için performans metriklerini derledik. Kalın olarak vurgulanan değerler, test edilen ölçekler arasında en verimli veya en yüksek performanslı metrikleri temsil etmektedir.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametreler
(M)
FLOP'lar
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259

Performans Bağlamı

RTDETRv2-x en yüksek mutlak mAP'i elde etse de, YOLOv5n'nin yaklaşık 30 katı parametre gerektirir. Sınırlı donanım üzerinde çalışan yüksek hızlı uygulamalar için Ultralytics modelleri, tutarlı bir şekilde en iyi hesaplama verimliliğini sunar.

Ultralytics Ekosisteminin Avantajı

Bir modeli araştırma defterinden üretim ortamına taşırken, modeli çevreleyen yazılım, sinir ağı mimarisi kadar önemlidir. Ultralytics tarafından sağlanan İyi Yönetilen Ekosistem, geliştirme yaşam döngüsünü önemli ölçüde hızlandırır.

Eşsiz Kullanım Kolaylığı

Ultralytics modelleri, inanılmaz derecede kolaylaştırılmış bir kullanıcı deneyimine öncelik verir. İster özel bir model eğitmek, ister doğrulama çalıştırmak veya TensorRT ya da ONNX gibi donanıma özel formatlara dışa aktarmak isteyin, Ultralytics Python API'si bunu yalnızca birkaç satır kodla başarılabilir kılar.

İşte bir Ultralytics modeliyle eğitim yapmanın ve çıkarım çalıştırmanın ne kadar basit olduğunu gösteren pratik bir kod örneği:

from ultralytics import YOLO

# Initialize the model (automatically downloads the weights)
model = YOLO("yolov5s.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device="cpu")

# Perform inference on an online image
inference_results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the resulting image with bounding boxes
inference_results[0].show()

Bu basit, birleşik API, Weights & Biases ve Comet gibi araçlarla deney takibi entegrasyonlarını doğal olarak destekleyerek, geliştiricilerin karmaşık tekrar eden kod yazmadan metrikleri sorunsuz bir şekilde kaydetmesine olanak tanır.

Kullanım Durumları ve Öneriler

YOLOv5 ve RT-DETR arasında seçim yapmak, belirli proje gereksinimlerinize, dağıtım kısıtlamalarınıza ve ekosistem tercihlerinize bağlıdır.

YOLOv5 Ne Zaman Tercih Edilmeli?

YOLOv5, aşağıdaki durumlar için güçlü bir seçenektir:

  • Kanıtlanmış Üretim Sistemleri: YOLOv5'in uzun süreli istikrar geçmişinin, kapsamlı dokümantasyonunun ve büyük topluluk desteğinin değerli olduğu mevcut dağıtımlar.
  • Kaynak Kısıtlı Eğitim: Sınırlı GPU kaynaklarına sahip ortamlarda, YOLOv5'in verimli eğitim hattının ve daha düşük bellek gereksinimlerinin avantaj sağladığı durumlar.
  • Kapsamlı Dışa Aktarma Formatı Desteği: ONNX, TensorRT, CoreML ve TFLite dahil olmak üzere birçok formatta dağıtım gerektiren projeler.

RT-DETR Ne Zaman Seçilmeli

RT-DETR şunlar için önerilir:

  • Transformer Tabanlı Tespit Araştırması: NMS olmadan uçtan uca nesne tespiti için dikkat mekanizmalarını ve transformer mimarilerini keşfeden projeler.
  • Esnek Gecikmeli Yüksek Doğruluk Senaryoları: Tespit doğruluğunun en yüksek öncelik olduğu ve biraz daha yüksek çıkarım gecikmesinin kabul edilebilir olduğu uygulamalar.
  • Büyük Nesne Tespiti: Transformer'ların global dikkat mekanizmasının doğal bir avantaj sağladığı, öncelikli olarak orta ila büyük nesnelerin bulunduğu sahneler.

Ultralytics (YOLO26) Ne Zaman Seçilmeli

Çoğu yeni proje için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi kombinasyonunu sunar:

  • NMS-Free Uç Dağıtım: Non-Maximum Suppression (NMS) son işlem karmaşıklığı olmadan tutarlı, düşük gecikmeli çıkarım gerektiren uygulamalar.
  • Yalnızca CPU Ortamları: Özel GPU hızlandırması olmayan cihazlarda, YOLO26'nın %43'e kadar daha hızlı CPU çıkarımı belirleyici bir avantaj sağlar.
  • Küçük Nesne Algılama: ProgLoss ve STAL'ın küçük nesneler üzerindeki doğruluğu önemli ölçüde artırdığı hava drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.

İleriye Bakış: YOLO11 ve YOLO26

Bugün yeni bir görüntü işleme projesine başlıyorsanız, Ultralytics modellerinin en yeni nesillerini keşfetmeniz şiddetle tavsiye edilir.

YOLOv5 inanılmaz derecede güvenilirliğini korurken, YOLO11 geliştirilmiş doğruluk ve Yönlendirilmiş Sınırlayıcı Kutu (OBB) detect dahil olmak üzere genişletilmiş bir görev seti sunar.

Daha da önemlisi, son teknoloji YOLO26 her iki dünyanın en iyilerini birleştiriyor. Bir CNN'in verimliliğini korurken işlem sonrası ek yükü ortadan kaldıran Uçtan Uca NMS'siz Tasarım'ı (ilk olarak YOLOv10'da öncülük edilen) uygular. YOLO26 ayrıca, LLM eğitim yeniliklerinden esinlenerek daha hızlı yakınsama için MuSGD Optimizer'ını da sunar. DFL Kaldırma (basitleştirilmiş dışa aktarım ve daha iyi kenar/düşük güçlü cihaz uyumluluğu için Dağıtım Odak Kaybı kaldırıldı) ile YOLO26, %43'e Kadar Daha Hızlı CPU Çıkarımı sağlayarak kenar yapay zeka için kesinlikle en iyi seçim haline gelir. Ek olarak, ProgLoss + STAL, IoT, robotik ve hava görüntüleme için kritik olan küçük nesne tanımada kayda değer iyileştirmelerle geliştirilmiş kayıp fonksiyonları sunar.

Sonuç

YOLOv5 ve RTDETRv2 arasında seçim yapmak, büyük ölçüde dağıtım kısıtlamalarınıza bağlıdır. RTDETRv2, güçlü transformer dikkat mekanizmalarını kullanarak mAP sınırlarını zorlar ancak bellek ve hesaplama ek yükü açısından yüksek bir maliyetle gelir.

Tersine, Ultralytics YOLOv5, bulut sunucularından mikrodenetleyicilere kadar her yerde sorunsuz çalışan, kanıtlanmış, yüksek düzeyde optimize edilmiş ve çok yönlü bir çözüm sunar. Sorunsuz dağıtım araçlarıyla birlikte mümkün olan en yüksek doğruluğu arayan ekipler için, Ultralytics ekosistemi içinde YOLO26'ya yükseltme yapmak, modern görüntü işleme yapay zeka uygulamaları için kesin son teknoloji çözümü sağlar.


Yorumlar