YOLO Vision 2026:
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 Vina5 min read
Architettura U-Net per la segmentazione delle immagini

Computer vision è una branca dell'intelligenza artificiale (AI) che si concentra sull'analisi dei dati visivi. Ha spianato la strada a molti sistemi all'avanguardia, come l'automazione del processo di ispezione dei prodotti nelle fabbriche e l'assistenza alla navigazione stradale per i veicoli autonomi.

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 ciò che il compito di computer vision, la segmentazione, è progettato per fare. Invece di usare i riquadri di delimitazione, 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ù nuovi e avanzati ne abbiano superato le prestazioni, U-Net occupa un posto di rilievo nella storia della computer vision. In questo articolo daremo uno sguardo più da vicino all'architettura U-Net, a come funziona, a dove è stata utilizzata e a come si confronta con i modelli di segmentazione più moderni oggi disponibili.

Segmentation of an aerial scene using the U-Net deep learning model

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

La storia della segmentazione delle immagini#

Prima di addentrarci in cosa sia U-Net, facciamo prima un'idea più precisa di come si sono evoluti i modelli di segmentazione d'immagine.

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.

A seguito dell'ascesa del deep learning nel 2012, i ricercatori hanno introdotto il concetto di reti interamente convoluzionali (FCN) nel 2014 per attività 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 sola volta, invece di scomporla in pezzi più piccoli. Ciò ha reso possibile per il modello creare mappe dettagliate che mostrano in modo più chiaro ciò che è presente in un'immagine.

Timeline of the evolution of deep learning-based segmentation algorithms

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

Basandosi sulle FCN, U-Net è stata introdotta dai ricercatori dell'Università di Friburgo nel 2015. È stata originariamente progettata per la segmentazione di immagini biomediche. In particolare, U-Net è stata progettata per ottenere ottimi risultati 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.

Cos'è U-Net e come fluiscono le caratteristiche attraverso il modello?#

U-Net è un modello di deep learning creato specificamente per la segmentazione d'immagine. 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.

Una panoramica dell'architettura di U-Net#

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

  • Immagine di 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.

Diagram of the U-Net encoder-decoder architecture

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

Comprendere la differenza tra ViT e U-Net#

Mentre esplori U-Net, potresti chiederti in cosa differisca da altri modelli di deep learning, come il Vision Transformer (ViT), che possono anch'essi eseguire compiti di segmentazione. Sebbene entrambi i modelli possano svolgere compiti simili, differiscono per come sono strutturati 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.

Applicazioni 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.

Segmentazione di emorragie cerebrali nell'imaging medico#

U-Net è diventato un metodo affidabile per la segmentazione a livello di pixel di immagini mediche complesse, 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 sanguinamento interno nelle immagini TC e RM. Questo approccio ha fatto progredire 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.

Segmentation of hemorrhagic stroke lesions in medical scans using 3D U-Net

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

Segmentazione 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 mosso da movimento nelle immagini dei droni, i ricercatori hanno migliorato U-Net con tecniche di rimozione dell'effetto mosso dell'immagine. Ciò garantisce una segmentazione più nitida, anche quando i dati vengono raccolti in movimento, come durante i rilievi aerei.

U-Net separating crops from weeds in an agricultural field

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

Guida autonoma#

Prima dell'introduzione di modelli di intelligenza artificiale più avanzati, U-Net ha svolto un ruolo fondamentale 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 stradale. Ciò fornisce all'auto una visione chiara dell'ambiente circostante, aiutando nella navigazione sicura e nel processo decisionale efficace.

Road scene with the drivable area segmented using U-Net

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

Pro 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 community: U-Net è disponibile nelle principali librerie di deep learning ed è supportato da una grande community 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.

Punti 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 creare i tuoi progetti di computer vision? Esplora il nostro repository GitHub per approfondire l'AI e dai un'occhiata alle nostre opzioni di licensing. Scopri come la computer vision nella sanità sta migliorando l'efficienza ed esplora l'impatto dell'AI nel retail visitando le nostre pagine delle soluzioni! Unisciti subito alla nostra crescente community!

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