Óptica de Fourier · Artículo 01

Una imagen es una suma de rayas

Cualquier imagen — una fotografía, un patrón de difracción, la cara de tu perro — se puede descomponer en una suma de rejillas sinusoidales. Esa idea, sencilla y profunda a la vez, es el fundamento de la óptica de Fourier.

Cuando miras una fotografía, ves formas y contornos. Pero hay otra manera de ver esa misma imagen: como una suma de patrones repetitivos simples. Cada patrón tiene una frecuencia, una orientación y un contraste. Juntos, reconstruyen la imagen completa. Esta idea es el fundamento de toda la óptica de Fourier — y es lo que vamos a explorar aquí.

Frecuencias en el tiempo vs. frecuencias en el espacio

Si has escuchado alguna vez un diapasón, has escuchado una frecuencia pura: una oscilación que se repite un número fijo de veces por segundo. Un La de concierto son 440 ciclos por segundo — 440 Hz. Dos notas juntas son una suma de sinusoides. Un acorde, una suma más compleja. Hasta aquí, territorio conocido.

Ahora el salto: la misma idea funciona en el espacio. En vez de una onda que oscila en el tiempo, imagina unas franjas que oscilan en el espacio — zonas claras y oscuras que se alternan periódicamente. La frecuencia ya no se mide en ciclos por segundo sino en ciclos por milímetro. Pero la matemática es idéntica.

Compara los dos paneles: a la izquierda, una señal oscila en el tiempo. A la derecha, la misma frecuencia y amplitud generan un patrón de franjas — una rejilla espacial. Mueve los controles y convéncete de que son la misma idea en dominios distintos.

Explorar
Señal temporal
Rejilla espacial
Frecuencia 3.0
Amplitud 0.80

La señal temporal se describe con f(t)=Asin(2πνt)f(t) = A\sin(2\pi\nu\, t), donde ν\nu es la frecuencia (en Hz) y AA la amplitud. La rejilla espacial es exactamente lo mismo:

g(x)=12+C2sin(2πfxx)g(x) = \tfrac{1}{2} + \tfrac{C}{2}\sin(2\pi f_x \, x)

donde fxf_x es la frecuencia espacial (ciclos por unidad de longitud) y CC el contraste. El término 12\tfrac{1}{2} centra el brillo entre 0 y 1.

Rejillas en 2D

Las imágenes son bidimensionales, así que necesitamos rejillas en 2D. Una rejilla bidimensional tiene tres propiedades: su frecuencia (qué tan juntas están las franjas), su ángulo (hacia dónde apuntan), y su contraste (qué tan marcada es la diferencia entre claro y oscuro).

Matemáticamente, una rejilla 2D con vector de frecuencia espacial (u0,v0)(u_0, v_0) se escribe:

g(x,y)=12+C2sin ⁣(2π(u0x+v0y))g(x,y) = \tfrac{1}{2} + \tfrac{C}{2}\sin\!\big(2\pi(u_0 x + v_0 y)\big)

donde u0=fcosθu_0 = f\cos\theta y v0=fsinθv_0 = f\sin\theta, siendo ff la frecuencia y θ\theta el ángulo de orientación. Juega con los controles y construye tu intuición:

Explorar
Frecuencia 5.0
Ángulo
Contraste 1.00

Sumar rejillas

Aquí viene la idea central de todo este artículo — y, en cierto sentido, de toda la óptica de Fourier. Toma dos rejillas de frecuencia y orientación distintas. Súmalas. El resultado es un patrón más complejo. Añade una tercera. Una cuarta. Una quinta. Con suficientes rejillas, puedes construir cualquier imagen.

Esto es exactamente lo que estás viendo abajo: la letra «F» reconstruida componente a componente, desde las frecuencias más dominantes hasta los detalles más finos. Con pocas componentes, apenas un borrón. Con muchas, la imagen emerge nítida. Mueve el deslizador y observa el momento exacto en que la reconoces.

Explorar
Reconstrucción
Imagen original
Componentes 11
11 de 16.384 coeficientes (0.1%)

Fíjate en algo importante: las primeras componentes — las de mayor peso — dan la estructura general. Los detalles finos requieren frecuencias altas. Esto no es una curiosidad: es exactamente el principio que usa la compresión JPEG. Si descartas las frecuencias altas que el ojo apenas nota, reduces el tamaño del archivo sin perder calidad aparente.

La transformada de Fourier como mapa

Lo que acabas de hacer tiene nombre. El «mapa» que te dice qué rejillas necesitas y con qué peso para reconstruir una imagen se llama su transformada de Fourier. Es una representación alternativa de la misma información: en vez de decirte el brillo de cada punto en el espacio (x,y)(x, y), te dice la amplitud de cada frecuencia espacial (u,v)(u, v).

Selecciona diferentes imágenes y observa su espectro. Un punto aislado produce un espectro plano — necesitas todas las frecuencias por igual para construir algo infinitamente concentrado. Una rejilla produce dos puntos simétricos en el espectro: solo una frecuencia contribuye. Y la letra «F» produce un patrón complejo que refleja toda su estructura geométrica.

