Che cos'è la Maschera R-CNN e come funziona?

Abirami Vina

4 minuti di lettura

21 marzo 2025

Scoprite come Mask R-CNN può essere utilizzata per segmentare con precisione gli oggetti nelle immagini e nei video per varie applicazioni in diversi settori.

Innovazioni come i robot nei magazzini, le auto a guida autonoma che si muovono in sicurezza nelle strade trafficate, i droni che controllano le coltivazioni e i sistemi di intelligenza artificiale che ispezionano i prodotti nelle fabbriche stanno diventando sempre più comuni con l'aumento dell'adozione dell'IA. Una tecnologia chiave che guida queste innovazioni è la computer vision, una branca dell'IA che consente alle macchine di comprendere e interpretare i dati visivi.

Ad esempio, il rilevamento degli oggetti è un'attività di computer vision che aiuta a identificare e localizzare gli oggetti nelle immagini utilizzando i riquadri di delimitazione. Sebbene i riquadri di delimitazione offrano informazioni utili, forniscono solo una stima approssimativa della posizione di un oggetto e non sono in grado di catturarne la forma esatta o i confini. Questo li rende meno efficaci nelle applicazioni che richiedono un'identificazione precisa.

Per risolvere questo problema, i ricercatori hanno sviluppato modelli di segmentazione che catturano i contorni esatti degli oggetti, fornendo dettagli a livello di pixel per un rilevamento e un'analisi più accurati.

Mask R-CNN è uno di questi modelli. Introdotto nel 2017 da Facebook AI Research (FAIR), si basa su modelli precedenti come R-CNN, Fast R-CNN e Faster R-CNN. Come importante pietra miliare nella storia della computer vision, Mask R-CNN ha aperto la strada a modelli più avanzati, come Ultralytics YOLO11.

In questo articolo analizzeremo cos'è la Mask R-CNN, come funziona, le sue applicazioni e quali miglioramenti sono stati apportati dopo di essa, fino ad arrivare a YOLO11.

Una panoramica della R-CNN a maschera

Mask R-CNN, acronimo di Mask Region-based Convolutional Neural Network (rete neurale convoluzionale basata sulla maschera), è un modello di apprendimento profondo progettato per compiti di visione artificiale come il rilevamento di oggetti e la segmentazione di istanze. 

La segmentazione delle istanze va oltre il tradizionale rilevamento degli oggetti, non solo identificando gli oggetti in un'immagine, ma anche delineando accuratamente ciascuno di essi. Assegna un'etichetta unica a ogni oggetto rilevato e ne cattura la forma esatta a livello di pixel. Questo approccio dettagliato consente di distinguere chiaramente tra oggetti sovrapposti e di gestire con precisione forme complesse.

Mask R-CNN si basa su Faster R-CNN, che rileva ed etichetta gli oggetti ma non ne definisce la forma esatta. Mask R-CNN migliora questo aspetto identificando i pixel esatti che compongono ogni oggetto, consentendo un'analisi dell'immagine molto più dettagliata e accurata.

__wf_reserved_inherit
Figura 1. Confronto tra il rilevamento degli oggetti e la segmentazione delle istanze.

Uno sguardo all'architettura di Mask R-CNN e al suo funzionamento

Mask R-CNN adotta un approccio graduale per rilevare e segmentare accuratamente gli oggetti. Inizia estraendo le caratteristiche chiave con una rete neurale profonda (un modello multistrato che apprende dai dati), quindi identifica le aree potenziali degli oggetti con una rete di proposta di regioni (un componente che suggerisce le regioni probabili degli oggetti) e infine affina queste aree creando maschere di segmentazione dettagliate (contorni precisi degli oggetti) che catturano la forma esatta di ogni oggetto.

Di seguito, esamineremo ogni fase per avere un'idea più precisa del funzionamento di Mask R-CNN.

__wf_reserved_inherit
Figura 2. Panoramica dell'architettura della R-CNN a maschera.

Iniziare con l'estrazione delle caratteristiche

Il primo passo dell'architettura di Mask R-CNN è quello di scomporre l'immagine nelle sue parti principali, in modo che il modello possa capire cosa c'è dentro. Si pensi a quando si guarda una foto e si notano naturalmente dettagli come forme, colori e bordi. Il modello fa qualcosa di simile utilizzando una rete neurale profonda chiamata "backbone" (spesso ResNet-50 o ResNet-101), che agisce come i suoi occhi per scansionare l'immagine e cogliere i dettagli chiave.

