computer vision
DESCRIPTION
Computer Vision. Spring 2012 15-385,-685 Instructor: S. Narasimhan Wean Hall 5409 T-R 10:30am – 11:50am. Frequency domain analysis and Fourier Transform Lecture #4. How to Represent Signals?. Option 1: Taylor series represents any function using polynomials. - PowerPoint PPT PresentationTRANSCRIPT
Computer Vision
Spring 2012 15-385,-685
Instructor: S. Narasimhan
Wean Hall 5409
T-R 10:30am – 11:50am
Frequency domain analysis and Fourier Transform
Lecture #4
How to Represent Signals?
• Option 1: Taylor series represents any function using polynomials.
• Polynomials are not the best - unstable and not very physically meaningful.
• Easier to talk about “signals” in terms of its “frequencies”
(how fast/often signals change, etc).
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.
• Don’t believe it? – Neither did Lagrange,
Laplace, Poisson and other big wigs
– Not translated into English until 1878!
• But it’s true!– called Fourier Series– Possibly the greatest tool
used in Engineering
A Sum of Sinusoids
• Our building block:
• 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?
xAsin(
Fourier Transform
• We want to understand the frequency of our signal. So, let’s reparametrize the signal by instead of x:
xAsin(
f(x) F()Fourier Transform
F() f(x)Inverse Fourier Transform
• For every from 0 to inf, F() holds the amplitude A and phase of the corresponding sine
– How can F hold both? Complex number trick!
)()()( iIRF
22 )()( IRA )(
)(tan 1
R
I
Time and Frequency
• example : g(t) = sin(2pi f t) + (1/3)sin(2pi (3f) t)
Time and Frequency
= +
• example : g(t) = sin(2pi f t) + (1/3)sin(2pi (3f) t)
Frequency Spectra
• example : g(t) = sin(2pi f t) + (1/3)sin(2pi (3f) t)
= +
Frequency Spectra
• Usually, frequency is more interesting than the phase
= +
=
Frequency Spectra
= +
=
Frequency Spectra
= +
=
Frequency Spectra
= +
=
Frequency Spectra
= +
=
Frequency Spectra
= 1
1sin(2 )
k
A ktk
Frequency Spectra
Frequency Spectra
FT: Just a change of basis
.
.
.
* =
M * f(x) = F()
IFT: Just a change of basis
.
.
.
* =
M-1 * F() = f(x)
Fourier Transform – more formally
Arbitrary function Single Analytic Expression
Spatial Domain (x) Frequency Domain (u)
Represent the signal as an infinite weighted sum of an infinite number of sinusoids
dxexfuF uxi 2
(Frequency Spectrum F(u))
1sincos ikikeikNote:
Inverse Fourier Transform (IFT)
dxeuFxf uxi 2
• Also, defined as:
dxexfuF iux
1sincos ikikeikNote:
• Inverse Fourier Transform (IFT)
dxeuFxf iux
21
Fourier Transform
Fourier Transform Pairs (I)
angular frequency ( )iuxeNote that these are derived using
angular frequency ( )iuxeNote that these are derived using
Fourier Transform Pairs (I)
Fourier Transform and Convolution
hfg
dxexguG uxi 2
dxdexhf uxi 2
dxexhdef xuiui 22
'' '22 dxexhdef uxiui
Let
Then
uHuF
Convolution in spatial domain
Multiplication in frequency domain
Fourier Transform and Convolution
hfg FHG fhg HFG
Spatial Domain (x) Frequency Domain (u)
So, we can find g(x) by Fourier transform
g f h
G F H
FT FTIFT
Properties of Fourier Transform
Spatial Domain (x) Frequency Domain (u)
Linearity xgcxfc 21 uGcuFc 21
Scaling axf
a
uF
a
1
Shifting 0xxf uFe uxi 02
Symmetry xF uf
Conjugation xf uF
Convolution xgxf uGuF
Differentiation n
n
dx
xfd uFui n2
frequency ( )uxie 2Note that these are derived using
Properties of Fourier Transform
Example use: Smoothing/Blurring
• We want a smoothed function of f(x)
xhxfxg
H(u) attenuates high frequencies in F(u) (Low-pass Filter)!
• Then
222
2
1exp uuH
uHuFuG
2
1
u
uH
2
2
2
1exp
2
1
x
xh
• Let us use a Gaussian kernel
xh
x
Does not look anything like what we have seen
Magnitude of the FT
Image Processing in the Fourier Domain
Image Processing in the Fourier Domain
Does not look anything like what we have seen
Magnitude of the FT
Convolution is Multiplication in Fourier Domain
*
f(x,y)
h(x,y)
g(x,y)
|F(sx,sy)|
|H(sx,sy)|
|G(sx,sy)|
Low-pass Filtering
Let the low frequencies pass and eliminating the high frequencies.
Generates image with overall shading, but not much detail
High-pass Filtering
Lets through the high frequencies (the detail), but eliminates the low frequencies (the overall shape). It acts like an edge enhancer.
Boosting High Frequencies
Most information at low frequencies!
Fun with Fourier Spectra