Ricerca nel sito web

Denoising nel mondo reale attraverso il modello di diffusione


Introduzione

Possiamo imparare molto sul nostro ambiente attraverso le immagini, rendendole uno strumento indispensabile. Tuttavia, le immagini potrebbero essere distorte da segnali indesiderati in qualsiasi fase del processo, comprese l'acquisizione, la trasmissione e l'archiviazione.

La perdita di qualità può influenzare in modo indesiderato le fasi di elaborazione dell'immagine. Pertanto, la riduzione del rumore delle immagini nel mondo reale è necessaria per ripulire le immagini prima che possano essere utilizzate in applicazioni di visione artificiale più avanzate senza compromettere l’autenticità dei dati originali. Affinché l'identificazione delle immagini e l'estrazione delle caratteristiche funzionino bene, è necessaria la rimozione del rumore delle immagini nel mondo reale. Questo perché le immagini di alta qualità sono fondamentali per affrontare sfide particolari in una varietà di campi.

Prerequisiti

  • Comprensione di base dell'apprendimento automatico: familiarità con concetti fondamentali come l'apprendimento supervisionato e non supervisionato, nonché conoscenza generale delle reti neurali.
  • Conoscenza dei framework di deep learning: esperienza con framework come PyTorch o TensorFlow, in particolare per la creazione e l'addestramento di reti neurali.
  • Comprensione dei modelli generativi: Conoscenza di base dei modelli generativi come GAN (Generative Adversarial Networks) o VAE (Variational Autoencoders).
  • Familiarità con i modelli di diffusione: consapevolezza dei fondamenti dei modelli di diffusione, compresi i processi di diffusione diretta e inversa.
  • Background di matematica: una conoscenza di base di algebra lineare, probabilità e calcolo, in particolare concetti come distribuzioni gaussiane ed equazioni differenziali.
  • Installazione delle librerie richieste: assicurati di disporre di librerie di deep learning come PyTorch e di eventuali librerie di modelli di diffusione specifiche installate nel tuo ambiente (ad esempio, pip install torch).

(CNN) per la rimozione del rumore delle immagini nel mondo reale

Le CNN possono apprendere autonomamente le funzionalità senza ricevere dati di addestramento o richiedere competenze specifiche sui metodi di elaborazione delle immagini o sui modelli statistici. Per mappare immagini realisticamente rumorose in immagini prive di rumore, la rete può imparare a tenere conto delle caratteristiche uniche del rumore dell'immagine in ingresso.

Le tecniche di denoising delle immagini che fanno uso di reti neurali convoluzionali (CNN) possono essere suddivise in due categorie distinte:

  • Modelli di percettrone multistrato (MLP): le reti neurali feedforward come i modelli MLP possono essere utilizzate per la rimozione del rumore delle immagini. L'immagine rumorosa viene inviata allo strato di input e l'immagine denoizzata viene prodotta dallo strato di output.
  • Metodi di deep learning: quando si parla di topologie di reti neurali, il termine "deep learning" viene utilizzato per descrivere quelle con diversi livelli nascosti.

Ecco alcuni esempi di tecniche di denoising delle immagini che utilizzano il deep learning:

  • TNRD: il modello di reazione-diffusione non lineare addestrabile (TNRD) è una rete neurale profonda che esegue la rimozione del rumore simulando la diffusione del rumore in un'immagine utilizzando un'architettura feed-forward non lineare.
  • FC-AIDE: FC-AIDE è una tecnica di denoising delle immagini basata sul deep learning che mappa le immagini rumorose nelle loro versioni prive di rumore utilizzando una rete neurale completamente convoluzionale. Questa tecnica migliora le prestazioni di riduzione del rumore considerando i pixel circostanti in un'immagine. Le prestazioni di denoising vengono migliorate anche con l'uso di tecniche di regolarizzazione.
  • GCBD: denoising cieco convoluzionale generativo (o GCBD in breve). Le immagini vengono “denoizzate” utilizzando Generative Adversarial Networks (GAN). Per generare immagini sintetiche convincenti, i GAN utilizzano una coppia di reti neurali chiamate “generatore” e “discriminatore”. La rimozione del rumore prevede l'addestramento di questi due sistemi separati, uno per creare una versione priva di rumore di un'immagine (il generatore) e un altro per rilevare le differenze tra la versione denoizzata e l'originale (il discriminatore).

