Transcript Document

Computer Graphics
&
Image Processing
Chapter # 8
Image compression
ALI JAVED
Lecturer
SOFTWARE ENGINEERING DEPARTMENT
U.E.T TAXILA
Email:: [email protected]
Office Room #:: 7
Background
Principal objective:
To minimize the number of bits required to represent an image.
Applications
Transmission:
Broadcast TV via satellite, military communications via aircraft,
teleconferencing, computer communications etc.
Storage:
Educational and business documents, medical images (CT, MRI
and digital radiology), motion pictures, satellite images,
weather maps, geological surveys, e.t.c)
3
Overview
Image data compression methods fall into two common categories:
I. Information preserving compression
 Especial for image archiving (storage of legal or medical
records)
 Compress and decompress images without losing information
II. Lossy image compression
 Provide higher levels of data reduction
 Result in a less than perfect reproduction of the original image
 Applications: –broadcast television, videoconferencing
4
5
Data vs. information
• Data is not the same thing as information
• Data are the means to convey information; various amounts
of data may be used to represent the same amount of
information Part of data may provide no relevant
information: data redundancy
• The amount of data can be much larger expressed than the
amount of information.
6
Data Redundancy
• Data that provide no relevant information=redundant data or
redundancy.
• Image compression techniques can be designed by reducing or
eliminating the Data Redundancy
• Image coding or compression has a goal to reduce the amount
of data by reducing the amount of redundancy.
7
Data Redundancy
8
Data Redundancy
Three basic data redundancies
 Coding Redundancy
 Interpixel Redundancy
 Psychovisual Redundancy
9
Coding Redundancy
A natural m-bit coding method assigns m-bit to each gray level
without considering the probability that gray level occurs
with: Very likely to contain coding redundancy
Basic concept:
 Utilize the probability of occurrence of each gray level
(histogram) to determine length of code representing that
particular gray level: variable-length coding.
 Assign shorter code words to the gray levels that occur most
frequently or vice versa.
10
Coding Redundancy
11
Coding Redundancy (Example)
12
Coding Redundancy (Example)
13
Coding Redundancy (Example)
14
Interpixel Redundancy
 Caused by High Interpixel Correlations within an image, i.e.,
gray level of any given pixel can be reasonably predicted
from the value of its neighbors (information carried by
individual pixels is relatively small) spatial redundancy,
geometric redundancy, interframe redundancy (in general,
interpixel redundancy )
 To reduce the interpixel redundancy, mapping is used. The
mapping scheme can be selected according to the properties
of redundancy.
 An example of mapping can be to map pixels of an image:
f(x,y) to a sequence of pairs: (g1,r1), (g2,r2), ..., (gi,ri), ..
gi: ith gray level ri: run length of the ith run
15
Interpixel Redundancy (Example)
16
Psychovisual Redundancy
 The eye does not respond with equal sensitivity to all visual
information.
 Certain information has less relative importance than other
information in normal visual processing psychovisually
redundant (which can be eliminated without significantly
impairing the quality of image perception).
 The elimination of psychovisually redundant data results in a
loss of quantitative information lossy data compression
method.
 Image compression methods based on the elimination of
psychovisually redundant data (usually called quantization)
are usually applied to commercial broadcast TV and similar
applications for human visualization.
17
Psychovisual Redundancy
18
Psychovisual Redundancy
19
Psychovisual Redundancy
20
Fidelity Criteria
21
Fidelity Criteria
22
Fidelity Criteria
23
Image Compression Models
 The encoder creates a set of symbols (compressed) from the
input data.
 The data is transmitted over the channel and is fed to decoder.
 The decoder reconstructs the output signal from the coded
symbols.
 The source encoder removes the input redundancies, and the
channel encoder increases the noise immunity.
24
Source Encoder and Decoder
25
Error-Free Compression
26
Variable-length Coding Methods: Huffman Coding
27
Variable-length Coding Methods: Huffman Coding
28
29
Mapping
•There is often correlation between adjacent pixels, i.e. the
value of the neighbors of an observed pixel can often be
predicted from the value of the observed pixel. (Interpixel
Redundancy).
•Mapping is used to remove Interpixel Redundancy.
•Two mapping techniques are:
 Run length coding
 Difference coding.
