Transcript Document

Wavelets: theory and applications

An introduction

GTDIR

Grupo de Investigación: Tratamiento Digital de Imágenes Radiológicas Enrique Nava, University of Málaga (Spain) Brasov, July 2006

What are wavelets?

 Wavelet theory is very recent (1980’s)  There is a lot of books about wavelets  Most of books and tutorials use strong mathematical background  I will try to present an ‘engineering’ version

Overview  Spectral analysis  Continuous Wavelet Transform  Discrete Wavelet Transform  Applications A wavelet tour of signal processing,

S. Mallat

, Academic Press 1998

Spectral analysis: frequency  Frequency (f) is the inverse of a period (T).

 A signal is periodic if T>0 and  

nT

)  We need to know only information for 1 period  Any signal (finite length) can be periodized.

 A signal is regular if the signal values and derivatives are equal at the left and right side of the interval (period)

Signals: examples x(t)=cos(2  0.05 t) 1 0.5

0 -0.5

-1 0 10 10 20 30 40 50 60 70 80 90 100 5 0 -5 -10 0 200 400 600 800 1000 1200

Signals: examples Koch fractal curve 0.2

0.15

0.1

0.05

-1 -2 -3 0 1 0 0 0 4 3 2 1000 2000 3000 x(t)=cos(2 4000 5000 6000  10t)+cos(2  25t)+cos(2  50t)+cos(2  100t) 7000 8000 9000 0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

Why frequency is needed?

 To be able to understand signals and extract information from real world  Electrical or telecommunication engineers tends ‘to think in the frequency domain’

Fourier series

f

For any 2  

a

0  periodical 

k

  1 

a k

cos function

kx

b k

sin

f kx

   :

a

0

a k b k

 1 2   1  0  2  0  2 

f

 

dx f

   

dx

 1  0  2 

f

   

dx

1822

Fourier series difficulties  Any periodic signal can be view as a sum of harmonically-related sinusoids  Representation of signals with different periods is not efficient (speech, images)

Fourier series drawbacks   There are points where Fourier series does not converge Signals with different or not synchronized periods are not efficiently represented

Fourier Transform  The signal has a frequency point of view (spectrum)  Global representation  Lots of math properties  Linear operators         

j

2 

f t dt j

2 

f t df

Discrete Fourier Transform      Practical implementation Global representation Lots of math properties Linear operators Easy discrete implementation (1965)

X x

n w N

k

  1  1   

e

  1

N j N

  1

n N

 0  1 

k

  0 2 

N x X

n

k

 1  

W N kn

 1  

W N

kn

(FFT)

Fourier transform Periodic Signal with Zero-Mean Random Noise 10 x(t)=sin(2  50t)+sin(2  120t)+n(t) 5 0 -5 -10 0 70 60 50 40 30 20 10 0 0 0.005

0.01

0.015

0.02

0.025

t Spectrum 0.03

0.035

0.04

0.045

0.05

50 100 150 200 250 frequency (Hz) 300 350 400 450 500

Random signals  Stationary signals:  Statistics don’t change with time  Frequency contents don’t change with time  Information doesn’t change with time  Non-stationary signals:  Statistics change with time  Frequencies change with time  Information quantity increases

Non-stationary signals 3 600

2 Hz + 10 Hz + 20Hz

2 500 1 400

Stationary

0 300

0.0-0.4: 2 Hz + 0.4-0.7: 10 Hz + 0.7-1.0: 20Hz Non Stationary

-1 -2 -3 0 1 0.8

0.6

0.4

0.2

0 -0.2

-0.4

-0.6

-0.8

-1 0 0.2

0.4

Time

0.6

0.8

0.5

Time

1 1 200 100 0 0 250 200 150 100 50 0 0 5 10 15

Frequency (Hz)

20 25 5 10 15

Frequency (Hz)

20 25

Chirp signal  Frequency: 2 Hz to 20 Hz 

Different in Time Domain

Frequency: 20 Hz to 2 Hz 1 0.8

0.6

0.4

0.2

0 -0.2

-0.4

-0.6

-0.8

-1 0 0.5

Time

1 150 100 50 0 0 1 0.8

0.6

0.4

0.2