Poiché gli oggetti nelle immagini possono essere molto piccoli o molto grandi, Mask R-CNN utilizza una rete a piramide di caratteristiche. È come avere diverse lenti d'ingrandimento che permettono al modello di vedere sia i dettagli fini che l'immagine più grande, assicurando che vengano notati oggetti di tutte le dimensioni.

Una volta estratte queste caratteristiche importanti, il modello passa a localizzare i potenziali oggetti nell'immagine, ponendo le basi per un'ulteriore analisi.

Suggerimento di aree potenziali nell'immagine con oggetti

Dopo che l'immagine è stata elaborata per individuare le caratteristiche principali, subentra la Rete di proposta regionale. Questa parte del modello esamina l'immagine e suggerisce le aree che probabilmente contengono oggetti.

A tal fine, genera più posizioni possibili per gli oggetti, chiamate ancore. La rete valuta poi questi ancoraggi e seleziona quelli più promettenti per un'ulteriore analisi. In questo modo, il modello si concentra solo sulle aree che hanno maggiori probabilità di essere interessanti, invece di controllare ogni singolo punto dell'immagine.

__wf_reserved_inherit
Figura 3. Un esempio di rete di proposta regionale.

Miglioramento delle caratteristiche estratte 

Una volta identificate le aree chiave, il passo successivo consiste nel perfezionare i dettagli estratti da queste regioni. I modelli precedenti utilizzavano un metodo chiamato ROI Pooling (Region of Interest Pooling) per estrarre le caratteristiche da ogni area, ma questa tecnica a volte portava a leggeri disallineamenti durante il ridimensionamento delle regioni, rendendola meno efficace, soprattutto per gli oggetti più piccoli o sovrapposti.

Mask R-CNN migliora questo aspetto utilizzando una tecnica denominata ROI Align (Region of Interest Align). Invece di arrotondare le coordinate come fa il ROI Pooling, ROI Align utilizza l'interpolazione bilineare per stimare i valori dei pixel in modo più preciso. L'interpolazione bilineare è un metodo che calcola il valore di un nuovo pixel calcolando la media dei valori dei suoi quattro vicini più prossimi, creando così transizioni più uniformi. Ciò consente di mantenere le caratteristiche correttamente allineate con l'immagine originale, ottenendo un rilevamento e una segmentazione degli oggetti più accurati.

Ad esempio, in una partita di calcio, due giocatori vicini potrebbero essere scambiati l'uno con l'altro perché i loro rettangoli di gioco si sovrappongono. ROI Align aiuta a separarli mantenendo le loro forme distinte. 

__wf_reserved_inherit
Figura 4. Maschera R-CNN utilizza ROI Align.

Classificare gli oggetti e prevedere le loro maschere

Una volta che ROI Align ha elaborato l'immagine, il passo successivo consiste nel classificare gli oggetti e perfezionare la loro posizione. Il modello esamina ogni regione estratta e decide quale oggetto contiene. Assegna un punteggio di probabilità alle diverse categorie e sceglie la migliore corrispondenza.

Allo stesso tempo, regola i riquadri di delimitazione per adattarli meglio agli oggetti. I riquadri iniziali potrebbero non essere posizionati in modo ideale, quindi questo aiuta a migliorare l'accuratezza, assicurandosi che ogni riquadro circondi strettamente l'oggetto rilevato.

Infine, Mask R-CNN compie un passo in più: genera in parallelo una maschera di segmentazione dettagliata per ogni oggetto.

Maschera R-CNN e sue applicazioni in tempo reale

Quando questo modello è stato presentato, è stato accolto con grande entusiasmo dalla comunità dell'intelligenza artificiale ed è stato presto utilizzato in diverse applicazioni. La sua capacità di rilevare e segmentare gli oggetti in tempo reale lo ha reso un elemento di svolta in diversi settori.

Ad esempio, rintracciare gli animali in via di estinzione in natura è un compito difficile. Molte specie si muovono in foreste fitte, rendendo difficile per i conservazionisti tenerne traccia. I metodi tradizionali utilizzano trappole con telecamera, droni e immagini satellitari, ma la selezione manuale di tutti questi dati richiede molto tempo. Identificazioni errate e avvistamenti mancati possono rallentare gli sforzi di conservazione.

