Digital Image Processing

Download Report

Transcript Digital Image Processing

ENG4BF3
Medical Image Processing
Wavelet and Multiresolution
Processing
Introduction
• Unlike Fourier transform, whose basis functions are
sinusoids, wavelet transforms are based on small waves,
called wavelets, of limited duration.
• Fourier transform provides only frequency information,
but wavelet transform provides time-frequency
information.
• Wavelets lead to a multiresolution analysis of signals.
• Multiresolution analysis: representation of a signal (e.g.,
an images) in more than one resolution/scale.
• Features that might go undetected at one resolution may
be easy to spot in another.
2
Multiresolution
3
Image Pyramids
4
Image pyramids
• At each level we have an approximation image and a
residual image.
• The original image (which is at the base of pyramid)
and its P approximation form the approximation
pyramid.
• The residual outputs form the residual pyramid.
• Approximation and residual pyramids are computed
in an iterative fashion.
• A P+1 level pyramid is build by executing the
operations in the block diagram P times.
5
Image pyramids
• During the first iteration, the original 2Jx2J image is
applied as the input image.
• This produces the level J-1 approximate and level J
prediction residual results
• For iterations j=J-1, J-2, …, J-p+1, the previous
iteration’s level j-1 approximation output is used as
the input.
6
Image pyramids
• Each iteration is composed of three sequential steps:
1. Compute a reduced resolution approximation of the
input image. This is done by filtering the input and
downsampling (subsampling) the filtered result by a
factor of 2.
– Filter: neighborhood averaging, Gaussian
filtering
– The quality of the generated approximation is a
function of the filter selected
7
Image pyramids
2. Upsample output of the previous step by a factor of
2 and filter the result. This creates a prediction
image with the same resolution as the input.
– By interpolating intensities between the pixels of
step 1, the interpolation filter determines how
accurately the prediction approximates the input
to step 1.
3. Compute the difference between the prediction of
step 2 and the input to step 1. This difference can be
later used to reconstruct progressively the original
image
8
9
Subband coding
• In subband coding, an image is decomposed into a set of
bandlimited components, called subbands.
• Since the bandwidth of the resulting subbands is smaller than
that of the original image, the subbands can be downsampled
without loss of information.
10
Perfect Reconstruction Filter
Z transform: Xˆ ( z )  1  H 0 ( z )G0 ( z )  H1 ( z )G1 ( z )  X ( z )
2
1
  H 0 ( z )G0 ( z )  H1 ( z )G1 ( z )  X ( z )
2
Goal: find H0, H1, G0 and G1 so that

x(n)  xˆ (n) i.e. X ( z )  Xˆ ( z )

11
Perfect Reconstruction Filter: Conditions
If
Then
 H 0 ( z )G0 ( z )  H1 ( z )G1 ( z )  0

 H 0 ( z )G0 ( z )  H1 ( z )G1 ( z )  2
X ( z)  Xˆ ( z)
12
Perfect Reconstruction Filter Families
QMF: quadrature mirror filters
CQF: conjugate mirror filters
13
2-D
14
Example of Filters
15
16
The Haar Transform
• Haar proposed the Haar Transform in 1910, more
than 70 years before the wavelet theory was born.
• Actually, Haar Transform employs the Haar wavelet
filters but is expressed in a matrix form.
• Haar wavelet is the oldest and simplest wavelet basis.
• Haar wavelet is the only one wavelet basis, which
holds the properties of orthogonal, (anti-)symmetric
and compactly supported.
17
The Haar Wavelet Filters



2 2



2 2
h0 
2 2, 2 2
h1   2 2, 2 2
g0
2 2,
g0
2 2, 
18
19
Multiresolution Expansions
• Series Expansions
A function can be expressed as
f ( x)   kk ( x)
k
where
 k  k ( x), f ( x)    ( x) f ( x)dx
*
k
k ( x)
*
Dual function of
k ( x)
Complex conjugate operation
20
Multiresolution Expansions
• Series Expansions
Orthonormal basis
k ( x)  k ( x)
0
 j ( x), k ( x)  
1
jk
jk
 j ( x),  k ( x)  0
0
 j ( x), k ( x)  
1
jk
jk
biorthogonal
jk
21
Multiresolution Expansions
• Scaling functions
Integer translations and dyadic scalings of a
scaling function  ( x)
 j ,k ( x)  2 (2 x  k )
