Fourier Analysis Without Tears: 15-463: Computational Photography Alexei Efros, CMU, Fall 2005
Fourier Analysis Without Tears: 15-463: Computational Photography Alexei Efros, CMU, Fall 2005
x0
A sum of sines
Our building block:
A sin(x + )
Add enough of them to get any signal f(x) you want! How many degrees of freedom? What does each control? Which one encodes the coarse vs. fine structure of the signal?
Fourier Transform
We want to understand the frequency of our signal. So, lets reparametrize the signal by instead of x:
f(x)
Fourier Transform
F()
For every from 0 to inf, F() holds the amplitude A and phase of the corresponding sine A sin(x + )
How can F hold both? Complex number trick!
F ( ) = R( ) + iI ( ) 2 2 1 I ( ) A = R( ) + I ( ) = tan R( )
We can always go back:
F()
f(x)
Frequency Spectra
example : g(t) = sin(2pf t) + (1/3)sin(2p(3f) t)
Frequency Spectra
Usually, frequency is more interesting than the phase
Frequency Spectra
Frequency Spectra
Frequency Spectra
Frequency Spectra
Frequency Spectra
Frequency Spectra
1 = A sin(2 kt ) k =1 k
Frequency Spectra
. . .
. . .
not really scary: e = cos(x ) + i sin(x ) is hiding our old friend: A sin(x + )
phase can be encoded by sin/cos pair
P cos( x ) + Q sin( x ) = A sin( x + ) = P2 + Q2
ix
= tan 1
P Q
Extension to 2D
2D FFT transform
Man-made Scene
We dont resolve high frequencies too well lets use this to compress images JPEG!
Block size
small block
faster correlation exists between neighboring pixels
large block
better compression in smooth regions
11 13 15 17 19 21 23
11 13 15 17 19 21 23 25 13 15 17 19 21 23 25 27 15 17 19 21 23 25 27 29 17 19 21 23 25 27 29 31
89k
12k