Download - IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

Transcript
Page 1: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

1

IMAGE COMPRESSION

Image Compression• Why?

• Reducing transportation times• Reducing file size

• A two way event - compression and decompression

Page 2: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

2

Compression categories• Compression = Image coding• Still-image compression

• Compression of moving imageLossless Lossy

Page 3: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

3

INTERFRAME and INTRAFRAME PROCESSING

Interframe ProcessingPredictive Encoding

Point to Point

Line to Line

Intraframe Processing

Image compression meters• Compress ratio =

Original image size

Compressed image size

• The larger the compression ratio, the smaller the result image

Page 4: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

4

Image compression• Compression method is not same as the image file-

interchange format. • Example TIFF -file format supports several compression methods

Page 5: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

5

Why Can We Compress?• Spatial redundancy

• Neighboring pixels are not independent but correlated

• Temporal redundancy

Information vs Data

REDUNDANTDATA

INFORMATION

DATA = INFORMATION + REDUNDANT DATA

Page 6: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

6

Image compression fundamentals • Same compression method is not to be used more than

once. • But you can use different methods at the same time,

especially different lossless methods like LZW and PKZIP

Image compression: symmetry

Page 7: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

7

Color image compression• RGB - apply the same compression scheme to the

three color component images• Convert the image from the RGB color space to a less

redundant space, because RGB components carries a lot of same information.

• RGB --> HSB, when Hue and Saturation components are well compressed

Color imagecompression

RED

GREENBLUE

SATURATION

HUE

BRIGHTNESS

Page 8: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

8

Lossless image compression• Image can be decompressed back to original• Used when image’s future purpose of use is not known,

example space exploration imagery is often studied for years following its origination

Run-Length Coding

76 76 76 76 76 78 79 79 80 80 80 98 98y

76| 5 78| 1 79| 2 80| 3 98| 2

Run-Length Codes(Brightness | Run-length)

x

Page 9: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

9

Run-length coding• Codes the nearby pixels which has same brightness

values in two values - Run-Length, RLE and brightness value

• Error sensitive • Data explosion• Data errors

Huffman CodingConverting the pixel brightness values in the original image to new variable-length codes, based on their frequency of occurrence in the image

Arrange valuesin descending frequency of occurrence

BrightnessHistogram

Assign Huffmanvariable-lengthcodes

Raw ImageData

98,100,103,87,86,95...

SubstituteHuffmancodes

Appendcodelist

Huffman CodeImage Data

0,10,0,11001111,11011

The flow of the Huffman coding operation.

Page 10: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

10

Huffman coding

character number Huffman code

a (97) 45 1 1b (98) 23 1 0 01c (99) 2 0 0 000d (100) 1 0 1 0010CR (13) 1 1 1 00111LF (10) 1 0 00110

2

3

5

28

Lossless or Lossy Compression• Lossless compression

• There is no information loss, and the image can be reconstructed exactly the same as the original

• Applications: Medical imagery, Archiving• Lossy compression

• Information loss is tolerable• Many-to-1 mapping in compression eg. quantization• Applications: commercial distribution (DVD) and rate

constrained environment where lossless methods can not provide enough compression ratio

Page 11: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

11

Predictive Coding

• Based on the assumption that pixel’s brightness can be predicted based on the brightness of the preceding pixel

• Codes only the brightness value of the pixel next to each other

• DPCM (Differential Pulse Code Modulation)

DPCM (Differential Pulse Code Modulation)

Page 12: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

12

Block Coding• Searching for repeated patterns (mostly in rows)• Pixel patterns are put in Codebook• Original image’s pixel pattern is replaced by codebook

index in compressed image

Block Coding

• LZW- compression (Lempel-Ziv-Welch)• Compression ratio 2:1 - 3:1• Starting with a 256 single-pixel long codebook ->

adding until it reaches its maximum length • LZW+Huffmann, where most common pixel patterns

get shortest codes

Page 13: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

13

TRANSFORM CODING• Transform Coding

- transform image- code the coefficients of the transform- transmit them - reconstruct by inverse transform

• Benefits- transform coeff. relatively uncorrelated- energy is highly compacted- reasonable robust relative to channel errors

Transform Coding– A form of lossy block coding, but it does

not use codebook– Frequency domain– Frequency transformation finds the

essential data in the image and coding is accurate

– 8*8 pixel blocks– Discrete Cosine Transform (DCT)

Page 14: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

14

File formats and compression methods

• Standards crucial, so pictures are transportable between different systems

• Compression standards:• CCITT group 3 and 4 (Fax-standard)• Joint Bi-level Image Expert Group (JBIG)• Joint Photographic Experts Group (JPEG)

• Motion picture:• CCITT Recommendation H.261 – H.264• Moving Picture Experts Group (MPEG)

Why Do We Need International Standards?

• International standardization is conducted to achieve inter-operability .• Only syntax and decoder are specified.• Encoder is not standardized and its optimization is left to the

manufacturer.• Standards provide state-of-the-art technology that is

developed by a group of experts in the field.• Not only solve current problems, but also anticipate the future

application requirements.

Page 15: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

15

Compression standards: JPEGJoint Photographic Experts Group (JPEG)

• One of the most important image data compression standards

• Developed for highly detailed gray-scale and color images / photographs

• Most commonly used as a lossy image compression method, but lossless modes exist as well

• JPEG uses several cascaded compression modes• Adjustable compression scheme number of

retained frequency components can be changed to achieve different compression ratios

• DCT > Remove rare frequency components > DPCM > Huffman

JPEG(Intraframe coding)

• First generation JPEG uses DCT+Run length Huffman entropy coding.

• Second generation JPEG (JPEG2000) uses wavelet transform + bit plane coding + Arithmetic entropy coding.

Page 16: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

16

Why DCT Not DFT?

• DCT is similar to DFT, but can provide a better approximation with fewer coefficients

• The coefficients of DCT are real valued instead of complex valued in DFT.

The 64 (8 X 8) DCT Basis Functions

• Each 8x8 block can be looked at as a weighted sum of

these basis functions. • The process of 2D

DCT is also the process of finding

those weights.

Page 17: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

17

Zig-zag Scan DCT Blocks• Why? -- To group low frequency coefficients in top of

vector.• Maps 8 x 8 to a 1 x 64 vector.

Original

Page 18: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

18

JPEG

27:1

JPEG2000

27:1

Page 19: IMAGE COMPRESSION - EVTEKusers.evtek.fi/~erkkir/ImageTechnology2013/1 ImagetechPDF/7... · Lossless image compression • Image can be decompressed back to original ... Huffman coding

28.3.2012

19

Motion compression standards

Moving Picture Experts Group (MPEG)• Intended for the mass distribution of motion video

sequences• Compression-asymmetric = compression techniques

require more processing time and computing powerthan the decompression ones

• In addition to coding techniques used with JPEG, MPEG utilizes interframe coding methods

MPEG-1 use CD-ROM and Internet MPEG-2 use DVD and Digi-TVMPEG-4 most advanced technology