Source Coding

List a table that compare different source coding schemes.

1) What's the limitation of Shannon code? How to improve it?
The design of Shannon codes takes a probability-matching approach: the code length of a symbol matches the probability of the symbol. L_i=ceiling(-log p_i).

2) What's the limitation of Fano code? How to improve it?
Fano code uses equal partitioning based on probability: minimize the difference of the probabilities of the two partitioned sets.

3) What's the limitation of Huffman code? How to improve it?
Huffman code uses sorting and merging of symbol sets based on probability: merge the two sets with the least probabilities.

4) Arithmetic code

5) Universal code: Lempel-Ziv code


Source coding reduces redundancy while channel coding increases redundancy.   Since redundancy can increase robustness against error (as in channel coding), why do we use source coding (reducing redundancy) and channel coding (increasing redundancy) at the same time for multimedia transmission over networks?   The reason is that the source coding reduces redundancy, the pattern of which cannot be effectively used by the receiver to recover errors; on the other hand, the pattern of redundancy in channel codes is carefully designed (using the finite field theory) and can be effectively utilized by the receiver in error correction (assuming the receiver knows the pattern of redundancy in the channel code).  


General coding techniques


Video coding techniques




¡¡

¡¡

¡¡