Image Compression Models: Fig: Functional Block Diagram of A General Image Compression System

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

Image Compression Models

Fig: Functional block diagram of a general image compression system.

As Fig. above shows, an image compression system is composed of two distinct


functional components: an encoder and a decoder. The encoder performs compression,
and the decoder performs the complementary operation of decompression. Both
operations can be performed in software, as is the case in Web browsers and many
commercial image editing programs, or in a combination of hardware and firmware, as
in commercial DVD players.

Input image f(x, ...) is fed into the encoder, which creates a compressed
representation of the input. This representation is stored for later use, or transmitted for
storage and use at a remote location.

When the compressed representation is presented to its complementary decoder, a


reconstructed output image f ^ (x, ... ) is generated. In still-image applications, the
encoded input and decoder output are f(x, y) and f ^ (x, y), respectively; in video
applications, they are f(x, y, t) and f ^ (x, y, t), where discrete parameter t specifies time.

In general, f ^ (x, ... ) may or may not be an exact replica of f(x, ... ). If it is, the
compression system is called error free, lossless, or information preserving. If not, the
reconstructed output image is distorted and the compression system is referred to as
lossy.
The encoding or compression process

The encoder of Fig. is designed to remove the redundancies through a series of


three independent operations.

In the first stage of the encoding process, a mapper transforms f(x, ... ) into a
(usually non-visual) format designed to reduce interpixel redundancies in the input
image. This operation generally is reversible and may or may not reduce directly the
amount of data required to represent the image. Run-length coding is an example of a
mapping that normally yields compression in the first step of the encoding process. In
video applications, the mapper uses previous (and in some cases future) video frames to
facilitate the removal of temporal redundancy.

The second stage, or quantizer block reduces the accuracy of the mapper’s output in
accordance with a pre-established fidelity criterion. This stage reduces the psychovisual
redundancies of the input image. This operation is irreversible. Thus it must be omitted
when error-free compression is desired.

In the third and final stage of the encoding process, the symbol coder generates a
fixed- or variable-length code to represent the quantizer output and maps the output in
accordance with the code. In many cases, a variable-length code is used. The shortest
code words are assigned to the most frequently occurring quantizer output values—thus
minimizing coding redundancy. This operation is reversible. Upon its completion, the
input image has been processed for the removal of each of the three redundancies.

The decoding or decompression process

The decoder of Fig.above contains only two components: a symbol decoder and an
inverse mapper. They perform, in reverse order, the inverse operations of the encoder’s
symbol encoder and mapper.

Because quantization results in irreversible information loss, an inverse quantizer


block is not included in the general decoder model. In video applications, decoded
output frames are maintained in an internal frame store and used to reinsert the temporal
redundancy that was removed at the encoder.

You might also like