Chapter 3 Image Compression Using Curvelet Transform 3.1 Introduction Compression techniques [8] that are based on modifying the transform of an image are considered here. In these techniques, a reversible, linear transform (such as transforms discussed in Chapter 2) is used to map the image into a set of transform coefficients, which are then quantized and coded. For most natural images, a significant number of the coefficients have small magnitudes and can be coarsely quantized with little image distortion. Fig. 3.1 shows a typical transform coding system. The decoder implements the inverse sequence of steps (with the exception of the quantization function) of the encoder, which performs three relatively straightforward operations: transformation, quantization, and coding. The goal of the transformation process is to decorrelate the pixels of image, or to pack as much information as possible into the smallest number of transform coefficients. The quantization stage then selectively eliminates or more coarsely quantizes the coefficients that carry the least information. These coefficients have the smallest impact on reconstructed image quality. The encoding process terminates by coding the quantized coefficients. 48
21
Embed
Image Compression Using Curvelet Transformshodhganga.inflibnet.ac.in/bitstream/10603/2210/11/11_chapter 3.pdf · Chapter 3 Image Compression Using Curvelet Transform 3.1 Introduction
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Chapter 3
Image Compression Using Curvelet Transform
3.1 Introduction
Compression techniques [8] that are based on modifying the
transform of an image are considered here. In these techniques, a
reversible, linear transform (such as transforms discussed in Chapter
2) is used to map the image into a set of transform coefficients, which
are then quantized and coded. For most natural images, a significant
number of the coefficients have small magnitudes and can be coarsely
quantized with little image distortion.
Fig. 3.1 shows a typical transform coding system. The decoder
implements the inverse sequence of steps (with the exception of the
quantization function) of the encoder, which performs three relatively
straightforward operations: transformation, quantization, and coding.
The goal of the transformation process is to decorrelate the pixels of
image, or to pack as much information as possible into the smallest
number of transform coefficients. The quantization stage then
selectively eliminates or more coarsely quantizes the coefficients that
carry the least information. These coefficients have the smallest
impact on reconstructed image quality. The encoding process
terminates by coding the quantized coefficients.
48
Fig. 3.1 A Transform coding (a) encoder and (b) decoder
In this chapter practical implementations of proposed
compression method is focused. The next section will briefly survey
existing methods, while section 3.3 briefs about new transform,
section 3.4 discusses the quantizer design for proposed compression
method, section 3.5 demonstrates the algorithm of new compression
technique and sections 3.6 and 3.7 explains the metrics and indexes
used to evaluate the performance. Finally, the superiority of proposed
technique over conventional methods is demonstrated.
3.2 Survey of Existing Methods
Past few years have produced abundant results in compression
techniques for images primarily for its wide spread usage in internet
technologies etc. Wavelet based compression of digital signals and
49
images have been a topic of interest for quiet sometime now. In many
hundreds of papers published [56-63] in journals throughout the
scientific and engineering disciplines, a wide range of tools and ideas
have been proposed and studied. Though wavelet based techniques
have proven their worth in number of fields the major drawback
associated with them are their inability to capture geometry of two
dimensional edges. Therefore, the field of image processing demands a
true 2-dimensional transform that can efficiently handle the intrinsic
geometrical structure that is the key in visual information. The next
section briefly describes the new transform that solves the problem of
capturing image edges.
3.3 New Multiscale Transform
Candes and Donoho [1] developed a new multi-scale transform
which they called as the curvelet transform . Motivated by the needs
of image analysis, it was nevertheless first proposed in the context of
objects f(x1; x2) defined on the continuum plane (x1,x2)∈R2. The new
transform is believed to capture image information more efficiently
than the wavelet transform by providing basis elements in addition to
possessing the qualities of wavelet. Basis functions in curvelets are
oriented at variety of directions and with variety of elongated shapes
with different aspect ratios. In particular, it was designed to represent
edges and other singularities along curves much more efficiently than
traditional transforms, i.e. using many fewer coefficients for a given
50
accuracy of reconstruction. Roughly speaking, to represent an edge to
squared error 1/N requires 1/N wavelets and only about 1/ N
curvelets. The details of curvelet transform are given in section 2.2 of
chapter 2.
3.4 Quantizer Design and Coding
The uniform quantizer is the most commonly used scalar
quantizer for transform based image compression due to its simplicity.
It is also known as a linear quantizer since its staircase input-output
response lies along a straight line(with a unit slope). Two commonly
used linear staircase quantizers are the midtread and the midrise
quantizers.
3.4.1 Existing Quantizer
From MATLAB tool box, it is observed that the quantizer is
defined as:
y=Q_T(x)
where: Q_T(x) = 0 , if |x|<T
Q_T(x) = sgn(x) * [x/T] , otherwise (3.1)
The input values for quantizer are created with evenly spacing
and bin size(T) is assumed as 0.1. The quantization curve is as shown
51
in Fig. 3.2(a). From the quantization curve, it can be said that the
above quantizer is midtread.
For decompression, de-quantized values are computed using
the following equation.
Dq=sgn(Q) * (abs(Q)+0.5)*T (3.2)
Where Q are quantizer output values and Dq are de-quantized values.
In the above equation 0.5 is chosen to get the de-quantized values at
the mid-point of each quantization bin. De-quantized real values are