Circuiti a Tempo Discreto DFT - La Trasformata di Fourier Discreta

Documenti analoghi
Rappresentazione di una sequenza a durata finita come un periodo di una sequenza periodica.

7.Trasformata discreta di Fourier

Trasformata discreta di Fourier diunasequenzafinita: algoritmifft

Circuiti a Tempo Discreto Esercitazione 2 - Sequenze e Convoluzione in Matlab R

Prof. Carlo Rossi DEIS - Università di Bologna Tel:

CAPITOLO 2: Algoritmo Fast Fourier Transform (FFT)

ANALISI DI FOURIER. Segnali a Tempo Discreto:

Rappresentazione dei segnali con sequenze di numeri e simboli

Elenco dei simboli 9. Prefazione 10

Circuiti a tempo discreto Raffaele Parisi

Esercizio 1 (12 punti) Si consideri il segnale s(t) in figura e se ne calcoli la Trasformata Continua di Fourier. A vale 2 V e T è paria a 1 s.

Problemi di base di Elaborazione Numerica dei Segnali

Fondamenti di Elaborazione Numerica dei Segnali Anno Accademico Primo Appello 26/2/2015

ELABORAZIONE NUMERICA DEI SEGNALI 9CFU DIGITAL SIGNAL PROCESSING Prof. Marina Ruggieri. Ing. Tommaso Rossi

In realtà i segnali con i quali dobbiamo confrontarci più frequentemente sono limitati nel tempo

Decimazione in frequenza (Decimation in frequency)

Circuiti per la multimedialità

Teoria dei Segnali Discrete Fourier Transform (DFT) e Fast Fourier Transform (FFT); filtri tempo-continui

Trasformata Discreta di Fourier (DFT)

Materiale di supporto

che coinciderà con la (2) se g[n] = g (n ), condizione verificata dal teorema di Poisson.

( e j2π ft 0.9 j) ( e j2π ft j)

Analisi armonica su dati campionati

Circuiti a tempo discreto Raffaele Parisi

Steeper Rolloff. mentre si pone il valore centrale pari all unità in corrispondenza di. Ossia si impongono tali condizioni nella:

Capitolo 5.3 Frequency response for rational system functions

Elaborazione numerica dei segnali: si occupa della

Conversione analogico-digitale

Teoria dei Segnali Quantizzazione dei segnali; trasformata zeta

CAMPIONAMENTO E RICOSTRUZIONE DI SEGNALI

Analisi Numerica: Introduzione

SEGNALI E SISTEMI Proff. L. Finesso, M. Pavon e S. Pinzoni (a.a ) Homework assignment #2 Testo e Soluzione

Elaborazione numerica dei segnali

Trasformazioni Winograd

PROGETTO DI FILTRI NUMERICI FIR CON L USO DI FINESTRE

1 Finestratura di una trasformata di Hilbert

La Trasformata di Fourier Discreta. e sue applicazioni

Elettronica II Segnali periodici; serie di Fourier; trasformata di Fourier p. 2

La Trasformata di Fourier

) $ ' con T0=5s e T=2s. La funzione deve essere

Unità di misura nell analisi del segnale G. D Elia. Sezione1

1 Calcolo approssimato della serie di Fourier

SEGNALI E SISTEMI (a.a ) Proff. L. Finesso, M. Pavon e S. Pinzoni Prova scritta 15 dicembre 2003 Testo e Soluzione

INDICE Esempi di segnali determinati: periodici e di energia Esempio di segnale aleatorio...4

Elaborazione nel dominio delle frequenze. Elaborazione delle immagini digitali 1

Campionamento e quantizzazione

ENS - Prima prova in itinere del 07 Maggio 2009 Tema A

Comunicazioni Elettriche II

Esercitazione ENS su processi casuali (13 e 14 Maggio 2008)

Trasformata wavelet. 1 Introduzione. 2 Filtri wavelet di Daubechies

La trasformata Z. (Metodi Matematici e Calcolo per Ingegneria) Enrico Bertolazzi. DIMS Università di Trento. anno accademico 2008/2009

DIGITAL SIGNAL PROCESSING. Prof. Marina Ruggieri. Ing. Tommaso Rossi

MATRICI E SISTEMI LINEARI

Capitolo 4. Campionamento e ricostruzione

Elaborazione di Segnali Multimediali

SEGNALI A TEMPO DISCRETO. Impulso e altri segnali canonici discreti. Trasformata Zeta. Sviluppo di Fourier discreto. Trasformata di Fourier discreta

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Il teorema di Shannon

ANALISI IN FREQUENZA DEI SISTEMI A TEMPO DISCRETO

Dispense del corso di Elettronica L Prof. Guido Masetti

Prof. Carlo Rossi DEIS - Università di Bologna Tel:

Teoria dei Segnali Proprietà della trasformata di Fourier; correlazione tra segnali; autocorrelazione

Segnali e trasformate

Come rintracciarmi. Orario di ricevimento: Martedì dalle 9:00 alle 11:00. Telefono:

Calcolatori: Sistemi di Numerazione

Laboratorio di Elaborazione di Immagini. Esercitazione 2: TRASFORMATA DI FOURIER

Calcolo della DFT. Complessità del calcolo diretto. X(k) = x(n)w kn DFT. x(n) = 1 N. X(k)W kn. con W N = e j2π/n. Se x(n) è complessa: j{r[x(n)]

Analisi di segnali variabili nel tempo: la trasformata di Fourier

Gianmaria De Tommasi A.A. 2008/09

INTERPOLAZIONI CON SPLINE

Analisi di Fourier e campionamento d

Corso di Elaborazione Numerica dei Segnali Esame del 7 Luglio 2004

Fondamenti di elaborazione numerica dei segnali

Note per il corso di Geometria Corso di laurea in Ing. Edile/Architettura. 4 Sistemi lineari. Metodo di eliminazione di Gauss Jordan

FONDAMENTI DI SEGNALI E TRASMISSIONE 4 Laboratorio

La trasformata di Fourier multidimensionale

Prof. Carlo Rossi DEIS - Università di Bologna Tel:

STRUMENTI MATEMATICI PER L ANALISI DEI SISTEMI DISCRETI

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

La Trasformata di Fourier

Cristian Secchi Pag. 1

Laboratorio II, modulo Segnali a tempo discreto (cfr.

2.2.5 Approssimazione di un segnale in una base biortogonale (segnali rettangolari) Esercizi proposti... 46

Teoria dei Segnali Richiami ai numeri complessi; serie e trasformata di Fourier

Laboratorio di Programmazione Esercitazione 10

Progetto dei Sistemi di Controllo Digitali. Docente: Prof. Francesco Amato

UNIVERSITÀ DI PISA Corso di Laurea in Scienze Motorie. Tecnologie e strumentazione biomedica. Accenni sulla Trasformata di Fourier.

8.3 Trasformazione bilineare

Esercitazione di laboratorio per il corso di SISTEMI DI TELECOMUNICAZIONI 1 Ritardo Frazionario

Filtraggio. Stefano Ferrari. Università degli Studi di Milano Tecniche di calcolo e sistemi operativi e informatica

Corso di Elaborazione Numerica dei Segnali Esame del 30 settembre 2005

Teoria dei Segnali Richiami di analisi matematica; alcune funzioni notevoli

MATRICI E SISTEMI LINEARI

Fondamenti di Elaborazione Numerica dei Segnali Anno Accademico Seconda Prova Intermedia 4/2/2013

Edoardo Milotti - Metodi di trattamento del segnale 1

FENS- Gruppo A prova preliminare del 26 novembre 2004

ANALISI DI SEGNALI TEMPO VARIANTI

FILTRI NUMERICI. Sistema LTI H (z)

II Lezione: Uso della DFT e FFT

Compito di MD 13 febbraio 2014

Transcript:

Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta Prof. Michele Scarpiniti Dipartimento di Ingegneria dell Informazione, Elettronica e Telecomunicazioni Sapienza Università di Roma http://ispac.ing.uniroma1.it/scarpiniti/index.htm michele.scarpiniti@uniroma1.it Roma, 29 Novembre 2012 M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 1 / 37

Capitolo 10: la Trasformata di Fourier Discreta. La serie di Fourier discreta, rappresentazione di sequenze periodiche, la e I, proprietà della, zero padding, l algoritmo FFT, la convoluzione circolare, approssimazione di una convoluzione lineare attraverso una convoluzione circolare, la convoluzione tra sequenza lunghe, overlap and add, overlap and save. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 2 / 37

1 La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () 2 La convoluzione lineare tramite la M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 3 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 4 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () Rappresentazione delle sequenze periodiche Una sequenza x[n] è detta periodica, di periodo N, se x[n + N] = x[n], n Analogamente per i segnali analogigi (sviluppo in serie di Fourier), una sequenza periodica può essere rappresentata come somma discreta di sinusoidi. E possibile, quindi, definire la serie di Fourier discreta per una sequenza x[n] periodica, come X (k) = N 1 x[n] = 1 N n=0 N 1 k=0 x[n]e j 2π N kn X (k)e j 2π N kn La serie di Fourier discreta è una rappresentazione esatta della sequenza periodica x[n]. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 5 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () Rappresentazione delle sequenze periodiche Nei casi pratici, è comunque di grande utilità dare un interpretazione diversa alle precedenti equazioni. Consideriamo, per esempio, una sequenza x[n] di durata finita N, nulla cioè, al di fuori dell intervallo 0 n N 1: { x[n], per 0 n N 1 x[n] = 0, altrove. La sua trasformata z risulterà quindi X (z) = N 1 n=0 x[n]z n M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 6 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () Rappresentazione delle sequenze periodiche Se valutiamo la X (z) su un insieme di punti uniformemente spaziati intorno al cerchio unitario, cioè, z k = e j2πk/n, k = 0, 1,..., N 1, si ottiene X (e j 2π N k ) = N 1 n=0 x[n]e j 2π N kn, k = 0, 1,..., N 1 Si può osservare che tale espressione è formalmente identica alla serie di Fourier discreta delle sequenza periodica di periodo N. Una sequenza di lunghezza finita pari a N può quindi essere rappresentata esattamente con la serie di Fourier discreta. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 7 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () La trasformata di Fourier discreta o A questo punto è possibile generalizzare la precedente affermazione: Definizione di e I Una sequenza di lunghezza finita pari a N può quindi essere sempre rappresentata esattamente con la coppia di equazioni definite come trasformata di Fourier discreta diretta () e inversa (I): X (k) = x[n] = 1 N N 1 n=0 N 1 k=0 x[n]e j 2π N kn, k = 0, 1,..., N 1 X (k)e j 2π N kn, n = 0, 1,..., N 1 La rappresenta, in pratica, un semplice metodo per il calcolo della DTFT. Nell uso della occorre sempre ricordare che si sta rappresentando una sequenza periodica di periodo N. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 8 / 37

Proprietà della La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () Le principali proprietà della sono elencate nella seguente tabella. Proprietà Sequenza Linearità ax 1 [n] + bx 2 [n] ax 1 (k) + bx 2 (k) Traslazione nel tempo (x[n m]) N e j 2π N km X (k) Traslazione in frequenza e j 2π N nm x[n] X (k m) Inversione temporale (x[ n]) N X (k) N 1 Convoluzione m=0 x[m] (h[n m]) N X (k)h(k) 1 N 1 Moltiplicazione x[n]h[n] N r=0 X (r)h(k r) Il fatto di ottenere una versione campionata della DTFT (ovvero la moltiplicazione per un treno di impulsi), implica nel tempo una convoluzione della sequenza (limitata) con un treno di impulsi con spaziatura più ampia, cioè replicare la sequenza ogni N campioni (periodicità). M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 9 / 37

Proprietà della La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () La X (k) può essere vista come una versione campionata su N punti del cerchio unitario della X (z), ovvero, per le precedenti definizioni, della DTFT. La ha, quindi, proprietà molti simili rispetto alla trasformata z e alla DTFT. Im{z} piano z r=1 2 / N 1 Re{z} X k X k 1 M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 10 / 37

Lo zero padding La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () Se si vuole aumentare la risoluzione della, ovvero diminuire l angolo tra un suo campione ed il successivo, è possibile aggiungere in coda alla sequenza x[n] un certo numero di zeri. Tale operazione prende il nome di zero padding. x[n] = [x[0], x[1], x[2],..., x[n 1]] x[n] = x[0], x[1], x[2],..., x[n 1], 0, 0,..., 0 }{{}}{{} N L Infatti con questa operazione non cambia la trasformata z, visto che sommo solo zeri per n N, però il campionamento è fatto su M = N + L > N campioni. Im{z} Im{z} piano z r=1 2 / N piano z r=1 2 /M 1 Re{z} 1 Re{z} X k 1 X k X k 1 X k M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 11 / 37

come trasformazione lineare La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () L espressione della è facilmente interpretabile in termini di trasformazione lineare come X = W x dove x = [x[0], x[1],..., x[n 1]] T rappresenta il vettore contenente i campioni del segnale, X = [X (0), X (1),..., X (N 1)] T è il vettore contenente i valori della e detto W N = exp( j2π/n), W rappresenta la matrice della definita come: W =. 1 1 1 1 1 W N WN 2 W N 1 N 1 WN 2 WN 4 W 2(N 1). 1 W N 1 N N..... W 2(N 1) N W (N 1)(N 1) N M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 12 / 37

come trasformazione lineare La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () Dalla sua definizione, la matrice W risulta essere simmetrica e complessa. In questo particolare caso risulta che la sua inversa può essere espressa semplicemente come W 1 = 1 N WH dove W H denota la matrice complesso coniugata di W (da notare che W W H = NI). Dalle precedenti espressioni risulta che la I può essere calcolata come x = 1 N WH X M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 13 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () L algoritmo Fast Fourier Transform (FFT ) Gli N valori della, possono essere calcolati molto efficacemente, per mezzo di una famiglia di algoritmi denominati Fast Fourier Transform (FFT). L algoritmo FFT è tra i più usati in molti ambiti della elaborazione numerica dei segnali: nella stima spettrale, nel filtraggio e in molte altre applicazioni. Il paradigma fondamentale per lo sviluppo della FFT è quello del dividi et impera. Il calcolo della è suddiviso in blocchi più semplici e l intera è calcolata con la successiva aggregazione dei vari sotto-blocchi. Nell algoritmo originale di Cooley e Tukey, la lunghezza della sequenza è una potenza di due: N = 2 B ovvero B = log 2 N Il calcolo dell intera trasformata è suddiviso in due lunghe N/2. Ognuna di queste è effettuata con una ulteriore suddivisione in sequenze lunghe N/4 e così via. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 14 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () L algoritmo Fast Fourier Transform (FFT ) Senza entrare nel merito dell algoritmo, i cui dettagli e varianti possono trovarsi nei testi specializzati, si vuole sottolineare in queste nota che il costo computazionale di una FFT di una sequenza lunga N è pari a mentre per una è pari a N log 2 N N 2 11 x 105 10 FFT 9 8 Costo computazionale 7 6 5 4 3 2 1 0 0 100 200 300 400 500 600 700 800 900 1000 N M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 15 / 37

La Serie di Fourier Discreta (DFS) La trasformata di Fourier discreta () L algoritmo Fast Fourier Transform (FFT ) Uno schema del principio di funzionamento dell algortimo FFT è rappresentato nella seguente figura. Se il numero di campioni non è pari ad una potenza di 2, è possibile allungare la sequenza fino ad un numero di campioni pari alla potenza di 2 successiva, introducendo un numero congruo di campioni nulli (zero padding). M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 16 / 37

La convoluzione lineare tramite la M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 17 / 37

La traslazione circolare La convoluzione lineare tramite la Se vogliamo ricavare la versione traslata x[n m] a partire dalla conoscenza della sequenza periodica x[n] sull intervallo [0, N 1], bisogna tenere in considerazione che quando un campione esce dall intervallo, un campione identico entra dall altra parte. Questo perchè si suppone la sequenza periodica di periodo N. Questa operazione verrà chiamata traslazione circolare. Dunque si ha: (x[n m]) N e j 2π N km X (k) xn 0 N xn 0 N xn 1 0 N xn 2 0 N xn 2 N n n n n 0 N n M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 18 / 37

La convoluzione circolare La convoluzione lineare tramite la Se ora x 1 [n] e x 2 [n] sono due sequenze entrambe di lunghezza N, è possibile valutare la convoluzione a parire da x 1 [n] e x 2 [n] e quindi le relative X 1 (k) e X 2 (k). Questa convoluzione è chiamata convoluzione circolare ed è indicata come x 1 [n] x 2 [n]. Dunque x 3 [n] = x 1 [n] x 2 [n] = N 1 m=0 x 1 [m] (x 2 [n m]) N X 3 (k) = X 1 (k)x 2 (k) Si noti che anche la sequenza x 3 [n] è lunga N campioni, per il fatto che x 2 [n] subisce una traslazione circolare. La convoluzione tra due sequenze qualsiasi, così come introdotta precedentemente, è al contrario definita come convoluzione lineare. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 19 / 37

La convoluzione lineare tramite la Differenza tra convoluzione circolare e lineare Differenza con la convoluzione lineare : caso lineare: le due sequenze sono traslate (dopo il ribaltamento di una delle due) successivamente l una rispetto all altra. Il risultato è lungo 2N 1 campioni, se entrambe le sequenze sono lunghe N campioni. caso circolare: una sequenza si può immaginare di disporla lungo una circonferenza di N punti. L altra sequenza, rovesciata, è disposta anch essa su circonferenza di N punti. Il risultato è lungo N campioni. Immaginando di porre una circonferenza dentro l altro, i successivi valori della convoluzione si ottengono moltiplicando i valori su una circonferenza per i corrispondenti valori sull altra e sommando poi gli N prodotti risultanti. x 3 1 x 1 2 x 1 1 x 3 2 x 2 2 x 1 2 x 4 1 1 x n x 0 1 x 4 2 x2 n x 0 2 x 1 N 1 x 2 N 1 M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 20 / 37

La convoluzione circolare La convoluzione lineare tramite la Esempio Si calcoli la convoluzione circolare tra x 1[n] = {2, 1, 2, 1} e x 2[n] = {1, 2, 3, 4} E semplicemente 1 1 1 1 4 1 2 3 2 3 n 1 2 2 4 n 2 2 2 1 n 3 2 2 4 n 2 2 x2 n 2 x1 n x 1 n 2 3 x1 n x 2 2 n 4 x1 n x 2 3 n 1 x1 n 1 1 1 1 x 3 [0] = 3 x 1 [m]x 2 [ m] = 2 + 4 + 6 + 2 = 14, x 3 [1] = 3 x 1 [m]x 2 [1 m] = 4 + 1 + 8 + 3 = 16 m=0 m=0 x 3 [2] = 3 x 1 [m]x 2 [2 m] = 6 + 2 + 2 + 4 = 14, x 3 [3] = 3 x 1 [m]x 2 [3 m] = 4 + 3 + 8 + 1 = 16 m=0 m=0 Ovvero x 3[n] = x 1[n] x 2[n] = {14, 16, 14, 16}. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 21 / 37

La convoluzione lineare tramite la Differenza tra convoluzione circolare e lineare Se ora calcoliamo la convoluzione lineare delle sequenze precedenti, si ottiene con la nota tabella: n 0 1 2 3 4 5 6 7 x 1 [n] 2 1 2 1 x 2 [n] 1 2 3 4 x 1 [0]x 2 [n 0] 2 4 6 8 x 1 [1]x 2 [n 1] 1 2 3 4 x 1 [2]x 2 [n 2] 2 4 6 8 x 1 [3]x 2 [n 3] 1 2 3 4 x 3 [n] 2 5 10 16 12 11 4 Con risultato pari a x 3 [n] = x 1 [n] x 2 [n] = {2, 5, 10, 16, 12, 11, 4} evidentemente diverso da quello ottenuto con la convoluzione circolare. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 22 / 37

La convoluzione lineare tramite la Differenza tra convoluzione circolare e lineare A questo punto è chiaro che non è possibile utilizzare la trasformata di Fourier discreta o per il calcolo in frequenza di una convoluzione lineare, ovvero per calcolare l uscita di un circuito TD LTI. Se x 1 [n] e x 2 [n] di durata finita N hanno trasformata di Fourier X 1 ( e jω ) e X 2 ( e jω ) rispettivamente, risulta ( X 3 e jω ) ( = X 1 e jω ) ( X 2 e jω ) N 1 x 3 [n] = x 1 [m]x 2 [n m] con x 3 [n] lunga 2N 1 campioni. Al contrario, le sono una versione ( campionata delle DTFT con frequenza ω = 2πk/N, ovvero X 1 (k) = X ) 1 e jω ω= 2πk e ( N X 2 (k) = X ) 2 e jω ω= 2πk. Risulta quindi N ( X 4 e jω ) [ ] = X 1 (k) X 2 (k) x 4 [n] = x 3 [n + rn] Poichè x 3 [n] è lunga 2N 1 campioni e viene replicata ogni N campioni, x 4 [n] sarà affetta da aliasing. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 23 / 37 m=0 r N

La convoluzione lineare tramite la La convoluzione circolare tra sequenze di diversa lunghezza Siano ora x 1 [n] e x 2 [n] due sequenze lunghe N 1 e N 2, rispettivamente (con N 1 N 2 ). Vogliamo calcolare la convoluzione circolare ottenuta tramite prodotto delle rispettive, tra queste due sequenze di lunghezza diversa. E evidente che per eseguire il prodotto punto-punto in frequenza le due devono avere stessa lunghezza. La soluzione a questo problema consiste nell allungare la sequenza più corta (diciamo N 2 ) con N 1 N 2 zeri (zero padding). Detto quindi N = max {N 1, N 2 }, si allunga la sequenza più corta a N campioni con lo zero padding e si calcolano le X 1 (k) e X 2 (k) su N punti x 3 [n] = x 1 [n] x 2 [n] X 3 (k) = X 1 (k)x 2 (k) su N punti M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 24 / 37

La convoluzione lineare tramite la La convoluzione lineare tramite la Nella maggior parte delle applicazioni interessa calcolare la convoluzione lineare tra le sequenze (ad esempio il filtraggio). Poiché inoltre esistono metodi di calcolo della molto efficienti (FFT), sarebbe auspicabile poter utilizzare la convoluzione in frequenza tramite. Questo metodo, però, porta al calcolo di una convoluzione circolare: ci si deve accertare che tale convoluzione circolare produca l effetto della desiderata convoluzione lineare. Poichè il risultato della convoluzione lineare tra due sequenze x 1 [n] e x 2 [n] di lunghezza N è lungo 2N 1, è possibile allungare ciascuna sequenza x 1 [n] e x 2 [n] aggiungendo N 1 zeri in fondo, e quindi calcolare la convoluzione come prodotto delle. Il risultato (utilizzando la convoluzione circolare) sarà equivalente a quello ottenuto da una convoluzione lineare. Si otterrebbe una convoluzione lineare anche se le fossero calcolate sulla base di più di 2N 1 punti. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 25 / 37

La convoluzione lineare tramite la La convoluzione lineare tramite la Esempio Si calcoli la convoluzione lineare tra utilizzando la. x 1 [n] = {2, 1, 2, 1} e x 2 [n] = {1, 2, 3, 4} Poiché entrambe le sequenze hanno lunghezza N = 4, la convoluzione lineare sarà lunga 2N 1 = 7. Dovrò aggiungere, quindi, 7 4 = 3 zeri ad entrambe le sequenze x 1 [n] = {2, 1, 2, 1, 0, 0, 0} e x 2 [n] = {1, 2, 3, 4, 0, 0, 0} Ripetendo a questo punto il calcolo della convoluzione circolare visto precedentemente, si ottiene x 3 [n] = x 1 [n] x 2 [n] = {2, 5, 10, 16, 12, 11, 4} con risultato identico al calcolo diretto della convoluzione lineare. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 26 / 37

La convoluzione lineare tramite la La convoluzione lineare tramite la La procedura precedente continua a valere anche nel caso in cui le due sequenze x 1 [n] e x 2 [n] hanno lunghezza diversa. Se, ad esempio, x 1 [n] è lunga N 1 e x 2 [n] è lunga N 2, allora la convoluzione lineare sarà lunga N = N 1 + N 2 1 campioni. Allora X 1 (k) e X 2 (k) vanno calcolate sulla base di N = N 1 + N 2 1 punti, aggiungendo quindi N 2 1 zeri in fondo a x 1 [n] e N 1 1 zeri in fondo a x 2 [n]. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 27 / 37

La convoluzione tra sequenze lunghe La convoluzione lineare tramite la Il problema ora nasce se una delle due sequenze ha una durata infinita oppure è molto lunga: è generalmente impossibile il calcolo di una su un numero elevato di punti in modo da riutilizzare il caso di prima; neppure sostituire la sequenza di durata con una di durata N 2 >> N 1 aiuta; in tal modo non si potrebbe calcolare alcun punto della sequenza filtrata prima di aver raccolto tutti i punti della sequenza d ingresso. Tali ritardi nella elaborazione sono, invece, generalmente da evitare. Per evitare ritardi, ma usare ancora la, si segmenta il segnale da filtrare in sezioni lunghe L. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 28 / 37

La convoluzione tra sequenze lunghe La convoluzione lineare tramite la Ogni segmento può essere quindi convoluto con la h(n) finita e i segmenti filtrati congiunti infine uno all altro in modo opportuno. Questo filtraggio a blocchi può essere attuato utilizzando la. xn [ ] Lunghezza hn [ ] Lunghezza M yn [ ] Si supponga di voler effetture la convoluzione tra la sequenza x[n] di lunghezza infinita e la h[n] di lunghezza pari a M: 1 x[n] è scomposto in segmenti x k [n] { x[n], kl n (k + 1)L 1 x k [n] = 0, altrove 2 si calcola x k [n] h[n] per tutti i segmenti; 3 si sommano tutti i risultati parziali x[n] h[n] = x k [n] h[n] k=0 x[n] = x k [n] M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 29 / 37 k=0

La convoluzione tra sequenze lunghe La convoluzione lineare tramite la Poichè x k [n] è lunga L campioni e h[n] è lunga M campioni: x k [n] h[n] sarà lunga L + M 1 campioni; dunque la convoluzione lineare x k [n] h[n] è ottenibile utilizzando una di L + M 1 punti, ovvero aggiungendo M 1 zeri in coda ad ogni blocco x k [n] e L 1 zeri in coda a h[n]. Inoltre, la distanza tra i campioni iniziali di due segmenti d ingresso adiacenti è di L punti, mentre ogni segmento filtrato ha lunghezza L + M 1. Allora i punti diversi da zero nei segmenti filtrati si sovrappongono nello svolgimento della di M 1 campioni. x[n] h[n] = x k [n] h[n] k=0 M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 30 / 37

L overlap and add La convoluzione lineare tramite la Graficamente, la creazione dei singoli blocchi x k [n] dalla sequenza infinita x[n] è raffigurata dalla seguente figura. xn [ ] L L L x[ n] 1 M-1 M-1 zeri aggiunti x [ n] 2 M-1 x [ n] 3 M-1 M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 31 / 37

L overlap and add La convoluzione lineare tramite la Il metodo appena descritto è chiamato metodo overlap and add, ovvero metodo di sovrapposizione e somma, poichè, riassumento: 1 i segmenti filtrati sono sovrapposti, dal momento che la convoluzione lineare x[n] h[n] è, in generale, più lunga del segmento k-simo; 2 tali segmenti sono poi sommati per ottenere l uscita y[n]. Graficamente y [ n] 1 M-1 M-1 y [ n] 2 M-1 Campioni da sommare M-1 y [ n] 3 M-1 yn [ ] L L L M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 32 / 37

L overlap and save La convoluzione lineare tramite la Esiste un metodo alternativo per calcolare la convoluzione con una sequenza lunga, chiamato metodo overlap and save, ovvero metodo di sovrapposizione e estrazione. Esso consiste nel calcolo di convoluzione circolare tra x k [n] e h[n], identificandone la parte corrispondente a una convoluzione lineare. In particolare: se h[n] è lunga M e se ne effettua la convoluzione circolare con un segmento di x[n] lungo N, i primi M 1 punti di tale convoluzione non sono corretti, mentre i rimanenti sono gli stessi che si otterrebbero dalla convoluzione lineare. Allora conviene segmentare x[n] in blocchi di lunghezza N in modo che ogni segmento di ingresso si sovrapponga al precedente per M 1 punti. Evidentemente al primo blocco devo aggiungere M 1 zeri in testa, non avendo campioni disponibile da sovrappore. A questo punto, dopo la convoluzione circolare di ciascun blocco, da ogni sequenza in uscita si scartano i primi M 1 campioni che danno un risultato non corretto. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 33 / 37

L overlap and save La convoluzione lineare tramite la Graficamente, la creazione dei singoli blocchi x k [n] dalla sequenza infinita x[n] è raffigurata dalla seguente figura. xn [ ] L L L M-1 x[ n] 1 M-1 zeri iniziali M-1 x [ n] 2 M-1 x [ n] 3 M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 34 / 37

L overlap and save La convoluzione lineare tramite la Operativamente, con il metodo overlap and save si procede come segue: 1 si spezza la sequenza x[n] in blocchi lunghi L campioni; 2 ciascuno di tali blocchi viene allungato in testa con M 1 campioni (fa eccezione il primo blocco che viene allungato con M 1 zeri in testa). In tal modo si ottengono i blocchi x k [n] lunghi ciascuno N = L + M 1 campioni; 3 la sequenza h[n] viena allungata con L 1 zeri in coda (zero padding), in modo da avere lunghezza pari a N = L + M 1; 4 si calcola tarmite la convoluzione circolare tra h[n] e ciascun blocco x k [n] h[n]; 5 si antitrasforma e si sovrappongono i risultati parziali di M 1 campioni. Poichè tali M 1 campioni sono soggetti ad aliasing vengono scartati. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 35 / 37

L overlap and save La convoluzione lineare tramite la Graficamente, il metodo overlap and save è raffigurato dalla seguente figura y [ n] 1 M-1 L y [ n] 2 M-1 L Campioni da scartare M-1 y [ n] 3 L yn [ ] L L L M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 36 / 37

Bibliografia La convoluzione lineare tramite la A.V. Oppenheim, R.W. Schafer. Discrete-Time Signal Processing 2-nd Edition, Prentice Hall, 1999. E.O. Brigham. The Fast Fourier Transform and Its Applications. Prentice Hall, 1988. A.V. Oppenheim, A.S. Willsky, S. Hamid. Signals and Systems. 2-nd Edition, Prentice Hall, 1996. M. Scarpiniti Circuiti a Tempo Discreto - La Trasformata di Fourier Discreta 37 / 37