Limitazioni della CNN

Sebbene le CNN eccellano nell’estrarre informazioni dalle aree dell’immagine vicine, hanno difficoltà a identificare le relazioni tra caratteristiche più distanti. Alcune architetture di rete neurale, come Transformer, utilizzano tecniche di auto-attenzione per registrare le dipendenze a lungo raggio tra punti dati, consentendo loro di funzionare al di fuori di questa restrizione.

Il nuovissimo Image Transformer è stato progettato per essere un generatore di immagini ad altissima risoluzione. L'Image Transformer estrae in modo efficiente le interazioni globali tra le informazioni testuali utilizzando processi di auto-attenzione, reti feed-forward residue e meccanismi multi-head.

A differenza delle reti neurali convoluzionali, questo design può catturare efficacemente le dipendenze a lungo raggio dei dati globali. Image Transformer è stato utilizzato per una serie di attività di ripristino delle immagini, come la rimozione del rumore delle immagini nel mondo reale, con risultati che sono alla pari con quelli degli approcci all'avanguardia. I moduli Transformer sono spesso molto grandi e impegnativi dal punto di vista computazionale, limitando il loro utilizzo alle attività di ripristino delle immagini che richiedono immagini ad alta risoluzione.

Limitazioni dei modelli di diffusione nel denoising delle immagini nel mondo reale

  • Quando si tratta di modellazione generativa, i modelli di diffusione hanno dimostrato di essere più efficaci degli approcci tradizionali. Nonostante il loro uso diffuso in altri contesti, i modelli di diffusione hanno visto poca adozione nel campo della rimozione pratica del rumore delle immagini. Poiché l’immagine della fase finale dei modelli di diffusione standard è caratterizzata da rumore gaussiano, regolare la quantità di rumore introdotto nel processo in avanti è impegnativo.
  • La complessità e la diversità del rumore del mondo reale, inclusa la sua dipendenza spaziale e temporale, la dipendenza dalla frequenza e dal colore, il rumore di ripresa, il rumore del pattern e molte altre caratteristiche, ha limitato l’uso di modelli di diffusione nella denoising delle immagini del mondo reale.

Introduzione del modello generale di diffusione del denoising proposto

La ricerca propone un modello generalizzato di diffusione del denoising delle immagini del mondo reale utilizzando l'interpolazione lineare per risolvere questi problemi. L'approccio suggerito utilizza l'aggiunta graduale del rumore in avanti e l'operazione di rimozione graduale del rumore all'indietro per ottenere la riduzione del rumore dell'immagine nel mondo reale.

L'interpolazione tra l'immagine pulita originale e la corrispondente immagine rumorosa del mondo reale produce un'immagine rumorosa intermedia. Nel passo temporale t=0, l'immagine è l'immagine pulita originale e nel passo temporale t=T, l'immagine corrisponde all'immagine rumorosa del mondo reale.

La quantità di rumore aggiunto è controllata dal parametro α=t/T, in modo che il rumore aggiunto nel processo di diffusione sia più vicino al mondo reale rispetto al rumore gaussiano con distribuzione standard, ottenendo così una riduzione del rumore dell'immagine più efficace.

Modello probabilistico di diffusione del denoising (DDPM)

I modelli probabilistici di diffusione del denoising (DDPM) sono un tipo di modelli generativi probabilistici basati sul processo di diffusione. Per simulare la distribuzione delle immagini, DDPM combina una rete di trasformazioni affini con una di processi di diffusione. Utilizzando l’algoritmo di diffusione inversa come tecnica di ottimizzazione, il modello è in grado di migliorare costantemente il suo potenziale generativo attraverso l’ottimizzazione dei parametri della rete.

