YOLO (You Only Look Once) (YOLO Nesne Algılama)

Görüntüdeki nesneleri tek bir sinir ağı geçişinde eş zamanlı olarak tespit eden gerçek zamanlı nesne algılama mimarisi.

YOLO (You Only Look Once), gerçek zamanlı nesne algılama görevleri için tasarlanmış, son derece hızlı ve doğru bir derin öğrenme mimarisidir. 2016 yılında Joseph Redmon ve arkadaşları tarafından tanıtılan YOLO, nesne tespitini tek bir ileri geçiş (single forward pass) işlemine indirgeyerek dönemin en hızlı nesne algılama sistemi haline gelmiştir. Geleneksel nesne algılama yaklaşımları (R-CNN ve türevleri) görüntüyü önce bölgelere ayırır, ardından her bölge için sınıflandırma yapar; bu iki aşamalı süreç yavaş çalışır. YOLO ise görüntüyü S×S ızgara hücrelerine böler; her hücre sabit sayıda bounding box tahmini ve sınıf olasılıkları üretir. Tüm bu tahminler tek bir CNN ile aynı anda hesaplanır. Bu yaklaşım, YOLO'nun saniyede 45 kare (FPS) ile işlem yapmasına ve gerçek zamanlı uygulamalar için ideal olmasına olanak tanır. Mimari açıdan YOLO, özellik çıkarmayı (feature extraction) ve nesne tespitini birleşik bir sinir ağında gerçekleştirir. Her bounding box için beş değer tahmin edilir: merkez koordinatları (x, y), genişlik (w), yükseklik (h) ve güven skoru (confidence score). Güven skoru hem nesne varlığı olasılığını hem de bounding box doğruluğunu (IoU, Intersection over Union) ifade eder. YOLOv1'den günümüze mimarinin önemi giderek artmıştır: YOLOv3 darknet53 omurgasıyla birden fazla ölçekte algılama yaparken, YOLOv5 PyTorch ekosistemiyle entegre olmuş ve endüstri standardı haline gelmiştir. Ultralytics tarafından geliştirilen YOLOv8, instance segmentation ve pose estimation desteğiyle kapsam genişletmiştir. En güncel YOLOv11 ise transformer tabanlı dikkat mekanizmaları ve gelişmiş arka plan modelleriyle %20'ye varan doğruluk artışı sunmaktadır. YOLO, otonom araçlardaki anlık engel algılamasında, güvenlik kameralarındaki kalabalık analizinde, sağlık görüntülemede anomali tespitinde, sanayi hatlarındaki kalite kontrolünde ve spor videolarındaki oyuncu takibinde yaygın biçimde kullanılmaktadır.

YOLO Nedir?

YOLO (You Only Look Once), bir görüntüdeki tüm nesneleri tek bir sinir ağı geçişinde eş zamanlı olarak tespit eden nesne algılama mimarisidir. 2016'da tanıtılan bu yaklaşım, iki aşamalı bölge öneri yöntemlerini tek aşamalı bir bütünleşik modelle değiştirerek gerçek zamanlı nesne algılamayı mümkün kılmıştır.

Nasıl Çalışır?

Izgara Bölümleme

Görüntü S×S ızgara hücrelerine bölünür; her hücre içindeki nesnelerden sorumludur.

Bounding Box Tahmini

Her hücre, merkez (x,y), boyutlar (w,h) ve güven skorundan oluşan kutular tahmin eder.

Sınıf Olasılıkları

Her hücre için olası tüm sınıf olasılıkları eş zamanlı tahmin edilir.

Non-Maximum Suppression

Aynı nesneyi gösteren çakışan kutular IoU eşiğine göre birleştirilir veya elenir.

Sürüm Evrimi

YOLOv1 (2016) tüm mimariyi tanımlarken, YOLOv3 (2018) birden fazla ölçekte algılama ekledi. YOLOv5 PyTorch ile endüstri standardı oldu. YOLOv8 (2023, Ultralytics) segmentasyon, sınıflandırma ve poz tahminini tek çatıda birleştirdi. YOLOv11 (2024) transformer dikkat mekanizmalarıyla doğrulukta önemli artış sağladı.

Uygulama Alanları

Otonom Araçlar

Gerçek zamanlı yaya, araç ve trafik işareti tespiti için kullanılır.

Güvenlik Sistemleri

CCTV kameralarında kalabalık analizi, şüpheli nesne ve kişi algılama.

Sağlık

Tıbbi görüntülerde tümör, lezyon ve anomali tespiti.

Sanayi

Üretim hatlarında kalite kontrol, hatalı ürün ve yabancı cisim tespiti.

🎯 YOLO Sürümleri ve Performans Gelişimi

  • check_circle YOLOv1 (2016): tek geçişte grid tabanlı tespit; hız devrimini başlattı ama küçük nesne zayıf
  • check_circle YOLOv5/v8 (Ultralytics): kullanıcı dostu Python API; endüstride en yaygın kullanılan sürüm
  • check_circle YOLOv9: GELAN mimarisi; programlanabilir gradyan bilgisiyle doğruluk-hız dengesi iyileşti
  • check_circle YOLOv10: NMS gerektirmeyen uçtan uca tespit; Transformer başlığı ile gerçek zamanlı
  • check_circle YOLO-World: açık sözcük dağarcığı nesne tespiti; eğitim seti dışı kategorileri tespit eder

Sık Sorulan Sorular

  • check_circle YOLO ile R-CNN arasındaki temel fark nedir? R-CNN önce bölge önerir sonra sınıflandırır (iki aşama); YOLO her ikisini tek geçişte yapar ve çok daha hızlıdır.
  • check_circle Hangi YOLO sürümü kullanmalıyım? Hız önceliği için YOLOv5n/s, doğruluk önceliği için YOLOv8x veya YOLOv11x önerilir.
  • check_circle YOLO hangi programlama dilleriyle kullanılır? Ultralytics kütüphanesi ile Python en yaygın tercih; C++ ve ONNX runtime desteği de mevcuttur.
  • check_circle IoU nedir ve neden önemlidir? Intersection over Union, tahmin edilen bounding box ile gerçek kutunun örtüşme oranıdır; model doğruluğunu ve NMS'yi yönetir.
  • check_circle YOLO gerçek zamanlı video işleyebilir mi? Evet; optimize modeller 60-155 FPS hızında çalışarak canlı kamera akışlarını işleyebilir.