Bounding Box
Scopri come le bounding box abilitano i sistemi di object detection, IA e machine learning. Esplora il loro ruolo nelle applicazioni di computer vision!
Un riquadro di delimitazione è una regione rettangolare definita da coordinate che isola una caratteristica o un oggetto specifico all'interno di un'immagine o di un fotogramma video.
immagine o di un fotogramma video. Nel campo della
visione computerizzata, questa annotazione serve come unità
unità fondamentale per la localizzazione di entità distinte, consentendo
sistemi di intelligenza artificiale (AI) di
"vedere" dove si trova un elemento piuttosto che sapere semplicemente che esiste nella scena. Utilizzato principalmente in
di rilevamento degli oggetti, un riquadro di delimitazione delimita
l'estensione spaziale di un obiettivo, come un'auto, una persona o un prodotto, ed è tipicamente associato a un'etichetta di classe e a un punteggio di confidenza che indica la certezza del modello.
punteggio di confidenza che indica la certezza del modello.
Sistemi di coordinate e formati
Per consentire ai modelli di apprendimento automatico (ML) di
elaborare matematicamente i dati visivi, i riquadri di delimitazione vengono rappresentati utilizzando sistemi di coordinate specifici. La scelta del formato
formato dipende spesso dai set di dati utilizzati per l'addestramento o dai requisiti specifici dell'architettura di rilevamento.
requisiti specifici dell'architettura di rilevamento.
-
XYXY (Coordinate dell'angolo): Questo formato utilizza i valori assoluti dei pixel dell'angolo in alto a sinistra ($x1,
y1$) e dell'angolo inferiore destro ($x2, y2$). È molto intuitivo e frequentemente utilizzato nelle librerie di visualizzazione
come Matplotlib per disegnare rettangoli sulle immagini.
-
XYWH (dimensione centrale): Diffusa dal set di dati
COCO , questa rappresentazione specifica il punto centrale dell'oggetto ($x_center, y_center$) seguito da larghezza e altezza del riquadro.
punto centrale dell'oggetto ($x_center, y_center$) seguito dalla larghezza e dall'altezza del riquadro. Questo formato è
fondamentale per il calcolo delle funzioni di perdita durante
l'addestramento del modello.
-
Coordinate normalizzate: Per garantire la
scalabilità tra diverse risoluzioni dell'immagine,
le coordinate sono spesso normalizzate in un intervallo compreso tra 0 e 1 rispetto alle dimensioni dell'immagine. Questo permette ai modelli di
generalizzare meglio i modelli quando elaborano input di dimensioni diverse.
Tipi di bounding box
Mentre la scatola rettangolare standard si adatta a molti scenari, gli ambienti complessi del mondo reale richiedono talvolta forme più specializzate.
forme specializzate.
-
Bounding Box allineati agli assi (AABB): Questi sono i riquadri standard in cui i bordi sono paralleli agli assi dell'immagine (verticale e orizzontale).
assi dell'immagine (verticale e orizzontale). Sono efficienti dal punto di vista computazionale e sono l'output predefinito per i modelli ad alta velocità come i
modelli ad alta velocità come YOLO11.
-
Bounding Box orientato (OBB): Quando gli oggetti sono ruotati, sottili o strettamente uniti, come ad esempio le navi in un porto o il testo in un documento, un riquadro standard può includere troppo rumore di fondo.
navi in un porto o il testo in un documento, un riquadro standard può includere troppo rumore di fondo. Un
Oriented Bounding Box include un parametro angolare aggiuntivo,
che consente al rettangolo di ruotare e di adattarsi perfettamente all'oggetto. Questo è fondamentale per compiti precisi come
l'analisi di immagini satellitari.
Applicazioni nel mondo reale
Le Bounding Box fungono da elementi costitutivi di sofisticati sistemi decisionali in diversi settori.
-
Veicoli autonomi: La tecnologia di guida autonoma si basa molto sui riquadri di delimitazione per mantenere la consapevolezza
consapevolezza spaziale. Disegnando
intorno a pedoni, semafori e altre auto, il sistema stima le distanze e le traiettorie per evitare le collisioni.
collisioni. Potete approfondire l'argomento nella nostra panoramica sull'IA nel settore automobilistico.
AI nel settore automobilistico.
-
Gestione del commercio al dettaglio e dell'inventario: I negozi intelligenti utilizzano caselle di delimitazione per track prodotti sugli scaffali.
I sistemi possono identificare gli articoli esauriti o automatizzare i processi di checkout localizzando i prodotti nel carrello. Questo
migliorare l'efficienza ed è un componente chiave delle moderne soluzioni di
AI nelle soluzioni di vendita al dettaglio.
Bounding Box e segmentazione
È importante distinguere i riquadri di delimitazione dalla
segmentazione dell'immagine, in quanto risolvono diversi
livelli di granularità.
-
Bounding Box: Fornisce una localizzazione grossolana. Indica in modo approssimativo dove si trova l'oggetto
racchiuso in una scatola. È più veloce da annotare e computazionalmente più economico per l'inferenza in tempo reale.
per l'inferenza in tempo reale.
-
Segmentazione dell'istanza: Crea una maschera perfetta in termini di pixel che delinea la forma esatta dell'oggetto.
Sebbene sia più precisa, la segmentazione è più impegnativa dal punto di vista computazionale. Per applicazioni come
analisi delle immagini mediche, dove i confini esatti del tumore
tumorali, la segmentazione è spesso preferita ai semplici riquadri di delimitazione.
Esempio pratico con Python
Lo snippet seguente mostra come utilizzare l'opzione ultralytics per generare caselle di delimitazione. Carichiamo
un'immagine pre-addestrata YOLO11 e stampare i dati delle coordinate degli oggetti
oggetti rilevati.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an online image
results = model("https://ultralytics.com/images/bus.jpg")
# Access the bounding box coordinates (xyxy format) for the first detection
box = results[0].boxes[0]
print(f"Object Class: {box.cls}")
print(f"Coordinates: {box.xyxy}")
L'accuratezza di queste previsioni viene tipicamente valutata utilizzando una metrica chiamata
Intersezione su Unione (IoU), che misura la
che misura la sovrapposizione tra il riquadro previsto e la
verità di base fornita da etichettatori umani. Punteggi IoU
indicano che il modello ha localizzato correttamente l'oggetto.