Cos'è l'instance segmentation? Una guida rapida
Unisciti a noi per dare un'occhiata più da vicino a cos'è l'instance segmentation, come funziona, il suo utilizzo in varie applicazioni di computer vision e l'impatto che può avere.

Le applicazioni di visione artificiale stanno diventando sempre più comuni nella nostra vita quotidiana, dalle telecamere del traffico che monitorano le condizioni stradali ai sistemi di pagamento automatico nei negozi. Consentendo alle macchine di comprendere i dati visivi in modo simile agli esseri umani, la visione AI sta avendo un impatto su una vasta gamma di settori.
Molte di queste applicazioni si basano sull'object detection, un task di visione artificiale che posiziona bounding box attorno agli oggetti chiave nelle immagini. Sebbene questo approccio funzioni spesso bene, alcune soluzioni di analisi delle immagini richiedono una precisione ancora maggiore.
Ad esempio, l'imaging medico richiede molto più che la semplice rilevazione di un tumore: è fondamentale delineare la sua forma esatta. Allo stesso modo, nella robotica, le macchine devono riconoscere i contorni esatti di un oggetto per afferrarlo correttamente. Per affrontare queste sfide, l'instance segmentation offre una soluzione più precisa.
L'instance segmentation è un task di visione artificiale progettato per supportare casi d'uso in cui rilevare gli oggetti non è sufficiente; fornisce precisione a livello di pixel. Modelli di visione artificiale come Ultralytics YOLO11 possono essere utilizzati per applicare facilmente l'instance segmentation a immagini e video.

Fig 1. Esempio di utilizzo di YOLO11 per l'instance segmentation.
In questa guida, analizzeremo come funziona l'instance segmentation, le sue applicazioni e come Ultralytics YOLO11 possa essere addestrato in modo personalizzato per specifici task di segmentazione.
Link to this sectionCos'è l'instance segmentation?#
Supponiamo che ci sia una foto di gruppo di persone vicine tra loro. L'object detection può aiutare a disegnare dei riquadri attorno a ogni persona, ma questo non ti dice la loro forma esatta.
L'instance segmentation, d'altra parte, è simile a tracciare attentamente attorno a ogni persona in modo da poterne vedere l'intero contorno, anche se si sovrappongono. Invece di limitarsi a contrassegnare dove si trova qualcosa con un riquadro, identifica la forma esatta di ogni oggetto a livello di pixel, rendendo più facile comprendere immagini complesse.
Il risultato è una maschera dettagliata che riempie la forma di un oggetto, individuando esattamente quali pixel gli appartengono. Questo livello di precisione è utile in molte applicazioni del mondo reale in cui è importante comprendere la forma e i confini esatti degli oggetti.

Fig 2. Mostrare il supporto di YOLO11 per l'instance segmentation.
Link to this sectionInstance segmentation vs semantic segmentation#
Mentre esplori l'instance segmentation, potresti imbatterti nel concetto di semantic segmentation.
Entrambe le tecniche aiutano i computer a comprendere le immagini a livello di pixel, ma servono a scopi diversi. La semantic segmentation etichetta ogni pixel in base alla sua categoria, raggruppando tutti gli oggetti dello stesso tipo. Ad esempio, in un'immagine con più auto, la semantic segmentation le contrassegnerebbe tutte come "auto" senza distinguere tra i singoli veicoli.
L'instance segmentation, d'altra parte, fa un passo avanti identificando ogni oggetto separatamente. Assegna etichette univoche alle singole istanze e crea maschere precise attorno alle loro forme. Quindi, nella stessa immagine, l'instance segmentation non si limiterebbe a etichettare tutto come "auto", ma riconoscerebbe e delineerebbe ogni auto individualmente.
La differenza principale tra le due è che la semantic segmentation raggruppa gli oggetti per categoria, mentre l'instance segmentation distingue ogni oggetto come un'entità unica con confini chiari. Scegliere quale task utilizzare dipende dall'applicazione specifica: se è sufficiente sapere cosa c'è in un'immagine o se è importante differenziare tra i singoli oggetti.

Fig 3. Instance segmentation vs semantic segmentation (rispettivamente a destra e a sinistra).
Link to this sectionModelli di instance segmentation popolari#
Al giorno d'oggi sono disponibili vari modelli di instance segmentation per la comunità della visione artificiale. Alcuni sono più veloci, altri più precisi e altri ancora più facili da usare.
Queste opzioni, sebbene utili, possono portare alla domanda: qual è quella giusta da utilizzare per uno specifico task? Tra le opzioni, i modelli Ultralytics YOLO sono molto popolari perché si concentrano su velocità e precisione.
Inoltre, questi modelli si sono evoluti in modo significativo nel corso degli anni. Ad esempio, Ultralytics YOLOv5 ha semplificato il deployment utilizzando framework come PyTorch, rendendo la visione artificiale avanzata accessibile a un pubblico più ampio senza richiedere profonde competenze tecniche.
Basandosi su tale successo, Ultralytics YOLOv8 ha introdotto un supporto avanzato per task di visione artificiale come instance segmentation, pose estimation e image classification.
Ora, YOLO11 porta le prestazioni a un nuovo livello. Raggiunge una mean average precision (mAP) più elevata sul dataset COCO con il 22% di parametri in meno rispetto a YOLOv8m, il che significa che può riconoscere gli oggetti in modo più preciso utilizzando meno risorse.

