Detection Head
Aprende cómo una cabeza de detección permite detectar objetos en tiempo real. Explora su función en Ultralytics YOLO26 para predecir cuadros delimitadores y etiquetas con gran precisión.
Una cabeza de detección actúa como la capa final de toma de decisiones en la arquitectura de una red neuronal de detección de objetos. Mientras que las capas anteriores del modelo se encargan de comprender las formas, las texturas y las características de una imagen, la cabeza de detección es el componente específico que interpreta esta información para predecir exactamente qué objetos están presentes y dónde se encuentran. Transforma los datos abstractos de alto nivel producidos por el extractor de características en resultados procesables, normalmente mediante la salida de un conjunto de cajas delimitadoras que encierran los objetos identificados, junto con sus correspondientes etiquetas de clase y puntuaciones de confianza.
Diferencias entre la cabeza, el backbone y el cuello#
Para comprender plenamente la función de una cabeza de detección, resulta útil visualizar los detectores modernos como sistemas compuestos por tres etapas principales, cada una con un propósito distinto en el flujo de visión artificial (CV):
- Backbone: Es la parte inicial de la red, a menudo una red neuronal convolucional (CNN), como ResNet o CSPNet. Procesa la imagen de entrada sin procesar para crear mapas de características que representan patrones visuales.
- Cuello: Situado entre el backbone y la cabeza, el cuello refina y combina características de distintas escalas. Arquitecturas como la red piramidal de características (FPN) garantizan que el modelo pueda detectar objetos de distintos tamaños mediante la agregación de contexto.
- Cabeza: Es el componente final que consume las características refinadas del cuello. Realiza las tareas propiamente dichas de clasificación (¿qué es?) y regresión (¿dónde está?).
Evolución: basada en anclajes frente a libre de anclajes#
El diseño de las cabezas de detección ha evolucionado considerablemente para mejorar la velocidad y la precisión, especialmente con la transición de los métodos tradicionales a los modelos modernos de inferencia en tiempo real.
- Cabezas basadas en anclajes: Los detectores de objetos de una etapa tradicionales se basaban en cajas de anclaje predefinidas: formas de referencia fijas de distintos tamaños. La cabeza predecía cuánto había que estirar o desplazar estos anclajes para ajustarlos al objeto. Este enfoque se detalla en la investigación fundamental sobre Faster R-CNN.
- Cabezas libres de anclajes: Los modelos más avanzados, incluido el último YOLO26, utilizan detectores libres de anclajes. Estas cabezas predicen directamente los centros y las dimensiones de los objetos a partir de los píxeles de los mapas de características, eliminando la necesidad de ajustar manualmente los anclajes. Esto simplifica la arquitectura y mejora la capacidad del modelo para generalizar a formas de objetos nuevas, una técnica que suele asociarse con la detección de objetos de una etapa totalmente convolucional (FCOS).
Aplicaciones en el mundo real#
La precisión de la cabeza de detección es fundamental para implementar inteligencia artificial (AI) en entornos industriales y críticos para la seguridad. Puedes anotar datos y entrenar fácilmente estas cabezas especializadas mediante la Ultralytics Platform.
- Conducción autónoma: En la AI para el sector automovilístico, la cabeza de detección se encarga de distinguir entre peatones, semáforos y otros vehículos en tiempo real. Una cabeza altamente optimizada garantiza que la latencia de inferencia se mantenga lo suficientemente baja para que el vehículo reaccione al instante.
- Diagnóstico médico: En el análisis de imágenes médicas, las cabezas de detección se ajustan para localizar anomalías, como tumores, en exploraciones de resonancia magnética. La rama de regresión debe ser extremadamente precisa para delimitar los bordes exactos de una lesión, ayudando a los médicos en las soluciones sanitarias.
Ejemplo de código#
El siguiente ejemplo muestra cómo cargar un modelo YOLO26 e inspeccionar la salida de su cabeza de detección. Cuando se ejecuta la inferencia, la cabeza procesa la imagen y devuelve el boxes final, que contiene coordenadas e identificadores de clase.
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()}")Esta interacción muestra cómo la cabeza de detección transforma las complejas activaciones de la red neuronal en datos legibles que los desarrolladores pueden utilizar en tareas posteriores, como el seguimiento de objetos o el recuento.









