EE569 Digital Video Processing

Slides:



Advertisements
Similar presentations
Introduction to H.264 / AVC Video Coding Standard Multimedia Systems Sharif University of Technology November 2008.
Advertisements

MPEG4 Natural Video Coding Functionalities: –Coding of arbitrary shaped objects –Efficient compression of video and images over wide range of bit rates.
Basics of MPEG Picture sizes: up to 4095 x 4095 Most algorithms are for the CCIR 601 format for video frames Y-Cb-Cr color space NTSC: 525 lines per frame.
Technion - IIT Dept. of Electrical Engineering Signal and Image Processing lab Transrating and Transcoding of Coded Video Signals David Malah Ran Bar-Sella.
1 Video Coding Concept Kai-Chao Yang. 2 Video Sequence and Picture Video sequence Large amount of temporal redundancy Intra Picture/VOP/Slice (I-Picture)
Reji Mathew and David S. Taubman CSVT  Introduction  Quad-tree representation  Quad-tree motion modeling  Motion vector prediction strategies.
Spatial and Temporal Data Mining
Losslessy Compression of Multimedia Data Hao Jiang Computer Science Department Sept. 25, 2007.
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.
JPEG Still Image Data Compression Standard
Investigation of Motion-Compensated Lifted Wavelet Transforms Information Systems Laboratory Department of Electrical Engineering Stanford University Markus.
CMPT 365 Multimedia Systems
T.Sharon-A.Frank 1 Multimedia Image Compression 2 T.Sharon-A.Frank Coding Techniques – Hybrid.
Department of Computer Engineering University of California at Santa Cruz Data Compression (2) Hai Tao.
SWE 423: Multimedia Systems Chapter 7: Data Compression (4)
1 Image and Video Compression: An Overview Jayanta Mukhopadhyay Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur,
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.
An Introduction to H.264/AVC and 3D Video Coding.
Video Compression Concepts Nimrod Peleg Update: Dec
Image and Video Compression
Image Compression - JPEG. Video Compression MPEG –Audio compression Lossy / perceptually lossless / lossless 3 layers Models based on speech generation.
Lossy Image Compression
Lossy Compression Based on spatial redundancy Measure of spatial redundancy: 2D covariance Cov X (i,j)=  2 e -  (i*i+j*j) Vertical correlation   
Speech coding. What’s the need for speech coding ? Necessary in order to represent human speech in a digital form Applications: mobile/telephone communication,
Introduction to JPEG Alireza Shafaei ( ) Fall 2005.
ECE472/572 - Lecture 12 Image Compression – Lossy Compression Techniques 11/10/11.
 Coding efficiency/Compression ratio:  The loss of information or distortion measure:
Video Coding. Introduction Video Coding The objective of video coding is to compress moving images. The MPEG (Moving Picture Experts Group) and H.26X.
Introduction to JPEG and MPEG Ingemar J. Cox University College London.
Comparative study of various still image coding techniques. Harish Bhandiwad EE5359 Multimedia Processing.
Image and Video Compression Fundamentals Heejune AHN Embedded Communications Laboratory Seoul National Univ. of Technology Fall 2013 Last updated 2013.
EE465: Introduction to Digital Image Processing1 Data Compression Techniques Text: WinZIP, WinRAR (Lempel-Ziv compression’1977) Image: JPEG (DCT-based),
JPEG. The JPEG Standard JPEG is an image compression standard which was accepted as an international standard in  Developed by the Joint Photographic.
Image Processing and Computer Vision: 91. Image and Video Coding Compressing data to a smaller volume without losing (too much) information.
CIS679: Multimedia Basics r Multimedia data type r Basic compression techniques.
JPEG CIS 658 Fall 2005.
EE591f Digital Video Processing 1 Roadmap Introduction Intra-frame coding –Review of JPEG Inter-frame coding –Conditional Replenishment (CR) –Motion Compensated.
Image Compression Supervised By: Mr.Nael Alian Student: Anwaar Ahmed Abu-AlQomboz ID: IT College “Multimedia”
1 Classification of Compression Methods. 2 Data Compression  A means of reducing the size of blocks of data by removing  Unused material: e.g.) silence.
Outline Kinds of Coding Need for Compression Basic Types Taxonomy Performance Metrics.
Compression There is need for compression: bandwidth constraints of multimedia applications exceed the capability of communication channels Ex. QCIF bit.
Compression video overview 演講者:林崇元. Outline Introduction Fundamentals of video compression Picture type Signal quality measure Video encoder and decoder.
An introduction to audio/video compression Dr. Malcolm Wilson.
Compression of Real-Time Cardiac MRI Video Sequences EE 368B Final Project December 8, 2000 Neal K. Bangerter and Julie C. Sabataitis.
Advances in digital image compression techniques Guojun Lu, Computer Communications, Vol. 16, No. 4, Apr, 1993, pp
JPEG Image Compression Standard Introduction Lossless and Lossy Coding Schemes JPEG Standard Details Summary.
ELE 488 F06 ELE 488 Fall 2006 Image Processing and Transmission ( ) Image Compression Quantization independent samples uniform and optimum correlated.
CS654: Digital Image Analysis
Video Compression—From Concepts to the H.264/AVC Standard
Page 11/28/2016 CSE 40373/60373: Multimedia Systems Quantization  F(u, v) represents a DCT coefficient, Q(u, v) is a “quantization matrix” entry, and.
Block-based coding Multimedia Systems and Standards S2 IF Telkom University.
STATISTIC & INFORMATION THEORY (CSNB134) MODULE 11 COMPRESSION.
Chapter 8 Lossy Compression Algorithms. Fundamentals of Multimedia, Chapter Introduction Lossless compression algorithms do not deliver compression.
EE465: Introduction to Digital Image Processing1 Lossy Image Compression: a Quick Tour of JPEG Coding Standard Why lossy for grayscale images?  Tradeoff.
Image Processing Architecture, © Oleh TretiakPage 1Lecture 7 ECEC 453 Image Processing Architecture Lecture 8, February 5, 2004 JPEG: A Standard.
MPEG CODING PROCESS. Contents  What is MPEG Encoding?  Why MPEG Encoding?  Types of frames in MPEG 1  Layer of MPEG1 Video  MPEG 1 Intra frame Encoding.
EE591f Digital Video Processing
Motion Estimation Multimedia Systems and Standards S2 IF Telkom University.
By Dr. Hadi AL Saadi Lossy Compression. Source coding is based on changing of the original image content. Also called semantic-based coding High compression.
An introduction to audio/video compression Prepared by :: Bhatt shivani ( )
MP3 and AAC Trac D. Tran ECE Department The Johns Hopkins University Baltimore MD
H. 261 Video Compression Techniques 1. H.261  H.261: An earlier digital video compression standard, its principle of MC-based compression is retained.
Complexity varying intra prediction in H.264 Supervisors: Dr. Ofer Hadar, Mr. Evgeny Kaminsky Students: Amit David, Yoav Galon.
JPEG Compression What is JPEG? Motivation
IMAGE PROCESSING IMAGE COMPRESSION
Discrete Cosine Transform
Research Topic Error Concealment Techniques in H.264/AVC for Wireless Video Transmission Vineeth Shetty Kolkeri EE Graduate,UTA.
Comparative study of various still image coding techniques.
JPEG Still Image Data Compression Standard
Presentation transcript:

EE569 Digital Video Processing Roadmap Introduction Intra-frame coding Review of JPEG Inter-frame coding Conditional Replenishment (CR) Coding Motion Compensated Predictive (MCP) Coding Object-based and scalable video coding* Motion segmentation, scalability issues EE569 Digital Video Processing

Introduction to Video Coding Lossless vs. lossy data compression Source entropy H(X) Rate-Distortion function R(D) or D(R) Probabilistic modeling is at the heart of data compression What is P(X) for video source X? Is video coding more difficult than image coding? EE569 Digital Video Processing

EE569 Digital Video Processing Shannon’s Picture Distortion For Gaussian source N(0,2) Coder A Coder B Rate (bps) For video source, no one knows the limit (bound) EE569 Digital Video Processing

EE569 Digital Video Processing Distortion Measures Objective Mean Square Error (MSE) Peak Signal-to-Noise-Ratio (PSNR) Measure the fidelity to original video Subjective Human Vision System (HVS) based Emphasize visual quality rather than fidelity We only discuss objective measures in this course, but subjective video quality assessment is an open and important topic EE569 Digital Video Processing

Video Coding Applications EE569 Digital Video Processing

EE569 Digital Video Processing Roadmap Introduction Intra-frame coding Review of JPEG Inter-frame coding Conditional Replenishment (CR) Motion Compensated Prediction (MCP) Object-based and scalable video coding* Motion segmentation, scalability issues EE569 Digital Video Processing