Fig 4. Benchmarking di YOLO11.
In poche parole, YOLO11 offre una precisione all'avanguardia senza compromettere l'efficienza, rendendolo una svolta nel campo.
Link to this sectionComprendere come funziona l'instance segmentation#
Successivamente, esploriamo come funziona solitamente l'instance segmentation. I computer vision models più datati utilizzano un approccio in due passaggi.
Innanzitutto, rilevano gli oggetti disegnando dei bounding box attorno ad essi. Quindi, generano una maschera a livello di pixel per delineare la forma esatta di ogni oggetto. Un esempio ben noto è Mask R-CNN, che si basa sui modelli di object detection aggiungendo un passaggio di previsione della maschera. Sebbene questo metodo sia efficace, può essere lento perché elabora l'immagine in più fasi, rendendo le applicazioni in tempo reale più impegnative.
Nel frattempo, modelli come YOLO11 elaborano le immagini in un unico passaggio, prevedendo simultaneamente i bounding box degli oggetti e le maschere di instance segmentation. Questo approccio semplificato lo rende molto più veloce pur mantenendo un'elevata precisione. Di conseguenza, è particolarmente utile per applicazioni in tempo reale come guida autonoma, analisi video e robotica, dove sia la velocità che la precisione sono cruciali.
Link to this sectionAddestramento personalizzato di YOLO11 per l'instance segmentation#
YOLO11 viene fornito come modello pre-addestrato. È stato addestrato sul COCO-Seg dataset, che copre oggetti di uso quotidiano per l'instance segmentation. Tuttavia, il pacchetto Python di Ultralytics supporta l'addestramento personalizzato, che è essenziale per applicazioni specializzate in cui devono essere segmentati oggetti unici.
Perché l'addestramento personalizzato o il fine-tuning di un modello sono importanti? Il custom training sfrutta il transfer learning basandosi sulle conoscenze già integrate nei modelli pre-addestrati. Invece di ricominciare da zero, adatta un modello esistente a nuovi task utilizzando dataset più piccoli e meno risorse computazionali, il tutto mantenendo un'elevata precisione.
Link to this sectionCome addestrare in modo personalizzato YOLO11#
Ecco uno sguardo più approfondito ai passaggi necessari per il fine-tuning di YOLO11 per l'instance segmentation:
- Preparazione dei dati: Raccogli e annota le immagini in base alla tua applicazione specifica. Ultralytics fornisce supporto per diversi image datasets, ma puoi anche addestrare utilizzando il tuo dataset preparando immagini e annotazioni nel formato YOLO richiesto.
- Utilizzo di un modello pre-addestrato: Invece di ricominciare da zero, utilizza un modello Ultralytics YOLO11 pre-addestrato.
- Addestramento del modello: Regola le impostazioni di addestramento vitali come la dimensione del batch (immagini elaborate per iterazione), la dimensione dell'immagine (risoluzione di input target) e le epoche (cicli di addestramento totali) e addestra il modello.
- Valutazione delle prestazioni: Una volta completato l'addestramento, puoi testare la precisione del modello utilizzando metriche di performance come la mAP. Il pacchetto Python di Ultralytics fornisce anche funzioni integrate per la valutazione del modello.
Link to this sectionApplicazioni di instance segmentation abilitate da YOLO11#
L'instance segmentation può essere utilizzata per risolvere sfide del mondo reale aiutando le macchine a vedere e comprendere gli oggetti in modo più accurato. Dal miglioramento dell'automazione alla protezione dell'ambiente, svolge un ruolo chiave in molti campi. Esaminiamo alcuni esempi in cui sta avendo un impatto.
Link to this sectionSicurezza e monitoraggio dei cantieri edili tramite YOLO11#
L'instance segmentation può essere una parte fondamentale per garantire sicurezza ed efficienza nei cantieri edili. Ad esempio, può essere utilizzata per monitorare macchinari pesanti.
YOLO11 può essere perfezionato per segmentare e identificare accuratamente diversi tipi di attrezzature, come gru, escavatori e bulldozer, e tracciarne la posizione in tempo reale. Ciò consente ai responsabili del sito di assicurarsi che i macchinari operino rigorosamente all'interno delle aree designate e non invadano zone in cui sono presenti lavoratori o esistono pericoli.
Inoltre, l'integrazione di tali soluzioni con sistemi di allerta in tempo reale consente di intraprendere rapide azioni correttive. Oltre a ciò, gli insight raccolti possono aiutare a ottimizzare il layout e il flusso di lavoro del sito, riducendo ulteriormente i rischi e aumentando la produttività.