Nota: le reti di trasformazione affine sono un sottoinsieme di reti neurali che possono essere addestrate per eseguire varie trasformazioni di immagini, tra cui rotazione, ridimensionamento e traslazione. Sottoponendo ripetutamente l'immagine ad una fase di diffusione del rumore, la rete del processo di diffusione simula il processo di diffusione reale.

Processo di diffusione

È possibile modellare la diffusione di particelle o dati nel tempo utilizzando un processo stocastico noto come processo di diffusione. I modelli di diffusione vengono utilizzati nel campo dell'elaborazione delle immagini allo scopo di eliminare il rumore dalle immagini diffondendo gradualmente il rumore presente nell'immagine originale. Per facilitare la produzione di immagini di alta qualità, il modello DDPM accoppia questo processo di diffusione con una rete in grado di apprendere la distribuzione delle immagini.

DDPM ha una struttura a catena di Markov fissa per la parte posteriore approssimativa q(x1:T|x0), che è anche chiamata processo in avanti o processo di diffusione. Questa catena di Markov aggiunge gradualmente rumore gaussiano ai dati nel tempo, utilizzando un programma di varianza β1, . . . , βT per controllare la quantità di rumore aggiunto in ogni punto della sequenza:

  • La posteriore approssimativa q(x1:T |x0) si riferisce alla distribuzione di probabilità dell'immagine pulita data l'immagine rumorosa.
  • La media è indicata da "x sub i", dove "x" è il valore del pixel precedente.
  • “beta sub i” sta per la varianza.
  • La porzione dell'immagine con rumore è rappresentata da “beta sub i ” moltiplicato per la matrice di identità “I”, mentre la porzione dell'immagine priva di rumore è rappresentata dalla radice quadrata di “1-beta sub i ” moltiplicata per “x sub i-1. "
  • Per ogni intervallo temporale, la distribuzione di probabilità è una distribuzione normale con media pari all'intervallo temporale precedente moltiplicata per un fattore di scala della radice quadrata di (1-beta) e varianza pari a beta moltiplicato per la matrice identità. Qui, beta è un parametro che determina la quantità di rumore introdotta nell'immagine come risultato dell'operazione di diffusione.

Diffusione inversa

Nel metodo di diffusione inversa, un'immagine rumorosa viene utilizzata come punto di partenza e il processo di diffusione viene applicato al contrario per ripulire l'immagine in più passaggi. Immagini di alta qualità possono essere generate dal modello quando ha appreso la distribuzione sottostante delle immagini pulite.

Nei modelli di diffusione, il processo inverso è rappresentato dalla distribuzione congiunta p (x0:T), che è specificata come una catena di Markov con transizioni gaussiane apprese. Partendo dalla distribuzione gaussiana con media 0 e matrice di covarianza I, p(xT)=N (xT ; 0, I) è la distribuzione a priori in questa catena.

Il processo inverso dei modelli di diffusione utilizza una catena di Markov con transizioni gaussiane apprese per attenuare il rumore nell’immagine nel tempo. La tecnica inizia con una distribuzione gaussiana con media 0 e matrice di covarianza I come distribuzione a priori, quindi riduce gradualmente il rumore fino al raggiungimento dei dati osservati.

  • Le distribuzioni di probabilità per l'immagine pulita finale al tempo T e la corrispondente immagine rumorosa al tempo T sono mostrate a sinistra, mentre la distribuzione di probabilità congiunta delle immagini rumorose intermedie ad ogni passo temporale da 0 a T-1 può essere vista a destra .
  • Poiché il simbolo del prodotto nella formula si ripete in tutti i passaggi temporali da 1 a T-1, possiamo dedurre che la generazione delle immagini rumorose intermedie è un processo di diffusione in più fasi.
  • Poiché l'interpolazione lineare è al centro del processo di diffusione, l'immagine rumorosa intermedia in ogni fase temporale viene generata fondendo l'immagine pulita originale con la sua controparte rumorosa corrispondente nel mondo reale.

