Wavelet

advertisement
Wavelet Transform
A Presentation
By Subash Chandra Nayak
01EC3010
IIT Kharagpur INDIA
Introduction to the world of
transform
• What are transforms :•
•
A mathematical operation that takes a function or sequence and maps
into another one
General Form :-
f ( x)   F ( w) K ( w, x)dw
fj   KijFi
j
•
Examples :Laplace, Fourier, DTFT, DFT, FFT, z-transform
Fourier Transform
Mathematical Form :
X(f ) 
 2 jft
x
(
t
)
e
dt



x (t ) 

X ( f )e 2 jft df

Notes :Fourier transform identifies all spectral components
present in the signal, however it does not provide any
information regarding the temporal (time) localization of the
components
Fourier Transform :: Limitations
•
Signals are of two types
# Stationary
# Non – Stationary
•
Non stationary signals are those who have got time varying spectral
components ... FT gives only provides the existence of the spectral
components of the signal ... But does not provide any information on
the time occurrence of spectral components
•
Explanation
The basis function e-jwt stretches to infinity , Hence only analyzes
the signal globally
In order to obtain time-localization of spectral components , the
signal need to be analyzed locally
Time – Frequency Representation
• Instantaneous frequency :-
1 d
f x (t ) 
x(t )
2 df
• Group delay :-
1 d
tx ( f )  
X ( f )
2 df
• Disadvantages of above expressions
These equations though have a huge theoretical
significance but are not easy to implement easily
Short-time Fourier Transform
•
•
Also known as a STFT
given as
STFT ( , w)   [ x(t ) w(t   )]e
w
x
 jwt
dt
t
•
•
w(t) :- windowing function generally a Gaussian pulse is used, other
choices are rectangular , elliptic etc..
Maps 1D function to 2D time-frequency domain
• Advantages :# Gives us time-frequency description of the signal
# Overcomes the difficulties of Fourier transform by use of
windowing functions
STFT :: Disadvantages
• Heisenberg Principle :One can not get infinite time and
frequency resolution beyond
Heisenberg’s Limit
• Trade offs :•
•
Wider window
Good frequency resolution , Poor
time resolution
Narrower window
Good time resolution , Poor
frequency resolution
1
t.f 
4
Wavelet Transform
•
•
Overcomes the shortcoming of STFT by using variable length windows ::
i.e. Narrower window for high frequency thereby giving better time
resolution and Wider window at low frequency thereby giving better
frequency resolution
Heisenberg’s Principle still holds
•
Mathematical form:-
1
* t 
CWT ( , s)  ( , s) 
x(t ) (
)dt

s
|s| t

x
where
x(t) = given signal
tau = translation parameter
s = scaling parameter = 1/f
phi(t) = Mother wavelet , All kernels are obtained by scaling
and/or translating mother wavelet
Continuous Wavelet transform
•
The kernel functions used in
wavelet transform are all obtained
from one prototype function known
as mother wavelet , by scaling
and/or translating it
•
Here
a = scale parameter
b = translation parameter
1
t b
a ,b (t ) 
(
)
a
a
1, 0 (t )   (t )
• Continuous Wavelet
transform
1
W ( a, b) 
a

 x(t )
a ,b

(t ) dt
CWT (Contd..)
•
In order to become a wavelet a function must satisfy the above two
conditions

  (t )dt  0


2
|

(
t
)
|
dt  


Inverse wavelet transform
 
1
1
x(t )    2 W (a, b)a ,b (t )dadb
C  a
where

|  ( w) |
C 
dw
| w|

provided

  (t )dt  0

