Fourier transform of imagesmstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/fft_ang.pdf · Fourier...

47
1 Fourier transform of images FFT © P. Strumillo, M. Strzelecki

Transcript of Fourier transform of imagesmstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/fft_ang.pdf · Fourier...

1

Fourier transform of images

FFT

© P. Strumiłło, M. Strzelecki

2

∫∞

∞−= dueuFxf uxj π2)()(

Fourier coefficients

Fourier transform

Joseph Fourier has put forward an idea of representing signals by a series of harmonic functions

Joseph Fourier(1768-1830)

∫∞

∞−

−= dxexfuF uxj π2)()(

inverse

forward

3

Fourier transform - example

time frequency

f=50 Hzf= -50 Hz

( ) ( ) ( ) ( )( )000 2

1cos ω+ωδ+ω−ωδ=ω=ω ∫

+∞

∞−

ω− dtetjX tj

1/2

4

Fourier transform - example

( )

><

=Tt,

Tt,tf

0

1

T

( ) 2

0 2

2 Tj

Ttj e

Tsin

AdteAF

ωω ω

ωω

−−

== ∫

- 2π/T 2π/T

FT

A

AT

t

|F(ω)|=?

ω

5

Fourier transform - example

( ) ( ) ( )∑∑+∞

∞−

+∞

∞−

−↔−= 0ωωδωδδ kkTtt sT

ωt

-2T 0 2TT-T

1

-4π/T 0 4π/T2π/ T-2π/ T

2π/T

x(t) x(ω)FT

Ts

πω 2=

A series of Dirac pulses

6

Why do we convert images (signals) to spectrum domain?

Monochrome image Fourier spectrum

Fourier transform of images

7

Why do we convert images to spectrum domain?

1. For exposing image features not visible in spatial domain, eg. periodic interferences

2. For achieving more compact image representation (coding), eg. JPEG, JPEG2000

3. For designing digital filters

4. For fast processing of images, eg. digital filtering of images in spectrum domain

Fourier transform of images

8

1. Detection of image features, eg. periodic interferences

Fourier transform of images

9

∫ ∫

∫ ∫∞

∞−

∞−

+

∞−

∞−

+−

=

=

dudve)v,u(F)y,x(f

dxdye)y,x(f)v,u(F

)vyux(j

)vyux(j

π

π

2

2

inverse

Euler equations?

Fourier transform of images

( )tjtj eet 00

21

cos 0ωωω −+= ( )tjtj ee

jt 00

21

sin 0ωωω −−=

forward

10

Amplitude and phase spectrumof the Fourier transform of images

)),(Re(

)),(Im(arctan)),(arg(

)),(Im()),(Re(|),(|

|),(|),(

22

)],(arg[

vuF

vuFvuF

vuFvuFvuF

evuFvuF vuFj

=

+=

= −

11

The Discrete FT of images

( ) ( )

( ) ( )

110

1

110

1

1

0

1

0

2

21

0

1

0

−=

=

−=

=

∑∑

∑∑

=

=

++

+−−

=

=

N,...,,y,xdla

ev,uFN

y,xf

N,...,,v,udla

ey,xfN

v,uF

N

u

N

v

N/)vyux(j

N/)vyux(jN

x

N

y

π

π

Number of computations

for 512x512 image?

12

1D computational example

( ) ]4431[=xf

∑=

=

π−=3

0

/2)(1

)(x

x

NuxjexfN

uF

θθθ sincos je j +=4=N

( ) ( ) ( ) ( ) ( ) ( )[ ]

[ ]

( ) ( )

( ) ( )

( ) ( )j............................................................................F

............................................................................F

j............................................................................F

ffffexfN

FN

x

N/xj

+−==

−==

+−==

=+++=

=+++== ∑=−

=

34

13

24

12

34

11

344314

1

32104

110

31

0

02π

1350 100 150 200 250

50

100

150

200

250

10

20

30

40

50

60

Fourier amplitude spectrum

MIT

14

Fourier amplitude spectrum

MIT

FFT FFT

15

Detection of periodic distortions

MIT

64 sinusoid periods64 sinusoid periods 256256

128128

6464

256 pixels256 pixels

6464

16

Fourier phase spectrum of an image

MIT

( )[ ]v,uFarg

( )v,uF ( ){ }v,uF1−ℑ

17

f(x,y)

(64x64)

|F(u,v)|

log(1+|F(u,v)|)

18

Properties of the two-dimensionalFourier transform

Separability:

f(x,y)

(0,0) (N-1)

(N-1)

F(x,v)

(0,0) (N-1)

(N-1)

F(u,v)

(0,0) (N-1)

(N-1)

tr. rows tr. columns

Computation of the 2-D Fourier transform as a series of 1-D transforms

19

Separability of the 2-D Fourier transform

( )

∑ ∑

=

−−

=

=

=

=

1

0

/2

/21

0

1

0

/2

,1

),(

),(1

),(

N

x

Nuxj

NvyjN

x

N

y

Nuxj

evxFN

vuF

eyxfeN

vuF

π

ππ

F(x,v)

NvyuxjN

x

N

yeyxf

NvuF /)(2

1

0

1

0),(

1),( +−−

=

=∑ ∑= π

20

FT

Images

Amplitude spectra

Example

21

FT

Images

( ) ( ) ( )

+−⇔−−N

vyuxjexpv,uFyy,xxf 00

00

Shift in the spatial domain

Amplitude spectra

22

Convolution:

FFFF {f(x,y) g(x,y)} = F(u,v) ∗ G(u,v)

FFFF {f(x,y) ∗ g(x,y)} = F(u,v) G(u,v)

This property is useful in designing digital image filters.

Properties of the two-dimensionalFourier transform

23

α2

1

f(α)

α1

1/2

g(α)

-1 α1/2

g(-α)

x3

1/2

f(x)*g(x)

0

1-D convolution

example

α2

1/2

f(α)g(x-α)

x

1

α2

1/2

f(α)g(x-α)

x

1

α1/2

g(x-α)

x-1

( ) ( ) ααα dxgfxgxf −=∗ ∫∞

∞−)()(

24

2-D convolution of discrete functions

f(i,j), g(i,j) – dicretete 2-D functions of period NxN

increase periods of f(i,j) and g(i,j) up toM=2N-1:

−≤≤−≤≤

=

−≤≤−≤≤

=1,0

1,0),(),(

1,0

1,0),(),(

MkiN

Nkikigkig

MkiN

Nkikifkif ee

∑ ∑−

=

=−−=∗

1

0

1

0),(),(),(),(

M

mee

M

nee nkmignmfkigkif

25

α1

1/2

g(α)

α

1/2

f(α)g(x+α)

|x|

x1.5

1/2

f(x)◦g(x)

-1.5

α1

1/2

g(x+α)

|x|

α2

1/2

f(α)g(x+α)

α2

1

f(α)

2

|x|

1-D correlation

- example

( ) ( ) ααα dxgfxgxf += ∫∞

∞−)()( o

26

Correlation of 2-D discrete functions

f(i,j), g(i,j) – dicretete 2-D functions of period NxN

Increase the periods as for convolution:

∑ ∑−

=

=++=

1

0

1

0),(),(),(),(

M

mee

M

nee nkmignmfkigkif o

27

Periodicity of the FT

F(u,v)=F(u+N,v)=F(u,v+N)=F(u+N,v+N)

If f(x,y) is a real valued function then:

F(u,v) = F *(-u,-v)

and:

| F(u,v)| = |F(-u,-v)|

28

f(x,y) f(x,y)

f(x,y)f(x,y)f(x,y)

f(x,y)

f(x,y) f(x,y) f(x,y)

It is assumed the

transformed image

is a periodic

function of period

(N, N)

Fourier transform of images

29

Translation in the spectral domain

( ) ( ) ( )0000 ,

2exp, vvuuF

N

yvxujyxf −−⇔

This Fourier property is known as the theorem of modulation.

30N/2

N/2 N0

0 N

Single spectrum period Matlab: fftshift

|F(u)|

fftshift(|F(u)|)

Translation in the spectral domain

31

( ) ( ) ( )

( ) ( )

( ) ( )[ ] ( )( ) yxyxfyxjyxf

N

yvxujyxf

Nv

NuF

Nvufor

vvuuFN

yvxujyxf

+−=+π=

=

−−⇔==

−−⇔

1,exp,

2exp,

2,

22

,2

exp,

00

00

0000

Translation in the spectral domain

32

Translation in spectral domain

|F(u,v)|

fftshift(|F(u,v)|)N

(0,0)

(N-1,0)

(0,0)

33

Rotation

θθθθ0 = 45°

θθθθ0 = 0°

f(r, θ + θ0) ⇔ F(ω, φ + θ0)

34

Linearity

ℑ{a f(x,y) + b g(x,y)} = a F(u,v) + b G(u,v)

f(x,y)

g(x,y)

FT

g(x,y) FT

f(x,y) FT

35

Scaling

ℑ{f(ax,by)} = |ab|-1 F(u/a, v/b) Rb,a ∈

36

Average value

( ) ( )

( ) ( )

( ) ( )001

100

1

1

0

1

0

1

0

1

02

,FN

y,xf

y,xfN

,F

y,xfN

y,xf

N

x

N

y

N

x

N

y

=

=

=

∑∑

∑∑−

=

=

=

=

F(0,0)F(0,0)

37

f=zeros(30,30);

f(5:24,13:17)=1;

imshow(f,'notruesize')

F=fft2(f); %compute 2-D Fourier transform

F1=log(abs(F)+1); %amplitude spectrum

imshow(F1,[0 5],'notruesize');

Fourier transform of an image - examples

f |F1|

38

Discrete Fourier Transform

1 30

1

15

Basis functions for 30-point Fourier transform (sine component)

39

%better resolution

f=zeros(30,30);

f(5:24,13:17)=1;

F=fft2(f,256,256);

F2=log(abs(F)+1);

imshow(fftshift(F2),[0 5],'notruesize');

f

|F2|

Fourier transform of an image - examples

40

The Fast Fourier Transform, FFT(succesive doubling method)

If N=2n , then N=2*M and one can show that:

MjM

uModdeven

uModdeven

M

x

uxModd

M

x

uxMeven

eW

MuWuFuFMuF

MuWuFuFuF

WxfM

uFWxfM

uF

/2

2

2

1

0

1

0

1,...,1,0],)()([2

1)(

1,...,1,0],)()([2

1)(

)12(1

)(,)2(1

)(

π−

=

=

=

−=−=+

−=+=

+== ∑∑

41

Comparison of TF and FFT

N N2 (FT) NlogN (FFT)

Advantage N/logN

16 256 64 4

256 65535 2048 32

512 262144 4608 64

2048 ~4e6 22528 186

42

2-D Fourier transform

Interactive noise reduction in Fourier spectrum

FFT

IFFT

43

-N-N N-1

N-1

image

Discrete Cosine Transform (DCT)

Fourier spectrum of a real

valued and symmetric

function has real valued

coeffcients, ie. only those

associated with the cosine

components of the Fourier

series

( ) ( ) ( ) ( )

+

+= ∑∑−

=

= N

yvcos

N

xucosy,xf

Nv,uF

N

i

N

k 2

12

2

122 1

0

1

0

ππ

121 −= N,,,v,u Kfor:

44

DCT basis functions

DCT basis functions for 8x8 image blocks

45

Discrete Cosine Transform (DCT)

‘autumn’ image image cosine transform

(0,0)

fast vanishing ofthe coefficients

The JPEG image compression standard is based on DCT

46

� the Karhunen-Loeve transform - equivalent to the PCA (Principal Component Analysis)

� the wavelet transform is used in JPEG-2000 image coding standard

Other image transforms

eigenfaces ©AT&T Labs

47

Other image transforms

JPEG 0.1 bppJPEG 0.1 bpp8 bpp8 bpp

Playboy Magazine

Wavelet 0.1 bppWavelet 0.1 bpp

JPEG-2000