Title: Image Compression
1Image Compression
2Image Compression
- Everyday an enormous amount of information is
stored, processed, and transmitted - Financial data
- Reports
- Inventory
- Cable TV
- Online Ordering and tracking
3Image Compression
- Because much of this information is graphical or
pictorial in nature, the storage and
communications requirements are immense. - Image compression addresses the problem of
reducing the amount of data requirements to
represent a digital image. - Image Compression is becoming an enabling
technology HDTV. - Also it plays an important role in Video
Conferencing, remote sensing, satellite TV, FAX,
document and medical imaging.
4Image Compression
- We want to remove redundancy from the data
- Mathematically
Transformation
Statistically Uncorrelated data
2D array Of pixels
5Day4 Image Compression
- Outline
- Fundamentals
- Coding Redundancy
- Interpixel Redundancy
- Psychovisual Redundancy
- Fidelity Criteria
- Error-Free Compression
- Variable-length Coding
- LZW Coding
- Predictive Coding
- Lossy Compression
- Transform Coding
- Wavelet Coding
- Image Compression Standards
6Fundamentals
- The term data compression refers to the process
of reducing the amount of data required to
represent a given quantity of information - Data Information
- Various amount of data can be used to represent
the same information - Data might contain elements that provide no
relevant information data redundancy - Data redundancy is a central issue in image
compression. It is not an abstract concept but
mathematically quantifiable entity
Some Images are adopted from R. C. Gonzalez R.
E. Woods
7Data Redundancy
- Let n1 and n2 denote the number of information
carrying units in two data sets that represent
the same information - The relative redundancy RD is define as
- where CR, commonly called the compression ratio,
is
8Data Redundancy
- If n1 n2 , CR1 and RD0 no redundancy
- If n1 gtgt n2 , CR and RD high
redundancy - If n1 ltlt n2 , CR and RD undesirable
- A compression ration of 10 (101) means that the
first data set has 10 information carrying units
(say, bits) for every 1 unit in the second
(compressed) data set. - In Image compression , 3 basic redundancy can be
identified - Coding Redundancy
- Interpixel Redundancy
- Psychovisual Redundancy
9Coding Redundancy
- Recall from the histogram calculations
- where p(rk) is the probability of a pixel to
have a certain value rk -
- If the number of bits used to represent rk is
l(rk), then
10Coding Redundancy
11Coding Redundancy
Variable-Length Coding
12Inter-pixel Redundancy
Here the two pictures have Approximately the
same Histogram. We must exploit Pixel
Dependencies. Each pixel can be estimated From
its neighbors.
13Run-Length Encoding
Example of Inter-pixel Redundancy removal
14Psycho-visual Redundancy
The human visual system is more sensitive to
edges Middle Picture Uniform quantization from
256 to 16 gray levels CR 2 Right picture
Improved gray level quantization (IGS) CR 2
15Fidelity Criteria
The error between two functions is given
by So, the total error between the two images
is The root-mean-square error averaged over
the whole image is
16Fidelity Criteria
- A closely related objective fidelity criterion is
the mean square signal to noise ratio of the
compressed-decompressed image
17Fidelity Criteria
18Compression Model
The source encoder is responsible for removing
redundancy (coding, inter-pixel,
psycho-visual) The channel encoder ensures
robustness against channel noise.
19Compression Types
Compression
Error-Free Compression (Loss-less)
Lossy Compression
20Error-Free Compression
- Some applications require no error in compression
(medical, business documents, etc..) - CR2 to 10 can be expected.
- Make use of coding redundancy and inter-pixel
redundancy. - Ex Huffman codes, LZW, Arithmetic coding, 1D and
2D run-length encoding, Loss-less Predictive
Coding, and Bit-Plane Coding.
21Huffman Coding
- The most popular technique for removing coding
redundancy is due to Huffman (1952) - Huffman Coding yields the smallest number of code
symbols per source symbol - The resulting code is optimal
22Huffman Codes
23Huffman Codes
24Workshop
- Obtain the Huffman codes for the following
sequence - 5 5 5 5 8 8 4 2 7 7 7 2 2 2 2 4 4 7 7 7 7 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 - What is the average code length with and without
compression ?
25Fixed Length LZW Coding
- Error Free Compression Technique
- Remove Inter-pixel redundancy
- Requires no priori knowledge of probability
distribution of pixels - Assigns fixed length code words to variable
length sequences - Patented Algorithm US 4,558,302
- Included in GIF and TIFF and PDF file formats
26LZW Coding
- Coding Technique
- A codebook or a dictionary has to be constructed
- For an 8-bit monochrome image, the first 256
entries are assigned to the gray levels
0,1,2,..,255. - As the encoder examines image pixels, gray level
sequences that are not in the dictionary are
assigned to a new entry. - For instance sequence 255-255 can be assigned to
entry 256, the address following the locations
reserved for gray levels 0 to 255.
27LZW Coding
- Example
- Consider the following 4 x 4 8 bit image
- 39 39 126 126
- 39 39 126 126
- 39 39 126 126
- 39 39 126 126
Initial Dictionary
28LZW Coding
- 39 39 126 126
- 39 39 126 126
- 39 39 126 126
- 39 39 126 126
- Is 39 in the dictionary..Yes
- What about 39-39.No
- Then add 39-39 in entry 256
- And output the last recognized symbol39
39-39
29Workshop
- Code the following image using LZW codes
- 39 39 126 126
- 39 39 126 126
- 39 39 126 126
- 39 39 126 126
- How can we decode the compressed sequence to
obtain the original image ?
30LZW Coding
31Bit-Plane Coding
- An effective technique to reduce inter pixel
redundancy is to process each bit plane
individually - The image is decomposed into a series of binary
images. - Each binary image is compressed using one of well
known binary compression techniques.
32Bit-Plane Decomposition
33Bit-Plane Encoding
Constant Area Coding One Dimensional Run Length
coding Two Dimensional Run Length coding
1b 2w 1b 3w
4b 1w
12 w
34Loss-less Predictive Encoding
35Loss-less Predictive Encoding
36Lossy Compression
Quantizer
37Lossy Compression
38DPCM
39DPCM
40Transform Coding
- A reversible linear transform (such as Fourier
Transform) is used to map the image into a set of
transform coefficients - These coefficients are then quantized and coded.
- The goal of transform coding is to decorrelate
pixels and pack as much information into small
number of transform coefficients. - Compression is achieved during quantization not
during the transform step
41Transform Coding
422D Transforms
- Energy packing
- 2D transforms pack most of the energy
- into small number of coefficients located
- at the upper left corner of the 2D array
Energy Packing
432D Transforms
- Consider an image f(x,y) of size N x N
-
- Forward transform
- g(x,y,u,v) is the forward transformation kernel
or basis functions
442D Transforms
- Inverse transform
- h(x,y,u,v) is the inverse transformation kernel
or basis functions
45Discrete Cosine Transform
- One of the most frequently used transformations
for image compression is the DCT.
for u0 for u1, 2, , N-1
46Discrete Cosine Transform
472D Transforms
48Effect of Window Size
49Quantization
Quantizer
50Quantization
- Each transformed coefficient is quantized
51Quantization
52Bit allocation and Zig Zag Ordering
53DCT and Quantization
Right Column
54Wavelet Coding
55Wavelet Transform
1
2
3
4
Put a pixel in each quadrant-? No size change
56Wavelet Transform
a
b
c
d
- Now let
- a (x1x2x3x4)/4
- b (x1x2-x3-x4)/4
- c (x1x3-x2-x4)/4
- d (x1x4-x2-x3)/4
57Wavelet Transform
58Wavelet Transform
59Wavelet Transform
60Wavelet Coding
- High Frequency coefficients tend to be very small
---? 0 - They can be quantized very effectively without
distorting the results
61Wavelet Transform
DCT
Wavelet
62Wavelet Transform
63Image Compression Standards
- Binary Compression Standards
- CCITT G3 -gt 1D Run Length Encoding
- CCITT G4 -gt 2D Run Length encoding
- JBIG1 -gt Lossless adaptive binary compression
- JBIG2 -gt Lossy/Lossless adaptive binary
compression
64JBIG/JBIG2
65Image Compression Standards
- Continuous Tone Still Image Compression Standards
- JPEG
- JPEG 2000
- Mixed Raster Content (MRC)
66MRC
67Video Compression