Examples of wavelets
Constant Q-filtering
• CWT can be rewritten as
W (a, b)  x(b) *  (b)
*
a,0
• A special property of the above filter defined by the mother
wavelet is that they are Constant-Q filters
• Q factor = Center frequency/Bandwidth
• Hence the filter defined by wavelet increases their Bandwidth
as scale increases ( i.e. center frequency increases )
• This boils down to filter bank implementation of discrete
wavelet transform
Filter Banks :: General Structure
• Condition for Perfect Reconstruction
F0 ( z ) H 0 ( z )  F1 ( z ) H1 ( z )  2 z l
F0 ( z ) H 0 ( z )  F1 ( z ) H1 ( z )  0
l  delay
Filter bank (Contd..)
• Product filter
Now let’s define product filter as :P0(z) = F0(z)H0(z)
And Normalized Product filter as
P(z) = zL P0(z)
where L = delay in total process
So the PR condition boils down to this realationship
P(z) – P(-z) = 2
Harr Filter Bank
Note that f0(n) and f1(n) are non-causal ... Hence here
Unit delay is required to implement it hence here
L=1
Product filter
P(w) is said to be halfband filter because of its symmetry
Also
P(w) + P(w + pi) = 2
Product filter II
• P(w) should be as flat as possible around 0 and pi . The more
is the flatness of P(w) around 0 and pi the better the Product
filter is . Hence P(w) is always tried to be designed as a
MAXFLAT Filter
• Order of filter :: p
p = (L+1)/2 ; L = number of delay elements
• Methods of determination of P(z)
# Duabechies method
# Meyer methods
• Both of the above methods give us P(z) for a given order “p” .
The higher is the order the better is the filter but at the same
time it will require more hardware complexity
Spectral factorization
•
•
•
The spectral factorization is the
problem of finding h0(z) once
P(z) is known
Linear Phase Factorization
H0(z) and F0(z) are of
different degree. Gives filter
with linear phase
Orthogonal Factorization
H0(z) and F0(z) are of same
degree. Gives filter with nonlinear phase. Daubechies
family of filters belongs to this
category. For orthogonal filter
h1 (n)  (1) h0 ( N  n)
n
f 0 (n)  h0 ( N  n)
f1 (n)  h1 ( N  n)
For
orthogonal
filter
Discrete wavelet Transform
•
•
•
•
Discrete domain counterpart of CWT
Implemented using Filter banks satisfying PR condition
Represents the given signal by discrete coefficients {dk,n}
DWT is given by
k 2
k
k ,n (t )  2 (2 t  n)
|| k ,n (t ) || 1
x(t )   d k ,n k ,n (t )
k
n
d k ,n  x, k ,n   x(t ) (t )dt
*
k ,n
Scaling Function
•
•
These are functions used to
approximate the signal up to a
particular level of detail
For Harr System
(t )  1
0  t 1
 k ,n (t )  2
Harr Scaling
Function
k 2
k
 ( 2 t  n)
Refinement equation and wavelet
Equation
• Refinement equation is an
equation relating to scaling
function and filter
coefficients
N
(t )  2 h0 [k ](2t  k )
k 0
Refinement Equation
• Wavelet equation is an
equation relating to wavelet
function and filter
coefficients
• By solving the above two we
can obtain the scaling and
wavelet function for a given
filter bank structure
N
 (t )  2 h0 [k ] (2t  k )
k 0
Wavelet Equation
DWT Implementation
a(k,n)
a(k,n)
d(k+1,n)
g`[n]
2
a(k+1,n)
h`[n]
2
g`[n]
d(k+2,n)
2
2
g[n]
+
2
g[n]
2
h[n]
a(k+1,n)
h`[n]
Decomposition
2
2
a(k+2,n)
h[n]
Reconstruction
We have only shown the above implementation for the Haar Wavelet, however,
as we will
see later, this implementation – subband coding – is applicable in general.
+
DWT Sub-band Decomposition
x[n]
g[n]
Length: 256
B: /2 ~  Hz
h[n]
2
w
|G(jw)|
g[n]
h[n]
2
d2: Level 2
DWT
Coeff.
Length: 64
B: /8 ~ /4 Hz
/2
-/2
Length: 256
B: 0 ~ /2 Hz
2
d1: Level 1
DWT
Coeff.
Length: 128
B: /4 ~ /2 Hz
|H(jw)|
Length: 512
B: 0 ~ 
2
g[n]
2
d3: Level 3
DWT
Coeff.
Length: 128
B: 0 ~  /4 Hz
-
h[n]
2
Length: 64
B: 0 ~ /8 Hz
…….
-/2
/2