0 -0.2

-0.4

-0.6

-0.8

-1 0 5 10 15 20

Frequency (Hz)

25 0.5

Time Same in Frequency Domain

150 100 50 1 0 0 5 10 15 20

Frequency (Hz)

25

Fourier transform drawbacks  Global behaviour: we don’t know what frequencies happens at a particular time  Time and frequency are not seen together  We need time and frequency at the same time: time-frequency representation  Biological or medical signals (ECG, EEG, EMG) are always non-stationary

Short-time Fourier Transform (STFT)  Dennis Gabor (1946): “windowing the signal”  Signals are assumed to be stationally local  A 2D transform

Short-time Fourier Transform (STFT) STFT X 

t

 ,

f

    

t

 

x

    * 

t

t

: the window    

e

j

2 

ft dt

function

A function of time and frequency

Short-time Fourier Transform (STFT)

Short-time Fourier Transform (STFT)

Short-time Fourier Transform (STFT)

Narrow Window Wide Window

STFT drawbacks  Fixed window with time/frequency  Resolution:  Narrow window gives good time resolution but poor frequency resolution  Wide windows gives good frequency resolution but poor time resolution

Heisenberg Uncertainty Principle  In signal processing:  You cannot know

at the same time

the time and frequency of a signal  Signal processing approach is to search for what spectral components exist at a given time interval

Heisenberg Uncertainty Principle  Heisenberg Box

Wavelet transform  An improved version of the STFT, but similar  Decompose a signal in a set of signals  Capable of multiresolution analysis:  Different resolution at different frequencies

Continuous Wavelet Transform  Definition: CWT

x

  

x

Translation (The location of the window) Scale

 1

s

x

  *

t

 

s dt

Mother Wavelet

Continuous Wavelet Transform  Wavelet = small wave (“ondelette”)  Windowed (finite length) signal  Mother wavelet  Prototype to build other wavelets with dilatation/compression and shifting operators  Scale  S>1: dilated signal  S<1: compressed signal  Translation  Shifting of the signal

CWT practical computation CWT

x

  

x

  1

s

x

  *

t

s

  

dt

Energy normalization 1.

2.

3.

4.

Select s=1 and  =0. Compute the integral and normalize by 1/ Shift the wavelet by  = D t and repeat until wavelet reaches the end of signal Increase s and repeat steps 1 to 3

s

Time-frequency resolution

Better time resolution; Poor frequency resolution Frequency Better frequency resolution; Poor time resolution Time

• Each box represents a equal portion • Resolution in STFT is selected once for entire analysis

Comparison of transformations From http://www.cerm.unifi.it/EUcourse2001/Gunther_lecturenotes.pdf

, p.10

Mathematical view CWT

x

  

x

    1

s

x X

  *   

t

s

   

dt

    ,

s

 

dt

   ,

s

 1

s

   

t

s

     CWT is the inner product of the signal and the basis function    ,

s

 

Wavelet basis functions Morlet (  0  frequency ) :  1 4

e j

 0 

e

  2 2 Paul DOG 

m

m

  order  : DOG devivative  : 2

m

i m m

!

  !

 1 

i

   

m

 1    

m m

 1 1 2   

d m d

m

 2 2 nd derivative of a Gaussian is the

Marr

or

Mexican hat

wavelet

Wavelet basis functions Time domain Frequency domain

Wavelet basis properties

Property Crude Infinitely regular Arbitrary regularity Compactly supported orthogonal Compactly supported biothogonal Symmetry Asymmetry Near symmetry Arbitrary number of vanishing moments Vanishing moments for Existence of Orthogonal analysis Biorthogonal analysis Exact reconstruction FIR filters Continuous transform Discrete transform Fast algorithm Explicit expression Complex valued Complex continuous transform FIR-based approximation

morl mexh meyr haar

db

N symN coifN biorNr.Nd rbioNr.Nd gaus dmey cgau cmor fbsp shan For splines For splines

Discrete Wavelet Transform  Continuous Wavelet Transform  

x

(  ,

s

)  

x

(

t

)     ,

s

(

t

)

dt

  ,

s

(

t

)  1

s

  

t s

     Discrete Wavelet Transform 