30
31
32
33
34
35
LZW Coding
(Dictionary based coding)
•Dictionary-based coding techniques are based on the idea of
incrementally building a dictionary (table) while receiving the
data. Unlike VLC techniques, dictionary-based techniques use
fixed-length code words to represent variable-length strings of
symbols that commonly occur together.
•Lempel-Ziv-Welch (LZW) coding assigns fixed length code
words to variable length sequences of source symbols.
•It also takes care of the interpixel redundancies.
•Popular coding scheme used in formats like GIF, TIFF e.t.c
36
LZW Coding
(Dictionary based coding)
•METHOD
•A code book or dictionary containing the source symbols to be
coded is constructed. For 8 bit monochrome images, the first 256
words of the dictionary are assigned to the gray values
0,1,2,…,255. As the encoder sequentially examines the image’s
pixels, gray level sequences that are not in the dictionary are
placed algorithmically determined (e.g., the next unused)
locations. If the first two pixels of the image are white, for
instance, sequence “255-255” might be assigned to location 256.
the next time that two consecutive white pixels are encountered,
code word 256, the address of the location containing sequence
255-255, is used to represent them.
•A unique feature of LZW coding is that coding dictionary or code
book is created while the data are being encoded.
37
Example
38
39
Bit-Plane Coding
Binary Image Compression
Binary Image Compression: Constant Area
Coding (CAC)
Binary Image Compression: 1-D Run-Length
Coding (1D RLC):
Lossy Compression
• A lossy compression method is one where compressing data
and then decompressing it retrieves data that may well be
different from the original, but is close enough to be useful in
some way.
• Lossy compression is most commonly used to compress
multimedia data (audio, video, still images), especially in
applications such as streaming media and internet telephony.
JPEG
• Lossy Compression Technique based on use of
Discrete Cosine Transform (DCT)
• A DCT is similar to a Fourier transform in the
sense that it produces a kind of spatial
frequency spectrum
STEPS IN JPEG COMPRESSION
• Divide Each plane into 8x8 size blocks.
• Compute DCT of each block
• Treat separately
block.
DC
components
of each
• Apply Quantization to discard values
• Separately encode
transmit data.
DC
components
and
JPEG COMPRESSION
JPEG COMPRESSION
•Using the DCT, the entries in Y will be organized based on the
human visual system.
•The most important values to our eyes will be placed in the
upper left corner of the matrix.
•The least important values will be mostly in the lower right
corner of the matrix.
Most
Important
SemiImportant
Least
Important
JPEG COMPRESSION
The example image 8*8 matrix
before DCT transformation.
JPEG COMPRESSION
Gray-Scale Example:
Value Range 0 (black) --- 255
(white)
63
27
72
132
187
184
211
211
33
18
52
100
186
203
214
210
36
17
28
56
166
199
208
203
28
11
15
19
88
177
198
191
63
22
17
10
13
82
134
133
81
48
16
9
34
44
52
79
86
104
47
21
43
97
78
74
98
108
77
55
51
73
83
86
JPEG COMPRESSION
2D-DCT of matrix
Value Range 0 (Gray) --- -355
(Black)
-304 210 104 -69 10
-327 -260 67 70 -10
93 -84 -66 16 24
89 33 -19 -20 -26
-9
42 18 27 -7
-5
15 -10 17 32
10
3 -12 -1 2
12
30
0 -3 -3
20
-15
-2
21
-17
-15
3
-6
-12
21
-5
-3
29
-4
-2
12
7
8
9
0
-7
7
-3
-1
JPEG COMPRESSION
Cut the least significant components
Value Range 0 (Gray) --- -355
(Black)
-304 210 104 -69 10 20 -12 0
-327 -260 67 70 -10 -15
0 0
93 -84 -66 16 24 0
0 0
89 33 -19 -20 0
0
0 0
-9
42 18 0
0
0
0 0
-5
15
0 0
0
0
0 0
10
0
0 0
0
0
0 0
0
0
0 0
0
0
0 0
JPEG COMPRESSION
Original
Compressed
Results…
Any question