Fig 5. Monitoraggio di macchinari pesanti tramite YOLO11.
Link to this sectionMonitoraggio degli animali con segmentazione e YOLO11#
Il monitoraggio del comportamento degli animali aiuta ricercatori, agricoltori e conservazionisti a prendersi cura meglio degli animali in diversi ambienti. L'instance segmentation svolge un ruolo utile in questi sistemi identificando e segmentando i singoli animali in allevamenti, zoo e habitat naturali. A differenza della tradizionale object detection che utilizza i bounding box, l'instance segmentation fornisce una delineazione a livello di pixel di ogni animale, il che è particolarmente utile quando gli animali sono molto vicini tra loro.
La segmentazione dettagliata facilita un tracciamento più accurato dei movimenti e dei comportamenti. Gli animali sovrapposti o strettamente raggruppati possono essere distinti chiaramente, fornendo un'analisi più precisa delle interazioni, delle valutazioni sanitarie e dei modelli di attività. Complessivamente, approfonditi insight sul comportamento animale migliorano le pratiche di cura e gestione degli animali.

Fig 6. Monitoraggio del bestiame tramite instance segmentation.
Link to this sectionYOLO11 nell'analisi sportiva e nel tracciamento dei giocatori#
Il tracciamento preciso dei giocatori e degli eventi è una parte fondamentale dell'analisi sportiva. I metodi di tracciamento tradizionali si basano sulla marcatura manuale, che potrebbe non catturare le interazioni dettagliate. La visione artificiale può essere utilizzata per segmentare dettagli come ogni giocatore, palla e evento chiave a livello di pixel per ottenere insight approfonditi.
Ad esempio, l'instance segmentation può aiutare a rilevare eventi come falli o incidenti fuori palla separando chiaramente ogni giocatore e oggetto. Questo monitoraggio granulare, reso possibile da modelli come YOLO11, offre agli analisti informazioni più chiare per studiare i modelli di movimento, il posizionamento spaziale e le interazioni con elevata precisione. Un vantaggio chiave di questi insight è che aiutano i team a perfezionare le loro strategie e a migliorare le prestazioni generali.
Link to this sectionPro e contro dell'instance segmentation#
Ecco alcuni dei principali vantaggi che l'instance segmentation può portare a vari settori:
- Automazione migliorata: Automatizzando task come il controllo qualità e il monitoraggio della sicurezza, l'instance segmentation riduce la necessità di intervento manuale e minimizza l'errore umano.
- Migliore comprensione della scena: Delineando accuratamente ogni oggetto, l'instance segmentation contribuisce a una comprensione più profonda di scene complesse, supportando un processo decisionale più informato.
- Post-elaborazione efficiente: L'output a livello di pixel semplifica task come la rimozione dello sfondo, il conteggio degli oggetti e l'analisi spaziale, riducendo la necessità di ulteriori passaggi di elaborazione.
Sebbene questi vantaggi evidenzino come l'instance segmentation influenzi diversi casi d'uso, è anche essenziale considerare le sfide coinvolte nella sua implementazione.
Ecco alcune delle principali limitazioni dell'instance segmentation:
- Sfide con la trasparenza: La segmentazione di oggetti trasparenti o riflettenti come vetro e acqua è difficile, portando a confini imprecisi.
- Costi di manutenzione: Per mantenere i modelli precisi e pertinenti, sono necessari aggiornamenti continui e fine-tuning man mano che le condizioni ambientali e i dataset cambiano.
- Elevato sforzo di annotazione: L'addestramento dei modelli di instance segmentation richiede annotazioni dettagliate a livello di pixel, il che aumenta significativamente i tempi e i costi necessari per la preparazione dei dati.
Link to this sectionPunti chiave#
L'instance segmentation consente di distinguere i singoli oggetti con precisione, anche quando si sovrappongono. Catturando i confini degli oggetti a livello di pixel, fornisce una comprensione più profonda dei dati visivi rispetto ai task di visione artificiale tradizionali come l'object detection.
I recenti progressi nella visione artificiale hanno reso l'instance segmentation più veloce e più facile da usare. In particolare, modelli di visione artificiale come Ultralytics YOLO11 semplificano il processo, consentendo la segmentazione in tempo reale con una configurazione minima, rendendola più accessibile per vari settori e applicazioni.
Curioso riguardo l'AI? Visita il nostro repository GitHub e connettiti con la nostra comunità per continuare a esplorare. Scopri di più su innovazioni come l'AI nelle auto a guida autonoma e l'AI di visione in agricoltura sulle nostre pagine di soluzioni. Dai un'occhiata alle nostre opzioni di licenza e inizia un progetto di visione artificiale!






