1 / 45

Entropy coding

Entropy coding. Present by 陳群元. constraints. Compression efficiency Computational efficiency Error robustness. Encoding. DCT Reordering Run-level coding Entropy coding. Encoding. DCT Reordering Run-level coding Entropy coding. DCT. Reordering.

jatin
Download Presentation

Entropy coding

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Entropy coding Present by 陳群元

  2. constraints • Compression efficiency • Computational efficiency • Error robustness

  3. Encoding • DCT • Reordering • Run-level coding • Entropy coding

  4. Encoding • DCT • Reordering • Run-level coding • Entropy coding

  5. DCT

  6. Reordering • The optimum method of reordering the quantised data depends on the distribution of the non-zero coefficients.

  7. Evenly distribution

  8. Zigzag reordering pattern

  9. Interlaced video-vary more in vertical

  10. Modified reordering pattern

  11. Encoding • DCT • Reordering • Run-level coding • Entropy coding

  12. Run-level coding • Long sequences of identical values (zeros in this case) can berepresented as a (run, level) code • (run) indicates the number of zeros preceding anon-zero value • (level) indicates the sign and magnitude of the non-zero coefficient

  13. Run-level coding(ex)

  14. Encoding • DCT • Reordering • Run-level coding • Entropy coding

  15. Huffman Coding • ‘True’ Huffman Coding • Modified Huffman Coding • Table Design • Entropy Coding Example • Variable Length Encoder Design • Variable Length Decoder Design • Dealing with Errors

  16. Huffman Coding • ‘True’ Huffman Coding • Modified Huffman Coding • Table Design • Entropy Coding Example • Variable Length Encoder Design • Variable Length Decoder Design • Dealing with Errors

  17. True Huffman Coding

  18. Generating the HufSman code tree • 1. Order the list of data in increasing order of probability. • 2. Combine the two lowest-probability data items into a ‘node’ and assign the joint probability of the data items to this node. • 3. Reorder the remaining data items and node(s) in increasing order of probability and repeat step 2.

  19. encoding

  20. decoding

  21. disadvantage • the decoder must use the same codeword set as the encoder • reduces compression efficiency. • calculating the probability table for a large video sequence a significant computational overhead • cannot be done until after the video data is encoded

  22. Huffman Coding • ‘True’ Huffman Coding • Modified Huffman Coding • Table Design • Entropy Coding Example • Variable Length Encoder Design • Variable Length Decoder Design • Dealing with Errors

  23. Table design Final pair

  24. Table design

  25. H.263/MPEG-4 motion vector difference (MVD) • The H.263MPEG-4 differentially coded motion vectors (MVD) • are each encoded as a pair of VLCs, one for the x-component and one for the y-component

  26. mvd

  27. mvd

  28. H.26L universal VLC (UVLC) • The emerging H.26L standard takes a step away from individually calculated Huffman tables by using a ‘universal’ set of VLCs for any coded element. Each codeword is generated from the following systematic list:

  29. Huffman Coding • ‘True’ Huffman Coding • Modified Huffman Coding • Table Design • Entropy Coding Example • Variable Length Encoder Design • Variable Length Decoder Design • Dealing with Errors

  30. Entropy Coding Example

  31. Huffman Coding • ‘True’ Huffman Coding • Modified Huffman Coding • Table Design • Entropy Coding Example • Variable Length Encoder Design • Variable Length Decoder Design • Dealing with Errors

  32. Variable Length Encoder Design

  33. Huffman Coding • ‘True’ Huffman Coding • Modified Huffman Coding • Table Design • Entropy Coding Example • Variable Length Encoder Design • Variable Length Decoder Design • Dealing with Errors

  34. Variable Length Decoder Design

  35. Huffman Coding • ‘True’ Huffman Coding • Modified Huffman Coding • Table Design • Entropy Coding Example • Variable Length Encoder Design • Variable Length Decoder Design • Dealing with Errors

  36. Dealing with Errors

  37. Arithmetic Coding

  38. Ex . encode (0,-1,0,2) 0.394

  39. Ex . decode (0,-1,0,2)

  40. Arithmetic coding vshuffman • Ideal • 0.394 in this case, which can be represented as a fixed-point number with sufficient accuracy using 9 bits • Huffman: 1;0011;1;0000110=>13 bits

  41. The end • Thank you

More Related