Explorar
Imagen
Espacio real
Espectro de Fourier

El centro del espectro corresponde a las frecuencias bajas (variaciones lentas de brillo), y la periferia a las altas (bordes, detalles finos). Un espectro concentrado en el centro significa una imagen suave; uno que se extiende hacia fuera significa una imagen con mucho detalle o bordes abruptos.

La matemática (ahora sí)

Ahora que sabes qué hace la transformada de Fourier — porque lo has visto con tus propias manos —, la fórmula no debería asustarte. Es simplemente la receta que describe lo que acabas de experimentar.

La transformada de Fourier 2D de una función f(x,y)f(x,y):

F(u,v)=f(x,y)  e2πi(ux+vy)dxdyF(u,v) = \iint_{-\infty}^{\infty} f(x,y) \; e^{-2\pi i(ux+vy)} \, dx \, dy

Y la transformada inversa, que reconstruye la imagen a partir de su espectro:

f(x,y)=F(u,v)  e2πi(ux+vy)dudvf(x,y) = \iint_{-\infty}^{\infty} F(u,v) \; e^{\,2\pi i(ux+vy)} \, du \, dv

La exponencial compleja e2πi(ux+vy)e^{2\pi i(ux+vy)} es exactamente una rejilla sinusoidal con frecuencia espacial (u,v)(u,v). La transformada inversa dice: «suma todas las rejillas posibles, cada una con su peso F(u,v)F(u,v), y obtendrás la imagen original». Es lo que hiciste con el deslizador, pero sin truncar la suma.

Un resultado elegante que usaremos constantemente: el teorema de Parseval, que dice que la energía total es la misma la mires en el espacio o en frecuencias:

f(x,y)2dxdy=F(u,v)2dudv\iint |f(x,y)|^2 \, dx \, dy = \iint |F(u,v)|^2 \, du \, dv

¿Y esto para qué sirve?

La descomposición en frecuencias espaciales no es un ejercicio académico. Es una herramienta que se usa a diario en ingeniería, física e informática:

Y un adelanto para el próximo artículo: ¿y si te digo que la naturaleza ya calcula transformadas de Fourier? Que cuando la luz pasa por una rendija, el patrón que ves en la pared es la transformada de Fourier de la forma de esa rendija? Eso es la difracción — y es lo que exploraremos a continuación.

Ejercicios

Ejercicio 1

Usa el constructor de Fourier de arriba para reconstruir la letra «F». Mueve el deslizador lentamente y anota cuántas componentes necesitas para que las esquinas de la letra se vean razonablemente nítidas (no redondeadas). ¿Por qué una onda cuadrada necesita muchos más armónicos que una onda suave para reproducirse fielmente?

Solución

Las esquinas y bordes rectos de la «F» son cambios abruptos de brillo, que en Fourier requieren frecuencias altas. Típicamente necesitas al menos 15-25 componentes para que las esquinas dejen de verse redondeadas. La razón es que una función con discontinuidades (como una onda cuadrada) tiene una serie de Fourier cuyos coeficientes decaen como 1/n1/n, donde nn es el número de armónico. Para reproducir el cambio abrupto necesitas sumar muchos términos. Además, incluso con infinitos términos, la serie de Fourier siempre sobreestima un ~9% en las discontinuidades — eso es el fenómeno de Gibbs.

Ejercicio 2

En el visor de la transformada de Fourier, selecciona la imagen «Rejilla» y observa su espectro (dos puntos simétricos). Ahora selecciona «Punto» y observa su espectro (plano, uniforme). Explica por qué un punto aislado produce un espectro plano usando la fórmula de la transformada de Fourier:

F(u,v)=f(x,y)e2πi(ux+vy)dxdyF(u,v) = \iint f(x,y)\, e^{-2\pi i(ux+vy)}\, dx\, dy
¿Qué le pasa al espectro si desplazas el punto a otra posición (x0,y0)(x_0, y_0)?

Solución

Un punto aislado en el origen es una delta de Dirac: f(x,y)=δ(x)δ(y)f(x,y) = \delta(x)\,\delta(y). Su transformada de Fourier es:

F(u,v)=δ(x)δ(y)e2πi(ux+vy)dxdy=1F(u,v) = \iint \delta(x)\,\delta(y)\, e^{-2\pi i(ux+vy)}\, dx\, dy = 1

Es decir, F(u,v)2=1|F(u,v)|^2 = 1 para toda frecuencia: el espectro es plano. Físicamente: para construir algo infinitamente concentrado, necesitas todas las frecuencias por igual, con la misma amplitud.

Si desplazas el punto a (x0,y0)(x_0, y_0), la transformada se convierte en F(u,v)=e2πi(ux0+vy0)F(u,v) = e^{-2\pi i(u x_0 + v y_0)}, que tiene F=1|F| = 1 — la misma magnitud plana. Solo cambia la fase, no la amplitud. El espectro de magnitud no cambia si desplazas el punto. Este es el teorema de desplazamiento de la transformada de Fourier.