Está en la página 1de 5

Transformada rápida de Fourier en análisis

de frecuencias.
Campos. Alma

Universidad Politécnica de Cuautitlán Izcalli.


Cuautitlán Izcalli, México.

alma_scamposa.ibm@upci.edu.mx

Abstract— Las transformadas rápidas de Fourier (FFT por sus DFT de media longitud que son evaluados a su vez por una DFT
siglas en inglés) son algoritmos rápidos, es decir, de baja de un cuarto de longitud y así sucesivamente.
complejidad, para cálculo de la transformada discreta de Fourier
(DFT) en un grupo abeliano finito. Los muy importantes teoremas de complejidad
computacional de Winograd se enuncian y brevemente discutido
Están entre los algoritmos más importantes en matemáticas
en Short DFT Algorithms de Winograd. Los detalles específicos
aplicadas y de ingeniería y en informática, en particular para el
procesamiento de señales. y las evaluaciones de Cooley-Tukey FFT y Split-Radix FFT se
dan en The Cooley-Tukey Fast
I. INTRODUCCIÓN
El algoritmo de transformada de Fourier (capítulo 9) y PFA
Las transformadas rápidas de Fourier (FFT) son algoritmos y WFTA se tratan en The Primer Factor y algoritmos de
rápidos, es decir, de baja complejidad, para el cálculo de la transformada de Fourier de Winograd (Capítulo 10). Una breve
transformada discreta de Fourier (DFT) en un grupo abeliano discusión de la convolución de alta velocidad se da en Algoritmos
finito que, a su vez, es un caso especial de la transformada de de convolución, tanto por su propia importancia, y su conexión
Fourier en un grupo abeliano localmente compacto. Las FFT se teórica con la DFT. También presentamos el chirrido, Goertzel,
encuentran entre los algoritmos más importantes en matemáticas QFT, NTT, SR-FFT, Approx FFT, Autogen y programas para
aplicadas y de ingeniería y en informática, en particular para la implementar algunos de estos.
teoría de sistemas unidimensionales y multidimensionales y el
procesamiento de señales. II. DEFINICIÓN DE LA TRANSFORMADA DE FOURIER

Un algoritmo se llama rápido si tiene baja complejidad, La transformada de Fourier (FT) de la función f (x) es la
donde la complejidad es el número de pasos de cálculo función F (ω), donde:
elementales necesarios para ejecutarlo. En este papel y en la
mayoría de los procesadores de computadora, este paso tiene la
forma ax + y con números a, x, y; es decir, consta de una
multiplicación junto con una adición.

El desarrollo de algoritmos rápidos suele consistir en utilizar y la transformada de Fourier inversa es:
propiedades especiales del algoritmo de interés para eliminar
operaciones redundantes o innecesarias de una implementación
directa.

Debido a la periodicidad, simetrías y ortogonalidad de las


funciones base y la relación especial con la convolución, la Recordando que i = √ − 1 y e iθ = cos θ + i sin θ.
transformada discreta de Fourier (DFT) tiene una enorme Piense en ello como una transformación en un conjunto
capacidad de mejora de su eficiencia aritmética. diferente de funciones básicas. La transformada de Fourier utiliza
Hay cuatro enfoques principales para formular algoritmos exponenciales complejas (sinusoides) de varias frecuencias como
DFT eficientes. Los dos primeros dividan una DFT en varias más funciones básicas.
cortas. Esto se hace en el mapeo de índices multidimensionales Un par de transformadas de Fourier a menudo se escribe f
utilizando un mapa de índice y en (x) ↔ F (ω), o F (f (x)) = F (ω) donde F es el operador de la
Descripción polinomial de señales por reducción de transformada de Fourier
polinomios. El tercero es Factorizar los operadores de Si se piensa en f (x) como una señal (es decir, datos de
procesamiento de señales que factoriza el operador DFT (matriz) entrada), entonces llamamos a F (ω) el espectro de la señal.
en factores dispersos. La DFT como convolución o el filtrado
desarrolla un método que convierte una DFT de longitud prima Si se piensa en f como la respuesta al impulso de un filtro
en cíclica circunvolución. Otro enfoque más es interesante donde, (que opera sobre los datos de entrada para producir datos de
para ciertos casos, la evaluación de la DFT se puede plantear de salida) entonces llamamos F a la respuesta de frecuencia del filtro.
forma recursiva como una evaluación de DFT en términos de dos
III. EJEMPLO DE UNA TRANSFORMADA DE FOURIER V. EL ALGORITMO DE TRANSFORMADA RÁPIDA DE FOURIER
(FFT)
Supongamos que queremos crear un filtro que elimine las
frecuencias altas, pero conserve las frecuencias bajas. La FFT es un algoritmo rápido para calcular la DFT. Si
tomamos la DFT de 2 puntos y la de 4 puntos
En terminología de procesamiento de señales, esto se
denomina filtro de paso bajo ideal. Así que especificaremos una DFT y generalizarlos a 8 puntos, 16 puntos, ..., 2r
respuesta de frecuencia en forma de caja con frecuencia de corte
wc: -punto, obtenemos el algoritmo FFT.

