Descubra o papel crítico dos detection heads na detecção de objetos, refinando os mapas de características para identificar com precisão as localizações e classes dos objetos.
Uma cabeça de deteção é o componente final e talvez o mais crítico de um modelo de deteção de objectos, servindo como camada de decisão que traduz as caraterísticas da imagem codificada em previsões acionáveis. Localizada no final de uma rede neural de rede neural de aprendizagem profunda, especificamente depois da a espinha dorsal e o pescoço, a cabeça de deteção processa mapas de de alto nível para produzir o resultado final: a classe do objeto o objeto e a sua localização precisa na imagem. Enquanto as camadas anteriores da rede se concentram na extração de caraterísticas identificar arestas, texturas e padrões complexos - a cabeça de deteção interpreta estes dados para responder a "o que é?" e "onde está?"
A principal responsabilidade de uma cabeça de deteção é a realização de duas tarefas distintas mas simultâneas: classificação e regressão. Nas modernas arquitecturas modernas de deteção de objectos, Estas tarefas são frequentemente tratadas por ramos separados dentro da cabeça, uma escolha de design que permite ao modelo especializar-se em diferentes aspectos da previsão.
A saída da cabeça de deteção é normalmente um conjunto denso de detecções candidatas. Para finalizar os resultados, etapas de pós-processamento como a Supressão Não Máxima (NMS) são para filtrar as caixas sobrepostas e reter apenas as previsões mais fiáveis.
A conceção da cabeça de deteção determina a forma como um modelo aborda o problema da localização de objectos.
A eficiência e a precisão da cabeça de deteção são vitais para a implantação da inteligência artificial (IA) em ambientes complexos.
É útil distinguir a cabeça de deteção dos outros componentes principais de uma Rede Neuronal Convolucional (CNN):
O seguinte trecho de código Python demonstra como inspecionar a cabeça de deteção de um modelo YOLO11 pré-treinado utilizando
o ultralytics pacote. Isto ajuda os utilizadores a compreender a estrutura da camada final responsável pela
inferência.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Inspect the final detection head layer
# This typically reveals the number of classes (nc) and anchors/outputs
print(model.model.model[-1])
# Run inference to see the head's output in action
results = model("https://ultralytics.com/images/bus.jpg")
Compreender a cabeça de deteção é essencial para quem pretende otimizar o desempenho do modelo ou efetuar tarefas avançadas como a aprendizagem por transferência, em que a cabeça é frequentemente substituída para treinar o modelo num novo conjunto de dados personalizado. Os investigadores experimentam continuamente novos designs de cabeça para melhorar métricas como precisão média média (mAP), alargando os limites do que a visão computacional pode alcançar.