Análisis de Señales Capítulo III: Transformada de Fourier discreta Profesor: Néstor Becerra Yoma 3.1 Teorema del Muestreo • Gran desarrollo de la computación => digitalización de señales mediante muestreo, posterior reconstrucción de la señal • Condición necesaria en el proceso para no perder información: teorema del muestreo: – Una señal de ancho de banda B [Hz] puede ser muestreada sin pérdida de información si se toman valores con una separación menor o igual a 1/(2B) segundos. 3.1 Teorema del Muestreo • Primera aproximación: muestreo usando tren de pulsos f (t ) PT (t ) : pulsos, periodo T f S (t ) = f (t ) PT (t ) 3.1 Teorema del Muestreo f S (t ) = f (t ) PT (t ) PT(·) es periódica ∞ f S (t ) = f (t ) ∑ Pn e jnω0t n = −∞ ∞ ⎧ jnω0t ⎫ ℑ{ f S (t )} = ℑ⎨ f (t ) ∑ Pn e ⎬ n = −∞ ⎩ ⎭ ℑ{ f S (t )} = ℑ{ f S (t )} = { ∞ jnω0t P ℑ f ( t ) e ∑ n } n = −∞ ∞ ∑ P F (ω − nω ) n = −∞ n 0 El espectro F(ω) se repite 3.1 Teorema del Muestreo ℑ{ f S ( t )} = P0 F( ω ) + ∞ ∑ n =−∞ n≠0 Pn F( ω − nω0 ), ω0 = 2π T F (ω ) f (t ) PT (t ) PT (ω ) FS (ω ) f S (t ) ω0 3.1 Teorema del Muestreo FS (ω ) ω0 ω0 = 2π T • Si el T de muestreo aumenta => ω0 disminuye => se puede producir traslape de espectros para T muy grande. El traslape se alcanza cuando: 2π 1 ω0 = = 2W ⇒ T = T 2B • Para evitar traslape: (frecuencia de Nyquist) 1 T< 2B 3.1 Teorema del Muestreo • Reconstrucción de la señal => efecto práctico: pasa la banda entre -ω0/2 y ω0/2 F (ω ) FS (ω ) FRECONSTR (ω ) 3.2 Efecto alias • Traslape espectral: efecto alias, T muy grande • Resultado: distorsión de la señal al reconstruirla. F (ω ) FS (ω ) FRECONSTR (ω ) 3.2 Efecto alias • Solución: filtro prealias: baja la distorsión F (ω ) F2 (ω ) FS (ω ) FRECONSTR (ω ) 3.2 Efecto alias • En general, el espectro de una señal se hace menor a medida que aumenta la frecuencia • La principal distorsión se produce cerca de ω0/2 FRECONSTR (ω ) Distorsión alta Distorsión baja 3.2 Efecto alias • Estimación de la cantidad de efecto alias (comparativo): F (ω ) − ω0 ω0 2 2 2 ⎛ ω0 − ω ⎞ 2 ∫ω =ω0 / 2 ⎜⎜⎝ ω0 ⎟⎟⎠ F (ω ) dω %alias = ω0 / 2 2 ∫ F (ω ) dω ∞ ω =0 • El término cuadrático penaliza el alias para frecuencias cercanas a ω0/2 3.3 Transformada de Fourier discreta • Se tiene N muestras uniformemente distribuidas f (kT ) = f (0), f (T ), f (2T ), ... , f (( N − 1)T ) T NT • La transformada de Fourier discreta (DFT) se define como: N −1 2π − j nΩ kT Ω= Fd (nΩ) = ∑ f (kT )e NT k =0 3.3 Transformada de Fourier discreta N −1 2π Fd (nΩ) = ∑ f (kT )e − j nΩ kT Ω= NT k =0 N −1 ⇒ Fd (nΩ) = ∑ f (kT )e −jn 2π k N k =0 • Ω y T no aparecen de forma explícita en la DFT • Se puede obtener a partir de la transformada de Fourier, haciendo aproximaciones 3.3 Transformada de Fourier discreta • Sea: ⎧ f (t ) 0 ≤ t < NT ~ f (t ) = ⎨ otro caso ⎩ 0 • Su transformada es: NT ~ F (ω ) = ∫ f (t )e − jωt dt t =0 /ω → nΩ, t → nT N −1 ~ F (nΩ) ≈ ∑ f (kT )e − jnΩkT T k =0 • Luego: ~ TFD (nΩ) = F (ω ) |ω = nΩ 3.3 Transformada de Fourier discreta • El espectro obtenido es periódico, de periodo NΩ: N −1 FD (nΩ + NΩ) = ∑ f (kT )e − j (nΩ + NΩ )kT k =0 N −1 = ∑ f (kT )e k =0 N −1 − jnΩkT e − jNΩkT 2π /Ω = NT = ∑ f (kT )e − jnΩkT e − j 2πk = FD (nΩ) k =0 3.3 Transformada de Fourier discreta • La exactitud en el cálculo de la transformada también es afectada por el efecto alias. • La transformada es periódica => la frecuencia más alta que se puede determinar corresponde a n=N/2, es decir, (N/2)Ω=1/(2T) => de acuerdo al teorema del muestreo 3.3 Transformada de Fourier discreta • También hay una transformada inversa de Fourier discreta: 1 N −1 f (kT ) = ∑ FD (nΩ)e jnΩkΤ N n =0 • La transformada inversa es exacta respecto a la transformada directa, a menos que se produzca efecto alias. • La transformada inversa es periódica, periodo NT • Propiedades semejantes a la transformada de Fourier continua. 3.4 Transformada de Fourier rápida • El cálculo de la DFT requiere N2 multiplicaciones. • Tiempo de cálculo excesivo para N grande. • Algoritmo FFT (fast Fourier transform): permite calcular la DFT de forma rápida: Nlog2N multiplicaciones. • Dos formas de visualizarla: a partir de sumas por bits o a partir de paridad/imparidad. 3.4 Transformada de Fourier rápida • La notación WN para la exponencial de la DFT: – Dado N, se define WN como el círculo unitario dividido en N partes, con ángulos negativos WN = e − j ΩT Im W8 W8 5 W8 =e W8 2 ⇒ W8 1 8 W 0 Re − 360º N WN = 1 WN 7 W8 3 2π N 6 4 W8 −j Nx =e WN = e 2 − j 2π − j 2π W N * = WN x 2 N −x N x N =1 =e −j = WN 2π N /2 = WN / 2 (N −x) 3.4 Transformada de Fourier rápida • Forma 1 (ejemplo para 4 puntos): N −1 Fd (nΩ) = ∑ f (kT )e − j nΩ kT k =0 3 Fd (nΩ) = ∑ f (kT )W4 , WN = e nk − j ΩT =e −j 2π N k =0 • Se pueden escribir k y n como números binarios: k = (k1 , k0 ) = {00, 01, 10, 11}, k = 2k1 + k0 n = (n1 , n0 ) = {00, 01, 10, 11}, n = 2n1 + n0 3.4 Transformada de Fourier rápida • Luego: FD ( n1 ,n0 ) = 1 1 ∑∑ k0 = 0 k1 = 0 f ( k1 ,k0 )W4( 2 n1 + n0 )( 2 k1 + k0 ) W4( 2 n1 + n0 )( 2 k1 + k0 ) = W4 2 n0 k1 W4( 2 n1 + n0 )k0 W4 4 n1k1 = 1 ⎛ 1 ⎞ ( 2 n + n )k 2 n0 k1 FD ( n1 ,n0 ) = ∑ ⎜ ∑ f ( k1 ,k0 )W4 ⎟W4 1 0 0 ⎜ ⎟ k0 = 0 ⎝ k1 = 0 ⎠ 1 f1 (n0 , k0 ) f 2 (n0 , n1 ) 3.4 Transformada de Fourier rápida 1 f1 (n0 , k0 ) = ∑ f (k1 , k0 )W4 2 n0 k1 k1 = 0 1 f1 (n0 , k0 ) = ∑ f (k1 , k0 )W2 n0 k1 k1 = 0 f 2 (n0 , n1 ) = 1 ∑ f (n , k )W k0 =0 1 0 FD (n1 , n0 ) = f 2 (n0 , n1 ) 0 4 Una para pares, otra para impares ( 2 n1 + n0 ) k 0 Suma ponderada de las anteriores 3.4 Transformada de Fourier rápida • Ejemplo: “mariposa” para 4 puntos: f (k ) f ( k1 , k 2 ) f1 (n0 , k0 ) f 2 (n0 , n1 ) f D (n) f(0) f (00) *W 0 *W 0 f 2 (00) f D ( 0) f (1 ) f (01) *W 0 *W 2 f 2 (10) f D (1) f(2) f (10) *W 2 *W 1 f 2 (01) f D ( 2) f (3) f (11) *W 2 *W 3 f 2 (11) f D (3) 3.4 Transformada de Fourier rápida • DFT: lento (N2), requiere poca memoria • FFT: rápido (N log2 N), requiere bastante memoria (recursivo), requiere que el número de puntos sea potencia de 2. N 2 32 256 1024 N2 4 1024 2048 1048576 N log2N 2 160 65536 10240 3.4 Transformada de Fourier rápida • Resumen FFT: – 1. Se elige el nº de muestras tal que N=2r con r entero. Si es necesario, se pueden incluir ceros aumentados. – 2. Para N muestras en el tiempo existen N frecuencias distintas. – 3. Como resultado de la extensión periódica, los puntos de muestra 0 y N son iguales, tanto en el tiempo como en la frecuencia (f0=fN; FD0=FDN) – 4. Las componentes de frecuencia positiva están en (0,N/2), las componentes de frecuencia negativa están en (N/2,N). Ocurre lo mismo en el tiempo (tiempos positivos y negativos) 3.4 Transformada de Fourier rápida – 5. Para funciones de valor real, las componentes de frecuencia positiva son complejas conjugadas de las componentes de frecuencia negativa. Los puntos n=0 y n=N/2 son comunes a ambos, por lo que tienen valor real. – 6. La componente de frecuencia más alta (es decir, n=N/2) corresponde a 1/(2T) [Hz]. La frecuencia máxima visible se puede aumentar disminuyendo el espaciamiento entre frecuencias en el tiempo 3.4 Transformada de Fourier rápida – 7. El espaciamiento entre componentes de frecuencia es 1/(NT) [Hz], se puede disminuir agregando ceros aumentados a la secuencia de muestras 3.4 Transformada de Fourier rápida f (kT ) k (tiempo) T NT FD (nΩ) 2π /( NT ) n ( frecuencia) 2π / T