Capítulo 7La DFT y la FFT
Todo lo anterior ha sido construir intuición. Este es el algoritmo real: dada nada más que una lista de números muestreados, calcula exactamente qué frecuencias hay en la señal — sin espiar cómo se construyó.
La fórmula
La Transformada Discreta de Fourier toma $N$ muestras $x_0, x_1, \dots, x_{N-1}$ y produce $N$ números complejos que describen el contenido de frecuencia de la señal:
Cada $X_k$ responde una pregunta: "¿cuánto hay de la frecuencia $k$ (en ciclos por ventana de muestras) presente?" $|X_k|$ — la magnitud de ese número complejo — es exactamente la altura de barra que ves graficada arriba. Esta es la misma rotación $e^{-i\theta}$ de los círculos del Capítulo 4, solo que ejecutada una vez por cada frecuencia que quieres probar, en lugar de dibujada a lo largo del tiempo.
Por qué existe la FFT
Calculada directamente, la fórmula de arriba cuesta $O(N^2)$ multiplicaciones — por cada una de las $N$ frecuencias de salida, sumas sobre las $N$ muestras de entrada. La Transformada Rápida de Fourier (FFT) no es una fórmula distinta; es la misma DFT calculada de forma inteligente, dividiendo recursivamente la suma en muestras de índice par e impar y reutilizando trabajo entre ellas. Eso reduce el costo a $O(N \log N)$:
| N (muestras) | DFT: N² ops | FFT: N·log₂N ops | Aceleración |
|---|
Con $N$ pequeño la diferencia apenas importa. En los tamaños que usa el procesamiento real de audio, imágenes y señales de radio — millones de muestras — la FFT es la única razón por la que algo de esto corre en tiempo real.