Anchor-Based Detectors
Çapa tabanlı algılayıcılar, nesneleri Faster R-CNN, SSD, RetinaNet ve YOLOv5'te olduğu gibi önceden tanımlanmış çapa kutularına göre ofsetler olarak tahmin eder. Nasıl çalıştıkları ve karşılaştırmaları.
Çapa tabanlı algılayıcılar, önceden tanımlanmış çapa kutularını görüntüye döşeyen ve her çapa için sınıf puanları ile onu uygun bir sınırlayıcı kutuya dönüştüren ofsetleri tahmin eden nesne algılama modelleridir. Bu aile; bölge öneri ağının aday bölgeler üretmek için çapaları puanladığı Faster R-CNN gibi iki aşamalı modelleri ve SSD, RetinaNet ile YOLOv2'den YOLOv5'e kadar olan modeller gibi her çapayı doğrudan sınıflandırıp iyileştiren tek aşamalı modelleri kapsar. Çapalar, 2015'te Faster R-CNN'in ortaya çıkışından 2019'da FCOS gibi çapasız algılayıcıların benzer doğruluğa ulaşmasına kadar nesneleri konumlandırmanın standart yoluydu.
Çapa Tabanlı Algılama Nasıl Çalışır#
Omurga ve boyun, görüntüyü özellik haritalarına dönüştürür; sabit bir çapa kümesi (birkaç boyut ve en-boy oranı) da her haritanın her hücresine yerleştirilir. Algılama başlığı, her çapa için sınıf başına bir puan, YOLOv2'den YOLOv5'e kadar nesne olasılığı puanı ve dört regresyon değeri tahmin eder. Faster R-CNN tarafından yaygınlaştırılan kodlama, çapanın merkezini genişlik ve yüksekliğinin kesirleri kadar kaydırır, genişliğini ve yüksekliğini ise üstel olarak ölçekler:
import torch
# One anchor as (center x, center y, width, height) in pixels
anchor = torch.tensor([320.0, 240.0, 64.0, 128.0])
# Offsets (tx, ty, tw, th) that the regression branch predicts for this anchor
tx, ty, tw, th = torch.tensor([0.25, -0.10, 0.20, -0.05])
# Faster R-CNN decoding: shift the center in units of anchor size, scale width and height exponentially
cx = anchor[0] + tx * anchor[2]
cy = anchor[1] + ty * anchor[3]
w = anchor[2] * torch.exp(tw)
h = anchor[3] * torch.exp(th)
print(f"anchor 64x128 at (320, 240) -> box {w:.1f}x{h:.1f} at ({cx:.1f}, {cy:.1f})")Çapa, (336.0, 227.2) noktasında merkezlenen 78.2 × 121.8 piksellik bir kutuya dönüşür: 16 piksel sağa ve 12.8 piksel yukarı kaymış, %22 genişlemiş (exp(0.2) ve %5 kısalmıştır (exp(−0.05)). Ofsetler çapanın boyutuna göreli olduğundan, aynı tahmin değerleri küçük ve büyük çapalar için işe yarar.
Çıkarım sırasında algılayıcı tüm çapaları bu şekilde çözümler, güven eşiğinin altındaki kutuları eler ve komşu çapaların ürettiği yinelenen kutuları kaldırmak için maksimum olmayan bastırma (NMS) uygular.
Eğitim: Her Çapayı Etiketleme#
Eğitim, her çapayı etiketlenmiş kutularla arasındaki Birleşim Üzerindeki Kesişim (IoU) değerine göre etiketler. RetinaNet şu eşikleri kullanır:
Faster R-CNN'nin bölge öneri ağı daha katı olan 0,7 ve 0,3 değerlerini kullanır. Beş piramit seviyesindeki RetinaNet konum başına 9 çapa kullandığından, görüntü başına yaklaşık 100.000 çapa oluşur ve bunların neredeyse tamamı negatiftir. Odak kaybı, bu kolay negatiflerin eğitim sürecini bastırmaması için ağırlıklarını azaltır.
Başlıca Çapa Tabanlı Mimariler#
- İki aşamalı algılayıcılar: Faster R-CNN'nin bölge öneri ağı çapaları nesne veya arka plan olarak puanlar ve görüntü başına yaklaşık 300 öneriye dönüştürür; ikinci bir başlık da her öneriyi sınıflandırıp iyileştirir. VGG-16 omurgasıyla GPU'da 5 FPS hızında çalışıyordu; Mask R-CNN aynı tasarıma bir maske dalı ekler.
- Tek aşamalı nesne algılayıcılar: SSD, RetinaNet ve YOLOv2'den YOLOv5'e kadar olan YOLO modelleri, her çapayı tek geçişte sınıflandırıp iyileştirir. YOLOv2, elle seçilen çapaları eğitim kutularının genişlik ve yüksekliklerine uygulanan k-means kümeleriyle değiştirmiştir.
Ultralytics YOLOv5 çapa tabanlıdır ve üç çıktı seviyesinin her birinde 3 çapa kullanır. Etiketleri çapalarla şekillerine göre eşleştirir: bir etiketin hem genişliği hem yüksekliği çapanın 4 katı sınırları içindeyse çapa aday sayılır. Ultralytics paketindeki YOLOv5u varyantları, bu başlığı YOLOv8 ile sunulan çapasız ayrık başlıkla değiştirir; YOLO26 da bu tasarımı sürdürür.
Çapa Tabanlı ve Çapasız Algılayıcılar#
Çapasız algılayıcılar, kutuyu her ızgara noktasından dört kenara olan uzaklıklar olarak veya nesne merkezleri gibi kilit noktalardan tahmin eder. Böylece ayarlanması gereken çapa boyutları, en-boy oranları veya IoU eşikleri olmaz ve her çapa şekli yerine konum başına tek bir aday üretirler. ATSS, RetinaNet ile çapasız FCOS arasındaki doğruluk farkının, her modelin pozitif eğitim örneklerini seçme biçiminden kaynaklandığını gösterdi: aynı seçim kuralı uygulandığında iki model de aynı doğruluğa ulaştı. RetinaNet konum başına 9 çapayla COCO minival üzerinde 39,2 AP, 1 çapayla ise 39,3 AP elde etti.