1 𝜔 ≤ 𝜔𝑐 Para calcular la DFT de una secuencia de N puntos usando la


𝐹(𝜔) = { ecuación (1) tomaría O (N2) multiplicar y sumar. El algoritmo
0 𝜔 > 𝜔𝑐
FFT calcula la DFT usando O (N log N) multiplica y
¿Cuál es su respuesta al impulso?
agrega.
Sabemos que la respuesta al impulso es la transformada de
Fourier inversa de la frecuencia respuesta, así que quitándonos Hay muchas variantes del algoritmo FFT. Analizaremos uno de
nuestro sombrero de procesamiento de señales y poniéndonos ellos, el algoritmo FFT de "diezmado en el tiempo" para
nuestro sombrero de matemáticas, todos lo que hay que hacer es secuencias cuya longitud es una potencia de dos (N = 2r para
evaluar: algunos

entero r).

A continuación, se muestra un diagrama de una FFT de 8


puntos, donde W = W8 = e − iπ / 4 = (1 - i) / √2:
para esta F (ω) particular:

donde sin (x) = sin (πx) / (πx). Para suavizar con muestras
espaciadas unitarias, desea que la frecuencia de corte para igualar
la frecuencia de Nyquist, entonces wc = π. VI. MAPEO DE ÍNDICES MULTIDIMENSIONALES
IV. TRANSFORMADA DISCRETA DE FOURIER (DFT) Un enfoque poderoso para el desarrollo de algoritmos
eficientes es resolver un gran problema en varios pequeños. Un
Cuando una señal es discreta y periódica, no necesitamos la método para hacer esto tanto con DFT como con convolución
transformada de Fourier continua. utiliza un cambio lineal de variables de índice para mapear el
En su lugar, usamos la transformada discreta de Fourier o problema unidimensional original en un problema
DFT. Supongamos que nuestra señal es an para n = 0 ... N - 1, y multidimensional. Este enfoque proporciona una derivación
an = an + jN para todo n y j. La transformada discreta de Fourier unificada de Cooley-Tukey FFT, el algoritmo de factor primo
de a, también conocida como el espectro de a, es: (PFA) FFT y el algoritmo de transformada de Winograd Fourier
(WFTA) FFT. También se puede aplicar directamente a la
convolución para dividirla en múltiples convoluciones cortas que
se pueden ejecutar más rápido que una implementación directa. A
menudo es fácil para traducir un algoritmo usando mapeo de
índices en un programa eficiente.
Esto se escribe más comúnmente:
La definición básica de la transformada discreta de Fourier
(DFT) es

C (k) = N X−1 n=0 x (n) Wnk N


donde n, k y N son números enteros, j = √ −1, las funciones base
son las N raíces de la unidad
Donde:
WN = e −j2π/N y k = 0, 1, 2, · · · , N − 1. En algunas de las siguientes ecuaciones, la notación de
reducción de residuos se omitirá para mayor claridad.
Si los N valores de la transformada se calculan a partir de
los N valores de los datos, x (n), es fácilmente visto que N2 Estos cambios de variables aplicados a la definición de
multiplicaciones complejas y aproximadamente el mismo número la DFT dada en dan
de complejos

Se requieren adiciones. Un método para reducir esta


aritmética requerida es usar un índice mapeo (un cambio de
variables) para cambiar la DFT unidimensional en una de dos o
más DFT dimensional. Ésta es una de las ideas detrás del muy donde todos los exponentes se evalúan módulo N.
eficiente Cooley-Tukey y algoritmos de Winograd. El propósito
La cantidad de aritmética requerida para calcular es la
del mapeo de índices es convertir un gran problema en varios más
misma que en el cálculo directo de. Sin embargo,
fáciles. Esto a veces se denomina enfoque de "divide y vencerás"
debido a la naturaleza especial de la DFT, las constantes
pero una descripción más precisa sería organizar y compartir "que
enteras Ki puede ser elegido de tal manera que los
explica el proceso de eliminación o reducción de redundancia.
cálculos se desacoplan "y la aritmética se reduce.
Si los N valores de la transformada se calculan a partir de
Los requisitos para esto son
los N valores de los datos, x (n), es fácilmente visto que N2
multiplicaciones complejas y aproximadamente el mismo número ((K1K4)) N = 0 y / o ((K2K3)) N = 0
de complejos
Cuando se aplican esta condición y las de unicidad en,
Se requieren adiciones. Un método para reducir esta se encuentra que el Ki siempre se puede elegir de
aritmética requerida es usar un índice mapeo (un cambio de manera que uno de los términos en sea cero. Si los Ni
variables) para cambiar la DFT unidimensional en una de dos o son relativamente primos, siempre es posible hacer que
más DFT dimensional. Ésta es una de las ideas detrás del muy ambos términos sean cero. Si los Ni no son
eficiente Cooley-Tukey y algoritmos de Winograd. El propósito relativamente primos, solo uno de los términos se puede
del mapeo de índices es convertir un gran problema en varios más establecer en cero. Cuando son relativamente primos,
fáciles. Esto a veces se denomina enfoque de "divide y vencerás" hay una opción, es posible poner uno o ambos en cero.
pero una descripción más precisa sería organizar y compartir "que Esto a su vez provoca que uno o ambos de los dos
explica el proceso de eliminación o reducción de redundancia. centros
A) Mapa de índice tipo uno: Los términos W en se convierten en unidad.
El mapa de se llama mapa de tipo uno cuando existen Un ejemplo de Cooley-Tukey radix-4 FFT para una
números enteros a y b tales que longitud de 16 DFT usa el mapa de tipo dos con
K1 = aN2 and K2 = bN1 K1 = 4, K2 = 1, K3 = 1, K4 = 4
B) Mapa de índice de tipo dos: dando n = 4n1 + n2
El mapa de se llama mapa de tipo dos cuando los k = k1 + 4k2
números enteros a y b existen tales que
La reducción de residuos en no es necesaria aquí ya que
K1 = aN2 o K2 = bN1, pero no ambos. n no excede N como n1 y n2 asumir sus valores. Dado
que, en este ejemplo, los factores de N tienen un factor
El tipo uno solo se puede usar si los factores de N son común, solo una de las condiciones en se puede cumplir
primos relativos, pero el tipo dos se pueden utilizar
tanto si son relativamente primos como si no. Bueno,
Thomas y Winograd todos utilizaron el mapa de tipo
uno en sus algoritmos DFT. Cooley y Tukey utilizaron
el tipo dos en sus algoritmos, ambos para una base fijan
N = RM y una base mixta. y, por lo tanto, se convierte en

