83
Basics about Wavelets Jérôme Gilles UCLA JGS Basics about Wavelets

Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Basics about Wavelets

Jérôme Gilles

UCLA

JGS Basics about Wavelets

Page 2: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

JGS Basics about Wavelets

PART THREE

Wavelets

Page 3: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

On the menu ...

Reminder about STFT limitationsFamilies of wavelets and adaptive time-frequency planeWavelet transform : definition and propertiesMulti-Resolution Analysis (MRA)2D extensionsApplications (approximation, denoising, compression)

JGS Basics about Wavelets

Page 4: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Previously ...

JGS Basics about Wavelets

STFT

Sf (ν, τ) =

∫ +∞

−∞w(t − τ)f (t)e−2πνtdt

Prescribed time-frequency plane tiling

ν

τ

∆t

∆ν

Page 5: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

STFT limitations

JGS Basics about Wavelets

Page 6: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Adaptative time-frequency plane

JGS Basics about Wavelets

ν

τ

∆t

∆ν

∆t

∆ν

∆ν

∆t

Page 7: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Adaptative time-frequency plane

JGS Basics about Wavelets

ν

τ

∆t

∆ν

∆t

∆ν

∆ν

∆t

⇒Wavelets

Page 8: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

A few history ...

1946, Denis Gabor : STFT with gaussian windows.

1982, Jean Morlet : geophysics application, propose toreplace the modulation by the dilation of a fixed function.1984, Alex Grossmann and his team at Marseille (France) :link between Morlet’s wavelet and coherent states inquantum physics + link with frame theory.1985, Yves Meyer (Gauss Prize 2010) : link with harmonicanalysis and establishment of mathematical foundationsfor a wavelet theory + discovery of the first orthonormalwavelet basis (1986).followers . . . : S.Mallat, I.Daubechies, R.Coiffman,A.Cohen, . . .

JGS Basics about Wavelets

Page 9: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

A few history ...

1946, Denis Gabor : STFT with gaussian windows.1982, Jean Morlet : geophysics application, propose toreplace the modulation by the dilation of a fixed function.

1984, Alex Grossmann and his team at Marseille (France) :link between Morlet’s wavelet and coherent states inquantum physics + link with frame theory.1985, Yves Meyer (Gauss Prize 2010) : link with harmonicanalysis and establishment of mathematical foundationsfor a wavelet theory + discovery of the first orthonormalwavelet basis (1986).followers . . . : S.Mallat, I.Daubechies, R.Coiffman,A.Cohen, . . .

JGS Basics about Wavelets

Page 10: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

A few history ...

1946, Denis Gabor : STFT with gaussian windows.1982, Jean Morlet : geophysics application, propose toreplace the modulation by the dilation of a fixed function.1984, Alex Grossmann and his team at Marseille (France) :link between Morlet’s wavelet and coherent states inquantum physics + link with frame theory.

1985, Yves Meyer (Gauss Prize 2010) : link with harmonicanalysis and establishment of mathematical foundationsfor a wavelet theory + discovery of the first orthonormalwavelet basis (1986).followers . . . : S.Mallat, I.Daubechies, R.Coiffman,A.Cohen, . . .

JGS Basics about Wavelets

Page 11: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

A few history ...

1946, Denis Gabor : STFT with gaussian windows.1982, Jean Morlet : geophysics application, propose toreplace the modulation by the dilation of a fixed function.1984, Alex Grossmann and his team at Marseille (France) :link between Morlet’s wavelet and coherent states inquantum physics + link with frame theory.1985, Yves Meyer (Gauss Prize 2010) : link with harmonicanalysis and establishment of mathematical foundationsfor a wavelet theory + discovery of the first orthonormalwavelet basis (1986).

followers . . . : S.Mallat, I.Daubechies, R.Coiffman,A.Cohen, . . .

JGS Basics about Wavelets

Page 12: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

A few history ...

1946, Denis Gabor : STFT with gaussian windows.1982, Jean Morlet : geophysics application, propose toreplace the modulation by the dilation of a fixed function.1984, Alex Grossmann and his team at Marseille (France) :link between Morlet’s wavelet and coherent states inquantum physics + link with frame theory.1985, Yves Meyer (Gauss Prize 2010) : link with harmonicanalysis and establishment of mathematical foundationsfor a wavelet theory + discovery of the first orthonormalwavelet basis (1986).followers . . . : S.Mallat, I.Daubechies, R.Coiffman,A.Cohen, . . .

