One-Stage Object Detectors
Detectores de objetos de estágio único preveem todas as caixas e classes em uma única passagem pela rede, sem uma etapa de proposta de regiões. Saiba como funcionam, conheça os principais modelos e veja as compensações.
Os detectores de objetos de estágio único são modelos de detecção de objetos que predizem as caixas delimitadoras e os rótulos de classe de todos os objetos em uma imagem em uma única passagem direta por uma rede, avaliando uma grade densa de locais candidatos de uma vez. Eles não têm uma etapa separada de proposta de regiões: os detectores de objetos de dois estágios primeiro propõem regiões que provavelmente contêm um objeto e, depois, executam uma segunda cabeça em cada região. A remoção dessa etapa tornou os detectores de estágio único a base da detecção em tempo real, do YOLO, cujo modelo básico executava a 45 quadros por segundo em 2015, até os modelos atuais.
Como funcionam os detectores de estágio único#
Um backbone transforma a imagem em mapas de características, um neck os combina em várias escalas e uma cabeça de detecção densa prediz pontuações de classe e uma caixa em cada posição de cada escala. Os primeiros modelos de estágio único, como o SSD, o YOLOv2 e o RetinaNet, prediziam deslocamentos a partir de várias caixas-âncora por posição; desde o FCOS, em 2019, a maioria prediz as distâncias de cada posição até as quatro bordas da caixa, projeto dos detectores sem âncoras. O resultado são milhares de caixas candidatas, que um limiar de confiança e a supressão não máxima (NMS) reduzem a uma caixa por objeto, ou que uma cabeça treinada com correspondência um-para-um produz diretamente.
Executar um detector de estágio único exige uma chamada, e o detalhamento do tempo mostra uma única passagem pela rede:
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 lista três etapas: pré-processamento, inferência e pós-processamento; a única passagem de inferência abrange todos os objetos da imagem.
Detectores de estágio único vs. dois estágios#
Os dois projetos compartilham o backbone e o neck. Em seguida, um detector de dois estágios executa uma rede de propostas de regiões que seleciona algumas centenas de regiões candidatas, recorta as características de cada região e passa cada recorte por uma segunda cabeça que o classifica e refina. Um detector de estágio único substitui essas etapas por uma única cabeça densa em cada posição da grade.
A família R-CNN liderou a precisão da detecção durante anos: o Faster R-CNN refina cerca de 300 propostas por imagem e atingia 5 FPS com um backbone VGG-16. Os detectores de estágio único eram muito mais rápidos, mas tinham menor precisão até que o RetinaNet, em 2017, identificou a causa da diferença: o desequilíbrio entre primeiro plano e plano de fundo. Um detector denso avalia cerca de 100.000 locais candidatos por imagem, quase todos de plano de fundo, e esses exemplos negativos fáceis dominam uma função de perda padrão. Sua função de perda focal reduz o peso deles, e o RetinaNet igualou a velocidade dos detectores de estágio único anteriores e superou a precisão dos detectores de dois estágios da época. Detectores Transformer como o DETR e o RT-DETR também são executados como uma única rede, predizendo um conjunto de tamanho fixo de caixas com correspondência um-para-um.
Aplicações no mundo real#
- Análise de tráfego e vídeo: Os detectores são executados em cada quadro de cada fluxo de câmera para contar veículos, medir o fluxo e alimentar os rastreadores de objetos.
- Inspeção de fabricação: Câmeras na linha detectam defeitos e componentes ausentes em peças que passam pela câmera em uma fração de segundo.
- Drones e dispositivos integrados: Uma única rede pequena cabe no orçamento de computação e energia de um drone, celular ou câmera inteligente.
Ideias por trás dos detectores modernos de estágio único#
- Redes de pirâmide de características (FPN): Fazer predições em várias resoluções permite que mapas detalhados encontrem objetos pequenos e mapas grosseiros encontrem objetos grandes.
- Função de perda focal: Reduzir o peso de candidatos fáceis do plano de fundo corrigiu o desequilíbrio de classes que limitava os primeiros detectores densos.
- Atribuição de rótulos: Métodos como SimOTA e atribuição alinhada à tarefa escolhem, durante o treinamento, as posições positivas de cada objeto com base nas próprias predições.
- Cabeças sem NMS: Uma cabeça treinada com correspondência um-para-um produz uma caixa por objeto, eliminando uma etapa de pós-processamento cujo custo aumenta com o número de candidatos.
YOLO26 é um detector de estágio único e sem âncoras, com os dois tipos de cabeça: aplica NMS por padrão, e nms=False ativa sua cabeça um para um. YOLO26n alcança 40,9 de mAP50-95 no COCO com NMS e 40,1 sem NMS, a 1,7 ms por imagem em uma GPU NVIDIA T4 com TensorRT.










