Detection Head
Bir algılama başlığının gerçek zamanlı nesne algılamayı nasıl mümkün kıldığını öğren. Ultralytics YOLO26'daki rolünü ve sınırlayıcı kutularla etiketleri yüksek doğrulukla nasıl tahmin ettiğini keşfet.
Bir tespit başlığı, nesne tespiti sinir ağı mimarisinde son karar verme katmanı olarak görev yapar. Modelin önceki katmanları bir görüntüdeki şekilleri, dokuları ve özellikleri anlamaktan sorumluyken tespit başlığı, bu bilgileri yorumlayarak hangi nesnelerin bulunduğunu ve nerede konumlandıklarını tam olarak tahmin eden özel bileşendir. Özellik çıkarıcı tarafından üretilen soyut, üst düzey verileri eyleme dönüştürülebilir sonuçlara çevirir ve genellikle tespit edilen nesneleri çevreleyen bir dizi sınırlayıcı kutu ile bunlara karşılık gelen sınıf etiketlerini ve güven skorlarını çıktılar.
Başlığı Omurga ve Boyun Yapısından Ayırma#
Bir tespit başlığının işlevini tam olarak kavramak için modern tespit modellerini, bilgisayarlı görü (CV) işlem hattında her biri farklı bir amaca hizmet eden üç temel aşamadan oluşuyormuş gibi görselleştirmek yararlı olur:
- Omurga: Bu, genellikle ResNet veya CSPNet gibi bir Evrişimli Sinir Ağı (CNN) olan ağın ilk bölümüdür. Görsel örüntüleri temsil eden özellik haritaları oluşturmak için ham giriş görüntüsünü işler.
- Boyun: Omurga ile başlık arasında yer alan boyun, farklı ölçeklerdeki özellikleri iyileştirir ve birleştirir. Özellik Piramidi Ağı (FPN) gibi mimariler, bağlamı bir araya getirerek modelin farklı boyutlardaki nesneleri tespit edebilmesini sağlar.
- Başlık: Boyundan gelen iyileştirilmiş özellikleri kullanan son bileşendir. Sınıflandırma (bu nedir?) ve regresyon (nerede?) görevlerini gerçekleştirir.
Evrim: Çapa Tabanlı ve Çapasız Yaklaşımlar#
Tespit başlıklarının tasarımı, özellikle geleneksel yöntemlerden modern gerçek zamanlı çıkarım modellerine geçişle birlikte, hızı ve doğruluğu artırmak için önemli ölçüde gelişmiştir.
- Çapa Tabanlı Başlıklar: Geleneksel tek aşamalı nesne tespit modelleri, çeşitli boyutlarda önceden tanımlanmış çapa kutularına—sabit referans şekillerine—dayanıyordu. Başlık, nesneye uyacak şekilde bu çapaların ne kadar genişletilmesi veya kaydırılması gerektiğini tahmin ederdi. Bu yaklaşım, Faster R-CNN üzerine yapılan temel araştırmalarda ayrıntılı olarak ele alınmıştır.
- Çapasız Başlıklar: En yeni YOLO26 dahil olmak üzere son teknoloji modeller, çapasız tespit modelleri kullanır. Bu başlıklar, manuel çapa ayarlama gereksinimini ortadan kaldırarak nesne merkezlerini ve boyutlarını doğrudan özellik haritalarındaki piksellerden tahmin eder. Bu, mimariyi sadeleştirir ve modelin yeni nesne şekillerine genelleme yeteneğini artırır; bu teknik genellikle Tamamen Evrişimli Tek Aşamalı Nesne Tespiti (FCOS) ile ilişkilendirilir.
Gerçek Dünya Uygulamaları#
Tespit başlığının hassasiyeti, yapay zekânın (AI) güvenliğin kritik olduğu ve endüstriyel ortamlarda kullanılabilmesi için kritik öneme sahiptir. Kullanıcılar, Ultralytics Platformu ile verileri kolayca açıklayabilir ve bu özel başlıkları eğitebilir.
- Otonom Sürüş: Otomotiv için AI alanında tespit başlığı, yayaları, trafik ışıklarını ve diğer araçları gerçek zamanlı olarak birbirinden ayırt etmekten sorumludur. Yüksek düzeyde optimize edilmiş bir başlık, çıkarım gecikmesinin aracın anında tepki verebilmesi için yeterince düşük kalmasını sağlar.
- Tıbbi Tanı: Tıbbi görüntü analizinde tespit başlıkları, MRI taramalarındaki tümörler gibi anormallikleri bulacak şekilde ince ayarlanır. Regresyon dalı, bir lezyonun kesin sınırlarını belirlemek için son derece doğru olmalı ve doktorlara sağlık hizmeti çözümlerinde yardımcı olmalıdır.
Kod Örneği#
Aşağıdaki örnek, bir YOLO26 modelinin nasıl yükleneceğini ve tespit başlığının çıktısının nasıl inceleneceğini gösterir. Çıkarım çalıştırıldığında başlık görüntüyü işler ve koordinatları ile sınıf kimliklerini içeren nihai boxes değerini döndürür.
from ultralytics import YOLO
# Load the YOLO26n model (nano version)
model = YOLO("yolo26n.pt")
# Run inference on an image to utilize the detection head
results = model("https://ultralytics.com/images/bus.jpg")
# The detection head outputs are stored in results[0].boxes
for box in results[0].boxes:
# Print the bounding box coordinates and the predicted class
print(f"Class: {int(box.cls)}, Coordinates: {box.xywh.numpy()}")Bu etkileşim, tespit başlığının karmaşık sinir ağı aktivasyonlarını, geliştiricilerin nesne takibi veya sayma gibi sonraki işlemlerde kullanabileceği okunabilir verilere nasıl dönüştürdüğünü gösterir.