El índice de frecuencia está de nido por un mapa similar Tenga en cuenta que la definición de Wn en emite la
a como k = ((K3k1 + K4k2)) N donde las mismas forma simple de
condiciones, se utilizan para determinar la unicidad de
este mapa en términos de los números enteros K3 y K4.

Las matrices bidimensionales para los datos de entrada


y su DFT se definen utilizando estos mapas de índice Tiene la forma de una DFT bidimensional con un
dar término adicional W16. La suma interna sobre n1
representa cuatro DFT de longitud 4, el término W16
x (n1, n2) = x ((K1n1 + K2n2))N
representa 16 multiplicaciones complejas, y la suma
X (k1, k2) = X ((K3k1 + K4k2)) externa sobre n2 representa otras cuatro DFT de 4
longitudes. definición:
Esta elección del Ki desacopla "los cálculos desde la Llamamos transformada de Fourier analógica o
primera suma sobre n1 para n2 = 0 calcula la DFT de la continua de una señal x(t) T-periódica, a la funcion F(x)
primera fila de la matriz de datos x (n1, n2), y esos dada por la expresión F(x)(ξ) = {ck}∞ k=−∞, donde los
valores de datos son nunca se necesitó en los cálculos
valores
de filas siguientes. Los cálculos de fila son
independientes y el examen de la suma externa muestra representan los llamados coeficientes de Fourier de la
que los cálculos de las columnas son igualmente función T-periódica x(t).
independientes.
VIII. CONCLUSIÓN

El algoritmo de Goertzel en su forma de primer orden no es


particularmente interesante, pero la forma de segundo orden de
dos a la vez es significativamente más rápida que una DFT
directa.

También se puede utilizar para cualquier evaluación


