Wavelet-based CodingAnd its application in JPEG2000
Monia GhobadiCSC561 final [email protected]
Introduction
Signal decomposition Fourier Transform
Frequency domain Temporal domain Time information?
What is wavelet transform? Wavelet transform decomposes a signal
into a set of basis functions (wavelets) Wavelets are obtained from a single
prototype wavelet Ψ(t) called mother wavelet by dilations and shifting:
where a is the scaling parameter and b is the shifting parameter
)(1
)(, a
bt
atba
What are wavelets
Haar wavelet
Wavelets are functions defined over a finite interval and having an average value of zero.
Haar Wavelet Transform
Example: Haar Wavelet
1 0 0 1
Scaling Function Wavelet
]2
1,
2
1[)( nh ]
2
1,
2
1[)( ng
Haar Wavelet Transform1. Find the average of each pair of samples. 2. Find the difference between the average and the
samples. 3. Fill the first half of the array with averages. 4. Normalize5. Fill the second half of the array with differences. 6. Repeat the process on the first half of the array.
1357
1. Iteration
2. Iteration
1. 1+3 / 2 = 22. 1 - 2 = -13. Insert4. Normalize5. Insert6. Repeat
Signal
-1
-1-1
-1
6
-2
2
4
Haar Wavelet Transform
Signal 1
3
5
7
4
-2
-1
-1
2. Iteration
Signal
[ 1 3 5 7 ]
Signal recreated from 2 coefficients
[ 2 2 6 6 ]
Haar Basis
Lenna Haar Basis
2D Mexican Hat wavelet
)(2
122
22
)2(),(yx
eyxyx
Time domain)21(
2
122
22
)21(2)2,1(ww
ewwww
Frequency domain
2D Mexican Hat wavelet (Movie)low frequency high frequency
<Time Domain Wavelet> <Fourier Domain Wavelet>
Scale = 38
Scale =2
Scale =1
Wavelet Transform
Continuous Wavelet Transform (CWT)
Discrete Wavelet Transform (DWT)
Continuous Wavelet Transform
continuous wavelet transform (CWT) of 1D signal is defined as
the a,b is computed from the mother wavelet by translation and dilation
dxxxfbfW baa )()()( ,
abx
axba
1)(,
Discrete Wavelet Transform
CWT cannot be directly applied to analyze discrete signals
CWT equation can be discretised by restraining a and b to a discrete lattice
transform should be non-redundant, complete and constitute multiresolution representation of the discrete signal
dxxxfbfW baa )()()( ,
Discrete Wavelet Transform
Discrete wavelets
In reality, we often choose
),( 02
0, ktaa jj
kj ., Zkj
.20 a
In the discrete signal case we compute the Discrete Wavelet Transform by successive low pass and high pass filtering of the discrete time-domain signal. This is called the Mallat algorithm or Mallat-tree decomposition.
Discrete Wavelet Transform
Pyramidal Wavelet Decomposition
The decomposition process can be iterated, with successive approximations being decomposed in turn, so that one signal is broken down into many lower-resolution components. This is called the wavelet decomposition tree.
Wavelet Decomposition
Lenna Image
Source: http://sipi.usc.edu/database/
Lenna DWT
Lenna DWT DC Level Shifted +70
Restored ImageCan you tell which is the original and which is the restored image after removal of the lower right?
DWT for Image Compression
Block Diagram
2D DiscreteWaveletTransform
QuantizationEntropyCoding
20 40 60
10
20
30
40
50
60
20 40 60
10
20
30
40
50
60
2D discrete wavelet transform (1D DWT applied alternatively to vertical and horizontal direction line by line ) converts images into “sub-bands” Upper left is the DC coefficient Lower right are higher frequencysub-bands.
DWT for Image Compression
Image Decomposition Scale 1
4 subbands: Each coeff. a 2*2 area in the original
image Low frequencies: High frequencies:
LL1 HL1
LH1 HH1
1111 ,,, HHLHHLLL
2/0
2/
DWT for Image Compression
Image Decomposition Scale 2 4 subbands:• Each coeff. a
2*2 area in scale 1 image
• Low Frequency: • High frequencies:
HL1
LH1 HH1
HH2LH2
HL2LL2
2,
2,
2,
2HHLHHLLL
4/0 2/4/
DWT for Image Compression Image Decomposition
Parent Children Descendants:
corresponding coeff. at finer scales
Ancestors: corresponding coeff. at coarser scales
HL1
LH1 HH1
HH2LH2
HL2
HL3LL3
LH3 HH3
DWT for Image Compression
Image Decomposition Feature 1:
Energy distribution similar to other TC: Concentrated in low frequencies
Feature 2: Spatial self-similarity
across subbands
HL1
LH1 HH1
HH2LH2
HL2
HL3LL3
LH3 HH3
The scanning order of the subbands for encoding the significance map.
JPEG2000 (J2K) is an emerging standard for image compression Achieves state-of-the-art low bit rate
compression and has a rate distortion advantage over the original JPEG.
Allows to extract various sub-images from a single compressed image codestream, the so called “Compress Once, Decompress Many Ways”.
ISO/IEC JTC 29/WG1 Security Working Setup in 2002
JPEG2000
JPEG 2000
Not only better efficiency, but also more functionality
Superior low bit-rate performance Lossless and lossy compression Multiple resolution Range of interest(ROI)
JPEG2000
Can be both lossless and lossy Improves image quality Uses a layered file structure :
Progressive transmission Progressive rendering
File structure flexibility: Could use for a variety of applications
Many functionalities
Why another standard?
Low bit-rate compression Lossless and lossy compression Large images Single decompression architecture Transmission in noisy
environments Computer generated imaginary
“Compress Once, Decompress Many Ways” A Single Original
Codestream
By resolutions By layers Region of Interest
Components
Each image is decomposed into one or more components, such as R, G, B.
Denote components as Ci, i = 1, 2, …, nC.
JPEG2000 EncoderBlock Diagram
Key Technologies: Discrete Wavelet Transform (DWT) Embedded Block Coding with
Optimized Truncation (EBCOT)
QuantizationEBCOT Tier-1
Encoder(CF + AE)
EBCOTTier-2
Encoder
Rate Control
2-D DiscreteWavelet
Transform
transform quantize coding
Resolution & Resolution-Increments
1-level DWT
J2K uses 2-D Discrete Wavelet Transformation (DWT)
Resolution and Resolution-Increments
2-level DWT
1-level DWT
Discrete Wavelet Transform
LL2 HL2
LH2 HH2HL1
LH1 HH1
Layers & Layer-Increments
L0 {L0, L1} {L0, L1, L2}
All layer-increments
JPEG2000 v.s. JPEG
low bit-rate performance
JPEG2K - Quality Scalability
Improve decoding quality as receiving more bits:
Spatial Scalability
Multi-resolution decoding from one bit-stream:
ROI (range of interest)