x

 [

n

,

a j

] 

N m

   1 0

x

[

m

]  

j

 [

m

n

] 

j

[

n

]  1

a j

n a j

Discrete CWT  Sampling of time-scale (frequency) 2D space  Scale s is discretized in a logarithmic way  Scheme most used is dyadic: s=1,2,4,8,16,32  Time is also discretized in a logarithmic way  Sampling rate N is decreased so s  N=k  Implemented like a filter bank

Discrete Wavelet Transform Approximation Details

Discrete Wavelet Transform

Discrete Wavelet Transform Multi-level wavelet decomposition tree Reassembling original signal

Discrete Wavelet Transform  Easy and fast to implement  Gives enough information for analysis and synthesis   Decompose the signal into coarse approximation and details It’s not a true discrete transform

A 1 A 2 D 2 A 3 D 3 D 1

Examples

f L f H Signal: 0.0-0.4: 20 Hz 0.4-0.7: 10 Hz 0.7-1.0: 2 Hz Wavelet: db4 Level: 6

Examples

f L f H Signal: 0.0-0.4: 2 Hz 0.4-0.7: 10 Hz 0.7-1.0: 20Hz Wavelet: db4 Level: 6

Signal synthesis  A signal can be decomposed into different scale components (analysis)  The components (wavelet coefficients) can be combined to obtain the original signal (synthesis)  If wavelet analysis is performed with filtering and downsampling, synthesis consists of filtering and upsampling

Synthesis technique  Upsampling (insert zeros between samples)

Sub-band algorithm  Each step divides by 2 time resolution and doubles frequency resolution (by filtering)

Wavelet packets  Generalization of wavelet decomposition  Very useful for signal analysis Wavelet analysis: n+1 (at level n) different ways to reconstuct S

Wavelet packets  We have a complete tree Wavelet packets: a lot of new possibilities to reconstruct S: i.e. S=A 1 +AD 2 +ADD 3 +DDD 3

Wavelet packets  A new problem arise: how to select the best decomposition of a signal x(t)?

 Posible solution:  Compute information at each node of the tree (entropy-based criterium)

Wavelet family types  Five diferent types:  Orthogonal wavelets with FIR filters  Haar, Daubechies, Symlets, Coiflets  Biorthogonal wavelets with FIR filters  Biorsplines  Orthogonal wavelets without FIR filters and with scaling function  Meyer  Wavelets without FIR filters and scaling function  Morlet, Mexican Hat  Complex wavelets without FIR filters and scaling function  Shannon

Wavelet families: Daubechies  Compact support, orthonormal (DWT)

Other families

Matlab wavemenu command

Wavelet application  Physics (acoustics, astronomy, geophysics)  Telecommunication Engineering (signal processing, subband coding, speech recognition, image processing, image analysis)  Mecanical engineering (turbulence)  Medical (digital radiology, computer aided diagnosis, human vision perception)  Applied and Pure Mathematics (fractals)

De-noising signals Frequency is higher at the beginning Details reduce with scale

De-noising images

Detecting discontinuities

Detecting discontinuities

Detecting self-similarity

Compressing images

2-D Wavelet Transform

Wavelet Packets

2-D Wavelets

Applications of wavelets  Pattern recognition  Biotech: to distinguish the normal from the pathological membranes  Biometrics: facial/corneal/fingerprint recognition  Feature extraction  Metallurgy: characterization of rough surfaces  Trend detection:  Finance: exploring variation of stock prices   Perfect reconstruction  Communications: wireless channel signals Video compression – JPEG 2000

Practical use of wavelet  Wavelet software  Matlab Wavelet Toolbox  Free software  UviWave http://www.tsc.uvigo.es/~wavelets/uvi_wave.html

 Wavelab http://playfair.stanford.edu/~wavelab/  Rice Tools http://jazz.rice.edu/RWT/

Useful Links to continue  Matlab wavelet tool using guide  http://www.wavelet.org

 http://www.multires.caltech.edu/teaching/  http://www-dsp.rice.edu/software/RWT/  www.multires.caltech.edu/teaching/course s/ waveletcourse/sig95.course.pdf

 http://www.amara.com/current/wavelet.htm

l