One-Stage Object Detectors
Los detectores de objetos de una sola etapa predicen todas las cajas y clases en una única pasada de la red, sin una etapa de generación de propuestas de regiones. Descubre cómo funcionan, los modelos clave y sus ventajas e inconvenientes.
Los detectores de objetos de una etapa son modelos de detección de objetos que predicen los cuadros delimitadores y las etiquetas de clase de todos los objetos de una imagen en una sola pasada hacia delante de una red, puntuando a la vez una cuadrícula densa de ubicaciones candidatas. No tienen una etapa independiente de propuesta de regiones: los detectores de objetos de dos etapas primero proponen regiones que probablemente contengan un objeto y luego ejecutan una segunda cabeza en cada región. Al eliminar ese paso, los detectores de una etapa se convirtieron en la base de la detección en tiempo real, desde YOLO, cuyo modelo base alcanzaba 45 fotogramas por segundo en 2015, hasta los modelos actuales.
Cómo funcionan los detectores de una etapa#
Una red troncal convierte la imagen en mapas de características, un cuello los combina a distintas escalas y una cabeza de detección densa predice puntuaciones de clase y un cuadro en cada ubicación de cada escala. Los primeros modelos de una etapa, como SSD, YOLOv2 y RetinaNet, predecían desplazamientos desde varios cuadros de anclaje por ubicación; desde FCOS, en 2019, la mayoría predice las distancias desde cada ubicación hasta los cuatro bordes del cuadro, el diseño de los detectores sin anclajes. El resultado son miles de cuadros candidatos, que un umbral de confianza y la supresión no máxima (NMS) reducen a un cuadro por objeto, o que una cabeza entrenada con emparejamiento uno a uno genera directamente.
La ejecución de un detector de una etapa requiere una sola llamada, y el desglose de tiempos muestra una única pasada por la red:
from ultralytics import YOLO
# Load YOLO26n, a one-stage detector pretrained on the 80 COCO classes
model = YOLO("yolo26n.pt")
# One forward pass predicts the box and class of every object in the image
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
print(f"{len(result.boxes)} objects: {[result.names[int(c)] for c in result.boxes.cls]}")
# Milliseconds for resizing the image, the single network pass, and NMS
print(result.speed)result.speed enumera tres pasos: preprocesamiento, inferencia y posprocesamiento; la única pasada de inferencia abarca todos los objetos de la imagen.
Detectores de una etapa frente a detectores de dos etapas#
Ambos diseños comparten la red troncal y el cuello. Después, un detector de dos etapas ejecuta una red de propuesta de regiones que selecciona unos cientos de regiones candidatas, recorta las características de cada región y pasa cada recorte por una segunda cabeza que lo clasifica y lo refina. Un detector de una etapa sustituye esos pasos por una única cabeza densa que procesa todas las ubicaciones de la cuadrícula.
La familia R-CNN lideró la precisión de detección durante años: Faster R-CNN refina unos 300 candidatos por imagen y alcanzaba 5 FPS con una red troncal VGG-16. Los detectores de una etapa eran mucho más rápidos, pero menos precisos, hasta que RetinaNet identificó en 2017 que la diferencia se debía al desequilibrio entre el primer plano y el fondo: un detector denso evalúa unas 100.000 ubicaciones candidatas por imagen, casi todas de fondo, y esos negativos fáciles dominan una función de pérdida estándar. Su función de pérdida focal reduce su peso, y RetinaNet igualó la velocidad de los detectores de una etapa anteriores y superó la precisión de los detectores de dos etapas de su época. Los detectores Transformer, como DETR y RT-DETR, también funcionan como una sola red y predicen un conjunto de tamaño fijo de cuadros mediante emparejamiento uno a uno.
Aplicaciones en el mundo real#
- Análisis del tráfico y del vídeo: Los detectores procesan cada fotograma de todas las transmisiones de las cámaras para contar vehículos, medir el flujo y alimentar los rastreadores de objetos.
- Inspección de fabricación: Las cámaras de la línea detectan defectos y componentes ausentes en piezas que pasan ante la cámara en una fracción de segundo.
- Drones y dispositivos integrados: Una única red pequeña se ajusta al presupuesto de cálculo y consumo de un dron, un teléfono o una cámara inteligente.
Ideas detrás de los detectores modernos de una etapa#
- Redes piramidales de características (FPN): Predecir a partir de varias resoluciones permite que los mapas detallados encuentren objetos pequeños y los mapas generales encuentren los grandes.
- Pérdida focal: Reducir el peso de los candidatos de fondo fáciles solucionó el desequilibrio de clases que limitaba los primeros detectores densos.
- Asignación de etiquetas: Métodos como SimOTA y la asignación alineada con la tarea seleccionan durante el entrenamiento las ubicaciones positivas de cada objeto a partir de las propias predicciones.
- Cabezas sin NMS: Una cabeza entrenada con emparejamiento uno a uno genera un cuadro por objeto y elimina un paso de posprocesamiento cuyo coste aumenta con el número de candidatos.
YOLO26 es un detector de una sola etapa y sin anclajes, con ambos tipos de cabezal: aplica NMS de forma predeterminada, y nms=False activa su cabezal uno a uno. YOLO26n alcanza 40.9 mAP50-95 en COCO con NMS y 40.1 sin ella, a 1,7 ms por imagen en una GPU NVIDIA T4 con TensorRT.










