compression5 - Compression Outline 15-853:Algorithms in the...

Info iconThis preview shows pages 1–5. Sign up to view the full content.

View Full Document Right Arrow Icon
1 15-853 Page 1 15-853:Algorithms in the Real World Data Compression 4 15-853 Page 2 Compression Outline Introduction : Lossy vs. Lossless, Benchmarks, … Information Theory : Entropy, etc. Probability Coding : Huffman + Arithmetic Coding Applications of Probability Coding : PPM + others Lempel-Ziv Algorithms : LZ77, gzip, compress, … Other Lossless Algorithms: Burrows-Wheeler Lossy algorithms for images: JPEG, MPEG, . .. – Scalar and vector quantization –JPEG and MPEG Compressing graphs and meshes: BBK 15-853 Page 3 Scalar Quantization Quantize regions of values into a single value: input output uniform input output non uniform Can be used to reduce # of bits for a pixel 15-853 Page 4 Generate Output Vector Quantization Generate Vector Find closest code vector Codebook Index Index Codebook Out In Encode Decode
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2 15-853 Page 5 Vector Quantization What do we use as vectors? • Color (Red, Green, Blue) – Can be used, for example to reduce 24bits/pixel to 8bits/pixel – Used in some terminals to reduce data rate from the CPU (colormaps) • K consecutive samples in audio • Block of K pixels in an image How do we decide on a codebook • Typically done with clustering 15-853 Page 6 Vector Quantization: Example 15-853 Page 7 Linear Transform Coding Want to encode values over a region of time or space – Typically used for images or audio Select a set of linear basis functions f i that span the space – sin, cos, spherical harmonics, wavelets, … – Defined at discrete points 15-853 Page 8 Linear Transform Coding Coefficients: = = Θ j ij j j i j i a x j x ) ( φ ) ( t coefficien transform e input valu t coefficien resulting i j ij a j x i th ij th j th i = = = = Θ In matrix notation: Where A is an n x n matrix, and each row defines a basis function Θ = = Θ 1 A x Ax
Background image of page 2
3 15-853 Page 9 Example: Cosine Transform ) ( 0 j φ ) ( 1 j x j Θ i = Θ j i j i j x ) ( ) ( 2 j 15-853 Page 10 Other Transforms Polynomial: 1x x 2 Wavelet (Haar): 15-853 Page 11 How to Pick a Transform Goals: – Decorrelate – Low coefficients for many terms – Basis functions that can be ignored by perception Why is using a Cosine of Fourier transform across a whole image bad? How might we fix this? 15-853 Page 12 Usefulness of Transform Typically transforms A are orthonormal : A -1 = A T Properties of orthonormal transforms : ±∑ x 2 = ∑Θ 2 (energy conservation) Would like to compact energy into as few coefficients as possible () n i i TC n G 1 2 2 1 = σ (the transform coding gain ) arithmetic mean/geometric mean σ i = ( Θ i - Θ av ) The higher the gain, the better the compression
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
4 15-853 Page 13 Case Study: JPEG A nice example since it uses many techniques: – Transform coding (Cosine transform) – Scalar quantization – Difference coding –Run - leng th cod ing – Huffman or arithmetic coding JPEG (Joint Photographic Experts Group) was designed in 1991 for lossy and lossless compression of color or grayscale images . The lossless version is rarely used.
Background image of page 4
Image of page 5
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 11/09/2008 for the course COMPUTER S 15853 taught by Professor Guyblelloch during the Fall '07 term at Carnegie Mellon.

Page1 / 15

compression5 - Compression Outline 15-853:Algorithms in the...

This preview shows document pages 1 - 5. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online