Entropy coding Present by 陳群元. outline constraints  Compression efficiency  Computational efficiency  Error robustness.

Slides:



Advertisements
Similar presentations
Noise, Information Theory, and Entropy (cont.) CS414 – Spring 2007 By Karrie Karahalios, Roger Cheng, Brian Bailey.
Advertisements

JPEG DCT Quantization FDCT of 8x8 blocks.
Data Compression CS 147 Minh Nguyen.
Michael Alves, Patrick Dugan, Robert Daniels, Carlos Vicuna
MPEG4 Natural Video Coding Functionalities: –Coding of arbitrary shaped objects –Efficient compression of video and images over wide range of bit rates.
2004 NTU CSIE 1 Ch.6 H.264/AVC Part2 (pp.200~222) Chun-Wei Hsieh.
Data Compression Michael J. Watts
CABAC Based Bit Estimation for Fast H.264 RD Optimization Decision
School of Computing Science Simon Fraser University
SWE 423: Multimedia Systems
Department of Computer Engineering University of California at Santa Cruz Data Compression (3) Hai Tao.
2015/6/15VLC 2006 PART 1 Introduction on Video Coding StandardsVLC 2006 PART 1 Variable Length Coding  Information entropy  Huffman code vs. arithmetic.
Spatial and Temporal Data Mining
JPEG.
H.264 / MPEG-4 Part 10 Nimrod Peleg March 2003.
Information Theory Eighteenth Meeting. A Communication Model Messages are produced by a source transmitted over a channel to the destination. encoded.
Image (and Video) Coding and Processing Lecture: DCT Compression and JPEG Wade Trappe Again: Thanks to Min Wu for allowing me to borrow many of her slides.
CS :: Fall 2003 MPEG-1 Video (Part 1) Ketan Mayer-Patel.
2015/7/12VLC 2008 PART 1 Introduction on Video Coding StandardsVLC 2008 PART 1 Variable Length Coding  Information entropy  Huffman code vs. arithmetic.
Department of Computer Engineering University of California at Santa Cruz Data Compression (2) Hai Tao.
CS430 © 2006 Ray S. Babcock Lossy Compression Examples JPEG MPEG JPEG MPEG.
5. 1 JPEG “ JPEG ” is Joint Photographic Experts Group. compresses pictures which don't have sharp changes e.g. landscape pictures. May lose some of the.
Why Compress? To reduce the volume of data to be transmitted (text, fax, images) To reduce the bandwidth required for transmission and to reduce storage.
Image and Video Compression
Basics of Compression Goals: to understand how image/audio/video signals are compressed to save storage and increase transmission efficiency to understand.
Computer Vision – Compression(2) Hanyang University Jong-Il Park.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 8 – JPEG Compression (Part 3) Klara Nahrstedt Spring 2012.
Encoding Stereo Images Christopher Li, Idoia Ochoa and Nima Soltani.
Huffman coding By: Justin Bancroft. Huffman coding is the most efficient way to code DCT coefficients.
1 Image Compression. 2 GIF: Graphics Interchange Format Basic mode Dynamic mode A LZW method.
Klara Nahrstedt Spring 2011
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 7 – Basics of Compression (Part 2) Klara Nahrstedt Spring 2011.
Concepts of Multimedia Processing and Transmission IT 481, Lecture 5 Dennis McCaughey, Ph.D. 19 February, 2007.
Huffman Encoding Veronica Morales.
Prof. Amr Goneid Department of Computer Science & Engineering
Indiana University Purdue University Fort Wayne Hongli Luo
Image Compression (Chapter 8) CSC 446 Lecturer: Nada ALZaben.
Codec structuretMyn1 Codec structure In an MPEG system, the DCT and motion- compensated interframe prediction are combined. The coder subtracts the motion-compensated.
Entropy Coding Heejune AHN Embedded Communications Laboratory Seoul National Univ. of Technology Fall 2013 Last updated
An introduction to audio/video compression Dr. Malcolm Wilson.
Prof. Amr Goneid, AUC1 Analysis & Design of Algorithms (CSCE 321) Prof. Amr Goneid Department of Computer Science, AUC Part 8. Greedy Algorithms.
Huffman Code and Data Decomposition Pranav Shah CS157B.
CS Spring 2014 CS 414 – Multimedia Systems Design Lecture 10 – Compression Basics and JPEG Compression (Part 4) Klara Nahrstedt Spring 2014.
CS654: Digital Image Analysis Lecture 34: Different Coding Techniques.
Bahareh Sarrafzadeh 6111 Fall 2009
JPEG Image Compression Standard Introduction Lossless and Lossy Coding Schemes JPEG Standard Details Summary.
CS654: Digital Image Analysis
Block-based coding Multimedia Systems and Standards S2 IF Telkom University.
STATISTIC & INFORMATION THEORY (CSNB134) MODULE 11 COMPRESSION.
Introduction to JPEG m Akram Ben Ahmed
بسم الله الرحمن الرحيم My Project Huffman Code. Introduction Introduction Encoding And Decoding Encoding And Decoding Applications Applications Advantages.
Page 1KUT Graduate Course Data Compression Jun-Ki Min.
JPEG. Introduction JPEG (Joint Photographic Experts Group) Basic Concept Data compression is performed in the frequency domain. Low frequency components.
Huffman Coding (2 nd Method). Huffman coding (2 nd Method)  The Huffman code is a source code. Here word length of the code word approaches the fundamental.
4C8 Dr. David Corrigan Jpeg and the DCT. 2D DCT.
Tamal Bose, Digital Signal and Image Processing © 2004 by John Wiley & Sons, Inc. All rights reserved. Figure 11-1 (p. 624) (a) Image coder; (b) image.
Efficient Huffman Decoding Aggarwal, M. and Narayan, A., International Conference on Image Processing, vol. 1, pp. 936 – 939, 2000 Presenter :Yu-Cheng.
JPEG Compression What is JPEG? Motivation
Huffman Codes ASCII is a fixed length 7 bit code that uses the same number of bits to define each character regardless of how frequently it occurs. Huffman.
IMAGE PROCESSING IMAGE COMPRESSION
Assignment 6: Huffman Code Generation
Data Compression.
Digital Image Processing Lecture 21: Lossy Compression May 18, 2005
Context-based Data Compression
Analysis & Design of Algorithms (CSCE 321)
MPEG4 Natural Video Coding
Distributed Compression For Binary Symetric Channels
Image Coding and Compression
Chapter 8 – Compression Aims: Outline the objectives of compression.
Electrical Communications Systems ECE
Presentation transcript:

Entropy coding Present by 陳群元

outline

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  The optimum method of reordering the quantised data depends on the distribution of the non-zero coefficients.

Evenly distribution

Zigzag reordering pattern

Interlaced video-vary more in vertical

Modified reordering pattern

Encoding  DCT  Reordering  Run-level coding  Entropy coding

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

Run-level coding(ex)

Encoding  DCT  Reordering  Run-level coding  Entropy coding

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

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

True Huffman Coding

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.

encoding

decoding

Carphone vs claire

claire

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

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

Table design Final pair

Table design

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

mvd

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:

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

Entropy Coding Example

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

Variable Length Encoder Design

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

Variable Length Decoder Design

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

Dealing with Errors

Arithmetic Coding

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

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

Arithmetic coding vs huffman  Ideal  in this case, which can be represented as a fixed- point number with sufficient accuracy using 9 bits  Huffman: 1;0011;1; =>13 bits

 The end  Thank you