Cos'è Mask R-CNN e come funziona?
Scopri come Mask R-CNN può essere utilizzato per segmentare con precisione oggetti in immagini e video per varie applicazioni in diversi settori.

Innovazioni come i robot nei magazzini, le auto a guida autonoma che si muovono in sicurezza per le strade trafficate, i droni che monitorano i raccolti e i sistemi di IA che ispezionano i prodotti nelle fabbriche stanno diventando sempre più comuni con l'aumentare dell'adozione dell'IA. Una tecnologia chiave che guida queste innovazioni è la computer vision, un ramo 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 oggetti nelle immagini usando dei bounding box. Sebbene i bounding box offrano informazioni utili, forniscono solo una stima approssimativa della posizione di un oggetto e non riescono a catturarne l'esatta forma 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, esploreremo che cos'è Mask R-CNN, come funziona, le sue applicazioni e quali miglioramenti ne sono seguiti, portando a YOLO11.
Link to this sectionUna panoramica di Mask R-CNN#
Mask R-CNN, che sta per Mask Region-based Convolutional Neural Network, è un modello di deep learning progettato per attività di computer vision come il rilevamento di oggetti e la segmentazione di istanze.
La segmentazione di istanze va oltre il tradizionale rilevamento di oggetti non solo identificando gli oggetti in un'immagine, ma anche delineando accuratamente ciascuno di essi. Assegna un'etichetta univoca a ogni oggetto rilevato e ne cattura l'esatta forma a livello di pixel. Questo approccio dettagliato rende possibile distinguere chiaramente tra oggetti sovrapposti e gestire con precisione forme complesse.
Mask R-CNN si basa su Faster R-CNN, che rileva ed etichetta gli oggetti ma non ne definisce le forme esatte. Mask R-CNN migliora questo aspetto identificando i pixel esatti che compongono ogni oggetto, consentendo un'analisi dell'immagine molto più dettagliata e accurata.

Fig 1. Confronto tra rilevamento di oggetti e segmentazione di istanze.
Link to this sectionUno sguardo all'architettura di Mask R-CNN e al suo funzionamento#
Mask R-CNN adotta un approccio graduale per rilevare e segmentare gli oggetti con precisione. Inizia estraendo le caratteristiche chiave usando una rete neurale profonda (un modello a più strati che apprende dai dati), quindi identifica le potenziali aree oggetto con una rete di proposta di regione (un componente che suggerisce le probabili regioni dell'oggetto) e infine perfeziona queste aree creando maschere di segmentazione dettagliate (contorni precisi degli oggetti) che catturano l'esatta forma di ogni oggetto.
Successivamente, vedremo ogni passaggio per farci un'idea migliore di come funziona Mask R-CNN.

Fig 2. Una panoramica dell'architettura di Mask R-CNN (Fonte: researchgate.net).
Link to this sectionInizia con l'estrazione delle caratteristiche#
Il primo passo nell'architettura di Mask R-CNN è scomporre l'immagine nelle sue parti chiave in modo che il modello possa capire cosa contiene. Immaginalo come quando guardi una foto e noti naturalmente dettagli come forme, colori e bordi. Il modello fa qualcosa di simile usando 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 usa una Feature Pyramid Network. È come avere diverse lenti d'ingrandimento che consentono al modello di vedere sia i dettagli minuti che il quadro generale, assicurando che vengano notati oggetti di tutte le dimensioni.
Una volta estratte queste caratteristiche importanti, il modello passa quindi a individuare i potenziali oggetti nell'immagine, preparando il terreno per un'analisi successiva.
Link to this sectionSuggerire potenziali aree nell'immagine con oggetti#
Dopo che l'immagine è stata elaborata per le caratteristiche chiave, subentra la Region Proposal Network. Questa parte del modello osserva l'immagine e suggerisce le aree che probabilmente contengono oggetti.
Lo fa generando molteplici possibili posizioni di oggetti chiamate anchors. La rete valuta quindi queste anchor e seleziona quelle più promettenti per un'analisi più approfondita. 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.

Fig 3. Un esempio di Region Proposal Network.
Link to this sectionMigliorare le caratteristiche estratte#
Con le aree chiave identificate, il passo successivo è perfezionare i dettagli estratti da queste regioni. I modelli precedenti usavano un metodo chiamato ROI Pooling (Region of Interest Pooling) per catturare le caratteristiche da ciascuna area, ma questa tecnica a volte portava a lievi disallineamenti durante il ridimensionamento delle regioni, rendendola meno efficace, specialmente per oggetti più piccoli o sovrapposti.
Mask R-CNN migliora questo aspetto usando una tecnica denominata ROI Align (Region of Interest Align). Invece di arrotondare le coordinate come fa ROI Pooling, ROI Align usa l'interpolazione bilineare per stimare i valori dei pixel in modo più preciso. L'interpolazione bilineare è un metodo che calcola un nuovo valore di pixel facendo la media dei valori dei suoi quattro vicini più prossimi, il che crea transizioni più fluide. Questo mantiene le caratteristiche correttamente allineate con l'immagine originale, risultando in un rilevamento e una segmentazione degli oggetti più accurati.
Ad esempio, in una partita di calcio, due giocatori che stanno vicini potrebbero essere scambiati l'uno per l'altro perché i loro bounding box si sovrappongono. ROI Align aiuta a separarli mantenendo le loro forme distinte.

Fig 4. Mask R-CNN usa ROI Align.
Link to this sectionClassificare gli oggetti e prevedere le loro maschere#
Una volta che ROI Align elabora l'immagine, il passo successivo è classificare gli oggetti e perfezionare le loro posizioni. Il modello osserva ogni regione estratta e decide quale oggetto contiene. Assegna un punteggio di probabilità a diverse categorie e sceglie la corrispondenza migliore.
Allo stesso tempo, regola i bounding box per adattarli meglio agli oggetti. I box iniziali potrebbero non essere posizionati in modo ideale, quindi questo aiuta a migliorare l'accuratezza assicurandosi che ogni box circondi strettamente l'oggetto rilevato.
Infine, Mask R-CNN compie un ulteriore passo: genera una maschera di segmentazione dettagliata per ogni oggetto in parallelo.
Link to this sectionMask R-CNN e le sue applicazioni in tempo reale#
Quando questo modello è uscito, è stato accolto con molto entusiasmo dalla comunità dell'IA ed è stato presto usato in varie applicazioni. La sua capacità di rilevare e segmentare oggetti in tempo reale lo ha reso un punto di svolta in diversi settori.
Ad esempio, tracciare animali in via di estinzione allo stato brado è un compito impegnativo. Molte specie si muovono attraverso foreste dense, rendendo difficile per gli ambientalisti tenerne traccia. I metodi tradizionali usano fototrappole, droni e immagini satellitari, ma smistare manualmente tutti questi dati richiede tempo. Errori di identificazione 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 può rilevare e segmentare animali in immagini e video con maggiore precisione. Anche quando gli animali sono parzialmente nascosti dagli alberi o stanno vicini tra loro, il modello può separarli e identificarli individualmente, rendendo il monitoraggio della fauna selvatica più veloce e affidabile.

Fig 5. Rilevamento e segmentazione di animali usando Mask R-CNN.
Link to this sectionLimitazioni di Mask R-CNN#
Nonostante il suo significato storico nel rilevamento e nella segmentazione di oggetti, Mask R-CNN presenta anche alcuni inconvenienti chiave. Ecco alcune sfide legate a Mask R-CNN:
- Elevata richiesta computazionale: Si basa su potenti GPU, il che può renderlo costoso da eseguire e lento quando si elaborano grandi quantità di dati.
- Velocità di elaborazione più lenta: Il suo processo a più fasi lo rende più lento rispetto a modelli in tempo reale più veloci come YOLO, il che potrebbe non essere ideale per attività sensibili al fattore tempo.
- Dipendenza da dati di alta qualità: Il modello ha prestazioni migliori con immagini chiare e ben etichettate. Immagini sfocate o scarsamente illuminate possono ridurne significativamente l'accuratezza.
- Implementazione complessa: L'architettura a più fasi può essere difficile da configurare e ottimizzare, specialmente quando si ha a che fare con grandi dataset o risorse limitate.
Link to this sectionDa Mask R-CNN a Ultralytics YOLO11#
Mask R-CNN era ottimo per i compiti di segmentazione, ma molti settori cercavano di adottare la computer vision dando priorità alla velocità e alle prestazioni in tempo reale. Questa esigenza ha portato i ricercatori a sviluppare modelli a una sola 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 sola fase come YOLO (You Only Look Once) si concentrano su attività di computer vision in tempo reale. Invece di gestire il rilevamento e la segmentazione separatamente, i modelli YOLO possono analizzare un'immagine in una sola volta. Questo li rende ideali per applicazioni come la guida autonoma, l'assistenza sanitaria, la produzione e la robotica, dove un rapido processo decisionale è fondamentale.
In particolare, YOLO11 fa un ulteriore passo avanti essendo sia veloce che accurato. Usa il 22% di parametri in meno rispetto a YOLOv8m ma raggiunge comunque una media di precisione media (mAP) più elevata sul dataset COCO, il che significa che rileva gli oggetti con maggiore precisione. La sua velocità di elaborazione migliorata lo rende una buona scelta per applicazioni in tempo reale dove ogni millisecondo è importante.

Fig 6. Prestazioni di YOLO11 in confronto ad altri modelli.
Link to this sectionPunti chiave#
Guardando indietro alla storia della computer vision, Mask R-CNN è riconosciuto come un importante passo avanti nel rilevamento e nella segmentazione di oggetti. Offre risultati molto precisi anche in contesti complessi, grazie al suo dettagliato processo a più fasi.
Tuttavia, questo stesso processo lo rende più lento rispetto a modelli in tempo reale come YOLO. Poiché la necessità di velocità ed efficienza cresce, molte applicazioni usano ora modelli a una sola fase come Ultralytics YOLO11, che offrono un rilevamento di oggetti veloce e accurato. Mentre Mask R-CNN è importante per quanto riguarda la comprensione dell'evoluzione della computer vision, la tendenza verso soluzioni in tempo reale sottolinea la crescente domanda di soluzioni di computer vision più rapide ed efficienti.
Unisciti alla nostra community in crescita! Esplora il nostro repository GitHub per saperne di più sull'AI. Sei pronto a iniziare i tuoi progetti di computer vision? Dai un'occhiata alle nostre opzioni di licenza. Scopri l'AI in agricoltura e la vision AI nell'assistenza sanitaria visitando le nostre pagine dedicate alle soluzioni!






