source coding
DESCRIPTION
Source Coding. Jean Walrand EECS. Outline. Compression Losless: Huffman Lempel-Ziv Audio: Examples Differential ADPCM SUBBAND CELP Video: Discrete Cosine Transform Motion Compensation. Compression. Goal:. Reduce the number of bits to encode source. Approaches:. - PowerPoint PPT PresentationTRANSCRIPT
UCBSource Coding
Jean WalrandEECS
UCB Outline Compression Losless:
Huffman Lempel-Ziv
Audio: Examples Differential ADPCM SUBBAND CELP
Video: Discrete Cosine Transform Motion Compensation
UCB Compression
Goal: Reduce the number of bits to encode source
Lossless: For data Lossy: For voice, video
Approaches:
UCB Huffman Encoding
Lossless Key Idea: Use shorter code words for
more frequent symbols EX1:
UCB Huffman Encoding(continued)
EX2:
UCB Huffman Encoding(continued)
If the symbols are independent and identically distributed, the Huffman encoding is the prefix-free code with the minimum average number of bits.
Note: The Shannon encoding requires fewer bits, but requires encoding large blocks of symbols.
Both codes assume that the distribution is known.
UCB Lempel-Ziv Lossless Symbols are not independent Distribution is not known Want to minimize the average number of bits Typical application: any file Approach: Build dictionary and replace string with location of prefix in the dictionary
UCB Lempel-Ziv(continued)
Example:
UCB Audio Examples:
Speech: PCM 64kbps ADPCM 32-64kbps SBC 16-32kbps VSELP-CELP 2.4-8kbps
Audio: PCM 1400kbps MPEG 48-384kbps
UCB Audio (c’d)
Differential Encoding (also used for Video): Key Idea is that differences between
successive samples may be small Difficulty: Error Propagation
UCB Audio (c’d)
Differential Encoding (c’d)
UCB Audio (c’d)
ADPCM: Adaptive Differential PCMPredict next value, encode error
UCB Audio (c’d)
Sub-Band Coding: Improves performance
UCB Audio (c’d)
CELP (Code Excited Linear Predictor)
UCB Video
Discrete Cosine Transform Objective: Extract “Visible Information”
f(x, y) = m,n F(m, n) cos(mx) cos(ny)
UCB Video (cd)
Motion Compensation Idea: Track motion of picture Encode (motion vector, modification)