Top Banner
JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation T.81 http://www.jpeg.org/ Nimrod Peleg update: April 2009
29

JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Jul 27, 2019

Download

Documents

phamhanh
Welcome message from author
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
Page 1: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

JPEG: An Image Compression System

ISO/IEC DIS 10918-1ITU-T Recommendation T.81http://www.jpeg.org/

Nimrod Peleg

update: April 2009

Page 2: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Basic Structure

Source Image Data

Reconstructed Image Data

Encoder DecoderCompressed Data

Page 3: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Encoder Structure

Source Image Data

EncoderModel

StatisticalModel

EntropyEncoding

CompressedData

Model Parameters Entropy Coding Tables

Descriptors

Page 4: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Decoder StructureCompressedData

StatisticalModel

EntropyDecoder

DecoderModel

Model ParametersEntropy Coding Tables

Descriptors

ReconstructedImage Data

Page 5: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Image Compression Models

• A Unit that generates a set of “descriptors”• The simplest model:send the data itself to the entropy encoder:

PCMThe set of descriptors is all possible values of

the samples

Page 6: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Compression Models: DPCM

A simple predictor:We use the former sample(s) to

predict the current one, and send (to the entropy encoder) the difference between the predicted and real value:

“prediction error”

Page 7: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Lena: The original

Page 8: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Histogram of Lena

Matlab: imhist

Page 9: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Sample Position

SampleIntensity

Difference Sample Position

Intensity ofdifference

1 Line Histogram

Page 10: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

DPCM (Cont’d)The better

performance of DPCM relative to PCM is due to the high degree of correlation found in most images

Note that this model is lossless !

Histogram of differences (Lena, one neighbor to the left predictor)

Page 11: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

DCT Encoder Model• Used in Lossy JPEG modes• Output is fed to Entropy encoder

Source Image

DCT Q

DPCMDC

AC Coefficients

DCCoefficients

To EntropyCoding

Page 12: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

DCT Decoder Model

DCCoefficients

IDCTIQ

DPCM DC

AC Coefficients

Reconstructed Image

• Quantization is the principal source of distortion to the reconstructed image.

• Q is done to each coeff. independently, so it can match the HVS response.

From Entropy Coding

Page 13: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Block Oriented DCT Reconstruction(A too strong quantization effect)

32x32 block A strong quantization

Page 14: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

The “DCT” Coefficients Image

Page 15: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

2D DFT….The Jewish Case

16

Fourier analysis shows usa) Typical horizontal lines with appropriate frequency (12 lines in height) [red]b) High frequencies for the small holes (30 per line) [blue]c) No signs for Chamets !

© Itsik Parnafes

Page 16: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Quantization – Color Example

Fine quantization Coarse quantization

Page 17: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Reconstruction from Fourier Magnitude or Phase

DFT

Magnitude PhaseOriginal

+

Page 18: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Transform Coding - Example16×16 block

of pixelsDCT

coefficients

Page 19: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Other Compression Models• Other models were candidates for JPEG:

– Block Truncation Coding (BTC)– Vector quantization (VQ)– Other Transform Coding (TC) schemes– Sub-band coding (SBC)– Other predictive coding models

• The DCT model provided (Jan.1988) best average image quality for a given bit-rate

Page 20: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Coding Model

Zig-Zag scan (instead of Raster scan) achieves longer “zero coefficients sequences”, after quantization.

HorizontalFrequency

VerticalFrequency

DC

Page 21: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Zig-Zag example

DC

Page 22: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Entropy Encoding/Decoding

2 entropy coding structures used in JPEG:• Huffman coding:

– Good old wine … (1952)– Computationally simpler– Implementation simpler– Requires known / calculated code tables

• Arithmetic Coding– About 10% higher performance– Code book adapts dynamically to coded data– IBM Patented...

David A. Huffman1925-1999

Page 23: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Huffman Entropy Encoder• Statistical model: converts descriptors into symbols,

each assigned to particular code word• Adapter: responsible for the assignments of code

words needed by the encoder• Code Tables: can be fixed or adapted to data to

improve efficiency by a few percent

• Note that 1 pass (fixed tables) or 2 passes (adaptive table) are options

Page 24: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Huffman Encoder Scheme

Huffman entropy coding table

a

b

a

b

Descriptors Symbols

Code words

EncodedDataHuffman

StatisticalModel

HuffmanAdapter

HuffmanEncoder

HuffmanCode Table

S1

S2

Page 25: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Huffman Decoder Scheme

HuffmanStatistical Model

HuffmanDecoder

HuffmanCode Table

Encoded data

Symbols

Code words

Huffman entropycode table

Descriptors

Page 26: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Arithmetic Coding

• One pass adaptive binary coder.• Achieves about 10% better compression.• More complicated then Huffman.• Option to transcoding between the two.• Almost not in use in JPEG (used in JBIG)• IBM Patent.

Page 27: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

JPEG Lossless Mode

• Based on DPCM only (without DCT and Q)• Poor compression relative to Lossy mode

(1:1 Vs. 20:1 for color natural image)• (Almost) Not in use

Since 1997: JPEG-LS

Page 28: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

Progressive Mode• Allows the user to preview a rough version

of the image• Two or more passes through data• Approximation of entire image coded first• Finer details are coded with each

succeeding scan • Decoder follows same order in decoding• Identical compression and quality

(sometimes even better)

Page 29: JPEG: An Image Compression System - University of Haifacs.haifa.ac.il/~nimrod/Compression/JPEG/J3sys2009.pdf · JPEG: An Image Compression System ISO/IEC DIS 10918-1 ITU-T Recommendation

JPEG Base-line Scheme (Lossy)