Image Segmentation
La segmentazione delle immagini divide un'immagine in regioni di pixel che mostrano esattamente dove si trova ogni classe o oggetto. Confronto tra segmentazione semantica, per istanze e panottica.
La segmentazione delle immagini è l'attività di visione artificiale che suddivide un'immagine in regioni assegnando etichette ai suoi pixel. Il risultato è un insieme di maschere che mostrano esattamente quali pixel appartengono a ciascuna classe o oggetto. Rispetto al rilevamento degli oggetti, che localizza ciascun oggetto con un riquadro di delimitazione rettangolare che include anche lo sfondo, la segmentazione traccia il contorno effettivo di ogni oggetto o regione ed è molto più dettagliata della classificazione delle immagini, che assegna un'unica etichetta all'intera immagine. Questa precisione è importante ogni volta che una decisione dipende dall'area, dal contorno o dal contatto tra gli oggetti, per esempio per misurare un tumore o individuare lo spazio libero davanti a un'auto.
Tipi di segmentazione delle immagini#
Le attività di segmentazione si distinguono per il significato delle etichette assegnate ai pixel. La visione artificiale distingue le «cose», oggetti enumerabili come persone e auto, dalle «sostanze», regioni amorfe come strade, erba e cielo.
- Segmentazione semantica: assegna una classe a ogni pixel, includendo sia le cose sia le sostanze, e riunisce tutti gli oggetti di una classe nella stessa regione.
- Segmentazione delle istanze: rileva ogni oggetto enumerabile e gli assegna una maschera e un ID propri, così due persone che si toccano restano separate; i pixel dello sfondo non ricevono etichette.
- Segmentazione panottica: assegna una classe a ogni pixel e aggiunge un ID di istanza ai pixel degli oggetti enumerabili, riunendo i due approcci precedenti.
- Segmentazione interattiva: restituisce una maschera dell'elemento indicato dal clic, dal riquadro o dal prompt testuale dell'utente, come fanno modelli basati su prompt come il Segment Anything Model (SAM).
I primi tre approcci rispondono a domande diverse, perciò scegliere tra loro è una decisione semplice:
Come funzionano i modelli di segmentazione#
I metodi classici raggruppano i pixel in base a indizi di basso livello, come intensità, colore e bordi: soglia con il metodo di Otsu, crescita delle regioni, trasformata watershed, clustering dei colori con k-means e tagli di grafo. OpenCV ne implementa diversi, che restano utili su immagini pulite e controllate, come componenti retroilluminati su un nastro trasportatore; raggruppano i pixel senza sapere cosa rappresentino i gruppi.
I modelli di deep learning apprendono sia i confini sia il significato delle regioni da maschere etichettate. Le reti encoder-decoder come U-Net riducono la risoluzione di un'immagine per acquisirne il contesto e poi la riportano alla risoluzione originale per effettuare previsioni a livello di pixel. I modelli di istanza come Mask R-CNN e i modelli YOLO di segmentazione aggiungono una testa per le maschere a un rilevatore di oggetti, mentre i modelli Transformer come Mask2Former gestiscono la segmentazione semantica, delle istanze e panottica con un'unica architettura. I modelli di base basati su prompt hanno esteso la segmentazione a oggetti arbitrari: SAM è stato rilasciato nel 2023 dopo l'addestramento su 1,1 miliardi di maschere tratte da 11 milioni di immagini, SAM 2 ha aggiunto i video nel 2024 e SAM 3 è arrivato nel novembre 2025, segmentando ogni istanza di un concetto indicato in un prompt testuale. Poiché le etichette di segmentazione sono poligoni o maschere a livello di pixel e richiedono molto più tempo per essere disegnate rispetto ai riquadri, questi modelli basati su prompt ora generano bozze di numerose maschere di addestramento a partire da un singolo clic.
Anche il tipo di attività determina la forma dell'output. Ultralytics distribuisce YOLO26 in due famiglie di modelli distinte, -seg per le istanze e -sem per la segmentazione semantica; eseguirle sulla stessa foto mette in evidenza la differenza:
from ultralytics import YOLO
# Carica un modello di segmentazione delle istanze e uno di segmentazione semantica
instance_model = YOLO("yolo26n-seg.pt")
semantic_model = YOLO("yolo26n-sem.pt")
# Segmenta la stessa immagine di una strada con entrambi
image = "https://ultralytics.com/images/bus.jpg"
instance_results = instance_model(image)
semantic_results = semantic_model(image)
# Output delle istanze: una maschera binaria per ogni oggetto rilevato, con forma (oggetti, altezza, larghezza)
print(instance_results[0].masks.data.shape)
# Output semantico: una mappa delle classi per l'intera immagine, con forma (altezza, larghezza)
print(semantic_results[0].semantic_mask.data.shape)La prima dimensione dell'output delle istanze corrisponde al numero di oggetti rilevati, consentendo di contarli nei risultati delle istanze. Ogni tipo di output ha una metrica propria: precisione media (mAP) delle maschere per la segmentazione delle istanze, Intersection over Union (IoU) medio per la segmentazione semantica e qualità panottica (PQ) per la segmentazione panottica.
Applicazioni nel mondo reale#
- Analisi delle immagini mediche: gli strumenti radiologici delineano organi, tumori e lesioni nelle scansioni TC e MRI per misurarne il volume e pianificare interventi chirurgici o radioterapia.
- Guida autonoma: i sistemi di percezione segmentano strade, marciapiedi, veicoli e pedoni in ogni fotogramma per individuare lo spazio percorribile.
- Analisi delle immagini satellitari: le mappe di copertura del suolo classificano ogni pixel come acqua, foresta, terreno agricolo o edificio per monitorare i cambiamenti nel tempo.
- Modifica di foto e video: la rimozione dello sfondo, la sfocatura in modalità ritratto e la sostituzione del cielo si basano su maschere di persone e cielo calcolate sul dispositivo.
- Robotica e produzione: i robot usano maschere degli oggetti per calcolare i punti di presa su componenti irregolari, mentre i sistemi di ispezione misurano l'area esatta di difetti come graffi e crepe.