j/2
j
Express f ( x ) as the combination of
 j ,k ( x)
0
f ( x)   k j0 ,k ( x)
k
22
0 0  x  1
 ( x)  
1 otherwise
1
0,k ( x) 
1,2 k ( x)
2
1

1,2 k 1 ( x)
2
f ( x)  0.51,0 ( x)
1,1 ( x)  0.251,4 ( x)
23
Multiresolution Expansions
• Scaling functions
Dilation equation for scaling function  ( x)
 ( x)   h (n) 2 (2 x  n)
n
h (n) are called scaling function coefficients
Example: Haar wavelet, h (0)  h (1)  1 2
1 
1

 2 (2 x  1) 
 ( x) 
2

(2
x
)


2
2
24
Multiresolution Expansions
• Wavelet functions
 ( x)   h (n) 2 (2 x  n)
n
h (n) are called wavelet function coefficients
Translation and scaling of  ( x)
 j ,k ( x)  2 j / 2 (2 j x  k )
 condition for orthogonal wavelets
h (n)  (1)n h (1 n)
25
26
Haar Wavelet
 1 0  x  0.5

 ( x)  1 0.5  x  1
 0 elsewhere

27
Wavelet Transform: 1-D
• Wavelet series expansion

f ( x)   c j0  j0 ,k ( x)    d j (k ) j ,k ( x)
k
j  j0 k
 where
c j0 (k )  f ( x),  j0 ,k ( x)   f ( x) j0 ,k ( x)dx
d j (k )  f ( x), j ,k ( x)   f ( x) j ,k ( x)dx
28
1
y ( x)  0,0 ( x)
3
1
  0,0 ( x)
4
2

 1,0 ( x)
32
3 2

 1,1 ( x)
32
......
29
Wavelet Transform: 1-D
• Discrete Wavelet Transform
1
f ( x) 
W ( j0 , k ) j0 ,k ( x)

M k
1 

W ( j , k ) j ,k ( x)


M j  j0 k
 where
Approximation
coefficients
Detail
coefficients
1
W ( j0 , k ) 
M
1
W ( j, k ) 
M
 f ( x)
j0 , k
( x)
x
 f ( x)
j ,k
( x)
x
30
Fast Wavelet Transform: Decomposition
W ( j , k )  h (n) W ( j  1, n)
n  2 k ,k 0
W ( j , k )  h ( n) W ( j  1, n)
n  2 k ,k 0
31
Fast Wavelet Transform: Decomposition
32
Example: Haar Wavelet
1/ 2
h (n)  
 0
n  0,1
otherwise
1 2

h (n)  1 2
 0

n0
n 1
otherwise
33
Fast Wavelet Transform: Reconstruction
W ( j 1, k )  h (k ) W ( j, k )  h (k ) W ( j, k )
up
up
k 0
34
Fast Wavelet Transform: Reconstruction
35
Fast Wavelet Transform: Reconstruction
36
Wavelet Transform vs. Fourier Transform
37
Wavelet Transform: 2-D
Scaling function:
 ( x, y)   ( x) ( y)
Wavelet functions:
 H ( x, y)   ( x) ( y)
Horizontal direction
 V ( x, y)   ( x) ( y)
Vertical direction
 D ( x, y)   ( x) ( y)
Diagonal direction
38
2-D Wavelet Transform: Decomposition
39
2-D Wavelet Transform: Reconstruction
40
41
42
Fig. 7.24 (g)
43
Image Processing by Wavelet Transform
• Three Steps:
Decompose the image into wavelet domain
Alter the wavelet coefficients, according to
your applications such as denoising,
compression, edge enhancement, etc.
Reconstruct the image with the altered
wavelet coefficients.
44
45
Wavelet Transform based Denoising
• Three Steps:
Decompose the image into several scales.
For each wavelet coefficient y:
 y y  t
Hard thresholding: y  
 0 y  t

 sign( y ) ( y  t )
Soft thresholding: y  
0


y t
y t
Reconstruct the image with the altered
wavelet coefficients.
46
47
Assignment
• Get familiar with the Matlab Wavelet Toolbox.
• By using the Wavelet Toolbox functions, write
a program to realize the soft- thresholding
denoising on a noisy MRI image.
48
End of the lecture
49