Yolo Vision Shenzhen
Shenzhen
Şimdi katılın
Sözlük

Çapa Kutuları

Learn how anchor boxes act as templates for object detection. Explore their role in localization, compare anchor-based vs. anchor-free models like [YOLO26](https://docs.ultralytics.com/models/yolo26/), and discover real-world CV applications.

Anchor kutuları, nesne algılama modellerinin nesneleri bulup sınıflandırmasına yardımcı olmak için bir görüntünün üzerine yerleştirilen, belirli en boy oranlarına ve ölçeklere sahip önceden tanımlanmış referans dikdörtgenlerdir. Model, sinir ağından nesnenin tam boyutunu ve konumunu sıfırdan tahmin etmesini istemek yerine (ki bu, nesnelerin çok çeşitli şekilleri nedeniyle istikrarsız olabilir) bu sabit şablonları başlangıç noktası olarak kullanır. Bu ilk kutuların gerçek duruma uyacak şekilde ne kadar ayarlanması veya "gerilemesi" gerektiğini tahmin etmeyi öğrenerek, sistem daha hızlı yakınsama ve daha yüksek doğruluk elde edebilir. Bu teknik, karmaşık yerelleştirme görevini daha yönetilebilir bir optimizasyon sorununa indirgeyerek bilgisayar görme (CV) alanını temelden dönüştürdü.

Anchor Kutularının Mekanizması

Klasik çapa tabanlı dedektörlerde, giriş görüntüsü bir hücre ızgarasına bölünür. Her hücre konumunda, ağ farklı geometrilere sahip birden fazla çapa kutusu oluşturur . Örneğin, uzun detect yayayı ve geniş bir arabayı aynı anda detect için model, aynı merkez noktasında uzun, dar bir kutu ve kısa, geniş bir kutu önerebilir .

During model training, these anchors are matched against actual objects using a metric called Intersection over Union (IoU). Anchors that overlap significantly with a labeled object are designated as "positive" samples. The network then learns two parallel tasks:

  1. Sınıflandırma: Bağlantıya, belirli bir sınıfı (örneğin, "köpek" veya "bisiklet") içerme olasılığını gösteren bir olasılık puanı atar. Bu, çapraz entropi kaybı gibi standart denetimli öğrenme hedeflerini kullanır. Bu, çapraz entropi kaybı gibi standart denetimli öğrenme hedeflerini kullanır.
  2. Kutu Regresyonu: Genel bağlantı noktasını sıkı oturan bir sınırlayıcı kutuya dönüştürmek için gereken kesin ofset değerlerini (koordinat kaydırmaları ve ölçeklendirme faktörleri) hesaplar.

Bu yaklaşım, modelin birbirine yakın konumlanmış farklı boyutlardaki birden fazla nesneyi işleyebilmesini sağlar, çünkü her nesne kendi şekline en uygun bağlantı noktasına atanabilir.

Gerçek Dünya Uygulamaları

Daha yeni mimariler çapa içermeyen tasarımlara doğru ilerliyor olsa da, çapa kutuları nesne özelliklerinin öngörülebilir olduğu birçok yerleşik üretim sisteminde hayati önemini korumaktadır.

  • Perakende ve Envanter Yönetimi: AI destekli perakende çözümlerinde, kameralar raf stoklarını izler. Mısır gevreği kutuları veya soda kutuları gibi ürünlerin boyutları standart olduğundan, sabit kutular bu belirli en boy oranlarına göre ayarlanabilir. Bu ön bilgi, modelin dağınık ortamlarda bile yüksek hatırlama oranını korumasına yardımcı olur.
  • Otonom Sürüş: Otonom araçlardaki algılama yığınları yayaları, araçları ve trafik işaretlerini algılamaya dayanır. Uzaktan görülen bir araba, yola kıyasla nispeten tutarlı bir şekil profiline sahip olduğundan, bu şekillere göre uyarlanmış bağlantı noktaları kullanmak, sağlam nesne izleme ve mesafe tahmini sağlar.

Ankraj Tabanlı ve Ankrajsız

Geleneksel çapa tabanlı yöntemler ile modern çapasız dedektörler arasında ayrım yapmak önemlidir.

  • Anchor Tabanlı: Orijinal Faster R-CNN veya erken YOLO (ör. YOLOv5) gibi modeller bu önceden tanımlanmış şablonları kullanır. Bunlar sağlamdır ancak genellikle hiperparametrelerin (anchor boyutları/oranları) manuel olarak ayarlanmasını veya k-means kümeleme gibi kümeleme algoritmalarının yeni veri kümelerine uyum sağlamak için kullanılmasını gerektirir.
  • Anchor-Free: YOLO26 dahil olmak üzere gelişmiş modeller, genellikle anchor-free veya uçtan uca yaklaşımlar kullanır. Bu ağlar, nesne merkezlerini veya kilit noktaları doğrudan tahmin eder ve manuel anchor yapılandırması ihtiyacını ortadan kaldırır. Bu, mimariyi basitleştirir ve binlerce boş arka plan anchor'ını işlemek için gereken hesaplamayı ortadan kaldırarak çıkarımları hızlandırır.

Örnek: Bağlantı Bilgilerine Erişim

Ultralytics gibi modern üst düzey API'ler eğitim sırasında bu ayrıntıları soyutlasa da, eski model mimarileriyle çalışırken veya model yapılandırma dosyalarını analiz ederken çapaları anlamak yararlıdır. Aşağıdaki kod parçacığı, bir modeli yüklemeyi ve yapılandırmasını incelemeyi gösterir. Çapa ayarları (varsa) genellikle burada tanımlanır.

from ultralytics import YOLO

# Load a pre-trained YOLO model (YOLO26 is anchor-free, but legacy configs act similarly)
model = YOLO("yolo26n.pt")

# Inspect the model's stride, which relates to grid cell sizing in detection
print(f"Model strides: {model.model.stride}")

# For older anchor-based models, anchors might be stored in the model's attributes
# Modern anchor-free models calculate targets dynamically without fixed boxes
if hasattr(model.model, "anchors"):
    print(f"Anchors: {model.model.anchors}")
else:
    print("This model architecture is anchor-free.")

Zorluklar ve Dikkat Edilmesi Gerekenler

Etkili olmalarına rağmen, çapa kutuları karmaşıklık yaratır. Oluşturulan çok sayıda çapa (genellikle görüntü başına on binlerce) çoğu çapa sadece arka planı kapladığından sınıf dengesizliği sorunu yaratır. Focal Loss gibi teknikler, kolay arka plan örneklerinin ağırlığını azaltarak bu sorunu hafifletmek için kullanılır. Ek olarak, nihai çıktı genellikle Non-Maximum Suppression (NMS) gerektirir, böylece gereksiz çakışan kutular filtrelenir ve her nesne için yalnızca en güvenilir algılama kalır.

Ultralytics topluluğuna katılın

Yapay zekanın geleceğine katılın. Küresel yenilikçilerle bağlantı kurun, işbirliği yapın ve birlikte büyüyün

Şimdi katılın