w
Sub-band coding
Some Important properties of
wavelets
• Compact Support :• Finite duration wavelets are called compactly supported in time
domain but are not band-limited in frequency. Can be
implemented using FIR filters
• Examples
Harr, Daubechies, Symlets , Coiflets
• Narrow band wavelets are called compactly supported in
frequency domain. Can be implemented using IIR filters
• Examples
Meyer’s wavelet
Some Important properties of
wavelets
•
•
•
•
Symmetry
Symmetric / Antisymetric wavelets have got liner-phase
Orthogonal wavelets are asymmetric and have a non-linear phase
Biorthogonal wavelets are asymmetric but have got linear phase
can be implemented using FIR filters
•
•
Vanishing Moment
pth vanishing moment is defined as
M p   t  (t )dt
p
•
The more the number of moments of a wavelets are zero the more
is its compressive power
Some Important properties of
wavelets
• Smoothness
• is roughly the number of times a function can be differentiated
at any given point
• Closely related to vanishing Moments
• Smoothness provides better numerical stability
• It also provides better reconstruction propertiy
2D DWT
• Generalization of concept to 2D
• 2D functions  images f(x,y)  I[m,n] intensity function
• Why would we want to take 2D-DWT of an image anyway?
– Compression
– Denoising
– Feature extraction
• Mathematical form
f o ( x, y ) 


  ao (i, j )  s ( x  i, y  j )
i   j  
ao (i, j )  f ( x, y ), s ( x  i, y  j ) 
s ( x, y)   ( x)   ( y)
s ( x, y)   ( x)  ( y)
Implementation of 2D-DWT
COLUMNS
ROWS
ROWS
COLUMNS
~
H
~
H
1 2
LL Ak 1
~
G
1 2
( h)
D
LH k 1
~
H
1 2
HL D(v)
k 1
1 2
(d )
D
HH k 1
2 1
INPUT
IMAGE
COLUMNS
ROWS
~
G
2 1
COLUMNS
LL
LH
HL
HH
INPUT
IMAGE
~
G
LLL LLH
LHL LHH
HL
LH
HH
LLH
LHL LHH
LL
HL
LH
HH
Up and Down … Up and Down
2 1
Downsample columns along the rows: For each row, keep the
even indexed columns, discard the odd indexed columns
1 2
Downsample columns along the rows: For each column, keep the
even indexed rows, discard the odd indexed rows
2 1
Upsample columns along the rows: For each row, insert zeros at
between every other sample (column)
1 2
Upsample rows along the columns: For each column, insert zeros
at between every other sample (row)
Reconstruction
LL Ak 1
1 2
H
2 1
LH D(h)
k 1
1 2
G
HL D(v)
k 1
1 2
H
ORIGINAL
IMAGE
2 1
HH D(d )
k 1
1 2
H
G
G
DWT in Work
DWT at work
DWT at work
Applications of wavelets
•
There are a lots of uses of
wavelets .... The most
prominent application of
wavelets are
•
•
•
•
•
Computer and Human Vision
FBI Finger Print compression
Image compression
Denoising Noisy data
Detecting self-similar
behavior in noisy data
Musical Notes synthesis
Animations
•
•
Things that I didn’t Cover
• Different algorithms for getting Product filter, max-flat filter
realization, spectral factorization , solutions for refinement and
wavelet equations and many more
• Noble Identity, modulation matrix, Polyphase matrix forms
• MRA , Mallat’s pyramidal algorithm
• Lifting
• Basic Vector algebra needed for wavelet analysis ( It’s too
mathematical to present )
• Orthogonality, biorthogonality, frames
• Vector algebra approach for wavelets
• Wavelet for denoising and many more .................
Download