polinomial o para la DTFT en valores desigualmente espaciados
o para evaluar unos pocos términos DFT.
VII. APLICACIONES Una observación muy interesante es que el bucle más
interno de Glassman Ferguson FFT es un algoritmo de Goertzel
Aproximación por polinomios trigonométricos de primer orden a pesar de que la FFT está desarrollada en un
marco muy diferente. [5]
Compresión de datos (MP3 ...)
Además de los recuentos aritméticos de punto flotante, el
Análisis espectral de señales
número de evaluaciones de funciones trigonométricas que deben
Respuesta de frecuencia de los sistemas realizarse o el tamaño de una tabla para almacenar valores pre-
calculados debe ser considerado. Dado que el valor de los
Ecuaciones diferenciales parciales términos Wnk en se calcula de forma iterativa en el IIR estructura
de filtro, hay acumulación de errores de redondeo que deben
Convolución a través del dominio de frecuencia analizarse en cualquier aplicación.
Correlación cruzada IX. REFERENCIA
Multiplicación de números enteros grandes
[1] Michael Joel Spilsbury & Armando Euceda. (2019).
Multiplicación simbólica de polinomios [4] Transformada Rápida de Fourier. Noviembre,
2020, de researchgate Sitio web:
https://www.researchgate.net/publication/3363391
VII-I CÁLCULO APROXIMADO DE FRECUENCIAS DE SEÑALES 37_Transformada_Rapida_de_Fourier
ANALÓGICAS
[2] Walt Kester. (Desconocido). FAST FOURIER
Las señales del mundo real, con las que debemos trabajar en TRANSFOR. Noviembre, 2020, de Desconocido
todo tipo de aplicaciones, no son vectores finitos sino funciones Sitio web:
definidas sobre un intervalo finito o infinito. Por ejemplo, en https://www.analog.com/media/en/training-
Medicina y en Ingeniería es frecuente que se consideren seminars/design-handbooks/MixedSignal_Sect5.pdf
magnitudes físicas continuas, como los potenciales o las
diferencias de presión atmosférica, etc., y estas magnitudes
quedan descritas por señales que dependen del tiempo, una
[3] Dima Batenkov. (2005). Fast Fourier Transform.
variable susceptible de ser evaluada en todos los puntos de la recta Noviembre, 2020, de Weizmann Institute of Science
real. Los ingenieros denominan “analógicas” a este tipo de Sitio web:
señales y, para estudiarlas en términos de frecuencias utilizan la http://www.wisdom.weizmann.ac.il/~naor/COURS
transformada de Fourier analógica, que viene dada por la E/fft-lecture.pdf
expresión:
[4] Martínez M. (2017-2018). Transformada rápida de
Llamamos transformada de Fourier analógica o continua de
Fourier Implementación y algunas aplicaciones.
una señal x(t) ∈ L 1 (R), a la función F(x) dada por la expresión
F(x)(ξ) := Z ∞ −∞ x(t)e −2πitξdt.[5]
Noviembre, 2020, de UNIVERSIDAD DE
MURCIA Sitio web:
Para denotar la transformada de Fourier analógica https://www.um.es/documents/118351/9850722/Ma
también se usan las siguientes notaciones: X(ξ) = ˆx(ξ) = rt%C3%ADnez+Manzano+TF_48705250_v2.pdf/c
F(x)(ξ). Para funciones T-periódicas tenemos la siguiente 44507c8-e990-4aac-b282-927acadcedd1
[5] David Schneider. (2012). A Faster Fast Fourier
Transform New algorithm crunches sparse data with
speed. Noviembre, 2020, de IEEE Spectrum Sitio
web:
https://spectrum.ieee.org/computing/software/a-
faster-fast-fourier-transform

[6] Stefan W¨orner. (Desconocido). Fast Fourier


Transform. Noviembre, 2020, de Swiss Federal
Institute of Technology Zurich Sitio web:
http://pages.di.unipi.it/gemignani/woerner.pdf

[7] Paul Heckbert. (1998). Fourier Transforms and the


Fast Fourier Transform (FFT) Algorithm.
Noviembre, 2020, de fourier.evi Sitio web:
http://www.cs.cmu.edu/afs/andrew/scs/cs/15-
463/2001/pub/www/notes/fourier/fourier.pdf

[8] Charles van Loan (1995). Computational


Frameworks for the Fast Fourier Transform.
SIAM, Noviembre, 2020 Sitio web:
file:///C:/Users/josel/Downloads/fast-fourier-
transforms-22.1%20(1).pdf

También podría gustarte