Riconoscendo caratteristiche uniche come le strisce della tigre, le macchie della giraffa o la forma delle orecchie di un elefante, Mask R-CNN è in grado di rilevare e segmentare gli animali nelle immagini e nei video con maggiore precisione. Anche quando gli animali sono parzialmente nascosti dagli alberi o si trovano vicini, il modello è in grado di separarli e identificarli singolarmente, rendendo il monitoraggio della fauna selvatica più rapido e affidabile.

__wf_reserved_inherit
Figura 5. Rilevamento e segmentazione degli animali con la maschera R-CNN.

Limitazioni della Maschera R-CNN

Nonostante la sua importanza storica nel rilevamento e nella segmentazione degli oggetti, la Mask R-CNN presenta anche alcuni svantaggi fondamentali. Ecco alcune sfide legate alla Mask R-CNN:

  • Alta domanda di calcolo: Si basa su potenti GPU, il che può renderne costosa l'esecuzione e lenta l'elaborazione di grandi quantità di dati.

  • Velocità di elaborazione inferiore: il suo processo a più fasi lo rende più lento rispetto ai modelli in tempo reale più veloci come YOLO, che potrebbe non essere l'ideale per le attività sensibili al fattore tempo.

  • Dipendenza da dati di alta qualità: Il modello funziona meglio con immagini chiare e ben etichettate. Immagini sfocate o poco illuminate possono ridurre significativamente la sua accuratezza.
  • Implementazione complessa: L'architettura a più fasi può essere impegnativa da configurare e ottimizzare, soprattutto quando si tratta di grandi insiemi di dati o di risorse limitate.

Dalla Maschera R-CNN all'Ultralitica YOLO11

La maschera R-CNN era ottima per le attività di segmentazione, ma molti settori stavano cercando di adottare la computer vision dando priorità alla velocità e alle prestazioni in tempo reale. Questo requisito ha portato i ricercatori a sviluppare modelli a una fase che rilevano gli oggetti in un unico passaggio, migliorando notevolmente l'efficienza.

A differenza del processo a più fasi di Mask R-CNN, i modelli di computer vision a una fase, come YOLO (You Only Look Once), si concentrano sulle attività di computer vision in tempo reale. Invece di gestire separatamente il rilevamento e la segmentazione, i modelli YOLO possono analizzare un'immagine in una sola volta. Ciò li rende ideali per applicazioni come la guida autonoma, la sanità, la produzione e la robotica, dove la rapidità delle decisioni è fondamentale.

In particolare, YOLO11 compie un ulteriore passo avanti, essendo allo stesso tempo veloce e preciso. Utilizza il 22% di parametri in meno rispetto a YOLOv8m, ma raggiunge comunque una precisione media superiore (mAP) sul set di dati COCO, il che significa che rileva gli oggetti con maggiore precisione. La sua maggiore velocità di elaborazione lo rende una buona scelta per le applicazioni in tempo reale in cui ogni millisecondo è importante.

__wf_reserved_inherit
Figura 6. Prestazioni di YOLO11 rispetto ad altri modelli.

Punti di forza

Guardando alla storia della computer vision, la Mask R-CNN è riconosciuta come un importante passo avanti nel rilevamento e nella segmentazione degli oggetti. Offre risultati molto precisi anche in contesti complessi, grazie al suo dettagliato processo in più fasi. 

Tuttavia, questo stesso processo lo rende più lento rispetto ai modelli in tempo reale come YOLO. Con l'aumentare della necessità di velocità ed efficienza, molte applicazioni utilizzano ora modelli a uno stadio come Ultralytics YOLO11, che offrono un rilevamento rapido e accurato degli oggetti. Sebbene Mask R-CNN sia importante per comprendere l'evoluzione della computer vision, la tendenza verso soluzioni in tempo reale evidenzia la crescente domanda di soluzioni di computer vision più rapide ed efficienti.

Unisciti alla nostra comunità in crescita! Esplorate il nostro repository GitHub per saperne di più sull'intelligenza artificiale. Siete pronti ad avviare i vostri progetti di computer vision? Scoprite le nostre opzioni di licenza. Scoprite l'IA in agricoltura e l'IA di visione nella sanità visitando le nostre pagine dedicate alle soluzioni! 

Costruiamo insieme il futuro
dell'IA!

Iniziate il vostro viaggio nel futuro dell'apprendimento automatico

Iniziare gratuitamente
Link copiato negli appunti