Overview of JPEG in DCE

Download as pdf or txt
Download as pdf or txt
You are on page 1of 44

JPEG2000

Why another standard?


• Low bit-rate compression: At low bit-rates (e.g. below 0.25 bpp
for highly detailed gray-level images) the distortion in JPEG
becomes unacceptable.
• Lossless and lossy compression: Need for standard, which provide
lossless and lossy compression in one codestream.
• Large images: JPEG doesn't compress images greater then 64x64K
without tiling.

2
Why another standard? (cont'd)
• Single decompression architecture: JPEG has 44 modes, many of
them are application specific and not used by the majority of the
JPEG decoders.
• Transmission in noisy environments: in JPEG quality suffers
dramatically, when bit errors are encountered.
• Computer generated imaginary: JPEG is optimized for natural images
and performs badly on computer generated images
• Compound documents: JPEG fails to compress bi-level (text)
imagery.

3
JPEG2000 - Targets
• Coding standard for:
different types of still images (gray-level, color, ...) different
characteristics (natural, scientific, ...) different imaging models
(client/server, real-time,...) within a unified and integrated
system.
• This coding system is intended for:
low bit-rate applications, exhibiting rate-distortion and
subjective image quality performance superior to existing
standards.

4
JPEG2000 - Overview
• The source image is decomposed into components (up to 256).
• The image components are (optionally) decomposed into
rectangular tiles. The tile-component is the basic unit of the
original or reconstructed image.
• A wavelet transform is applied on each tile. The tile is
decomposed into different resolution levels.
• The decomposition levels are made up of sub bands of
coefficients that describe the frequency characteristics of local
areas of the tile components, rather than across the entire
image component.
• The sub-bands of coefficients are quantized and collected into
rectangular arrays of code blocks.

5
JPEG2000 - Overview (cont'd)

• The bit planes of the coefficients in a code block (i.e. the bits of equal
significance across the coefficients in a code block) are entropy coded.
• The encoding can be done in such a way that certain regions of interest (ROI) can
be coded at a higher quality than the background.
• Markers are added to the bit stream to allow for error resilience.
• The code stream has a main header at the beginning that describes the original
image and the various decomposition and coding styles that are used to
locate, extract, decode and reconstruct the image with the desired resolution,
fidelity, region of interest or other characteristics.

6
Pre-Processing
1. Image tiling:
•Image may be quite large in comparison to the amount
of memory available to the codec.
•Partition of the original image into rectangular non-
overlapping blocks (tiles), to be compressed independently

2. DC-level shifting:
• The codec expects its input sample data to have a
nominal dynamic range that is approximately centered
about zero (0 -- 255 -> -128 -- 128)
• If the sample values are unsigned, the nominal dynamic
range of the samples is adjusted by subtracting a bias from
each of the sample values ( 2 P-1 , P is the component’s
precision)
7
JPEG2000 features
• • High compression efficiency
• • Lossy and lossless coding in one algorithm
• • Embedded lossy to lossless coding
• • Progressive by resolution and quality
• • Flexible Region-of-Interest
• •Random code-stream access and processing
JPEG at 0.125 bpp (enlarged)
JPEG2000 at 0.125 bpp
Overview
1> Colour Transformation
• Maps data from RGB to YCrCb (Y, Cr, Cb – less statistically dependent;
compress better); serves to reduce the correlation between
components, leading to improved coding efficiency.
2> Tiling
Image may be quite large in comparison to the amount
of memory available to the codec. Partition of the original image into
rectangular nonoverlapping blocks (tiles), to be compressed
independently
3>Transform :Wavelet transform
Wavelet Transform
Wavelet Transform
Wavelet Transform
Wavelet Transform
Wavelet Transform
Overview
4> Quantization
•One quantization step size is allowed per sub band. These step sizes
can be chosen in a way to achieve a given level of “quality”
5>Coding
Each sub band is partitioned into a set of non-overlapping rectangular
code blocks with a fixed size
Each block is then encoded independent of other blocks Using bit planes
Context based arithmetic coding is used to code the individual bit planes.
Coefficient Bit Modeling (cont'd)

• Code-blocks are then coded a bit-plane at a time starting


from the Most Significant Bit-Plane to the Least Significant
Bit-Plane

3 6
=
5 1
MSB-plane LSB-plane
35
Code stream organization
Code stream
• The code stream has a main header at the beginning
that describes the original image and the various
decomposition and coding styles . This is used to
locate, extract, decode and reconstruct the image
with the desired resolution, fidelity, region of interest
or other characteristics.
Resolution scalability

38
Resolution scalability

39
Resolution scalability

40
Resolution scalability

41
Quality scalability

42
Quality scalability

43
Quality scalability

44

You might also like