A Tour of JPEG Coding Standard Key Components Transform -8×8 DCT -boundary padding Quantization -uniform quantization -DC/AC coefficients Coding -Zigzag scan -run length/Huffman coding EE569 Digital Video Processing

EE569 Digital Video Processing JPEG Baseline Coder Tour Example EE569 Digital Video Processing

EE569 Digital Video Processing Step 1: Transform • DC level shifting -128 • 2D DCT DCT EE569 Digital Video Processing

EE569 Digital Video Processing Step 2: Quantization Why increase from top-left to bottom-right? Q-table Q EE569 Digital Video Processing

EE569 Digital Video Processing Step 3: Entropy Coding Zigzag Scan (20,5,-3,-1,-2,-3,1,1,-1,-1, 0,0,1,2,3,-2,1,1,0,0,0,0,0, 0,1,1,0,1,EOB) End Of the Block: All following coefficients are zero Zigzag Scan EE569 Digital Video Processing

EE569 Digital Video Processing Roadmap Introduction Intra-frame coding Review of JPEG Inter-frame coding Conditional Replenishment (CR) Motion Compensated Prediction (MCP) Object-based and scalable video coding* Motion segmentation, scalability issues EE569 Digital Video Processing

Conditional Replenishment Based on motion detection rather than motion estimation Partition the current frame into “still areas” and “moving areas” Replenishment is applied to moving regions only Repetition is applied to still regions Need to transmit the location of moving areas as well as new (replenishment) information No motion vectors transmitted EE569 Digital Video Processing

Conditional Replenishment EE569 Digital Video Processing

EE569 Digital Video Processing Motion Detection EE569 Digital Video Processing

From Replenishment to Prediction Replenishment can be viewed as a degenerated case of prediction Only zero motion vector is considered Discard the history A more powerful approach of exploiting temporal dependency is prediction Locate the best match from the previous frame Use the history to predict the current EE569 Digital Video Processing

Differential Pulse Coded Modulation ^ xn yn yn ^ ^ yn xn _ Q + xn-1 ^ ^ ^ xn-1 xn D + D ^ xn-1 Decoder Encoder Xn,yn: unquantized samples and prediction residues ^ ^ Xn,yn: decoded samples and quantized prediction residues EE569 Digital Video Processing

Motion-Compensated Predictive Coding EE569 Digital Video Processing

EE569 Digital Video Processing A Closer Look EE569 Digital Video Processing

EE569 Digital Video Processing Key Components Motion Estimation/Compensation At the heart of MCP-based coding Coding of Motion Vectors (overhead) Lossless: errors in MV are catastrophic Coding of MCP residues Lossy: distortion is controlled by the quantization step-size Rate-Distortion optimization EE569 Digital Video Processing

Block-based Motion Model Block size Fixed vs. variable Motion accuracy Integer-pel vs. fractional-pel Number of hypothesis Overlapped Block Motion Compensation (OBMC) Multi-frame prediction EE569 Digital Video Processing

Quadtree Representation of Motion Field with Variable Blocksize Sullivan, G.J.; Baker, R.L., "Rate-distortion optimized motion compensation for video compression using fixed or variable size blocks," GLOBECOM '91. pp.85-90 vol.1, 2-5 Dec 1991 EE569 Digital Video Processing

EE569 Digital Video Processing Example counted bits using a VLC table EE569 Digital Video Processing

EE569 Digital Video Processing Fractional-pel BMA Recall the tradeoff between spending bits on motion and spending bits on MCP residues Intuitively speaking, going from integer-pel to fractional-pel is good for it dramatically reduces the variance of MCP residues for some video sequence. The gain quickly saturates as motion accuracy refines EE569 Digital Video Processing

EE569 Digital Video Processing Example 8-by-8 block, integer-pel, var(e)=220.8 8-by-8 block, half-pel, var(e)=123.8 MCP residue comparison for the first two frames of Mobile sequence EE569 Digital Video Processing

EE569 Digital Video Processing Fractional-pel MCP Girod, B., "Motion-compensating prediction with fractional-pel accuracy," IEEE Trans. on Communications, vol.41, no.4, pp.604-612, Apr 1993 EE569 Digital Video Processing

