Sistemi a fase lineare e assenza di distorsione
In questa pagina 6
In molte applicazioni (audio, immagini, comunicazioni) il filtro deve cambiare quali frequenze passano senza deformare la forma di quello che passa: se si filtra una nota musicale, l'attacco e l'inviluppo devono restare quelli. Questa nota dice quando succede, in termini di risposta in frequenza, e perché obbliga a usare filtri FIR con risposta impulsiva simmetrica. Le basi sono in Risposta in frequenza dei sistemi FIRSe all'ingresso di un FIR c'è un esponenziale complesso A e^{jφ} e^{jω̂n} (per ogni n), l'uscita è lo stesso esponenziale moltiplicato per H(ω̂) = Σ b_k e^{-jω̂k}: la frequenza non cambia, ampiezza e fase sono modificate da |H| (guadagno) e ∠H (sfasamento). Per sovrapposizione si trattano somme di sinusoidi. H è periodica di periodo 2π e, per coefficienti reali, hermitiana (|H| pari, fase dispari). La cascata ha H = H1·H2. Esempi: ritardo (fase lineare), differenza prima (passa-alto), {1,2,1} (passa-basso), media mobile di L punti (Dirichlet: |H| = |sin(Lω̂/2)/(L sin(ω̂/2))|, fase lineare -(L-1)ω̂/2).Risposta in frequenza dei sistemi FIR → e Trasformata di Fourier a tempo discretoLa trasformata di Fourier di un segnale discreto è $S(f)=\sum_nT,s(nT),e^{-i2\pi fnT}$: una funzione continua e periodica in $f$ di periodo $F_p=1/T$. L'antitrasformata è l'integrale su un periodo, $s(nT)=\int_0^{F_p}S(f)e^{i2\pi fnT}df$. Le regole sono quelle del caso continuo (traslazione, convoluzione $\leftrightarrow$ prodotto, Parseval $\sum T|s|^2=\int_0^{F_p}|S|^2$), con incremento e somma corrente al posto di derivata e integrale. Per segnali reali $S(f)=S^*(-f)$, quindi basta $[0,F_p/2]$. Esempi: $\delta\to1$, $1\to\delta_{F_p}$, rect $\to$ sinc periodico, $a^n\mathbf 1_0\to\frac T{1-ae^{-i2\pi fT}}$.Trasformata di Fourier a tempo discreto →; il passo di campionamento è e la pulsazione normalizzata è (normalized angular frequency), con risposta in frequenza (frequency response).
La condizione di assenza di distorsione
Definizione (condizione di non distorsione, no distortion condition). Un sistema LTI causale non distorce se cioè se l'uscita è una copia scalata e ritardata dell'ingresso.
Esempio. Con , e (da ) si ha : stessa forma, ampiezza doppia, tre campioni dopo.
Si passa subito al dominio trasformato. Per la proprietà del ritardo (Proprietà della trasformata zetaProprietà della zeta bilatera con le ROC: linearità (ROC ⊇ intersezione), ritardo x[n-n0] → z^{-n0}X(z) (unilatera: + termini iniziali), convoluzione → prodotto, stabilità BIBO ⇔ circonferenza unitaria nella ROC di H, coniugato X*(z*), inversione temporale X(1/z) con ROC invertita, derivazione n x[n] → -z X'(z), moltiplicazione per a^n → X(z/a) (ROC scalata di |a|), teoremi del valore iniziale e finale (ipotesi sul polo in 1). Con la tabella delle coppie notevoli.Proprietà della trasformata zeta →) la funzione di sistema è Poiché , il modulo è costante, , e la fase (phase) è una retta in : Il segno di aggiunge la costante perché se .
Definizione (ritardo di gruppo, group delay). Misura di quanti campioni viene ritardato l'inviluppo di un segnale a banda stretta attorno a .
Esempio. Per la fase si ha , costante: tutte le frequenze subiscono lo stesso ritardo, e per questo la forma si conserva. Se dipendesse da , le componenti del segnale arriverebbero sfasate l'una rispetto all'altra e la forma d'onda cambierebbe (distorsione di fase).
Riassumendo: non distorsione = modulo costante + fase lineare. Un filtro selettivo (passa-basso, passa-banda, ...) non può avere modulo costante, ma può avere fase lineare: allora distorce solo l'ampiezza delle varie frequenze, come si vuole, e non le sfasa in modo disordinato.
Perché il ritardo di gruppo e non la fase da sola
Per un ingresso qualunque sistema LTI dà , cioè un ritardo di fase campioni. Per un segnale che contiene più frequenze, ognuna viene ritardata di : l'uscita ha la stessa forma dell'ingresso (a parte i moduli) solo se questi ritardi coincidono, cioè se . Se invece con costante non nulla (fase lineare generalizzata), la forma d'onda cambia di poco: è come ritardare e poi spostare tutte le componenti di una fase fissa (nel caso , una trasformata di Hilbert). Per questo si parla di fase lineare generalizzata.
Esempio numerico di sistema che distorce. Il filtro ha e ritardo di gruppo che vale per , per e per : non è costante, quindi le basse frequenze sono ritardate di un terzo di campione e quelle vicine a vengono anticipate di un campione (valori calcolati con Python).
Grafico interattivo: Ritardo di gruppo di h = {1, 0.5} (varia da 1/3 a -1: distorsione di fase) confrontato con il FIR simmetrico a 5 coefficienti (costante 2)
Fase lineare generalizzata
Definizione (fase lineare generalizzata, generalized linear phase). Un sistema ha fase lineare se la sua risposta in frequenza si scrive con costanti reali e funzione reale (detta amplitude response o zero-phase response), che può anche cambiare segno.
Attenzione: non è il modulo: . Dove cambia segno la fase vera salta di (nella definizione quel salto è assorbito da ), e il ritardo di gruppo resta tranne che nei punti di salto.
Esempio. Il filtro ha : qui , e . In : .
Il teorema fondamentale
Teorema (fase lineare e simmetria). Un sistema LTI discreto, reale e causale ha fase lineare (generalizzata) se e solo se è un filtro FIR di ordine la cui risposta impulsiva soddisfa e in entrambi i casi . Il filtro ha coefficienti.
Esempio. è simmetrica (): ha fase lineare con ritardo . è antisimmetrica (, centro ): ritardo , fase .
Sufficienza (la direzione facile). Sia . Si raccoglie : Si accoppiano i termini e : valgono entrambi e hanno esponenti opposti, e . La loro somma è , reale. Quindi la somma finale è una funzione reale e . Se , la coppia dà , puramente immaginaria: con reale (l'eventuale termine centrale è perché ).
Necessità (la direzione che spiega perché solo FIR). Sia con reale e reale, quindi (Trasformata di Fourier a tempo discretoLa trasformata di Fourier di un segnale discreto è $S(f)=\sum_nT,s(nT),e^{-i2\pi fnT}$: una funzione continua e periodica in $f$ di periodo $F_p=1/T$. L'antitrasformata è l'integrale su un periodo, $s(nT)=\int_0^{F_p}S(f)e^{i2\pi fnT}df$. Le regole sono quelle del caso continuo (traslazione, convoluzione $\leftrightarrow$ prodotto, Parseval $\sum T|s|^2=\int_0^{F_p}|S|^2$), con incremento e somma corrente al posto di derivata e integrale. Per segnali reali $S(f)=S^*(-f)$, quindi basta $[0,F_p/2]$. Esempi: $\delta\to1$, $1\to\delta_{F_p}$, rect $\to$ sinc periodico, $a^n\mathbf 1_0\to\frac T{1-ae^{-i2\pi fT}}$.Trasformata di Fourier a tempo discreto →, simmetria coniugata).
- Si scrivono i due membri: e . Uguagliandoli: .
- è reale e non nulla, quindi è reale: vale ( pari, modulo ) oppure ( dispari, ).
- Dalla definizione . Nel caso pari il primo membro è reale e pari, cioè uguale a se stesso con : . Nel secondo membro si sostituisce e si ottiene .
- Due somme di esponenziali coincidono per ogni solo se hanno gli stessi esponenti e gli stessi coefficienti (unicità dei coefficienti di Fourier). I campioni non nulli stanno in con , e il riflesso deve mandare questo insieme in se stesso: ciò accade solo se , e allora . Nel caso dispari si procede allo stesso modo con puramente immaginaria e dispari, e si trova .
Conseguenza. Un sistema causale IIR ha risposta impulsiva di lunghezza infinita e "a una sola coda" (da a ): non esiste un centro attorno a cui sia pari o dispari. Dunque un IIR causale non può avere fase esattamente lineare (può solo approssimarla). Se si rinuncia alla causalità, o si filtra "avanti e indietro" fuori linea, si può ottenere fase nulla anche con un IIR, ma non in tempo reale.
Il prezzo. I coefficienti non sono liberi: ne bastano circa perché gli altri sono determinati dalla simmetria. Il filtro a fase lineare ha quindi circa metà dei gradi di libertà di un FIR generico dello stesso ordine.
Ritardo di gruppo : ordine pari e ordine dispari
Dal teorema, per ogni (salvo i punti in cui cambia segno). Due casi:
| ordine | lunghezza | centro di simmetria | ritardo | effetto |
|---|---|---|---|---|
| pari | dispari | un campione, detto self-symmetric sample () | intero | se fosse costante varrebbe : la condizione di non distorsione è soddisfatta |
| dispari | pari | a metà tra due campioni consecutivi | semi-intero (intero più ) | non esiste un ritardo intero: l'uscita è una versione interpolata e ritardata dell'ingresso, ma la fase è comunque lineare |
Esempio (ordine pari). (): . Con si ha e : ritardo esatto di 1 campione, ampiezza ridotta del 9,5% (verificato con Python su 12 campioni).
Esempio (ordine dispari). (): , ritardo campioni. Se l'uscita è : il valore a metà tra due campioni, cioè un'interpolazione. Per il guadagno è .
Quando serve un ritardo intero (per esempio per sincronizzare due segnali) si preferisce quindi un ordine pari. La scelta tra i quattro tipi e le limitazioni sugli zeri sono nella nota Filtri FIR a fase lineare - tipi e zeriI FIR a fase lineare di ordine N si dividono in quattro tipi: I (N pari, h simmetrica), II (N dispari, simmetrica), III (N pari, antisimmetrica), IV (N dispari, antisimmetrica). Si scrive H = e^{-jwN/2} e^{jb} A(w), con A somma di coseni (tipi I e II) o di seni (III e IV). Dalla relazione H(z) = ±z^{-N} H(1/z) segue che gli zeri vengono in gruppi (z0, z0*, 1/z0, 1/z0*) e che ci sono zeri forzati: tipo II in z = -1, tipo III in z = 1 e z = -1, tipo IV in z = 1, tipo I nessuno. Quindi II non fa passa-alto, III non fa passa-basso né passa-alto, IV non fa passa-basso. Ogni tipo II, III, IV è un tipo I moltiplicato per (1+z^-1), (1-z^-2), (1-z^-1).Filtri FIR a fase lineare - tipi e zeri →.
Grafico interattivo: Ampiezza A(w) del FIR simmetrico h = {1, 2, 3, 2, 1}: A = (1 + 2cos w)^2, sempre >= 0, con zero doppio in w = 2π/3 (fase vera = -2w, senza salti)
Dove si usa
I filtri a fase lineare servono quando la forma d'onda conta: audio (equalizzatori e crossover senza distorsione di fase), immagini (nitidezza e sfocatura senza spostare i contorni: un ritardo di fase non lineare sposterebbe i bordi in modo diverso a seconda del dettaglio), comunicazioni (equalizzazione del canale, modulazione e demodulazione). Il costo è un ritardo di campioni, inevitabile e uguale per tutte le frequenze, e un numero di coefficienti spesso maggiore di quello di un IIR con le stesse specifiche di modulo (Filtri notch e applicazioni dei filtri FIRUno zero di H(z) sulla circonferenza unitaria in z0 = e^{j w0} annulla (a regime) le sinusoidi alla pulsazione w0. Per eliminare un coseno servono i due zeri coniugati: H(z) = (1 - e^{jw0} z^-1)(1 - e^{-jw0} z^-1) = 1 - 2 cos(w0) z^-1 + z^-2, cioè h = {1, -2cos w0, 1}, un FIR simmetrico di tipo I (ritardo 1). Si normalizza dividendo per 2 - 2cos(w0) per avere guadagno 1 in continua; più toni si eliminano mettendo in cascata (convoluzione) un filtro per ogni tono. Segue una panoramica delle applicazioni dei FIR (equalizzazione audio), vantaggi (fase lineare, stabilità) e costo (N moltiplicazioni per campione, molte più di un IIR).Filtri notch e applicazioni dei filtri FIR →).
Domande d'esame
- Enunciare e dimostrare la condizione di non distorsione e la relazione con il ritardo di gruppo. Traccia: ; ; modulo costante e fase (più se ); ; perché un filtro selettivo non può soddisfarla ma può avere fase lineare; esempio di sistema con variabile.
- Dimostrare che un sistema reale e causale con fase lineare è FIR con risposta impulsiva simmetrica o antisimmetrica. Cosa cambia se l'ordine è pari o dispari? Traccia: ; simmetria coniugata e pari o dispari; o ; unicità dei coefficienti di Fourier e ; IIR escluso (risposta a una sola coda); pari: ritardo intero, dispari: ritardo semi-intero e uscita interpolata.
Versione ripasso
- Non distorsione. con reale: . Modulo costante , fase (più se ). Esempio: , , dà , , .
- Ritardo di gruppo. , quanti campioni è ritardato l'inviluppo attorno a . Per la fase lineare vale costante: la forma d'onda si conserva. Se varia si ha distorsione di fase.
- Sintesi. Non distorsione = modulo costante + fase lineare. Un filtro selettivo non ha modulo costante, ma può avere fase lineare.
- Esempio che distorce. : , vale in , in , in .
- Fase lineare generalizzata. con reali costanti e reale, che può cambiare segno. Attenzione: , non stessa. Esempio: , , , , .
- Teorema. Un sistema LTI reale e causale ha fase lineare generalizzata se e solo se è un FIR di ordine con (simmetrico, ) oppure (antisimmetrico, ); in entrambi i casi . Il filtro ha coefficienti.
- Sufficienza. Con simmetrica si raccoglie ; le coppie e danno , reale. Con antisimmetrica la coppia dà , quindi con reale.
- Necessità. Da segue , quindi o . Uguagliando gli esponenti e per unicità dei coefficienti di Fourier, il riflesso deve valere . Un IIR causale ha una sola coda, quindi non può avere fase lineare esatta.
- Esempi di simmetria. è simmetrica con : fase lineare con ritardo . è antisimmetrica con e centro : ritardo , fase .
- Gradi di libertà. Circa coefficienti indipendenti su : la simmetria dimezza i parametri liberi.
- Confronto. Per il FIR simmetrico a coefficienti per ogni ; per invece varia da a .
- Ordine pari. pari: ritardo intero, c'è un campione centrale e la condizione di non distorsione vale se è costante. Esempio: , dà .
- Ordine dispari. dispari: ritardo semi-intero, uscita interpolata e ritardata. Esempio: , ; per il guadagno è .
- Dove si usa. Audio, immagini, comunicazioni: il costo è un ritardo di campioni uguale per tutte le frequenze.
- Errore tipico. Confondere con il modulo : quando cambia segno la fase salta di .