Modello di diffusione generale

I due componenti del tipico modello di diffusione impiegato nelle attività di generazione di immagini sono i seguenti:

  • L'immagine originale subisce un processo di rumore casuale continuo che aggiunge gradualmente una distribuzione gaussiana del rumore. Il rumore nell'immagine viene quindi stimato utilizzando un modello Unet addestrato sull'immagine originale.
  • Utilizzando lo stesso modello Unet, rimuoviamo il rumore previsto da un'immagine gaussiana pura ad ogni passaggio per ottenere una versione denoizzata dell'originale. L'immagine finale e ordinata viene acquisita dopo diverse iterazioni di questo processo.

In questo lavoro, gli autori presentano un modello di diffusione più generale che tiene conto della corrispondenza del rumore aggiunto con l'immagine rumorosa del mondo reale

Algoritmo di training per il modello generale di diffusione del denoising proposto

  • Il processo inizia scegliendo due immagini a caso da una distribuzione di probabilità q. Questi sono x0 e xT.
  • Un parametro noto come t viene utilizzato insieme alla formula α=t/T per determinare il livello di rumore che verrà introdotto nell'immagine.

  • Interpoliamo linearmente tra x0 e xT utilizzando α per generare un'immagine intermedia rumorosa, xt.
  • La discesa del gradiente viene eseguita sulla differenza tra l'immagine pulita iniziale, x0, e S(xt, t). L’output del modello, Sθ(xt, t), è la versione denoizzata di xt al tempo t.

Il metodo proposto si traduce in una migliore qualità complessiva dell'immagine denoizzata nel mondo reale, consentendo al tempo stesso il controllo del rumore aggiunto. È fondamentale che la distribuzione della potenza xt vari con continuità rispetto a t, e l’operatore deve soddisfare questo requisito:

I ricercatori utilizzano una semplice rete Unet denominata Sθ per sviluppare un processo di diffusione inversa sequenziale. Questa rete è adattata per prendere l'immagine rumorosa xt e il passo temporale t come input per stimare l'output target x0. Utilizzando l’elaborazione di diffusione inversa basata sul deep learning, l’architettura di rete suggerita consente la graduale riduzione del rumore dell’immagine.

  • Come accennato in precedenza, xt è l'immagine rumorosa intermedia al tempo t
  • La quantità di rumore dell’immagine rumorosa intermedia può essere regolata utilizzando il parametro α;  piccoli valori di α producono un'immagine più rumorosa.

Nelle applicazioni pratiche deve essere utilizzata una rete neurale parametrizzata da θ. La funzione obiettivo di questa rete è ripristinare accuratamente l'immagine x0, e ciò si ottiene minimizzando il problema corrispondente attraverso l'addestramento:

  • x0 denota un'immagine pulita campionata casualmente dai pdata di distribuzione
  • xT denota un'immagine rumorosa del mondo reale tratta dalla stessa distribuzione.
  • L'immagine intermedia, indicata con xt, si ottiene interpolando tra x0 e xT . Nello studio la norma utilizzata è rappresentata da ||·|| , che è specificatamente impostato su L2 nel quadro sperimentale.

Per migliorare le prestazioni e far fronte ai valori anomali, il modello è ottimizzato utilizzando la robusta perdita di Charbonnier anziché la perdita L1 standard. Quella che segue è una definizione della perdita di Charbonnier:

La funzione di perdita ha lo scopo di quantificare il livello di differenza tra l'immagine denoizzata e la verità fondamentale originale. Le prestazioni del modello di rimozione del rumore aumentano al diminuire di L_char.