JGS Basics about Wavelets

Page 13: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Before with Fourier

f (ν) =

∫ +∞

−∞f (t)e−2πνtdt = 〈f ,e2πνt〉

We project the signal f on the family of functions {e2πνt}.

It is this family which fixes the time-frequency plane tiling.

JGS Basics about Wavelets

Page 14: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Before with Fourier

f (ν) =

∫ +∞

−∞f (t)e−2πνtdt = 〈f ,e2πνt〉

We project the signal f on the family of functions {e2πνt}.

It is this family which fixes the time-frequency plane tiling.

Question : Is it possible to find a family of function in orderto get the desired tiling ?

JGS Basics about Wavelets

Page 15: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Wavelet family

JGS Basics about Wavelets

We choose a “mother” wavelet ψ(t) such that∫∞−∞ ψ(t)dt = 0

(zero mean) and ‖ψ‖L2 = 1

We built a wavelet family bydilation/contraction (parametera ∈ R+) and translation(parameter b ∈ R) of themother wavelet :

ψa,b(t) =1√aψ

(t − b

a

)Note : ‖ψa,b‖L2 = 1

Page 16: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Continuous Wavelet Transform

JGS Basics about Wavelets

CWT

Wf (a,b) = 〈f , ψa,b〉 =

∫ +∞

−∞f (t)

1√aψ∗(

t − ba

)dt

Admissibility condition : if Cψ =∫ +∞

0|ψ(ν)|2ν dν < +∞ then

Inverse transform

f (t) =1

∫ +∞

0

∫ +∞

−∞Wf (a,b)

1√aψ

(t − b

a

)db

daa2

Page 17: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

First properties

JGS Basics about Wavelets

Energy conservation∫ +∞

−∞|f (t)|2dt =

1Cψ

∫ +∞

0

∫ +∞

−∞|Wf (a,b)|2db

daa2

CWT is a filtering process !

If we write

ψa(t) =1√aψ∗(−t

a

)then

Wf (a,b) = f ? ψa(b)

Note : ψa(ν) =√

aψ∗(aν).

Page 18: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Interpretation

JGS Basics about Wavelets

The wavelet transform is a passband filtering !

ν

ψa0 ψa1 ψa2

Consequence : we cannot get the zero frequency −→ themissing part is obtained with the scaling function.

Page 19: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Scaling function 1/2

We know Wf (a,b) for a < a0 −→ and we need to know theinformation corresponding to a > a0 in order to perfectly rebuildf . To do this we use the scaling function which is defined fromits Fourier transform and the FT of the wavelet :

|φ(ν)|2 =

∫ +∞

ν|ψ(ξ)|2 dξ

ξ

We can also write φa(t) = 1√aφ∗ (−t

a

)thus the missing

information is captured by a lowpass filtering :

Lf (a,b) =

⟨f (t),

1√aφ

(t − u

a

)⟩= f ? φa(u)

JGS Basics about Wavelets

Page 20: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Scaling function 2/2

JGS Basics about Wavelets

ν

ψa0 ψa1 ψa2φa0

The reconstruction is obtained by :

f (t) =1

∫ a0

0Wf (a, .) ? ψa(t)

daa2

+1

Cψa0Lf (a, .) ? φa0(t)

Page 21: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Time-frequency plane tiling

∆ν/a1

a1∆t

∆ν/a0

a0∆t

ν

τ

JGS Basics about Wavelets

Page 22: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Discretization

Sampled signals (timestep = N−1).

