Filtro Wiener per la riduzione del rumore dell'immagine (Image Denoising)


16

Sto cercando di aggirare la testa sul funzionamento del filtro Wiener ai fini della riduzione del rumore dell'immagine. Nel mio caso avrò usato prima un altro filtro per la riduzione del rumore e poi userò il risultato come approssimazione delle caratteristiche del rumore per il filtro Wiener.

Per quanto riguarda le informazioni sul filtro Wiener, ho trovato utile il seguente codice e descrizione Matlab:

http://www.mathworks.co.uk/help/toolbox/images/f11-12251.html#f11-14272

e alcuni altri buoni collegamenti come

http://blogs.mathworks.com/steve/2007/11/02/image-deblurring-wiener-filter/

Quindi dal punto di vista di Matlab posso vedere come usare la funzione integrata di Matlab, ma mi piacerebbe ottenere una comprensione più fondamentale piuttosto che usare semplicemente la funzione, ma allo stesso tempo preferirei trovare qualcosa di più digeribile di la voce di Wikipedia sul filtro Wiener .

Qualcuno ha cura di offrire una breve spiegazione sul filtro Wiener?


2
prima che venga data una risposta ... devi indicare qual è il tuo background. conosci la teoria dei processi casuali? Senza conoscere la teoria dei processi casuali dare una spiegazione concreta è quasi impossibile.
Trevor Boyd Smith,

A meno che tu non stia bene con una spiegazione più agitando la mano.
Trevor Boyd Smith,

Grazie per la risposta. Sì, sono abbastanza a mio agio con la teoria dei processi casuali e il mio background è nell'elaborazione delle immagini
trican

3
bene ... se hai un background di processi casuali, allora dovrebbe essere possibile dare una buona spiegazione. (ora ho bisogno di trovare il tempo per scrivere una buona spiegazione.)
Trevor Boyd Smith,

Grazie Trevor! molto apprezzato - anche alcuni buoni consigli per calciarmi nella giusta direzione sarebbero molto apprezzati.
trican,

Risposte:



11

C'è un'altra voce di Wikipedia sul filtro Wiener più applicabile all'elaborazione delle immagini.

y(n,m)=h(n,m)x(n,m)+v(n,m)
  • x
  • h
  • vx
  • y

gx

x^(n,m)=g(n,m)y(n,m)
x^x

gG

G(ω1,ω2)=H(ω1,ω2)S(ω1,ω2)|H(ω1,ω2)|2S(ω1,ω2)+N(ω1,ω2)
  • è la trasformata di Fourier di g , Gg
  • è la trasformata di Fourier di h , Hh
  • è la densità spettrale di potenza media dell'ingresso x e Sx
  • è la densità spettrale di potenza media del rumore v .Nv

L'equazione per può essere riscritta come: G ( ω 1 , ω 2 ) = 1G

G(ω1,ω2)=1H(ω1,ω2)[|H(ω1,ω2)|2H(ω1,ω2)|2+N(ω1,ω2)S(ω1,ω2)]
H

Mille grazie per la tua risposta approfondita. Non sono chiaro come posso usare la fase precedente di denoising all'interno della spiegazione sopra? Nel complesso dovrò sedermi e capire come prendere la spiegazione di cui sopra e implementarla.
trican,

gyy

Scusate se non ero chiaro, quello che volevo dire è che per i principali algoritmi di riduzione del rumore dell'immagine come SADCT o BM3D ( cs.tut.fi/~foi/GCF-BM3D ). Viene eseguita una prima fase di riduzione del rumore (tramite SADCT o filtraggio 3d di corrispondenza dei blocchi per questi due algoritmi citati) e il risultato di questo viene utilizzato come approssimazione per la fase secondaria che impiega il filtro wiener. Sto cercando di aggirare la mia fase di filtraggio della salciccia secondaria, quindi la mia domanda originale.
trican,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.