Lecture 2: 2D Fourier Transforms and Applications

Page 1 sur 60Lecteur de document UniversityLib

Lecture 2: 2D Fourier Transforms and Applications

Image Analysis, Fourier Transform · notes

Voir tous les documents en mathématiques

Lecture 2: 2D Fourier transforms and applications

B14 Image Analysis Michaelmas 2014 A. Zisserman

" Fourier transforms and spatial frequencies in 2D

" Definition and meaning

" The Convolution Theorem

" Applications to spatial filtering

" The Sampling Theorem and Aliasing

Much of this material is a straightforward generalization of

the 1D Fourier analysis with which you are familiar.

Reminder: 1D Fourier Series

Spatial frequency analysis of a step edge

x

Fourier decomposition

Fourier series reminder

Example

=

f (x) = sin x +

+

1

3

sin 3x + . . .

Fourier series for a square wave

f (x) =

=

1

n

sin nx

Xn=1,3,5,...

Fourier series: just a change of basis

M f(x) = F(w)

.

=

.

.

.

Inverse FT: Just a change of basis

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

.

=

.

.

.

1D Fourier Transform

Reminder transform pair - definition

Example

x

u

2D Fourier transforms

2D Fourier transform

Definition

Sinusoidal Waves

To get some sense of what

basis elements look like, we

plot a basis element --- or

rather, its real part ---

as a function of x,y for some

fixed u, v. We get a function

that is constant when (ux+vy)

is constant. The magnitude of

the vector (u, v) gives a

frequency, and its direction

gives an orientation. The

function is a sinusoid with this

frequency along the direction,

and constant perpendicular to

the direction.

v

u

slide: B. Freeman

Here u and v are larger than

in the previous slide.

v

u

And larger still...

v

u

Some important Fourier Transform Pairs

FT pair example 1

rectangle centred at origin

Publicité

with sides of length X and Y

v

u

f(x,y)

|F(u,v)|

separability

|F(u,v)|

FT pair example 2

Gaussian centred on origin

" FT of a Gaussian is a Gaussian

" Note inverse scale relation

f(x,y)

F(u,v)

FT pair example 3

Circular disk unit height and

radius a centred on origin

" rotational symmetry

" a 2D version of a sinc

f(x,y)

F(u,v)

FT pairs example 4

f(x,y)

F(u,v)

Summary

f(x,y)

= a

+b

+g

+ &

Example: action of filters on a real image

original

low pass

high pass

f(x,y)

|F(u,v)|

Example 2D Fourier transform

Image with periodic structure

f(x,y)

|F(u,v)|

FT has peaks at spatial frequencies of repeated texture

Example Forensic application

Periodic background removed

|F(u,v)|

remove

peaks

Example Image processing

Lunar orbital image (1966)

|F(u,v)|

remove

peaks

join lines

removed

Magnitude vs Phase

|F(u,v)|

cross-section

f(x,y)

phase F(u,v)

" |f(u,v)| generally decreases with

higher spatial frequencies

" phase appears less informative

The importance of phase

phase

magnitude

phase

A second example

phase

magnitude

phase

Transformations

As in the 1D case FTs have the following properties

" Linearity

" Similarity

" Shift

In 2D can also rotate, shear etc

Under an affine transformation:

Example

How does F(u,v) transform if f(x,y) is rotated by 45 degrees?

f(x,y)

|F(u,v)|

Publicité

The convolution theorem

Filtering vs convolution in 1D

filtering f(x) with h(x)

f(x)

h(x)

g(x)

100 | 200 | 100 | 200 | 90 | 80 | 80 | 100 | 100

1/4 | 1/2 | 1/4

molecule/template/kernel

| 150 | | | | | | |

g(x) =

f (u)h(x

u) du

convolution of f(x) and h(x)

Z

Z

=

=

Xi

f (x + u0)h(

u0) du0

after change of

variable

f (x + i)h(

i)

" note negative sign (which is a reflection in x) in convolution

" h(x) is often symmetric (even/odd), and then (e.g. for even)

Filtering vs convolution in 2D

convolution

filtering

image f(x,y)

filter / kernel h(x,y)

