Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Detection Head

Scopri come una testa di rilevamento consente il rilevamento di oggetti in tempo reale. Esplora il suo ruolo in Ultralytics per la previsione di riquadri di delimitazione ed etichette con elevata precisione.

Una testa di rilevamento funge da livello decisionale finale in un'architettura di rete neurale per il rilevamento di oggetti . Mentre i livelli precedenti del modello sono responsabili della comprensione delle forme, delle texture e delle caratteristiche all'interno di un'immagine, la testa di rilevamento è il componente specifico che interpreta queste informazioni per prevedere esattamente quali oggetti sono presenti e dove si trovano. Trasforma i dati astratti e di alto livello prodotti dall' estrattore di caratteristiche in risultati utilizzabili, generando in genere una serie di riquadri che racchiudono gli oggetti identificati insieme alle relative etichette di classe e ai punteggi di confidenza.

Distinguere la testa dalla colonna vertebrale e dal collo

Per comprendere appieno la funzione di una testa di rilevamento, è utile visualizzare i moderni rilevatori come composti da tre stadi principali, ciascuno dei quali svolge una funzione distinta nella pipeline di visione artificiale (CV):

  • Backbone: è la parte iniziale della rete, spesso una rete neurale convoluzionale (CNN) come ResNet o CSPNet. Elabora l'immagine grezza in ingresso per creare mappe di caratteristiche che rappresentano modelli visivi.
  • Collo: situato tra la colonna vertebrale e la testa, il collo affina e combina caratteristiche provenienti da diverse scale. Architetture come la Feature Pyramid Network (FPN) assicurano che il modello sia in grado di detect di dimensioni variabili aggregando il contesto.
  • Capo: L'ultimo componente che utilizza le caratteristiche raffinate dal collo. Esegue l'effettivo compito di classificazione (che cos'è?) e regressione (dove si trova?).

Evoluzione: basata su ancoraggi vs. senza ancoraggi

Il design delle testine di rilevamento si è evoluto in modo significativo per migliorare la velocità e la precisione, in particolare con il passaggio dai metodi tradizionali ai moderni modelli di inferenza in tempo reale.

  • Teste basate su ancoraggi: i rilevatori di oggetti tradizionali a stadio singolo si basavano su riquadri di ancoraggiopredefiniti, ovvero forme di riferimento fisse di varie dimensioni. La testa prevedeva di quanto allungare o spostare questi ancoraggi per adattarli all'oggetto. Questo approccio è descritto in dettaglio nella ricerca fondamentale su Faster R-CNN.
  • Teste senza ancoraggio: i modelli all'avanguardia, compreso l'ultimo YOLO26, utilizzano rilevatori senza ancoraggio. Queste teste prevedono i centri e le dimensioni degli oggetti direttamente dai pixel nelle mappe delle caratteristiche, eliminando la necessità di una regolazione manuale dell'ancoraggio . Ciò semplifica l'architettura e migliora la capacità del modello di generalizzare forme di oggetti nuovi, una tecnica spesso associata al Fully Convolutional One-Stage Object Detection (FCOS).

Applicazioni nel mondo reale

La precisione della testa di rilevamento è fondamentale per l'implementazione dell' intelligenza artificiale (AI) in ambienti industriali e critici per la sicurezza. Gli utenti possono facilmente annotare i dati e addestrare queste teste specializzate utilizzando la Ultralytics .

  • Guida autonoma: nell' intelligenza artificiale per il settore automobilistico, la testa di rilevamento ha il compito di distinguere in tempo reale tra pedoni, semafori e altri veicoli. Una testa altamente ottimizzata garantisce che la latenza di inferenza rimanga sufficientemente bassa da consentire al veicolo di reagire istantaneamente.
  • Diagnostica medica: nell' analisi delle immagini mediche, le testine di rilevamento sono ottimizzate per individuare anomalie come i tumori nelle scansioni MRI. Il ramo di regressione deve essere estremamente accurato per delineare i confini esatti di una lesione, assistendo i medici nelle soluzioni sanitarie.

Esempio di codice

L'esempio seguente mostra come caricare un YOLO26 modello e ispeziona l'output della sua testa di rilevamento. Quando viene eseguita l'inferenza, la testa elabora l'immagine e restituisce il risultato finale. boxes contenente coordinate e ID di classe.

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()}")

Questa interazione evidenzia come la testa di rilevamento traduca le complesse attivazioni della rete neurale in dati leggibili che gli sviluppatori possono utilizzare per attività a valle come il tracciamento o il conteggio degli oggetti.

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora