Scopri YOLO26: vision AI di prossima generazione.
Ultralytics
Integrazioni

Una guida sull'architettura U-Net e le sue applicazioni

Scopri l'architettura U-Net, come supporta la segmentazione delle immagini, le sue applicazioni e perché è significativa nell'evoluzione della computer vision.

ABAbirami Vina
5 min read
Architettura U-Net per la segmentazione delle immagini

La computer vision è un ramo dell'intelligenza artificiale (AI) che si concentra sull'analisi dei dati visivi. Ha aperto la strada a molti sistemi all'avanguardia, come l'automazione del processo di ispezione dei prodotti nelle fabbriche e l'assistenza ai veicoli autonomi nella navigazione stradale.

Uno dei compiti di computer vision più noti è l'object detection. Questo compito consente ai modelli di localizzare e identificare gli oggetti all'interno di un'immagine utilizzando dei bounding box. Sebbene i bounding box siano utili per diverse applicazioni, forniscono solo una stima approssimativa della posizione di un oggetto.

Tuttavia, in settori come l'assistenza sanitaria, dove la precisione è fondamentale, i casi d'uso della vision AI dipendono da qualcosa di più della semplice identificazione di un oggetto. Spesso, richiedono anche informazioni relative alla forma e alla posizione esatte degli oggetti.

È esattamente quello che il compito di computer vision chiamato segmentazione è progettato per fare. Invece di usare i bounding box, i modelli di segmentazione rilevano gli oggetti a livello di pixel. Nel corso degli anni, i ricercatori hanno sviluppato modelli di computer vision specializzati per la segmentazione.

Uno di questi modelli è U-Net. Sebbene modelli più recenti e avanzati ne abbiano superato le prestazioni, U-Net occupa un posto significativo nella storia della computer vision. In questo articolo, esamineremo più da vicino l'architettura U-Net, come funziona, dove è stata utilizzata e come si confronta con i modelli di segmentazione più moderni disponibili oggi.

Segmentazione di una scena aerea tramite il modello di deep learning U-Net

Fig 1. Un esempio di segmentazione utilizzando il modello di deep learning U-Net. (Fonte)

Link to this sectionLa storia della segmentazione delle immagini#

Prima di immergerci in cosa sia U-Net, facciamoci un'idea migliore di come si sono evoluti i modelli di segmentazione delle immagini.

Inizialmente, la computer vision si basava su tecniche tradizionali come il rilevamento dei bordi, la soglia o la crescita delle regioni per separare gli oggetti in un'immagine. Queste tecniche venivano utilizzate per rilevare i confini degli oggetti usando i bordi, separare le regioni in base all'intensità dei pixel e raggruppare pixel simili. Funzionavano per casi semplici, ma spesso fallivano quando le immagini presentavano rumore, forme sovrapposte o confini poco chiari.

In seguito all'ascesa del deep learning nel 2012, i ricercatori hanno introdotto il concetto di fully convolutional networks (FCN) nel 2014 per compiti come la segmentazione semantica. Questi modelli hanno sostituito alcune parti di una rete convoluzionale per consentire al computer di osservare un'intera immagine in una volta sola, invece di scomporla in pezzi più piccoli. Ciò ha reso possibile per il modello creare mappe dettagliate che mostrano più chiaramente cosa c'è in un'immagine.

Cronologia dell'evoluzione degli algoritmi di segmentazione basati su deep learning

Fig 2. L'evoluzione degli algoritmi di segmentazione basati su deep learning. (Fonte)

Basandosi sulle FCN, U-Net è stato introdotto dai ricercatori dell'Università di Friburgo nel 2015. È stato originariamente progettato per la segmentazione di immagini biomediche. In particolare, U-Net è stato progettato per ottenere buone prestazioni in situazioni in cui i dati annotati sono limitati.

Nel frattempo, versioni successive come UNet++ e TransUNet hanno aggiunto aggiornamenti come livelli di attenzione ed estrazione delle caratteristiche migliorata. I livelli di attenzione aiutano il modello a concentrarsi su regioni chiave, mentre l'estrazione delle caratteristiche avanzata cattura informazioni più dettagliate.

Link to this sectionCos'è U-Net e come fluiscono le caratteristiche attraverso il modello?#

U-Net è un modello di deep learning costruito specificamente per la segmentazione delle immagini. Prende un'immagine in input e produce una maschera di segmentazione che classifica ogni pixel in base all'oggetto o alla regione a cui appartiene.

Il modello prende il nome dalla sua architettura a forma di U. È costituito da due parti principali: un encoder che comprime l'immagine e apprende le sue caratteristiche, e un decoder che la espande nuovamente alla dimensione originale. Questo design crea una forma a U simmetrica, che aiuta il modello a comprendere sia la struttura complessiva di un'immagine che i suoi dettagli più raffinati.

Una caratteristica cruciale di U-Net è l'uso delle skip connection, che consentono alle informazioni dall'encoder di essere passate direttamente al decoder. Ciò significa che il modello può preservare dettagli importanti che potrebbero andare persi quando l'immagine viene compressa.

Link to this sectionUna panoramica dell'architettura di U-Net#

Ecco uno sguardo a come funziona l'architettura di U-Net:

  • Immagine in input: U-Net inizia con un'immagine 2D, come una scansione medica o una foto satellitare. L'obiettivo è assegnare un'etichetta di classe a ogni pixel nell'immagine.
  • Downsampling: L'immagine passa attraverso livelli convoluzionali che apprendono caratteristiche visive importanti. Man mano che l'immagine si sposta attraverso diversi livelli, la sua risoluzione diminuisce e il modello identifica schemi più ampi.
  • Livello bottleneck: Al centro della rete, le mappe delle caratteristiche raggiungono la loro risoluzione spaziale più piccola pur catturando caratteristiche semantiche di alto livello. In parole povere, questa rappresentazione compressa delle mappe delle caratteristiche è il contesto complessivo dell'input.
  • Upsampling: La rete quindi ricostruisce l'immagine aumentando gradualmente la risoluzione. Le convoluzioni trasposte aiutano a espandere le mappe delle caratteristiche verso la dimensione originale.
  • Skip connection: Le mappe delle caratteristiche dal percorso di downsampling vengono concatenate con quelle nel percorso di upsampling. Questo aiuta a preservare i dettagli spaziali a grana fine integrando al contempo informazioni contestuali di alto livello.
  • L'output è una mappa di segmentazione: L'output finale è una maschera di segmentazione pixel-wise che corrisponde alla dimensione dell'input. Ogni pixel viene classificato in una categoria come oggetto, sfondo o regione di interesse.

Diagramma dell'architettura encoder-decoder di U-Net

Fig 3. Diagramma dell'architettura U-Net. (Fonte)

Link to this sectionComprendere la differenza tra ViT e U-Net#

Mentre esplori U-Net, potresti chiederti in cosa differisce da altri modelli di deep learning, come il Vision Transformer (ViT), che possono anche eseguire compiti di segmentazione. Sebbene entrambi i modelli possano svolgere compiti simili, differiscono per il modo in cui sono costruiti e per come gestiscono la segmentazione.

U-Net funziona elaborando le immagini a livello di pixel attraverso livelli convoluzionali in una struttura encoder-decoder. Viene spesso utilizzato per compiti che richiedono una segmentazione precisa, come scansioni mediche o scene di auto a guida autonoma.

D'altra parte, il Vision Transformer (ViT) divide le immagini in patch e le elabora simultaneamente attraverso meccanismi di attenzione. Utilizza l'auto-attenzione (un meccanismo che consente al modello di valutare l'importanza di diverse parti dell'immagine l'una rispetto all'altra) per catturare come le diverse parti dell'immagine si relazionano tra loro, a differenza dell'approccio convoluzionale di U-Net.

Un'altra differenza importante è che il ViT generalmente ha bisogno di più dati per funzionare bene, ma è eccellente nell'individuare schemi complessi. U-Net, d'altra parte, funziona bene con set di dati più piccoli, è più veloce da addestrare e spesso richiede meno tempo di addestramento.

Link to this sectionApplicazioni del modello U-Net#

Ora che abbiamo una comprensione migliore di cosa sia U-Net e come funzioni, esploriamo come è stato applicato in diversi domini.

Link to this sectionSegmentazione di emorragie cerebrali nell'imaging medico#

U-Net è diventato un metodo affidabile per la segmentazione a livello di pixel di complesse immagini mediche, in particolare durante il suo periodo di massimo splendore nella ricerca. È stato utilizzato dai ricercatori per evidenziare aree chiave nelle scansioni mediche, come tumori e segni di emorragia interna in immagini CT e MRI. Questo approccio ha fatto avanzare significativamente l'accuratezza delle diagnosi e ha semplificato l'analisi di dati medici complessi in contesti di ricerca.

Un esempio dell'impatto di U-Net nella ricerca sanitaria è il suo utilizzo nell'identificazione di ictus ed emorragie cerebrali nelle scansioni mediche. I ricercatori potrebbero utilizzare U-Net per analizzare le scansioni della testa ed evidenziare le aree di preoccupazione, consentendo un'identificazione più rapida dei casi che richiedono attenzione immediata.

Segmentazione di lesioni da ictus emorragico in scansioni mediche tramite 3D U-Net

Fig 4. Segmentazione di lesioni da ictus emorragico utilizzando U-Net 3D. (Fonte)

Link to this sectionSegmentazione delle colture in agricoltura#

Un'altra area in cui i ricercatori hanno utilizzato U-Net è l'agricoltura, in particolare per la segmentazione di colture, erbacce e suolo. Aiuta gli agricoltori a monitorare la salute delle piante, stimare le rese e prendere decisioni migliori nelle grandi aziende agricole. Ad esempio, U-Net può separare le colture dalle erbacce, rendendo l'applicazione di erbicidi più efficiente e riducendo gli sprechi.

Per affrontare sfide come il motion blur nelle immagini dei droni, i ricercatori hanno migliorato U-Net con tecniche di deblurring delle immagini. Ciò garantisce una segmentazione più chiara, anche quando i dati vengono raccolti durante il movimento, come durante i rilievi aerei.

U-Net che separa le colture dalle erbacce in un campo agricolo

Fig 5. Separazione delle colture dalle erbacce nei campi agricoli con U-Net. (Fonte)

Link to this sectionGuida autonoma#

Prima dell'introduzione di modelli AI più avanzati, U-Net ha svolto un ruolo vitale nell'esplorare come la segmentazione potesse migliorare la guida autonoma. Nei veicoli autonomi, la segmentazione semantica di U-Net può essere utilizzata per classificare ogni pixel in un'immagine in categorie come strada, veicolo, pedone e segnaletica orizzontale. Ciò fornisce all'auto una visione chiara dell'ambiente circostante, aiutando nella navigazione sicura e nel processo decisionale efficace.

Scena stradale con l'area percorribile segmentata tramite U-Net

Fig 6. Una scena stradale in cui l'area percorribile è segmentata utilizzando U-Net. (Fonte)

Link to this sectionPro e contro di U-Net#

Ancora oggi, U-Net rimane una buona scelta per la segmentazione delle immagini tra i ricercatori grazie al suo equilibrio tra semplicità, accuratezza e adattabilità. Ecco alcuni dei vantaggi principali che lo distinguono:

  • Adattabile a diverse modalità: U-Net è stato adattato a diversi tipi di dati, inclusi scansioni mediche 3D, immagini satellitari e persino fotogrammi video.
  • Inferenza veloce quando ottimizzato: Quando correttamente ottimizzato, U-Net può funzionare in modo efficiente, rendendolo adatto per applicazioni in tempo reale o quasi in tempo reale.
  • Open-source e comunità: U-Net è disponibile nelle principali librerie di deep learning ed è supportato da una vasta comunità di sviluppatori e ricercatori.

Sebbene U-Net abbia molti punti di forza, ci sono anche alcune limitazioni da tenere a mente. Ecco alcuni fattori da considerare:

  • Sensibile alla qualità dei dati: Le prestazioni di U-Net possono essere influenzate negativamente da dati di scarsa qualità, come immagini rumorose o a bassa risoluzione.
  • Soggetto a overfitting con set di dati piccoli: Sebbene U-Net funzioni bene con dati limitati, rischia comunque di andare in overfitting se non correttamente regolarizzato, in particolare quando il set di dati è troppo piccolo o manca di diversità.
  • Risorse computazionali: U-Net può essere computazionalmente costoso, specialmente quando si lavora con grandi set di dati, richiedendo risorse hardware significative per l'addestramento.

Link to this sectionPunti chiave#

U-Net è stato una pietra miliare fondamentale nell'evoluzione della segmentazione delle immagini. Ha dimostrato che i modelli di deep learning possono fornire risultati accurati utilizzando set di dati più piccoli, specialmente in aree come l'imaging medico.

Questa svolta ha aperto la strada ad applicazioni più avanzate in vari campi. Mentre la computer vision continua a evolversi, i modelli di segmentazione come U-Net rimangono fondamentali per consentire alle macchine di comprendere e interpretare i dati visivi con alta precisione.

Vuoi costruire i tuoi progetti di computer vision? Esplora il nostro repository GitHub per approfondire l'AI e dai un'occhiata alle nostre opzioni di licenza. Scopri come la computer vision nell'assistenza sanitaria sta migliorando l'efficienza ed esplora l'impatto dell'AI nel retail visitando le nostre pagine delle soluzioni! Unisciti subito alla nostra crescente comunità!

Explore solutions

Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.

Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.

Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.

Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.

Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.

Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.

Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.

Scopri di più
Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.

Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.

Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.

Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.

Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.

Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.

Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.

Scopri di più
Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.

Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.

Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.

Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.

Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.

Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.

Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.

Scopri di più

Costruiamo insieme il futuro dell'AI!

Inizia il tuo viaggio con il futuro del machine learning