Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Torna al glossario di Ultralytics

Anchor-Based Detectors

I rilevatori basati su anchor prevedono gli oggetti come scostamenti rispetto a anchor box predefinite, come avviene in Faster R-CNN, SSD, RetinaNet e YOLOv5. Come funzionano e come si confrontano.

I rilevatori basati su anchor sono modelli di rilevamento degli oggetti che dispongono anchor box predefinite sull'immagine e, per ciascuna anchor, prevedono i punteggi di classe e gli offset che la trasformano in una bounding box adattata all'oggetto. Questa famiglia comprende modelli a due stadi, come Faster R-CNN, la cui rete di proposte di regioni assegna punteggi alle anchor per generare regioni candidate, e modelli a uno stadio, come SSD, RetinaNet e YOLOv2 fino a YOLOv5, che classificano e perfezionano direttamente ogni anchor. Le anchor sono state il metodo standard per localizzare gli oggetti da Faster R-CNN nel 2015, finché nel 2019 rilevatori senza anchor come FCOS non ne hanno raggiunto l'accuratezza.

Come funziona il rilevamento basato su anchor#

Una backbone e un neck trasformano l'immagine in mappe di caratteristiche, e in ogni cella di ciascuna mappa è collocato un insieme fisso di anchor, di varie dimensioni e proporzioni. Per ogni anchor, la testa di rilevamento prevede un punteggio per classe, oltre a un punteggio di objectness da YOLOv2 a YOLOv5, e quattro valori di regressione. La codifica ampiamente usata di Faster R-CNN sposta il centro dell'anchor di frazioni della sua larghezza e altezza e scala esponenzialmente larghezza e altezza:

import torch

# One anchor as (center x, center y, width, height) in pixels
anchor = torch.tensor([320.0, 240.0, 64.0, 128.0])

# Offsets (tx, ty, tw, th) that the regression branch predicts for this anchor
tx, ty, tw, th = torch.tensor([0.25, -0.10, 0.20, -0.05])

# Faster R-CNN decoding: shift the center in units of anchor size, scale width and height exponentially
cx = anchor[0] + tx * anchor[2]
cy = anchor[1] + ty * anchor[3]
w = anchor[2] * torch.exp(tw)
h = anchor[3] * torch.exp(th)
print(f"anchor 64x128 at (320, 240) -> box {w:.1f}x{h:.1f} at ({cx:.1f}, {cy:.1f})")

L'ancora diventa un riquadro di 78,2 × 121,8 pixel centrato in (336,0, 227,2): si è spostata di 16 pixel a destra e di 12,8 pixel verso l'alto, è diventata più larga del 22% (exp(0.2)) e si è ridotta del 5% in altezza (exp(−0.05)). Poiché gli scostamenti sono relativi alle dimensioni dell'ancora, gli stessi valori previsti funzionano con ancore piccole e grandi.

In fase di inferenza, il rilevatore decodifica ogni anchor in questo modo, scarta le box al di sotto di una soglia di confidenza ed esegue la soppressione dei massimi non locali (NMS) per eliminare i duplicati provenienti dalle anchor vicine.

Addestramento: etichettare ogni anchor#

Durante l'addestramento, ogni anchor viene etichettata in base alla sua intersezione sull'unione (IoU) con le box etichettate. RetinaNet usa queste soglie:

La rete di proposte di regioni di Faster R-CNN usa valori più severi, 0,7 e 0,3. Le 9 anchor per posizione di RetinaNet, distribuite su cinque livelli piramidali, totalizzano circa 100.000 anchor per immagine, quasi tutte negative; la sua focal loss riduce il peso di questi esempi negativi facili, così non sovrastano l'addestramento.

Principali architetture basate su anchor#

  • Rilevatori a due stadi: La rete di proposte di regioni di Faster R-CNN assegna alle anchor un punteggio di oggetto o sfondo e le perfeziona fino a ottenere circa 300 proposte per immagine; una seconda testa classifica e perfeziona ciascuna proposta. Con una backbone VGG-16, raggiungeva 5 FPS su una GPU; Mask R-CNN aggiunge un ramo per le maschere alla stessa architettura.
  • Rilevatori di oggetti a uno stadio: SSD, RetinaNet e i modelli YOLO da YOLOv2 a YOLOv5 classificano e perfezionano ogni anchor in un solo passaggio. YOLOv2 ha sostituito le anchor scelte manualmente con cluster k-means delle larghezze e altezze delle box di addestramento.

Ultralytics YOLOv5 è basato su anchor, con 3 anchor per ciascuno dei suoi tre livelli di output, e abbina le etichette alle anchor in base alla forma: un'anchor è candidata quando larghezza e altezza di un'etichetta sono entrambe entro un fattore 4× rispetto all'anchor. Le varianti YOLOv5u del pacchetto Ultralytics sostituiscono quella testa con la testa suddivisa senza anchor introdotta in YOLOv8, un design portato avanti da YOLO26.

Rilevatori basati su anchor e rilevatori senza anchor#

I rilevatori senza anchor prevedono una box da ogni punto della griglia, come distanze dai quattro bordi, oppure da keypoint come il centro dell'oggetto. Non hanno quindi dimensioni, proporzioni o soglie IoU delle anchor da ottimizzare e producono un candidato per posizione anziché uno per ogni forma di anchor. ATSS ha ricondotto il divario di accuratezza tra RetinaNet e FCOS, privo di anchor, al metodo di scelta dei campioni positivi: con la stessa regola di selezione, i due hanno raggiunto la stessa accuratezza e RetinaNet ha ottenuto 39,2 AP su COCO minival con 9 anchor per posizione e 39,3 con 1.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning