Algoritmo Diezmado en Tiempo FFT

27
[email protected] Procesamiento Digital de Señal Procesamiento Digital de Señal Tema 4: Análisis de Fourier en tiempo discreto Transformada de Fourier en tiempo discreto (DTFT) Serie de Fourier en tiempo discreto (DTFS) Transformada de Fourier Discreta (DFT) Transformada Rápida de Fourier (FFT) Enventanado y resolución espectral [email protected] Transformada de Transformada de Fourier Fourier en tiempo discreto (DTFT) en tiempo discreto (DTFT)

Transcript of Algoritmo Diezmado en Tiempo FFT

Page 1: Algoritmo Diezmado en Tiempo FFT

1

[email protected]

Procesamiento Digital de SeñalProcesamiento Digital de Señal

Tema 4: Análisis de Fourier en tiempo discreto

•Transformada de Fourier en tiempo discreto (DTFT)

• Serie de Fourier en tiempo discreto (DTFS)

• Transformada de Fourier Discreta (DFT)

• Transformada Rápida de Fourier (FFT)

• Enventanado y resolución espectral

[email protected]

Transformada de Transformada de FourierFourieren tiempo discreto (DTFT)en tiempo discreto (DTFT)

Page 2: Algoritmo Diezmado en Tiempo FFT

2

[email protected]

Transformada de Transformada de FourierFourier de una señal discretade una señal discreta

• La DTFT describe el espectro de señales discretas. Se puede deducir a partir de la convolución discreta que se define como:

• Si un sistema LTI tiene una señal de entrada x[n] armónica x[n] = exp(j2πfnTs) = exp(jwnTs), la respuesta y[n] es

Siendo H(w) un autovalor del sistema que representa la respuesta en frecuencia– Se ha definido como H(w) la expresión

y representa la DTFT de la señal discreta h[n].

La función H(w) es periódica, debido a que h[k] son valores discretos y su expresión es una serie de Fourier

[ ] [ ] [ ] [ ] [ ]∑∞

∞−=

−=∗=k

khknxnhnxny

[ ] [ ] [ ] [ ] ( )ωωωω Hnxkhkhnyk

TjkTjn

k

Tknj sss ⋅=⋅=⋅= ∑∑∞

−∞=

−∞

−∞=

− expexpexp )(

( ) [ ] [ ]∑∑∞

−∞=

−∞

−∞=

− ==k

jk

k

Tjk khkhH ωωω)

expexp s

[email protected]

Representación mediante la DTFTRepresentación mediante la DTFT

• La DTFT permite representar el contenido en frecuencia, X(w), de una señal discreta x[n]

Y su transformada inversa es

Representación del par de DTFT:

[ ] ∫−

π

ω ωπ

deen njjω )X(21x

( ) [ ] nj

n

j ene ωωω −∞

−∞=∑== x)X(X

[ ] )X(x ωjDTFT en →←

Page 3: Algoritmo Diezmado en Tiempo FFT

3

[email protected]

Ejemplos DTFTEjemplos DTFT

[email protected]

Propiedades de la DTFTPropiedades de la DTFT

• La DTFT es periódica de periodo 2π

– Por tanto solo es necesario evaluar el intervalo [0, 2π] o equivalentemente [-π, π]

• Si x[n] es real su transformada DTFT verifica

Es simétrica y basta calcularla en el intervalo [0, π]

[ ] [ ][ ] [ ]

[ ] [ ])X(arg)X(arg

)X()X(

)X(Im)X(Im)X(Re)X(Re

jωjω

jωjω

jωjω

jωjω

ee

ee

eeee

−=

=

−=

=

( ) )X(X 2πωω += jj ee

( ) )(XX * ωω jj ee =−

Page 4: Algoritmo Diezmado en Tiempo FFT

4

[email protected]

TransformadaTransformada de Fourier de de Fourier de señalesseñales discretasdiscretas (DTFT)(DTFT)

Propiedades de la DTFT: Tabla 5.1: pág 391 Oppenheim

[email protected]

TransformadaTransformada de Fourier de de Fourier de señalesseñales discretasdiscretas (DTFT)(DTFT)

Dualidad entre las series de Fourier y la DTFT– Una señal periódica continua xp(t) se transforma en una función

aperiódica y discreta que corresponde a los coeficientes espectrales XS[k] en el dominio de frecuencias de su serie de Fourier

– De una manera dual, se puede intercambiar tiempo y frecuencia

donde F=1/Ts es el “periodo de Xp(f)en el dominio de frecuencia”. – En este caso una señal aperiódica discreta x[k] se corresponde con una

transformada periódica continua X (f) y se obtiene mediante la DTFT.

[ ] ( ) ( ) ( ) [ ] ( )∑∫∞

−∞=

=−=k

spT ps tkfjkXtxdttkfjtxT

kX 00 2exp 2exp1 ππ

[ ] ( ) ( ) ( ) [ ] ( )∑∫∞

−∞=

−==k

sPsP kftjnxfXdfkftjfXF

kx ππ 2exp 2exp1

Page 5: Algoritmo Diezmado en Tiempo FFT

5

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

• El comportamiento dual entre las series de Fourier y la DTFT se resume en lo siguiente :

– Con las series de Fourier se pasa de una señal x(t), temporal, continua y periódica (periodo T) y se representa por los coeficientes X [k], que como una función de la frecuencia, son valores aperiódicos y discretos con una distancia entre dos valores consecutivos de f0=1/T.

– La DTFT se aplica a una señal discreta en el tiempo x[n], con periodo de muestreo ts=1/fs y aperiódica y se obtiene una función X(f), que es continua como función de la frecuencia y periódica con periodo F=1/Ts.

• Para realizar operaciones con un procesador digital se presentan los siguientes problemas:

– Se necesita tratar señales continuas – Se manejan series de datos de longitud infinita.– Un DSP sólo trabajar con un número finito de datos discretos– La solución pasa por conseguir discretizar las variables continuas y limitar el

número de muestras en los dos dominios (temporal y frecuencial).• Se hace necesario definir la series discreta de Fourier (DTFS) y la

Transformada Discreta de Fourier (DFT).

[email protected]

Serie de Serie de FourierFourieren tiempo discreto (DTFS)en tiempo discreto (DTFS)

Page 6: Algoritmo Diezmado en Tiempo FFT

6

[email protected]

Señales periódicas en tiempo discreto: Series de Señales periódicas en tiempo discreto: Series de FourierFourier

• Si x(t) es periódica su desarrollo en serie de Fourier es:

• Al igual que en tiempo continuo, una señal x[n] discreta y periódica puede representarse como una superposición de exponenciales complejas discretas con frecuencias múltiplos de la frecuencia fundamental.

• Si la señal es periódica (x[n] = x[n+N]), con periodo N, su representación mediante la serie de Fourier es:

– Donde ŵ0 = 2π/N es la frecuencia fundamental de la señal periódica. La frecuencia de la componente k-ésima en la superposición es k ŵ0.

– La frecuencia normalizada, ŵ = w Ts, incorpora la dependencia temporal y permite utilizar n en lugar de t como variable independiente

∑∞

−∞=

=k

n0kjeX[k][n]x ω)

∑∞

−∞=

=k

tt 0kjeX[k])(x ω

[email protected]

Serie de Serie de FourierFourier en Tiempo Discreto (DTFS)en Tiempo Discreto (DTFS)

• La cuestión que se plantea es: ¿cuántos términos deben considerarse en la suma para el caso de una secuencia discreta periódica de periodo N?– Recordando las propiedades de las exponenciales complejas discretas

• En el caso discreto, exponenciales complejas con frecuencias distintas no siempre son diferentes y sólo hay N exponenciales complejas distintas de esta forma.

• En consecuencia, se puede escribir la ecuación de la serie de Fourier de una señal discreta periódica:

– donde la notación k = <N> indica dejar que k varíe sobre cualesquiera N valores consecutivos (comúnmente se usan los valores de k = 0 hasta N-1).

– En este caso, sólo hay N valores de X[k] y cada uno de ellos tiene en cuenta la contribución de la componente exp (kwn) y sus repeticiones exp((k+lN)wn)

njknjknjnjknjNnkNj eeeeee 00000 2)( ωωπωωω )))))

===+

∑>=<

=Nk

nn 0jkeX[k]][x ω)

Page 7: Algoritmo Diezmado en Tiempo FFT

7

[email protected]

• De las Series de Fourier a las Series Discretas de Fourier– Para las Series de Fourier se cumple (f0=1/T)

– Para discretizar xp(t), tomamos N muestras de xp(t) durante un periodo a intervalos ts, de forma que N·ts=T.

– Para calcular los coeficientes X[k]

– La cantidad X[k] es la serie de Fourier Discreta de la señal periódica muestreada xP[n].

( ) [ ] ( ) [ ] ( ) ( )∑ ∫∞

−∞=

⋅−⋅==k

T PSSP dttkfjtxT

kXtkfjkXtx 00 2exp1 2exp ππ

[ ] [ ] ( )

[ ] ( ) 1,2,1,0 /2exp1

2exp1

1

0

1

00

−=−⋅=

⋅−⋅=

∑−

=

=

NkNknjnxN

tntkfjnxNt

kX

N

nP

s

N

nsP

s

π

Serie de Serie de FourierFourier en Tiempo Discreto (DTFS)en Tiempo Discreto (DTFS)

[email protected]

Serie de Serie de FourierFourier en Tiempo Discreto (DTFS)en Tiempo Discreto (DTFS)

• La representación mediante la DTFS está dada por

• x[n] y X[k] se relacionan y se establece la correspondencia:

∑>=<

=Nk

n0ˆjkeX[k][n]x ω

∑>=<

−=Nn

n

N0ˆjkex[n]1X[k] ω

[ ] [ ]kXnx DTFS →←

Page 8: Algoritmo Diezmado en Tiempo FFT

8

[email protected]

Ejemplos: Serie de Ejemplos: Serie de FourierFourier

En el limite N muy grande, la señal es no periódica y su contenido en frecuencias pasa a ser continuo y se corresponde con la transformada de Fourier de una señal discreta!

[email protected]

( ) [ ]∑∞

−∞=

=k

tjke 0kXtx ω

Dominio de la frecuencia

ContinuaDiscreta

PeriódicaDTFT: Transformada de Fourier en tiempo discreto DTFS: Serie de Fourier en tiempo discretoDiscreta

No periódicaFT: Transformada de FourierFS : Serie de FourierContinua

No periódicaPeriódicaDominio de tiempo

[ ] ( )∫><

−=T

tjk dteT

0tx1kX ω

[ ] ∫−

π

ω ωπ

deen njjω )

)X(21x

( ) [ ] nj

n

j ene ωω )−∞

−∞=∑= xX

∑>=<

=Nk

n0jkeX[k][n]x ω)

∑>=<

−=Nn

n

N0jkex[n]1X[k] ω)

ωωπ

ω de tj∫∞

∞−

= )X(21x(t)

∫∞

∞−

−= dte tjωω x(t))X(

Page 9: Algoritmo Diezmado en Tiempo FFT

9

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier(DFT)(DFT)

•• TransformadaTransformada DiscretaDiscreta de Fourierde Fourier•• FFT (Fast Fourier Transform)FFT (Fast Fourier Transform)

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier• Muestreo en frecuencia de la DTFT para obtener la DFT

– Para una señal x[n] limitada a N muestras con un periodo de muestreo Ts.

– La DTFT se reduce a– XP(f) es periódica con periodo 1/Ts. Si se muestrea esta señal N veces (en el periodo en frecuencias que es 1/Ts, )

se obtendrán los valores discretos de la DTFT con un intervalo entre frecuencias ∆f = (1/Ts)/N = 1/NTs

Y por tanto XT[k] corresponde a sustituir f en los valores dados porfk = k/(NTs) :

– Esta última expresión resultante es la Transformada Discreta de Fourierde una señal x[n].

• Nota: Excepto por el término 1/N es idéntica a la Serie Discreta de Fourier.

( ) [ ] ( )∑−

=

−⋅=1

02exp

N

nsP nfTjnxfX π

[ ] [ ] ( )[ ]

[ ] [ ] 1,,2,1,0 /2exp

/2exp

1

0

1

0

−=−⋅=

−⋅=

∑−

=

=

NkNnkjnx

NTnkTjnxkX

N

n

N

nssT

π

Page 10: Algoritmo Diezmado en Tiempo FFT

10

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

• Transformada Discreta de Fourier (DFT),– Se calcula sobre un conjunto finito, N valores, de la señal x[n].– Es calculable numéricamente y es una aproximación al espectro de la

señal. X(w)= DTFT{x[n]}– Se obtiene tomando N muestras en el dominio de la frecuencia sobre la

DTFT– Si se elige N adecuado, existen algoritmos rápidos para calcularla. FFT.

• Transformada Discreta inversa (IDFT),

[ ] [ ] ( )∑−

=

−==1

0

/2 1,,2,1,0 exp1 N

k

Nnkj NnkXN

nx Lπ

[ ] [ ] ( )∑−

=

− −==1

0

/2 1,,2,1,0 expN

n

Nnkj NknxkX Lπ

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

• Convolución Circular o Cíclica– La convolución de dos señales periódicas es infinito. Para este tipo de

señales se define la convolución circular de dos secuencias xp[n] y hp[n]con periodo N :

– La convolución circular requiere que las dos secuencias sean del mismo tamaño. Si no es así se rellena con ceros la secuencia más corta.

– Se corresponde con el producto H[k]X[k] de las dos DFT• Convolución lineal mediante la DFT

– Para realizar la convolución lineal de una secuencia h[n] de M puntos con otra secuencia x[n] de N puntos mediante la DFT, se expanden ambas secuencias con ceros hasta formar dos secuencias de K puntos ha[n] y xa[n] con K ≥ M+N-1 y se calcula las IDFT del producto de las dos DFTs.

[ ] [ ] [ ] [ ] [ ]∑−

=

−=•=1

0

1 N

kppppp knhkx

Nnhnxny

[ ] [ ] [ ] [ ]][][* kXkHIDFTnhnxny aa==

Page 11: Algoritmo Diezmado en Tiempo FFT

11

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

• Propiedades de la DFT

[ ] [ ] [ ][ ] [ ] [ ] [ ][ ] [ ] ( ) [ ]

[ ] [ ]

[ ] [ ] [ ] [ ]

[ ] [ ] [ ][ ] [ ][ ] [ ] [ ] [ ][ ] [ ] [ ] [ ]

[ ] [ ]∑∑ =

↔−

↔−↔

=−↔−

−↔⋅

⋅=−⋅↔−

+↔+−==−

∗∗

∗∗

22 1 Parseval deEcuación

* n.Correlació

* Circular nConvolució Conjugar

Simetría

*1 Producto

Modulación

/2exp entoDesplazami

Linealidad Conjugada Simetría

kXN

nx

kYkXnynx

kYkXnynx kXnx

kXkXnx

kYkXN

nynx

mkXnxW

WkXNkmjkXmnx

kYkXnynxkNXkXkX

T

TT

TT

T

TT

TT

Tnm

N

kmNTT

TT

TTT

π

βαβα

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

• Interpretación de los resultados del DFT de xs[n] de N puntos, siendo N el numero de valores de la secuencia

– Los N valores X[k[ son los coeficientes espectrales (series de Fourier) de una señal periódica discreta que corresponde a repeticiones cada N muestras de la secuencia x [n].

– Son muestras del espectro continuo de una señal aperiódica discreta que corresponde a la secuencia x [n].

• La DFT es una aproximación al espectro de la señal original.– La magnitud se ve influenciada por el intervalo de muestreo,mientras que

– La fase depende de los instantes de muestreo.

Page 12: Algoritmo Diezmado en Tiempo FFT

12

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

• Ejemplo: sea x(t)=sin(2πft), con f=1KHz, Ts=1/8ms y N=8x[n]={0,0.7071,1,0.7071,0,-0.7071,-1,-0.7071}

La DFT es X[k]={0,-4j,0,0,0,0,0,4j}.

0 0.2 0.4 0.6 0.8 1x 10-3

-1

-0.5

0

0.5

1Sinusoide 1KHz, Ts=0.125ms, N=8

Tiempo (s)

Am

plitu

d

Mag

nitu

dD

FT

0 2 4 6 80

1

2

3

4

5DFT

Indice k

-4000 -2000 0 20000

1

2

3

4

5DFT

Mag

nitu

dD

FT

Frecuencia (Hz)

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

– Ejemplo 2: x(t)=sin(2πft), con f=1KHz, Ts=1/4ms y N=8, x[n]={0,0.3827,0.7071,0.9239,1,0.9239,0.7071, 0.3827}.

Los coeficientes del DFT son X[k]={5.0273,-1.7654,0.4142,-0.2346,-0.1989,-0.2346,-0.4142,-1.7654}

0 1 2 3 4 5x 10-4

-1-0.8-0.6-0.4-0.2

00.20.40.60.81

Sinusoide 1KHz, Ts=0.250ms, N=8

Tiempo (s)0 1 2 3 4 5 6 7 80

1

2

3

4

5

6

7

8

DFT

Mag

nitu

dD

FT

Indice k -8000 -6000 -4000 -2000 0 2000 4000 6000

Page 13: Algoritmo Diezmado en Tiempo FFT

13

[email protected]

TransformadaTransformada DiscretaDiscreta de Fourierde Fourier

• Tal y como se observa en las figuras anteriores hay varias formas de dibujar la gráfica de la DFT de una secuencia de datos.

– Una de ellas es indicarlo directamente mediante el índice k. • Se puede comprobar que |XT[k]| es simétrico respecto a N/2.

– Otra forma es reordenando los datos en función de la frecuencia.• De la definición de DFT sabemos que cada intervalo de la DFT es 1/(Nts).

La DFT nos da la Transformada de Fourier para las frecuencias

f -(N/2-1)/(Nts),...,-1/(Nts),0, 1/(Nts), 2/(Nts)...(N/2)/(Nts)k (N/2-1) ,..., N-1 ,0, 1 , 2 ... (N/2)• La máxima frecuencia detectable por la DFT es fs/2, de acuerdo con el

Teorema del Muestreo.

[email protected]

FFT (Fast Fourier Transform)FFT (Fast Fourier Transform)

• El cálculo de la DFT de N puntos de una secuencia x[n] es :

El cálculo requiere – la suma compleja de N multiplicaciones complejas para cada uno de las salidas. – En total, N2 multiplicaciones complejas y N(N-1) sumas complejas para

realizar un DFT de N puntos.

• El algoritmo FFT consigue simplificar el cálculo del DFT y reduce el número de operaciones aprovechando las siguientes propiedades :– Simetría y Periodicidad de los términos WN.

El valor de N se elige de forma que N=rm. • Al factor r se le denomina radix y su valor más habitual es 2, de forma que

N=2m y algoritmo se denomina FFT radix-2.

[ ]Nj

N

N

n

nkN

eW

NkWnxkX

/2

1

0

donde

1,,1,0 ][

π−

=

=

−==∑ L

nN

NnN

nN

NnN

WW

WW

−=

=+

+

2/2/

2

1

NN

NkN

WW

W

=

=

Page 14: Algoritmo Diezmado en Tiempo FFT

14

[email protected]

FFT (Fast Fourier Transform)FFT (Fast Fourier Transform)

• Radix-2 FFT-Algoritmo de diezmado en el tiempo.– Se divide la secuencia de datos de entrada x[n] en dos grupos, uno de índices par y el otro

de índices impar. – Con estas sub-secuencias se realiza el DFT de N/2 puntos y sus resultados se combinan para

formar el DFT de N puntos.

[ ] [ ] [ ] [ ] [ ]

[ ] [ ] [ ] [ ]

[ ] [ ] [ ] [ ] [ ] 1,,2,1,0

12 2

122122

12/

02/2

12/

02/1

2/2

21

12/

0

212/

0

212/

0

)12(12/

0

2

−=+=+=

=+==

++=++=

∑∑

∑∑∑∑

=

=

=

=

=

+−

=

NkkZWkYWnxWWnxkX

WWnxnxnxnxsustituyeSe

WnxWWnxWnxWnxkX

kN

N

n

nkN

kN

N

n

nkN

nkN

nkN

N

n

nkN

kN

N

n

nkN

N

n

knN

N

n

nkN

L

Esta última ecuación muestra que el DFT de N puntos es la suma de dos DFTs de N/2 puntos (Y[k], Z[k]) realizadas con las secuencias par e impar de la secuencia original x[n]. Cada término Z[k] es multiplicado por un factor WN

k, llamado “twiddle factor”. Ya que WNk+N/2=-WN

k y debido a la periodicidad de Y[k] y Z[k] (periodo N/2) se puede expresar X[k] como:

[ ] [ ] [ ] [ ][ ] [ ] [ ] [ ] 12/,,1,0 2/ −=⋅−=+

⋅+=

NkparakZkWkYNkX

kZkWkYkXk

N

kN

L

[email protected]

FFT (FFT (FastFast FourierFourier TransformTransform))

Los dos DFT de N/2 puntos se puede a su vez dividir para formar 4 DFTs de N/4 puntos, lo que produce las siguientes ecuaciones

DFTN/2 Puntos

x[0]

x[2]

x[N-2]

Y[0]

Y[1]

Y[N/2-1]

DFTN/2 Puntos

x[1]

x[3]

x[N-1]

Z[0]

Z[1]

Z[N/2-1]

xW0

xW1

xWN/2-1

+

+

+

+

+

+

X[0]

X[N-1]

X[N/2+1]

X[N/2]

X[N/2-1]

X[1]

-1

-1

-1

[ ] [ ] [ ][ ] [ ] [ ]

14/,,1,0 4/ 2

2

−=−=+

+=

NkParakVWkUNkY

kVWkUkYk

N

kN

L

[ ] [ ] [ ][ ] [ ] [ ]

14/,,1,0 4/ 2

2

−=−=+

+=

NkParakSWkRNkZ

kSWkRkZk

N

kN

L

Page 15: Algoritmo Diezmado en Tiempo FFT

15

[email protected]

FFT (FFT (FastFast FourierFourier TransformTransform))

– El proceso puede repetirse sucesivamente hasta llegar a computar el DFT de dos valores x[n], en concreto x[k] y x[k+N/2], para k=0,1,...,N/2-1.

– Para una FFT de N=8 puntos con diezmado en tiempo, el esquema es:

x[0]

x[4]

x[2]

x[6]

x[1]

x[5]

xW0

+

+ X[0]

X[4]-1

xW1

+

+ X[1]

X[5]-1

xW2

+

+ X[2]

X[6]-1

xW3

+

+ X[3]

X[7]-1

+

+

+

+

xW0

xW2

-1

-1

+

+

+

+

xW0

xW2

-1

-1

+

+xW0

-1

+

+xW0

-1

+

+xW0

-1

+

+xW0

-1x[7]

x[3]

Etapa 1 Etapa 2 Etapa 3

Butterfly

[email protected]

FFT (Fast Fourier Transform)FFT (Fast Fourier Transform)

– Las características de una FFT de N puntos mediante diezmado en el tiempo se sumarizan en la siguiente tabla :

– Por cada butterfly tenemos una multiplicación y dos sumas complejas. Hay N/2 butterflies por etapa y log2N etapas.

• El número total de multiplicaciones es ½N·log2N .• El número total de sumas es N·log2N .

Etapa 1 Etapa 2 Etapa 3 Etapa log2N Número de

Grupos N/2 N/4 N/8 1

Butterflies por Grupo 1 2 4 N/2

Exponentes Twiddle Factors

(N/2)k, k=0

(N/4)k, k=0,1

(N/8)k, k=0,1,2,3

k, k=0,1,...,N/2-1

Page 16: Algoritmo Diezmado en Tiempo FFT

16

[email protected]

FFT (FFT (FastFast FourierFourier TransformTransform))

• Radix-2 FFT-Diezmado en Frecuencia– Se expresa la FFT como suma de las FFT de dos secuencias, la primera

con los N/2 primeros datos y la segunda con los N/2 últimos.

[ ] [ ] [ ] [ ]

[ ] [ ]

[ ] ( ) [ ]

[ ] ( ) [ ][ ] 1,,2,1,0 2/1

2/1

2/

12/

0

12/

0

12/

0

12/

0

)2/(12/

0

1

2/

12/

0

1

0

−=+−+=

+−+=

++=

+==

∑∑

∑∑

∑∑∑

=

=

=

=

+−

=

=

=

=

NkWNnxnx

WNnxWnx

WNnxWnx

WnxWnxWnxkX

N

n

nkN

k

N

n

nkN

kN

n

nkN

N

n

kNnN

N

n

nkN

N

Nn

nkN

N

n

nkN

N

n

nkN

L

[email protected]

FFT (FFT (FastFast FourierFourier TransformTransform))

– El diezmado en frecuencia se obtiene dividiendo la secuencia de salida (X[k]) en dos ecuaciones, una para los índices pares

– y otro para los impares.

[ ] [ ] [ ][ ]

[ ] [ ][ ] 12/,,1,0 2/

2/2

12/

02/

12/

0

2

−=++=

++=

∑−

=

=

NkWNnxnx

WNnxnxkX

N

n

nkN

N

n

nkN

L

[ ] [ ] [ ][ ]

[ ] [ ][ ][ ] 12/,,1,0 2/

2/12

12/

02/

12/

0

)12(

−=+−=

+−=+

∑−

=

=

+

NkWWNnxnx

WNnxnxkX

N

n

nkN

nN

N

n

knN

L

X[2k] y X[2k+1] son los resultados del DFT de N/2 puntos realizado con las suma y la diferencia entre la primera y segunda mitades de la secuencia de entrada.

Page 17: Algoritmo Diezmado en Tiempo FFT

17

[email protected]

FFT (Fast Fourier Transform)FFT (Fast Fourier Transform)

DFTN/2 Puntos

x[0]

x[1]

x[N/2-1]

DFTN/2 Puntos

xW0

+

+

+

+

+

+

X[0]

X[N-1]

X[N-2]

X[2]

X[3]

X[1]-1

-1

-1 xW1

xWN/2-1

x[N/2]

x[N/2+1]

x[N-1]

•Radix-2 FFT-Diezmado en Frecuencia

[email protected]

FFT (Fast Fourier Transform)FFT (Fast Fourier Transform)

x[0]

x[1]

x[2]

xW0

+

+

+

+

+

+

X[0]

X[3]

X[2]

X[4]

X[5]

X[1]-1

-1

-1 xW1

xW2

x[3] +

+-1 xW3

x[4]

x[5]

x[7]

x[6]

+

+

+

+ xW2

xW0

-1

-1

+

+

+

+ xW2

xW0

-1

-1

+

+ xW0

+

+ xW0

+

+ xW0

+

+ xW0

X[6]

X[7]

-1

-1

-1

-1

Etapa 1 Etapa 3Etapa 2

Butterfly•Radix-2 FFT-Diezmado en Frecuencia

Page 18: Algoritmo Diezmado en Tiempo FFT

18

[email protected]

FFT (Fast Fourier Transform)FFT (Fast Fourier Transform)

• Se observa que en el caso de diezmado en el tiempo, la secuencia de entrada debe ser reordenada mientras que la salida aparece en el orden correcto.

• Para el diezmado en frecuencia, la secuencia está en orden mientras que la salida habrá que reordenarla.

– Para conseguir la reordenación basta con invertir el índice en binario.

51011015

71111117

30111106

10011004

61100113

20100102

41000011

00000000

reordenaciónInv. binariobinarioOrden (n)

[email protected]

• Enventanado y resolución en frecuencia• Número finito de muestras• Espectro de la señal enventanada• Ventanas Rectangular, Hamming• Resolución espectral versus enventanado

Aplicación de la DFTAplicación de la DFT

Page 19: Algoritmo Diezmado en Tiempo FFT

19

[email protected]

Enventanado y ResoluciónEnventanado y Resolución

• En teoría, para el cálculo del espectro de una señal discreta x[n] se necesita considerar infinitas muestras:

( ) ∑∑∞

−∞=

−∞

−∞=

− ==n

jwn

n

jwnjw enxenTxeX ][)(

Para poder realizar los cálculos de debe tomar un número finito de muestras L, Se tendrá x(nT)=x[n], para 0 ≤ n ≤ L-1Este proceso se denomina enventanado

[email protected]

EnventanadoEnventanado

Duración de la ventana en segundos

TLTL ⋅=

Señal de enventanado

[ ] −≤≤

=resto

Lnnw

0101

Señal enventanada

[ ] [ ] [ ] [ ] −≤≤

=⋅=resto

LnnxnwnxnxL 0

10

L muestras, T=1/fs

Rectangular

Page 20: Algoritmo Diezmado en Tiempo FFT

20

[email protected] boxcar(10)...

Señal Enventanada...

Ventana Rectangular...

EnventanadoEnventanado

[email protected]

EnventanadoEnventanado

( ) [ ] [ ]∑∑∞

−∞=

−−

=

− ==n

jwnL

L

n

jwnjwL enxenxeX

1

0 DTFT

[ ] [ ] ( ) ( )jwjwLL eXeXnxnxL →⇒→⇒∞→

• El espectro resultante XL(ejw) será una aproximación a X(ejw)

Efectos del enventanado...

[ ] [ ] [ ] ( ) ( ) ( )jwjwjwLL eWeXeXnwnxnx ∗=⇒⋅=

Page 21: Algoritmo Diezmado en Tiempo FFT

21

[email protected]

EnventanadoEnventanado

( ) 2)1(

2

2 −−

=Ljwjw e

wsen

LwseneWEnventanado rectangular

[email protected]

Enventanado Enventanado

• El lóbulo principal domina el espectro

• El ancho del lóbulo se definirásegún:

LfW

1=∆

Frecuencianormalizada

LssWWa TTL

fL

fff 111=

⋅=⋅=⋅∆=∆Frecuencia (Hz)

• Si la longitud de la ventana L es mayor, aumentará la altura del lóbulo principal, a la vez que su ancho disminuye

• La relación de 13 dB entre el lóbulo principal y el primer lóbulo lateral se mantiene constante:

dBW

wWRL

w

13)0()(log20

23≈=

=

Page 22: Algoritmo Diezmado en Tiempo FFT

22

[email protected]

Enventanado Enventanado (Ejemplo)(Ejemplo)

Secuencia formada por dos exponenciales discretas

Efecto del enventanado

[ ] ∞<<∞−+= neAeAnx njwnjw 2121

[ ] 102121 −≤≤+= LneAeAnx njwnjw

L

( ) ( ) ( ) 5.05.02211 ≤<−−+−= fffAffAeX jw δδ

( ) ( ) ( )2211 ffWAffWAeX jwL −+−=

[email protected]

Enventanado Enventanado (Ejemplo)(Ejemplo)

Espectro de dos exponenciales...Espectro de una exponencial

Page 23: Algoritmo Diezmado en Tiempo FFT

23

[email protected]

EnventanadoEnventanado

Se ha supuesto ∆f’=|f2-f1| grande para que no exista solapamiento entre los dos lóbulos principales de ambas exponenciales– Si ∆f’ disminuye empezarán a solaparse, dejando de distinguirse los dos

lóbulos, lo cual sucederá cuando:Wff ∆≈∆ '

Para tener resolución:

Lff W

1' =∆≥∆ Frecuencia digitalnormalizada

Frecuencia analógicaLf

Tff s

LWaa ==∆≥∆

1'

El mínimo número de muestras necesario para conseguir una resolución espectral ∆fa’ dada una frecuencia de muestreo fs:

'a

s

ffL

∆≥ ↑↓⇒∆ Lf a '

[email protected]

EnventanadoEnventanado

• Los lóbulos secundarios deberán reducirse lo máximo posible para evitar confundirlos con los lóbulos principales de sinusoidesmás débiles– Para ello se recomienda el uso de otro tipo de ventana(s), que

no concluya de forma tan abrupta como lo hace la rectangular

VentanasRectangular,Hamming, Kaiser...

Page 24: Algoritmo Diezmado en Tiempo FFT

24

[email protected]

Enventanado Enventanado (continuación...)(continuación...)

Ventana Hamming :[ ]

−≤≤

−−=

resto

LnL

nnw

0

101

2cos46.054.0 π

[ ] 12

1=⇔

−= nwLnCentro

[ ] 08.01,0 =⇔−= nwLnExtremos

[email protected]

Las ventanasLas ventanas antianti--leakageleakage

• Rectangular: los lóbulos laterales siempre peores a -30dB• Triangular (Barlett): los lóbulos laterales llegan debajo de -40dB• Cosenoidal:

– Hanning: y(n)=0.5+0.5cos(2πn/M) el 1er. lobulo ya está bajo los -30dB, el segundo debajo de los -40dB.

– Hamming: y(n)=0.54+0.46cos(2πn/M) similar a Hanning, no descarta las muestras en los extremos de la zona de muestreo

• Otras: Parzen, con una ecuación polinómica

0-10-20-30-40-50-60-70-80-90

1/NT 2/NT 3/NT 4/NT 5/NT 6/NT 7/NT 8/NT 9/NT

Page 25: Algoritmo Diezmado en Tiempo FFT

25

[email protected]

EnventanadoEnventanado

Ventanas espectrales: • Para señales truncadas, el espectro de la señal muestra unos picos que no

decaen lo suficientemente rápido con la frecuencia. – Para ello podemos utilizar ventanas en el dominio temporal para suavizar

esas discontinuidades. – Los picos serán menores aunque el ancho de banda de cada lóbulo

aumentará.

• El enventanado introduce componentes de alta frecuencia que se atenúan si no se emplea una ventana “abrupta”, pero reduciéndose la resoluciónespectral

• En ese caso, será necesario aumentarla incrementando el valor de la longitudde la ventana, o sea, L

[email protected]

Procesamiento A/D, Enventanado y DFTProcesamiento A/D, Enventanado y DFT

• Al asumir que el conjunto de muestras se repite periódicamente puede aparecer una discontinuidad entre la última muestra de un bloque y la primera del siguiente (efecto de leakage)

• Estas discontinuidades equivalen a componentes de frecuencias que corrompen el espectro analizado

• Para minimizar el leakage al conjunto de N muestras de cada bloque se lo multiplica por una función (weighting window) que atenúa las primeras y últimas muestras de modo de evitar discontinuidades

bloque repetido de muestras

N muestras

ventana anti-leakage

bloque sin discontinuidades

N muestras

Page 26: Algoritmo Diezmado en Tiempo FFT

26

[email protected]

• Una ventana anti-leakage MULTIPLICA en el tiempo la señal original x1(t) por una señal periódica x2(t), de período T (la ventana)

• Esta multiplicación en el tiempo equivale a una convolución en el espectro de frecuencias del espectro de la señal x1 con el espectro de la señal x2.

• Esta convolucion produce que cada barra (bin) del espectro de x1 posea “bandas laterales” agregadas por la convolución con x2.

• Dicho de otro modo, cada bin del espectro es “contaminada” por bandas laterales de los bin vecinos

• El espectro de la señal x2 influencia por lo tanto la transformación

∫ ∞−−=

tdffXffXtxtxX '].'[].'[)]().([ 2121

Procesamiento A/D, Enventanado y DFTProcesamiento A/D, Enventanado y DFT

[email protected]

El aparente no-uso de una ventana anti-leakage es en realidad equivalente al uso de una ventana rectangular, cuyo espectro es de la forma sin(f)/f T

Procesamiento A/D, Enventanado y DFTProcesamiento A/D, Enventanado y DFT

Page 27: Algoritmo Diezmado en Tiempo FFT

27

[email protected]

• Dada una señal x(t), no nula en el intervalo [0,T] y limitada en espectro a Whertz (*), y del cual se toman N muestras en dicho intervalo en instantes separados ∆t<(1/2W)

• La transformada continua de Fourier se convierte en una sumatoria finita de N términos

• Si se define una variable k tal que f=k/t=k/(Nt), con k→ 0,1,..,N-1 resulta

• Que es llamada TRANSFORMADA DISCRETA DE FOURIER (o DFT)

dtetxfX tfj .).()( ...2.∫∞

∞−

−= π

∑−

=

∆−∆=1

0

....2).()(N

n

tnfjetnxfX π

∑−

=

∆−∆≈1

0)().()(

N

ntnttnxtx δ

∑−

=

−=1

0

/..2).()(N

n

NnkjenxkX π

Procesamiento A/D, Enventanado y DFTProcesamiento A/D, Enventanado y DFT

[email protected]

• Las suposiciones que la señal es nula fuera del intervalo [0,T] y que es de

banda limitada se contradicen entre sí. Por eso, aunque la DFT opera sólo

sobre un conjunto de N muestras de la señal, en realidad asume que ese

conjunto de muestras se repite periódicamente en el tiempo (lo que evita el

±∞ de la integral), con período NxT

• Por ello con esas N muestras sólo es posible resolver el valor de N

componentes de frecuencia: la componente continua, la de período N.T, la de

período N.T/2,..., y excepto el término DC, las demás componentes poseen

una amplitud y fase relativa al comienzo de las N muestras

Procesamiento A/D, Enventanado y DFTProcesamiento A/D, Enventanado y DFT