Discrete scales : a = (21/µ)j (µ scales per octave [2j ,2j+1[).

Dilated wavelet defined by (d = 21/µ) ψj [n] = 1√d j ψ

(nd j

).

Discrete transform :Wf [n,d j ] =

∑N−1m=0 f [m]ψ∗j [m − n] = f ?©ψj [n] (signal

periodization).

Scaling function : φJ [n] = 1√dJ φ

(n

dJ

)where a0 = dJ .

Low frequencies are obtained by :Lf [n,dJ ] =

∑N−1m=0 f [m]φ∗J [m − n] = f ?©φJ [n]

JGS Basics about Wavelets

Page 23: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Discretization

Sampled signals (timestep = N−1).Discrete scales : a = (21/µ)j (µ scales per octave [2j ,2j+1[).

Dilated wavelet defined by (d = 21/µ) ψj [n] = 1√d j ψ

(nd j

).

Discrete transform :Wf [n,d j ] =

∑N−1m=0 f [m]ψ∗j [m − n] = f ?©ψj [n] (signal

periodization).

Scaling function : φJ [n] = 1√dJ φ

(n

dJ

)where a0 = dJ .

Low frequencies are obtained by :Lf [n,dJ ] =

∑N−1m=0 f [m]φ∗J [m − n] = f ?©φJ [n]

JGS Basics about Wavelets

Page 24: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Discretization

Sampled signals (timestep = N−1).Discrete scales : a = (21/µ)j (µ scales per octave [2j ,2j+1[).

Dilated wavelet defined by (d = 21/µ) ψj [n] = 1√d j ψ

(nd j

).

Discrete transform :Wf [n,d j ] =

∑N−1m=0 f [m]ψ∗j [m − n] = f ?©ψj [n] (signal

periodization).

Scaling function : φJ [n] = 1√dJ φ

(n

dJ

)where a0 = dJ .

Low frequencies are obtained by :Lf [n,dJ ] =

∑N−1m=0 f [m]φ∗J [m − n] = f ?©φJ [n]

JGS Basics about Wavelets

Page 25: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Discretization

Sampled signals (timestep = N−1).Discrete scales : a = (21/µ)j (µ scales per octave [2j ,2j+1[).

Dilated wavelet defined by (d = 21/µ) ψj [n] = 1√d j ψ

(nd j

).

Discrete transform :Wf [n,d j ] =

∑N−1m=0 f [m]ψ∗j [m − n] = f ?©ψj [n] (signal

periodization).

Scaling function : φJ [n] = 1√dJ φ

(n

dJ

)where a0 = dJ .

Low frequencies are obtained by :Lf [n,dJ ] =

∑N−1m=0 f [m]φ∗J [m − n] = f ?©φJ [n]

JGS Basics about Wavelets

Page 26: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Discretization

Sampled signals (timestep = N−1).Discrete scales : a = (21/µ)j (µ scales per octave [2j ,2j+1[).

Dilated wavelet defined by (d = 21/µ) ψj [n] = 1√d j ψ

(nd j

).

Discrete transform :Wf [n,d j ] =

∑N−1m=0 f [m]ψ∗j [m − n] = f ?©ψj [n] (signal

periodization).

Scaling function : φJ [n] = 1√dJ φ

(n

dJ

)where a0 = dJ .

Low frequencies are obtained by :Lf [n,dJ ] =

∑N−1m=0 f [m]φ∗J [m − n] = f ?©φJ [n]

JGS Basics about Wavelets

Page 27: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Discretization

Sampled signals (timestep = N−1).Discrete scales : a = (21/µ)j (µ scales per octave [2j ,2j+1[).

Dilated wavelet defined by (d = 21/µ) ψj [n] = 1√d j ψ

(nd j

).

Discrete transform :Wf [n,d j ] =

∑N−1m=0 f [m]ψ∗j [m − n] = f ?©ψj [n] (signal

periodization).

Scaling function : φJ [n] = 1√dJ φ

(n

dJ

)where a0 = dJ .

Low frequencies are obtained by :Lf [n,dJ ] =

∑N−1m=0 f [m]φ∗J [m − n] = f ?©φJ [n]

JGS Basics about Wavelets

Page 28: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Some examples 1/4

JGS Basics about Wavelets

We use the same signals as in the Fourier slides :

0 10.40.39 0.78 0.8 t

150Hz

30Hz

400Hz

Page 29: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Some examples 2/4

JGS Basics about Wavelets

Page 30: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Some examples 3/4

JGS Basics about Wavelets

Page 31: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Some examples 4/4

JGS Basics about Wavelets

Page 32: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Notion of Bases et Frames

JGS Basics about Wavelets

In geometry Orthogonal Basis Frame Biorthogonal basis

Orthogonal bases

{en} is an orthogonal basis if 〈en,em〉 = 0 if m 6= n.

Page 33: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Notion of Bases et Frames

JGS Basics about Wavelets

In geometry Orthogonal Basis Frame Biorthogonal basis

Frames{en} is a frame if ∃A,B > 0 such thatA‖f‖2L2 6

∑n∈Γ |〈f ,en〉|2 6 B‖f‖2L2 .

The reconstruction is obtained by using the pseudo-inverseoperator using the dual frame {en}.If A = B then we have a tight frame

Page 34: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Notion of Bases et Frames

JGS Basics about Wavelets

In geometry Orthogonal Basis Frame Biorthogonal basis

Orthogonal basis ν

ψa0 ψa1 ψa2φa0

Frame ν

ψa0 ψa1 ψa2φa0

Page 35: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Notion of Bases et Frames

JGS Basics about Wavelets

In geometry Orthogonal Basis Frame Biorthogonal basis

Biorthogonal basis

Let two wavelet families {ψj,n} and {ψj,n}, they are saidbiorthogonal if

〈ψj,n, ψj ′,n′〉 = δ[n − n′]δ[j − j ′] ∀(j , j ′,n,n′) ∈ Z4

Page 36: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

A particular case : the dyadic case

The scales are discretized by a = 2j .{ψj,n(t) =

1√2jψ

(t − 2jn

2j

)}(j,n)∈Z2

Many advantages :It is “easy” to build orthogonal bases with specificproperties (regularity, support compactness, . . .).Direct link with the theory of conjugate mirror filters.Fast algorithms using filter banks and subsampling.Easy to construct a Multi-Resolution Analysis (MRA).

JGS Basics about Wavelets

Page 37: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Multi-Resolution Analysis (MRA)

JGS Basics about Wavelets

MRA

∀(j , k) ∈ Z2, f (t) ∈ Vj ⇔f (t − 2jk) ∈ Vj

∀j ∈ Z,Vj+1 ⊂ Vj

∀j ∈ Z, f (t) ∈ Vj ⇔ f( t

2

)∈ Vj+1

limj→+∞ Vj =⋂+∞

j=−∞ Vj = {0}limj→−∞ Vj =

⋃+∞j=−∞ Vj = L2(R)

∃{θ(t − n)}n∈Z, Riesz basis, ofV0.

Vj

Page 38: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Multi-Resolution Analysis (MRA)

JGS Basics about Wavelets

MRA

∀(j , k) ∈ Z2, f (t) ∈ Vj ⇔f (t − 2jk) ∈ Vj

∀j ∈ Z,Vj+1 ⊂ Vj

∀j ∈ Z, f (t) ∈ Vj ⇔ f( t

2

)∈ Vj+1

limj→+∞ Vj =⋂+∞

j=−∞ Vj = {0}limj→−∞ Vj =

⋃+∞j=−∞ Vj = L2(R)

∃{θ(t − n)}n∈Z, Riesz basis, ofV0. Vj+1

Wj+1

Page 39: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Multi-Resolution Analysis (MRA)

JGS Basics about Wavelets

MRA

∀(j , k) ∈ Z2, f (t) ∈ Vj ⇔f (t − 2jk) ∈ Vj

∀j ∈ Z,Vj+1 ⊂ Vj

∀j ∈ Z, f (t) ∈ Vj ⇔ f( t

2

)∈ Vj+1

limj→+∞ Vj =⋂+∞

j=−∞ Vj = {0}limj→−∞ Vj =

⋃+∞j=−∞ Vj = L2(R)

∃{θ(t − n)}n∈Z, Riesz basis, ofV0.

Page 40: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Multi-Resolution Analysis (MRA)

JGS Basics about Wavelets

MRA

∀(j , k) ∈ Z2, f (t) ∈ Vj ⇔f (t − 2jk) ∈ Vj

∀j ∈ Z,Vj+1 ⊂ Vj

∀j ∈ Z, f (t) ∈ Vj ⇔ f( t

2

)∈ Vj+1

limj→+∞ Vj =⋂+∞

j=−∞ Vj = {0}limj→−∞ Vj =

⋃+∞j=−∞ Vj = L2(R)

∃{θ(t − n)}n∈Z, Riesz basis, ofV0.

Page 41: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Multi-Resolution Analysis (MRA)

JGS Basics about Wavelets

MRA

∀(j , k) ∈ Z2, f (t) ∈ Vj ⇔f (t − 2jk) ∈ Vj

∀j ∈ Z,Vj+1 ⊂ Vj

∀j ∈ Z, f (t) ∈ Vj ⇔ f( t

2

)∈ Vj+1

limj→+∞ Vj =⋂+∞

j=−∞ Vj = {0}limj→−∞ Vj =

⋃+∞j=−∞ Vj = L2(R)

∃{θ(t − n)}n∈Z, Riesz basis, ofV0.

V0

Page 42: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

MRA and wavelets

JGS Basics about Wavelets

Vj ⇔ low resolutions⇔ aj [n] = 〈f , φj,n〉Wj ⇔ high resolutions (details)⇔ dj [n] = 〈f , ψj,n〉

Page 43: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

MRA and wavelets

JGS Basics about Wavelets

Vj ⇔ low resolutions⇔ aj [n] = 〈f , φj,n〉Wj ⇔ high resolutions (details)⇔ dj [n] = 〈f , ψj,n〉

Theorem of Mallat (recursive transform)We can build numerical filters h and g corresponding respectively toφ and ψ such that

aj+1[p] =+∞∑

n=−∞h[n − 2p]aj [n]

dj+1[p] =+∞∑

n=−∞g[n − 2p]aj [n]

Page 44: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Example

JGS Basics about Wavelets

Page 45: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Fast Wavelet Transform

JGS Basics about Wavelets

2

2

2

2

h

g

h

g

ajaj+1 aj+2

dj+2

dj+1Decomposition

+ +h

g

h

g

aj+2

dj+2

dj+1

2

2

2

2

ajaj+1

Reconstruction

h[n] = h[−n]g[n] = g[−n]

Page 46: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Examples (without subsampling)

JGS Basics about Wavelets

Page 47: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Examples (without subsampling)

JGS Basics about Wavelets

Page 48: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Examples (without subsampling)

JGS Basics about Wavelets

Page 49: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D extension

JGS Basics about Wavelets

⇒ 2 variables⇒ φ(x , y) and ψ(x , y).

Page 50: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D extension

JGS Basics about Wavelets

⇒ 2 variables⇒ φ(x , y) and ψ(x , y).

Two strategies

Building directly functions of two variables (ex : Gabor filters).Using separable filters hence using two 1D transforms withrespect to each variable.

Page 51: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D extension : direct construction

JGS Basics about Wavelets

Ex : Gabor wavelets, Morlet’s wavelet, Cauchy’s wavelets, . . .

Page 52: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D extension : separable transforms

JGS Basics about Wavelets

Idea : we filter (1D transforms) first in one direction then in the other.⇒ Direct extension of Mallat’s algorithm.

2

2

2

2

h

g

h

g

aj aj+1

d1j+1

d2j+12

2

h

g d3j+1

Filters applied inthe vertical direction

Filters applied inthe horizontal direction

Page 53: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D extension : inverse separable transform

JGS Basics about Wavelets

aj

Filters applied inthe vertical direction

Filters applied inthe horizontal direction

2

2

h

g

2

2

h

g

aj+1

d1j+1

d2j+1

d3j+1

+

+

2

2

h

g

+

Page 54: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D transform example

JGS Basics about Wavelets

Page 55: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D transform example

JGS Basics about Wavelets

Page 56: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D transform example

JGS Basics about Wavelets

Page 57: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D transform example

JGS Basics about Wavelets

Page 58: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Interpretation in the Fourier domain

JGS Basics about Wavelets

φjψ2j ψ2j

ψ1j

ψ1j

ψ1j−1

ψ1j−1

ψ2j−1ψ2j−1

ψ3j−1

ψ3j−1

ψ3j−1

ψ3j−1

ν1

ν2

Page 59: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

2D : a very particular world !

JGS Basics about Wavelets

Separable wavelets⇒ analysis with respect the horizontal andvertical directions.

But in an image the information can follow any direction.

Separable waveletapproximation

Desired approximation

Page 60: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Better families . . .

JGS Basics about Wavelets

It is possible to build frames adapted to the idea of direction,eventually to the geometry itself.

Page 61: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Better families . . .

JGS Basics about Wavelets

It is possible to build frames adapted to the idea of direction,eventually to the geometry itself.

⇒ ridgelets, curvelets, contourlets, edgelets, bandelets,. . .

Page 62: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Contourlets

JGS Basics about Wavelets

......

. . .

. . .

. . . . . . . . .

. . . . . . . . .

Directional Filter Bank 1

Directional FilterBank 2

Laplacian Pyramid

f

Laplacian Pyramid to get themulti-resolution propertyDirectional filters based onquinqux filters

Page 63: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Contourlets

JGS Basics about Wavelets

Page 64: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Applications

DenoisingDeconvolutionCompression. . .

JGS Basics about Wavelets

Page 65: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Premises : notion of approximation theory

JGS Basics about Wavelets

Each coefficient contains more or less important information

Original

Page 66: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Premises : notion of approximation theory

JGS Basics about Wavelets

Each coefficient contains more or less important information

Original Wavelet Coefficients (Daubechies)

Page 67: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Premises : notion of approximation theory

JGS Basics about Wavelets

Each coefficient contains more or less important information

Original Reconstruction without thehighest frequencies

Page 68: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Premises : notion of approximation theory

JGS Basics about Wavelets

Soft thresholdingLet a threshold T

HT (x ,T ) =

{0 if |x | 6 Tsign(x)(|x | − T ) if |x | > T

Hard thresholding)Let a threshold T

HT (x ,T ) =

{0 if |x | 6 Tx if |x | > T

Page 69: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Example of soft thresholding

JGS Basics about Wavelets

Original T = 50

T = 100 T = 1000

Page 70: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Example of hard thresholding

JGS Basics about Wavelets

Original T = 50

T = 100 T = 1000

Page 71: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Denoising

JGS Basics about Wavelets

Noise Wavelet coefficients of noise

The noise energy is distributed among all scales (low amplitudecoefficients).

Page 72: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Denoising

JGS Basics about Wavelets

⇒ we can use some thresholding to remove the noisecoefficients.

Image DWT Thresholding Inverse DWT Denoised image

Gaussian noise⇒ soft thresholding is optimal in theory but hardthresholding provides visually better results.

Page 73: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Denoising : example

JGS Basics about Wavelets

Original Noisy Version

Page 74: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Denoising : example

JGS Basics about Wavelets

Original Soft thresh. on wavelet coefs

Page 75: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Denoising : example

JGS Basics about Wavelets

Original Hard thresh. on wavelet coefs

Page 76: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Denoising : example

JGS Basics about Wavelets

Original Soft thresh. on contourlet coefs

Page 77: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Denoising : example

JGS Basics about Wavelets

Original Hard thresh. on contourlet coefs

Page 78: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Compression : general principle

JGS Basics about Wavelets

Changing into a newrepresentation space Quantification

Coding schemeCompressed image

Image

Page 79: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Compression : JPEG2000

JGS Basics about Wavelets

RVB to YUVconversion

Sub-sampling

Tilinggeneration

Wavelettransform

Quantification

Block division andBit planes processing

010111EncodingStorage

Page 80: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Compression : JPEG2000

JGS Basics about Wavelets

JPEG 1 :86 JPEG 1 :41

JPEG2000 1 :86 JPEG2000 1 :41

Page 81: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Wavelet Wonderland . . .

JGS Basics about Wavelets

From a theoretical point of view :

Other extensions : wavelet packets, rational wavelets, . . .

Useful tool in functional analysis (Besov spaces, Triebel-Lizorkinspaces), . . .

Direct link with the approximation theory, . . .

Useful tool to solve differential equations, . . .

Page 82: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Wavelet Wonderland . . .

JGS Basics about Wavelets

From a theoretical point of view :

Other extensions : wavelet packets, rational wavelets, . . .

Useful tool in functional analysis (Besov spaces, Triebel-Lizorkinspaces), . . .

Direct link with the approximation theory, . . .

Useful tool to solve differential equations, . . .

From the application point of view :

Video Compression (MPEG4, . . .)

Signal analysis : seismic, acoustic, . . .

Image processing : texture analysis, modeling, . . .

. . .

Page 83: Basics about WaveletsBefore with Fourier ^f( ) = Z +1 1 ... First properties JGS Basics about Wavelets Energy conservation Z +1 1 jf(t)j2dt = 1 C Z +1 0 Z +1 1 jW f(a;b)j2db da a2

Some references

S.Mallat, “A Wavelet Tour of Signal Processing, 3 Ed”M.Vetterli, “Wavelets and subband coding”(http://infoscience.epfl.ch/record/33934/files/VetterliKovacevic95_Manuscript.pdf?version=1)Y.Meyer, “Wavelets and operators” (3 volumes)Wavelet Digest : http://www.wavelet.org

JGS Basics about Wavelets