Algoritmo di campionamento

  • L'approccio consueto alla generazione di un'immagine utilizzando il modello di diffusione richiede un campionamento passo-passo e le prestazioni di denoising dell'immagine nel mondo reale dipendono fortemente dalla tecnica di campionamento adottata dal modello di diffusione.
  • Questa ricerca fornisce un approccio di campionamento graduale per la riduzione del rumore delle immagini. Nella fase successiva, un Unet viene addestrato a stimare x0 per immagini con vari gradi di rumore interpolando tra immagini pulite e realisticamente rumorose. Nel processo inverso, l'immagine rumorosa del mondo reale viene denoizzata in ogni fase utilizzando Sθ.

  • Questo metodo è chiamato Campionamento dell'origine perché esegue un'interpolazione verso l'immagine originale da un'immagine campionata. In questa ricerca, gli autori valutano questa tecnica rispetto a un altro algoritmo di campionamento che incorpora numerosi miglioramenti all'Origin Sampling per migliorarne le prestazioni.
  • Per scopi pratici di riduzione del rumore delle immagini, Unet funziona meglio quando S (xt, t) è equivalente a x0. Questo perché l'accuratezza dei risultati iterativi migliora in tutte le fasi di t man mano che S si avvicina a x0. Pertanto, le prestazioni di riduzione del rumore delle immagini nel mondo reale migliorano con una valutazione più precisa di x0.
  • Tuttavia, la precisione di Unet in genere non è molto buona e gli errori iniziano ad accumularsi, portando all'allontanamento dei risultati dell'iterazione da x0, che alla fine porta a scarse prestazioni di riduzione del rumore dell'immagine.
  • A causa dei vincoli imposti dall'architettura di rete e dalle dimensioni dei dati, Unet non è in grado di fare previsioni corrette su x0. Ciò, a sua volta, provoca l’accumulo di errori e si traduce in effetti di denoising iterativi errati. Il seguente algoritmo per eseguire il campionamento con denoising viene presentato come una soluzione a questo problema e funziona meglio dei metodi di campionamento convenzionali.

Questo algoritmo è migliorato dalle caratteristiche matematiche di questa tecnica di campionamento, che migliorano ulteriormente il risultato di denoising. Per il compito pratico di denoising dell'immagine, è possibile ottenere un risultato positivo anche se Sθ non fornisce un risultato positivo

Gli autori dell’articolo “Real-World Denoising Through Diffusion Model” suggeriscono un modello di diffusione di denoising generico. La ricerca fornisce dati sperimentali che dimostrano che il modello proposto può eliminare con successo il rumore delle immagini rumorose. Nel documento sono stati eseguiti più passaggi:

  • Per addestrare il modello proposto, gli autori si sono rivolti al framework DDIM (Denoising Diffusion Implicit Models).
  • Le prestazioni del modello nelle attività pratiche di denoising sono state valutate utilizzando il set di dati CIFAR-10.
  • Hanno esaminato le prestazioni del modello proposto rispetto a BM3D, DnCNN e NLRN, che sono tutte considerate tecniche di denoising all'avanguardia.
  • Hanno valutato le prestazioni dei modelli utilizzando il rapporto segnale-rumore di picco (PSNR) e l'indice di somiglianza strutturale (SSIM).

I risultati sperimentali hanno dimostrato la superiorità del modello proposto rispetto alle migliori tecniche di denoising esistenti quando applicate a compiti di denoising nel mondo reale... Gli autori hanno dimostrato che il modello proposto può eliminare il rumore dalle immagini rumorose in un'ampia gamma di contesti pratici, come la fotografia in condizioni di scarsa illuminazione e le applicazioni mediche. immagine.

Conclusione

Questa ricerca utilizza un modello di ampia diffusione con interpolazione lineare per fornire un approccio pratico alla rimozione del rumore nella pratica. La tecnica suggerita combina i vantaggi della semplice Unet con il modello di diffusione, che non solo utilizza il campo recettivo locale delle CNN per analizzare immagini enormi ma sfrutta anche il vantaggio generativo del modello di diffusione. Nella fase successiva, l'approccio stima il rumore nelle immagini interpolandole utilizzando Unet. Nel processo inverso, il modello stima iterativamente il rumore e poi lo rimuove, ottenendo un vero e proprio denoising dell'immagine.

Riferimento

Denoising nel mondo reale tramite modello di diffusione: https://arxiv.org/abs/2305.04457

Articoli correlati: