Filtro di Wiener

Da Wikipedia, l'enciclopedia libera.

Il Filtro di Wiener è un filtro digitale per l'elaborazione numerica dei segnali proposto da Norbert Wiener negli anni 1940 e pubblicato nel 1949.

Descrizione[modifica | modifica wikitesto]

In generale, l'obiettivo di un filtro è l'eliminazione del rumore presente in un segnale.

Tipicamente i filtri sono concepiti per una ben precisa risposta in frequenza e possono operare la separazione tra segnale e rumore a condizione che questi occupino diverse bande di frequenza. Il filtro di Wiener supera questa limitazione affrontando il problema del filtraggio con un approccio statistico. Si assume di avere conoscenza delle caratteristiche spettrali del segnale originale e del rumore, e si cerca il filtro LTI la cui uscita sia "il più vicina possibile" al segnale originale, indicando con questa espressione la minimizzazione di una prefissata misura dell'errore compiuto nell'operazione.

I filtri di Wiener sono caratterizzati dalle seguenti caratteristiche:

  1. Assunzioni: il segnale e il rumore additivo, ovvero che si somma al segnale, sono processi stocastici stazionari e lineari con caratteristiche spettrali note o autocorrelazione e mutua correlazione nota
  2. Condizioni: il filtro deve essere fisicamente realizzabile, ovvero la sua risposta (effetto) non può precedere temporalmente l'ingresso (causa). Essendo l'effetto successivo alla causa questi filtri vengono anche chiamati causali. La condizione di causalità può essere abbandonata, nel qual caso si parla di filtri non causali o di soluzioni non causali.
  3. Criteri prestazionali: minimo errore quadratico medio

Questo filtro è usato frequentemente nel processo di deconvoluzione; per questo utilizzo vedi deconvoluzione di Wiener.

Impostazione del problema[modifica | modifica wikitesto]

L'ingresso di un filtro di Wiener si assume essere un segnale alterato da un rumore additivo . L'uscita è calcolata per mezzo del filtro usando la seguente convoluzione:

Wienerhopf.png
dove il simbolo " * " indica l'operazione di convoluzione e:

  • è il segnale originale da ricostruire il più fedelmente possibile in uscita
  • è il rumore
  • è il segnale stimato che speriamo sia uguale a
  • è il filtro di Wiener

L'errore è mentre l'errore quadratico è dove

  • è l'uscita desiderata filtro
  • è l'errore

A seconda del valore di α si affronta un tipo di problema diverso:

  • Se allora il problema è detto di predizione
  • If allora il problema è detto di filtraggio
  • If allora il problema è detto di smoothing

Introducendo esplicitamente l'espressione dell'integrale di convoluzione, può essere scritto come: .

e pertanto il valore atteso dell'errore quadratico sarà

dove

  • è la funzione di autocorrelazione di
  • è la funzione di autocorrelazione di
  • è la funzione di correlazione mutua, o cross-correlazione di e

La ottima è quindi quella che minimizza .

Se il segnale e il rumore sono non correlati, ovvero la cross-correlazione è zero, l'espressione di semplifica in quanto

Soluzione stazionaria[modifica | modifica wikitesto]

Il filtro di Wiener ammette soluzione per due possibili casi: il caso in cui si voglia un filtro causale, e il caso in cui un filtro non causale sia accettabile. L'ultimo è più semplice, ma non si presta per applicazioni in tempo reale. L'obiettivo principale di Wiener era risolvere il caso in cui la condizione di causalità fosse valida.

Soluzione non causale[modifica | modifica wikitesto]

Posto che sia ottimale, allora l'equazione di minimo errore quadratico medio si riduce in

e la soluzione è l'inversa della trasformata di Laplace a due lati di .

Soluzione causale[modifica | modifica wikitesto]

Dove

  • è la parte causale di (cioè la parte di questa frazione avente una soluzione temporale positiva per trasformazione inversa di Laplace)
  • è la componente causale di (p.e. la trasformata inversa di Laplace di è non nulla solo se )
  • è la componente anti causale di (p.e. la trasformata inversa di Laplace è non nulla solo per t non negativo)

Questa espressione generale è complicata e necessita di una più dettagliata spiegazione. Per ottenere la soluzione per un caso specifico, bisogna seguire i seguenti passi:[1]

1. Si parte dallo spettro in forma razionale e lo si fattorizza nelle componenti causale e anti causale:

dove contiene tutti gli zeri e i poli nel semipiano sinistro (LHP) e contiene gli zeri e i poli nel semipiano (RHP). Si intendono semipiano destro e sinistro i due semipiani a sinistra e a destra dell'origine, essendo la retta verticale s=0 la frontiera dei due semipiani.

2. Si divide per si espande il risultato in frazioni parziali.

3. Si selezionano quei termini dell'espansione che hanno poli nel semipiano LHP, termini indicati con .

4. Si divide per . Il risultato è la funzione filtro di trasferimento desiderata

FIR filtro di Wiener per serie discrete[modifica | modifica wikitesto]

Per ricavare i coefficienti del filtro di Wiener si considera un signale w[n] passato a un filtro di Wiener di ordine N con coefficienti . L'uscita del filtro, indicata con x[n], è data dall'espressione

L'errore residuo è indicato con e[n] e definito come e[n]=x[n]-s[n] (Vedi il corrispondente diagramma a blocchi). Il filtro di Wiener è concepito in maniera tale da minimizzare la deviazione standard (criterio MMSE), scritta concisamente nella maniera seguente:

dove indica l'operatore di valore atteso. In generale i coefficienti sono essere complessi e possono essere derivati anche nel caso in cui w[n] e s[n] sono complesse. Per semplicità si considera solo il caso in cui tutte queste quantità sono reali. La deviazione standard può essere riscritta come:

Per trovare il vettore che minimizza l'espressione sopra si calcola la sua derivata rispetto ai coefficienti

Se ai suppongono w[n] e s[n] stazionarie, si possono introdurre le seguenti sequenze , note rispettivamente come l'autocorrelazione di w[n] e la cross-correlazione tra w[n] e s[n], definite come segue

La derivata della MSE può dunque essere riscritta come (si noti che )

Imponendo la derivata uguale a zero si ottiene

che può essere riscritta in forma matriciale

Queste equazioni sono note come equazioni di Wiener-Hopf. La matrice che appare nell'equazione è una matrice di Toeplitz simmetrica. Queste matrici sono definite positive e dunque non singolari, per cui esiste una sola soluzione nella determinazione dei coefficienti del filtro di Wiener. Inoltre esiste un algoritmo efficiente per risolvere le equazioni di Wiener-Hopf noto come algoritmo di Levinson-Durbin.

Filtro di Wiener per il riconoscimento del Pile Up[modifica | modifica wikitesto]

Il filtro di Wiener è molto utile anche nel campo del riconoscimento di segnale, in particolare del Pile Up (sovrapposizione di due segnali nella stessa finestra temporale). Ecco come si esprime la funzione di trasferimento del filtro.

Si supponga di avere un sistema con una risposta r(t) al segnale unitario e un segnale non corrotto u(t) in ingresso (es: ). L'uscita s(t) del sistema sarà pertanto una convoluzione tra la funzione di risposta e il segnale di ingresso u(t):

che nel dominio di Fourier si riduce semplicemente a .

Nel caso reale invece l'uscita del sistema sarà un segnale corrotto c(t) = s(t) + n(t). La in questo caso sarà:

Lo scopo del Filtro di Wiener è quello di trovare un filtro tale per cui vale:

dove è la miglior stima di , ovvero minimizza la differenza quadratica tra U e U'. In formule equivale a minimizzare

Risolvendo si ottiene l'espressione cercata:

Se si considera la u(t) come una delta, l'espressione si semplifica:

Questo filtro può tornare molto utile nella ricerca di segnali, come per esempio in un algoritmo di trigger o riconoscimento di pattern, dato che la U' estrapolata rappresenta appunto una delta, quindi è facilmente riconoscibile.

Note[modifica | modifica wikitesto]

  1. ^ University of Southern California, LLoyd R. Welch: Wiener Hopf Theory

Bibliografia[modifica | modifica wikitesto]

  • Wiener, Norbert (1949), Extrapolation, Interpolation, and Smoothing of Stationary Time Series. New York: Wiley. ISBN 0-262-73005-7
  • Brown, Robert Grover and Patrick Y.C. Hwang (1996) Introduction to Random Signals and Applied Kalman Filtering. 3 ed. New York: John Wiley & Sons. ISBN 0-471-12839-2

Voci correlate[modifica | modifica wikitesto]

Matematica Portale Matematica: accedi alle voci di Wikipedia che trattano di matematica