Detection Head
Lerne, wie ein Detection Head die Objekterkennung in Echtzeit ermöglicht. Erkunde seine Rolle in Ultralytics YOLO26 für die Vorhersage von Begrenzungsrahmen (Bounding Boxes) und Labels mit hoher Genauigkeit.
Ein detection head fungiert als die letzte Entscheidungsschicht in der Architektur eines neuronalen Netzwerks zur Objekterkennung. Während die früheren Schichten des Modells für das Verständnis von Formen, Texturen und Merkmalen innerhalb eines Bildes verantwortlich sind, ist der detection head die spezifische Komponente, die diese Informationen interpretiert, um vorherzusagen, welche Objekte genau vorhanden sind und wo sie sich befinden. Er wandelt die abstrakten, hochgradigen Daten, die vom Feature-Extraktor erzeugt werden, in umsetzbare Ergebnisse um und gibt typischerweise eine Reihe von bounding boxes aus, die identifizierte Objekte zusammen mit ihren entsprechenden Klassenlabels und confidence scores umschließen.
Link to this sectionUnterscheidung des Heads von Backbone und Neck#
Um die Funktion eines detection head vollständig zu verstehen, ist es hilfreich, sich moderne Detektoren als aus drei Hauptphasen bestehend vorzustellen, von denen jede einen eigenen Zweck in der computer vision (CV)-Pipeline erfüllt:
- Backbone: Dies ist der erste Teil des Netzwerks, oft ein Convolutional Neural Network (CNN) wie ResNet oder CSPNet. Er verarbeitet das rohe Eingabebild, um feature maps zu erstellen, die visuelle Muster darstellen.
- Neck: Der Neck sitzt zwischen dem Backbone und dem Head und verfeinert sowie kombiniert Merkmale aus verschiedenen Maßstäben. Architekturen wie das Feature Pyramid Network (FPN) stellen durch Aggregation von Kontext sicher, dass das Modell Objekte unterschiedlicher Größe erkennen kann.
- Head: Die letzte Komponente, die die verfeinerten Merkmale aus dem Neck konsumiert. Sie führt die eigentliche Aufgabe der Klassifizierung (Was ist es?) und der Regression (Wo ist es?) aus.
Link to this sectionEntwicklung: Anchor-Based vs. Anchor-Free#
Das Design von detection heads hat sich erheblich weiterentwickelt, um Geschwindigkeit und Genauigkeit zu verbessern, insbesondere mit dem Übergang von traditionellen Methoden zu modernen Modellen für real-time inference.
- Anchor-Based Heads: Traditionelle one-stage object detectors stützten sich auf vordefinierte anchor boxes—feste Referenzformen unterschiedlicher Größe. Der Head sagte vorher, wie stark diese Anker gestreckt oder verschoben werden müssen, um das Objekt einzupassen. Dieser Ansatz wird in der Grundlagenforschung zu Faster R-CNN detailliert beschrieben.
- Anchor-Free Heads: Hochmoderne Modelle, einschließlich des neuesten YOLO26, verwenden anchor-free detectors. Diese Heads sagen Objektzentren und -dimensionen direkt aus den Pixeln in den feature maps voraus, wodurch die manuelle Anker-Optimierung entfällt. Dies vereinfacht die Architektur und verbessert die Fähigkeit des Modells, auf neuartige Objektformen zu generalisieren, eine Technik, die oft mit Fully Convolutional One-Stage Object Detection (FCOS) in Verbindung gebracht wird.
Link to this sectionPraxisanwendungen#
Die Präzision des detection head ist entscheidend für den Einsatz von artificial intelligence (AI) in sicherheitskritischen und industriellen Umgebungen. Nutzer können Daten einfach annotieren und diese spezialisierten Heads mithilfe der Ultralytics Platform trainieren.
- Autonomes Fahren: Bei AI for automotive ist der detection head dafür verantwortlich, in Echtzeit zwischen Fußgängern, Ampeln und anderen Fahrzeugen zu unterscheiden. Ein hochoptimierter Head stellt sicher, dass die inference latency niedrig genug bleibt, damit das Fahrzeug sofort reagieren kann.
- Medizinische Diagnostik: Bei der medical image analysis werden detection heads feinabgestimmt, um Anomalien wie Tumore in MRT-Scans zu lokalisieren. Der Regressionszweig muss extrem genau sein, um die exakten Grenzen einer Läsion zu umreißen und Ärzte bei healthcare solutions zu unterstützen.
Link to this sectionCode-Beispiel#
Das folgende Beispiel zeigt, wie du ein YOLO26-Modell lädst und die Ausgabe seines detection head untersuchst. Wenn die Inference läuft, verarbeitet der Head das Bild und gibt die finalen boxes mit Koordinaten und Klassen-IDs zurück.
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()}")Diese Interaktion verdeutlicht, wie der detection head komplexe Aktivierungen des neuronalen Netzwerks in lesbare Daten übersetzt, die Entwickler für nachgelagerte Aufgaben wie object tracking oder Zählungen verwenden können.