EE569 Digital Video Processing Multi-Hypothesis MCP Using one block from one reference frame represents a single-hypothesis MCP It is possible to formulate multiple hypothesis by considering Overlapped blocks More than one reference frame Why multi-hypothesis? The benefit of reducing variance of MCP residues outweighs the increased overhead on motion EE569 Digital Video Processing

EE569 Digital Video Processing Example: B-frame fn-1 fn fn+1 EE569 Digital Video Processing

EE569 Digital Video Processing Generalized B-frame fn-2 fn-1 fn+2 fn fn+1 EE569 Digital Video Processing

Overlapped Block Motion Compensation (OBMC)   EE569 Digital Video Processing

Overlapped Block Motion Compensation (OBMC) Conventional block motion compensation One best matching block is found from a reference frame The current block is predicted by the best matching block OBMC Each pixel in the current block is predicted by a weighted average of several corresponding pixels in the reference frame The corresponding pixels are determined by the MVs of the current as well as adjacent MBs The weights for each corresponding pixel depends on the expected accuracy of the associated MV EE569 Digital Video Processing

OBMC Using 4 Neighboring MBs Should be inversely proportional to the distance between x and the center of EE569 Digital Video Processing

Optimal Weighting Design* Convert to an optimization problem: Minimize Subject to Optimal weighting functions: EE569 Digital Video Processing

EE569 Digital Video Processing Multi-Hypothesis MCP EE569 Digital Video Processing

EE569 Digital Video Processing Key Components Motion Estimation At the heart of MCP-based coding Coding of Motion Vectors (overhead) Lossless: errors in MV are catastrophic Coding of MCP residues Lossy: distortion is controlled by the quantization step-size Rate-Distortion optimization EE569 Digital Video Processing

EE569 Digital Video Processing Motion Vector Coding 2D lossless DPCM Spatially (temporally) adjacent motion vectors are correlated Use causal neighbors to predict the current one Code Motion Vector Difference (MVD) instead of MVs Entropy coding techniques Variable length codes (VLC) Arithmetic coding EE569 Digital Video Processing

EE569 Digital Video Processing MVD Example MV1 MV2 MV3 MV Due to smoothness of MV field, MVD usually has a smaller variance than MV EE569 Digital Video Processing

EE569 Digital Video Processing VLC Example MVx/MVy symbol codeword 1 1 1 2 010 -1 3 011 2 4 00100 -2 5 00101 3 6 00110 Exponential Golomb Codes: 0…01x…x m m-1 EE569 Digital Video Processing

EE569 Digital Video Processing Key Components Motion Estimation At the heart of MCP-based coding Coding of Motion Vectors (overhead) Lossless: errors in MV are catastrophic Coding of MCP residues Lossy: distortion is controlled by the quantization step-size Rate-Distortion optimization EE569 Digital Video Processing

EE569 Digital Video Processing MCP Residue Coding Transform Quantization Coding Conceptually similar to JPEG Transform: unitary transform Quantization: Deadzone quantization Coding: Run-length coding EE569 Digital Video Processing

EE569 Digital Video Processing Transform Unitary matrix: A is real, A-1=AT Unitary transform: A is unitary, Y=AXAT Examples 8-by-8 DCT 4-by-4 integer transform EE569 Digital Video Processing

Deadzone Quantization    2    codewords EE569 Digital Video Processing

EE569 Digital Video Processing Key Components Motion Estimation At the heart of MCP-based coding Coding of Motion Vectors (overhead) Lossless: errors in MV are catastrophic Coding of MCP residues Lossy: distortion is controlled by the quantization step-size Rate-Distortion optimization EE569 Digital Video Processing

Constrained Optimization Min f(x,y) subject to g(x,y)=c

Lagrangian Multiplier Method Motion estimation Mode selection QUANT: a user-specified parameter controlling quantization stepsize EE569 Digital Video Processing

Example: Rate-Distortion Optimized BMA Distortion alone Rate and Distortion counted bits using a VLC table EE569 Digital Video Processing

EE569 Digital Video Processing Experimental Results Cited from G. Sullivan and L. Baker, “Rate-Distortion optimized motion compensation for video compression using fixed or variable size blocks”, Globecom’1991 EE569 Digital Video Processing

EE569 Digital Video Processing Summary How does MCP coding work? The predictive model captures the slow-varying trend of the samples {fn} The modeling of prediction residues {en} is easier than that of original samples {fn} Fundamental weakness Quantization error will propagate unless the memory of predictor is refreshed Not suitable for scalable coding applications EE569 Digital Video Processing