15719 Compression Standards

download 15719 Compression Standards

of 28

Transcript of 15719 Compression Standards

Media Compression Techniques

The JPEG Standard

JPEG(Joint Photographic Experts Group) is an image compression standard which was accepted as an international standard in 1992. Developed by the Joint Photographic Expert Group of the ISO/IEC JPEG is a commonly used method of lossy compression for digital photography (image) For coding and compression of color/gray scale images Yields acceptable compression in the 10:1 range The JPEG compression algorithm is at its best on photographs and paintings of realistic scenes with smooth variations of tone and color. For web usage, where the amount of data used for an image is important, JPEG is very popular. JPEG/Exif is also the most common format saved by digital cameras.

JPEG Compression: Basics

Human vision is insensitive to high spatial frequencies JPEG Takes advantage of this by compressing high frequencies more plainly and storing image as frequency data JPEG is a lossy compression scheme.

Losslessly compressed image, ~150KB

JPEG compressed, ~14KB

Digital Image Representation

JPEG can handle arbitrary color spaces (RGB, CMYK, YCbCr (separates colors into grayscale components) Luminance(It describes the amount of light that passes through)/Chrominance (Chrominance is usually represented as two color-difference components) commonly used, with Chrominance sub sampled due to human vision insensitivity Uncompressed spatial color data components are stored in quantized values (8, 16, 24bit, etc).

JPEG Encoding Overview

The main steps in JPEG encoding are the following Transform RGB to Y CBCRand subsample color DCT on 8x8 image blocks (The DCT transforms an 88 block of input values to a linear combination of 64 patterns. Quantization Zig-zag ordering and run-length encoding

Entropy coding

Flow Chart of JPEG Compression Process

Divide image into 8x8 pixel blocks Apply 2D Discrete Cosine Transform (DCT) Transform (The point of doing it is that we have now separated out the high- and lowfrequency information present in the image. We can discard highfrequency data easily without losing low-frequency information.) Apply quantization to high spatial frequency components Huffman compression will losslessly remove the redundancies, resulting in smaller JPEG data

8x8 pixel blocks

DCT

Frequency Dependent quantization

Zig-zag scan

Huffman encoding

Entropy coding

Quantization Table

Output(Encod ed JPEG image)

JPEG Compression ProcessImage Take 8x8 Pixel Blocks Discrete Cosine Transform Quantizer Binary Encoder ...1011001...

JPEG Compression ProcessImage Take 8x8 Pixel Blocks Discrete Cosine Transform Quantizer Binary Encoder ...1011001...

JPEG Compression ProcessImage Take 8x8 Pixel Blocks Discrete Cosine Transform Quantizer Binary Encoder ...1011001...

Bk1 ,k2 !

N1 1 N 2 1

i !0

T k1 2i 1 T k 2 2 j 1 4 Aij cos 2 N cos 2 N j !0 1 2

JPEG Compression ProcessImage Take 8x8 Pixel Blocks Discrete Cosine Transform Quantizer Binary Encoder ...1011001...

Quantization: The human eye is good at seeing small differences in brightness over a relatively large area, but not so good at distinguishing the exact strength of a high frequency variation. This allows one to greatly reduce the amount of information in the high frequency components. This is done by simply dividing each component in the frequency domain by a constant for that component, and then rounding to the nearest integer Weights the various spectral coefficients according to their importance, with

JPEG encoding and decoding processes

For an 8-bit image, each entry in the original block falls in the range [0,255]

modified range is [

128,127].

The DCT transforms an 88 block of input values to a linear combination of these 64 patterns

Quantization Matrix

The quantized DCT coefficients are computed with

26 3 2 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 1 5 1 1 2 1 0 0 0 0 3 2 0 1 0 0 0 0 0 0 0 0 0

Zigzag ordering of JPEG image components

0 0 0 0

GIF 89a Image Compression

Compuserves image compression format Best for images with sharp edges, low bits per channel, computer graphics where JPEG spatial averaging is inadequate Usually used with 8-bit images, whereas JPEG is better for 16-bit images.

cont..

Though not technically movies, animated GIFs contain multiple images which stream to create an animation effect. An animated GIF can loop endlessly are not scalable, and can produce very large files. GIF images are compressed using the LempelZiv-Welch (LZW) lossless data compression technique to reduce the file size without degrading the visual quality

The format supports up to 8 bits per pixel thus allowing a single image to reference a palette of up to 256 distinct colors. The colors are chosen from the 24-bit RGB color space. It also supports animations and allows a separate palette of 256 colors for each frame. The color limitation makes the GIF format unsuitable for reproducing color photographs and other images with continuous color, but it is well-suited for simpler images such as graphics or logos with solid areas of color.).

The GIF FormatControl block

A file generated from the grammar ::= Header * Trailer ::= Logical Screen Descriptor [Global Color Table] ::= ::= [Graphic Control Extension] ::= | Plain Text Extension ::= Image Descriptor [Local Color Table] Image Data ::= Application Extension | Comment Extension Not used for decoding

The GIF Format

Structure of a block

Block Size:byte Data Value: byte Logical Screen Width Logical Screen Height Packed Bits

Logical Screen Descriptor

Global Color Table Flag Color Resolution: number of bits per primary color - 1 Sort Flag Size of Global Color Table

Background Color Index Pixel Aspect Ratio

The GIF Format

Image Descriptor

Image Separator Image Left Position Image Top Position Image Width Image Height Packed Fields

Local Color Table Flag Interlace Flag: Interlace patter is 4-pass Sort Flag Size of Local Color Table

The GIF Format

Table-Based Image Data

LZW Minimum Code Size: same as number of color bits

Compression Steps

Establish Code Size Perform Compression Build Series of Bytes Package bytes into blocks

Image Data in sub-blocks of at most 255 bytes Extension Introducer Graphic Control Labrl Block Size Packed Bits

Graphic Control Extension

Disposal method, user input flag, transparent color flag

Delay Time Transparent Color Index

MPEG Audio basics

The MPEG compression methodology is considered asymmetric as the encoder is more complex than the decoder.[1] The encoder needs to be algorithmic or adaptive whereas the decoder is 'dumb' and carries out fixed Stereo audio streams contain largely redundant information MPEG audio compression takes advantage of these facts to reduce extent and detail of mostly inaudible frequency ranges

MPEG-2 is a standard for "the generic coding of moving pictures and associated audio information". It describes a combination of lossy video compression and lossy audio data compression methods which permit storage and transmission of movies using currently available storage media and transmission bandwidth.

MPEG-2 is widely used as the format of digital television signals that are broadcast by terrestrial (over-the-air), cable, and direct broadcast satellite TV systems. It also specifies the format of movies and other programs that are distributed on DVD and similar discs. As such, TV stations, TV receivers, DVD players, and other equipment are often designed to this standard. MPEG-2 was the second of several standards developed by the Moving Pictures Expert Group (MPEG) and is an international standard (ISO/IEC 13818).

MPEG-2 Advanced Audio Coding (AAC) codec (next generation)

Sampling frequencies from 8kHz to 96kHz 1 to 48 channels per stream Temporal Noise Shaping (TNS) smooths quantization noise by making frequency domain predictions Prediction: Allows predictable sound patterns such as speech to be predicted and compressed with better quality

MPEG-Layer3 Overview

MP3 Compression Flow Chart

Conclusion

Media compression is indispensable even as storage and streaming capacities increase Future goals oriented towards increasing ease of access to media information (similar to google for text based information)