martes, 10 de marzo de 2009

Transformada de Fourier, DFT y FFT

Siguiendo con la introducción teórica, el siguiente punto es sin duda la Transformada de Fourier, que será una de las más valiosas herramientas de procesado de señal que utilizaremos en nuestro diseño.

Por dar una definición cualitativa, diremos que la Transformada de Fourier se utiliza para pasar al «dominio frecuencial» una señal para así obtener información que no es evidente en el «dominio temporal». Se demuestra matemáticamente que una señal periódica se puede descomponer en una suma de senos y cosenos formando una base ortogonal, de esta forma, señales como la voz o las ondas se pueden descomponer en un sumatorio de señales trigonométricas. El conjunto de constantes que multiplican a cada frecuencia forman el espectro de frecuencias.
Matemáticamente, la expresión es bien conocida (al menos para nosotros):
De la misma forma, existe otra expresión para recuperar la señal en el dominio temporal a partir de la señal en frecuencia, y que por tanto se denomina Transformada Inversa de Fourier:


El problema que presenta la Transformada de Fourier está relacionado con el procesado digital. La Transformada de Fourier se puede extender a señales discretas x[n] (resultado de muestrear una señal analógica para trabajar con ella digitalmente) pero nos proporcionará una señal continua en frecuencia. Para esto nace la Transformada Discreta de Fourier (DFT), con la intención de construir una señal discreta también en el dominio frecuencial. Del mismo modo que la secuencia discreta en tiempo se obtiene por muestreo de la señal analógica, la filosofía inicial de la DFT será muestrear la Transformada de Fourier continua. Por supuesto, detrás de esta idea inicial, se esconde una serie de expresiones más complejas y refinadas, que no expondremos aquí, ya que la finalidad de todo esto es dar una explicación más o menos cualitativa. Por eso, nos limitaremos a exponer la fórmula de la DFT de N puntos de una secuencia x[n] (obtenida, como dijimos, por muestreo de x(t)):

Hay que aclarar también, que la señal en frecuencia tendrá N muestras, y equivaldrá a un muestreo de la señal continua cada 2*pi/N siempre que la señal discreta tenga una longitud menor o igual que dicho número N.

Del mismo modo, la expresión para recuperar la secuencia discreta será:
Por tanto, ya hemos dado otro paso más: tenemos una expresión discreta del espectro de una señal, también discreta en tiempo. Esto nos permite utilizar procesado digital en ambos dominios, lo cual tiene infinitas ventajas: sencillez, rapidez, facilidad de comprensión, ahorro de costes, etc.

Sin embargo, aún podemos dar otro paso más. Imaginemos que a partir de x[n] construimos dos señales, una con las muestras impares de la señal y otra con las muestras pares. Si hallamos la DFT de ambas partes y las sumamos (añadiendo un desfase a la de la parte impar) obtenemos el mismo resultado que haciendo la DFT de la señal original.

¿Qué ahorramos de esta forma? Pues el número de operaciones que hay que hacer para una DFT de N puntos es del orden del cuadrado de N, mientras que las dos DFTs conllevan un número de operaciones proporcional a N, lo cual implica menos recursos y menos tiempo de cálculo. Si repetimos el razonamiento, dividiremos las dos señales en cuatro, y así sucesivamente, siempre que las señales obtenidas sean de un número par de muestras, pues es un requisito imprescindible que la señal con muestras pares e impares tengan el mismo tamaño. Por tanto, la conclusión es que podemos implementar la DFT con un algoritmo muy eficiente en velocidad y aprovechamiento de recursos si el número de muestras de la DFT original N es potencia de dos, para dividir las señales tantas veces como sea posible. Este algoritmo, el que realmente utilizaremos en nuestro sistema, se conoce como Fast Fourier Transform (FFT).

En resumen, para procesado de señales necesitamos trabajar en el dominio frecuencial de las señales temporales, y la herramienta para conseguir esto es la Transformada de Fourier. Como la formulación original nos proporciona una señal continua en frecuencia, replanteamos la formulación para obtener una señal discreta equivalente mediante la DFT, y así aprovechar las ventajas del procesado digital. Por último, aprovechando ciertas propiedades de la DFT, encontramos un algoritmo de cálculo que optimiza recursos y velocidad, la FFT.

No hay comentarios:

Publicar un comentario en la entrada