0% found this document useful (0 votes)
35 views

Fourier Analysis Without Tears: 15-463: Computational Photography Alexei Efros, CMU, Fall 2005

This document discusses Fourier analysis and its applications to image processing. It introduces Fourier analysis as representing signals as sums of sinusoids, and explains how the Fourier transform decomposes a signal into its constituent frequencies. It then shows how the Fourier transform can be used to understand the frequency spectra of images and compress images using techniques like the discrete cosine transform used in JPEG compression.

Uploaded by

xolrax
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

Fourier Analysis Without Tears: 15-463: Computational Photography Alexei Efros, CMU, Fall 2005

This document discusses Fourier analysis and its applications to image processing. It introduces Fourier analysis as representing signals as sums of sinusoids, and explains how the Fourier transform decomposes a signal into its constituent frequencies. It then shows how the Fourier transform can be used to understand the frequency spectra of images and compress images using techniques like the discrete cosine transform used in JPEG compression.

Uploaded by

xolrax
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

Fourier Analysis Without Tears

Somewhere in Cinque Terre, May 2005

15-463: Computational Photography Alexei Efros, CMU, Fall 2005

Capturing whats important


x1 x0 x1
2nd principal component 1st principal component

x0

Fast vs. slow changes

A nice set of basis


Teases away fast vs. slow changes in the image.

This change of basis has a special name

Jean Baptiste Joseph Fourier (1768-1830)


had crazy idea (1807):
Any periodic function can be rewritten as a weighted sum of sines and cosines of different frequencies.

Dont believe it?


Neither did Lagrange, Laplace, Poisson and other big wigs Not translated into English until 1878!

But its true!


called Fourier Series

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()

Inverse Fourier Transform

f(x)

Time and Frequency


example : g(t) = sin(2pf t) + (1/3)sin(2p(3f) t)

Time and Frequency


example : g(t) = sin(2pf t) + (1/3)sin(2p(3f) t)

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

FT: Just a change of basis


M * f(x) = F()

. . .

IFT: Just a change of basis


M-1 * F() = f(x)

. . .

Finally: Scary Math

Finally: Scary Math

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

So its just our signal f(x) times sine at frequency

Extension to 2D

in Matlab, check out: imagesc(log(abs(fftshift(fft2(im)))));

2D FFT transform

Man-made Scene

Can change spectrum, then reconstruct

Most information in at low frequencies!

Campbell-Robson contrast sensitivity curve

We dont resolve high frequencies too well lets use this to compress images JPEG!

Lossy Image Compression (JPEG)

Block-based Discrete Cosine Transform (DCT)

Using DCT in JPEG


A variant of discrete Fourier transform
Real numbers Fast implementation

Block size
small block
faster correlation exists between neighboring pixels

large block
better compression in smooth regions

Using DCT in JPEG


The first coefficient B(0,0) is the DC component, the average intensity The top-left coeffs represent low frequencies, the bottom right high frequencies

Image compression using DCT


DCT enables image compression by concentrating most image information in the low frequencies Loose unimportant image info (high frequencies) by cutting B(u,v) at bottom right The decoder computes the inverse DCT IDCT
Quantization Table
3 5 7 9 5 7 9 7 9 9 11 13 15 17 11 13 15 17 19 11 13 15 17 19 21

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

JPEG compression comparison

89k

12k

You might also like