g(x,y) =

for convolution, reflect filter in x and y axes

Convolution

" Convolution:

Flip the filter in both dimensions (bottom to top, right to left)

convolution with h

filtering with h

h

h

f

slide: K. Grauman

Filtering vs convolution in 2D in Matlab

2D filtering

" g=filter2(h,f);

f=image

h=filter

nmg

],

[

lkh

],[

=

lk

,

2D convolution

(cid:129) g=conv2(h,f);

lnkmf

[

+

+

,

]

nmg

],

[

=

lk

,

lkh

],[

lnkmf

[

-

-

Publicité

,

]

Convolution theorem

Space convolution = frequency multiplication

In words: the Fourier transform of the convolution of two

functions is the product of their individual Fourier transforms

Proof: exercise

Why is this so important?

Because linear filtering operations can be carried out by simple

multiplications in the Fourier domain

The importance of the convolution theorem

It establishes the link between operations in the frequency

domain and the action of linear spatial filters

Example smooth an image with a Gaussian spatial filter

Gaussian

scale=20 pixels

*

1. Compute FT of image and FT of Gaussian

2. Multiply FTs

3. Compute inverse FT of the result.

f(x,y)

Gaussian

scale=3 pixels

g(x,y)

Fourier transform

*

x

Inverse Fourier

transform

|F(u,v)|

|G(u,v)|

f(x,y)

Gaussian scale=3 pixels

g(x,y)

Fourier transform

*

x

Inverse Fourier

transform

|F(u,v)|

|G(u,v)|

There are two equivalent ways of carrying out linear spatial

filtering operations:

1. Spatial domain: convolution with a spatial operator

2. Frequency domain: multiply FT of signal and filter, and compute

inverse FT of product

Why choose one over the other ?

"

"

The filter may be simpler to specify or compute in one of the domains

Computational cost

Exercise

What is the FT of &

?

2 small disks

The sampling theorem

Discrete Images - Sampling

f(x)

x

x

x

X

Fourier transform pairs

Sampling Theorem in 1D

spatial domain

frequency domain

*

x

F(u)

u

replicated copies of F(u)

Apply a box filter

1/X

u

F(u)

f(x)

x

The original continuous function f(x) is completely recovered from the samples

provided the sampling frequency (1/X) exceeds twice the greatest frequency of the

Publicité

band-limited signal. (Nyquist sampling limit)

The Sampling Theorem and Aliasing

if sampling frequency is reduced &

spatial domain

frequency domain

x

u

Frequencies above the Nyquist limit are

folded back corrupting the signal in the

acceptable range.

The information in these frequencies is

not correctly reconstructed.

Sampling Theorem in 2D

frequency domain

*

F(u,v)

1/Y

1/X

*

=

=

The sampling theorem in 2D

If the Fourier transform of a function (x,y) is zero for all

frequencies beyond ub and vb,i.e. if the Fourier transform is

band-limited, then the continuous function (x,y) can be

completely reconstructed from its samples as long as the

sampling distances w and h along the x and y directions

are such that and

w

1

bu

2

h

1

bv

2

Aliasing

Aliasing : 1D example

If the signal has frequencies above the Nyquist limit &

Insufficient samples to distinguish the high and low frequency

aliasing: signals travelling in disguise as other frequencies

Aliasing in video

Slide by Steve Seitz

Aliasing in 2D under sampling example

original

reconstruction

signal has frequencies

above Nyquist limit

Aliasing in images

Whats happening?

Input signal:

Plot as image:

x = 0:.05:5; imagesc(sin((2.^x).*x))

Aliasing

Not enough samples

Anti-Aliasing

" Increase sampling frequency

" e.g. in graphics rendering cast 4 rays per pixel

" Reduce maximum frequency to below Nyquist limit

" e.g. low pass filter before sampling

Example

4 x zoom

down sample by

factor of 4

convolve with

Gaussian

*

down sample by

factor of 4

Hybrid Images

Frequency Domain and Perception

Campbell-Robson contrast sensitivity curve

slide: A. Efros

Aude Oliva & Antonio Torralba & Philippe G Schyns, SIGGRAPH 2006