Video Coding: Block Motion Estimation Trac D. Tran ECE Department The Johns Hopkins University Baltimore MD 21218.

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.
A Performance Analysis of the ITU-T Draft H.26L Video Coding Standard Anthony Joch, Faouzi Kossentini, Panos Nasiopoulos Packetvideo Workshop 2002 Department.
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.
MPEG-4 Objective Standardize algorithms for audiovisual coding in multimedia applications allowing for Interactivity High compression Scalability of audio.
Yen-Lin Lee and Truong Nguyen ECE Dept., UCSD, La Jolla, CA Method and Architecture Design for Motion Compensated Frame Interpolation in High-Definition.
Recursive End-to-end Distortion Estimation with Model-based Cross-correlation Approximation Hua Yang, Kenneth Rose Signal Compression Lab University of.
Probabilistic video stabilization using Kalman filtering and mosaicking.
Department of Computer Engineering University of California at Santa Cruz Video Compression Hai Tao.
CS :: Fall 2003 MPEG Video (Part 2) Ketan Mayer-Patel.
H.264 / MPEG-4 Part 10 Nimrod Peleg March 2003.
Lecture06 Video Compression. Spatial Vs. Temporal Redundancy Image compression techniques exploit spatial redundancy, the phenomenon that picture contents.
Scalable Wavelet Video Coding Using Aliasing- Reduced Hierarchical Motion Compensation Xuguang Yang, Member, IEEE, and Kannan Ramchandran, Member, IEEE.
Introduction to Video Transcoding Of MCLAB Seminar Series By Felix.
CS :: Fall 2003 MPEG-1 Video (Part 1) Ketan Mayer-Patel.
Image (and Video) Coding and Processing Lecture: Motion Compensation Wade Trappe Most of these slides are borrowed from Min Wu and KJR Liu of UMD.
Fundamentals of Multimedia Chapter 10 Basic Video Compression Techniques Ze-Nian Li & Mark S. Drew 건국대학교 인터넷미디어공학부 임 창 훈.
Xinqiao LiuRate constrained conditional replenishment1 Rate-Constrained Conditional Replenishment with Adaptive Change Detection Xinqiao Liu December 8,
An Introduction to H.264/AVC and 3D Video Coding.
Video Compression Concepts Nimrod Peleg Update: Dec
EE392J Final Project, March 20, Multiple Camera Object Tracking Helmy Eltoukhy and Khaled Salama.
EE 5359 H.264 to VC 1 Transcoding Vidhya Vijayakumar Multimedia Processing Lab MSEE, University of Arlington Guided.
Lossy Compression Based on spatial redundancy Measure of spatial redundancy: 2D covariance Cov X (i,j)=  2 e -  (i*i+j*j) Vertical correlation   
JPEG 2000 Image Type Image width and height: 1 to 2 32 – 1 Component depth: 1 to 32 bits Number of components: 1 to 255 Each component can have a different.
Kai-Chao Yang Hierarchical Prediction Structures in H.264/AVC.
ELE 488 F06 ELE 488 Fall 2006 Image Processing and Transmission ( ) Digital Video Motion Pictures Broadcast Television Digital Video 11/28.
Video Coding. Introduction Video Coding The objective of video coding is to compress moving images. The MPEG (Moving Picture Experts Group) and H.26X.
MPEG-1 and MPEG-2 Digital Video Coding Standards Author: Thomas Sikora Presenter: Chaojun Liang.
1 Efficient Reference Frame Selector for H.264 Tien-Ying Kuo, Hsin-Ju Lu IEEE CSVT 2008.
Videos Mei-Chen Yeh. Outline Video representation Basic video compression concepts – Motion estimation and compensation Some slides are modified from.
Image Processing and Computer Vision: 91. Image and Video Coding Compressing data to a smaller volume without losing (too much) information.
Adaptive Multi-path Prediction for Error Resilient H.264 Coding Xiaosong Zhou, C.-C. Jay Kuo University of Southern California Multimedia Signal Processing.
Codec structuretMyn1 Codec structure In an MPEG system, the DCT and motion- compensated interframe prediction are combined. The coder subtracts the motion-compensated.
June, 1999 An Introduction to MPEG School of Computer Science, University of Central Florida, VLSI and M-5 Research Group Tao.
Image Compression Supervised By: Mr.Nael Alian Student: Anwaar Ahmed Abu-AlQomboz ID: IT College “Multimedia”
A hardware-Friendly Wavelet Entropy Codec for Scalable video Hendrik Eeckhaut ELIS-PARIS Ghent University Belgium.
Compression video overview 演講者:林崇元. Outline Introduction Fundamentals of video compression Picture type Signal quality measure Video encoder and decoder.
Rate-distortion Optimized Mode Selection Based on Multi-channel Realizations Markus Gärtner Davide Bertozzi Classroom Presentation 13 th March 2001.
MOTION ESTIMATION IMPLEMENTATION IN RECONFIGURABLE PLATFORMS
Guillaume Laroche, Joel Jung, Beatrice Pesquet-Popescu CSVT
Applying 3-D Methods to Video for Compression Salih Burak Gokturk Anne Margot Fernandez Aaron March 13, 2002 EE 392J Project Presentation.
Advances in digital image compression techniques Guojun Lu, Computer Communications, Vol. 16, No. 4, Apr, 1993, pp
Image/Video Coding Techniques for IPTV Applications Wen-Jyi Hwang ( 黃文吉 ) Department of Computer Science and Information Engineering, National Taiwan Normal.
Fast motion estimation and mode decision for H.264 video coding in packet loss environment Li Liu, Xinhua Zhuang Computer Science Department, University.
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.
Video Compression and Standards
Motion Estimation Presented By: Dr. S. K. Singh Department of Computer Engineering, Indian Institute of Technology (B.H.U.) Varanasi
EE591f Digital Video Processing
Motion Estimation Multimedia Systems and Standards S2 IF Telkom University.
BLOCK BASED MOTION ESTIMATION. Road Map Block Based Motion Estimation Algorithms. Procedure Of 3-Step Search Algorithm. 4-Step Search Algorithm. N-Step.
6/9/20161 Video Compression Techniques Image, Video and Audio Compression standards have been specified and released by two main groups since 1985: International.
Principles of Video Compression Dr. S. M. N. Arosha Senanayake, Senior Member/IEEE Associate Professor in Artificial Intelligence Room No: M2.06
Signal Prediction, Transformation & Decomposition Trần Duy Trác ECE Department The Johns Hopkins University Baltimore MD
1שידור ווידיאו ואודיו ברשת האינטרנט Dr. Ofer Hadar Communication Systems Engineering Department Ben-Gurion University of the Negev URL:
Multi-Frame Motion Estimation and Mode Decision in H.264 Codec Shauli Rozen Amit Yedidia Supervised by Dr. Shlomo Greenberg Communication Systems Engineering.
Video Compression Video : Sequence of frames Each Frame : 2-D Array of Pixels Video: 3-D data – 2-D Spatial, 1-D Temporal Video has both : – Spatial Redundancy.
CMPT365 Multimedia Systems 1 Media Compression - Video Spring 2015 CMPT 365 Multimedia Systems.
Signal Prediction and Transformation Trac D. Tran ECE Department The Johns Hopkins University Baltimore MD
MPEG Video Coding I: MPEG-1 1. Overview  MPEG: Moving Pictures Experts Group, established in 1988 for the development of digital video.  It is appropriately.
H. 261 Video Compression Techniques 1. H.261  H.261: An earlier digital video compression standard, its principle of MC-based compression is retained.
Introduction to H.264 / AVC Video Coding Standard Multimedia Systems Sharif University of Technology November 2008.
Dr. Ofer Hadar Communication Systems Engineering Department
Error Concealment In The Pixel Domain And MATLAB commands
ELE 488 Fall 2006 Image Processing and Transmission ( )
Anisotropic Double Cross Search Algorithm using Multiresolution-Spatio-Temporal Context for Fast Lossy In-Band Motion Estimation Yu Liu and King Ngi Ngan.
Standards Presentation ECE 8873 – Data Compression and Modeling
MPEG4 Natural Video Coding
VIDEO COMPRESSION FUNDAMENTALS
Presentation transcript:

Video Coding: Block Motion Estimation Trac D. Tran ECE Department The Johns Hopkins University Baltimore MD 21218

Outline  Video coding algorithms and standards: an overview  Main observations. Several simple video codecs  Motion-compensated DCT coding (MC-DCT)  Motion-compensated wavelet coding (MC-DWT)  3D wavelet and subband coding  Block motion estimation (BME) and motion compensation  Principle. Error measures. Optimality. Search strategies.  Examples of fast sub-optimal algorithms  Fast optimal algorithms: spiral search, successive elimination, projection matching...  Combination searches: hierarchical, spatial correlation, rate- constrained...  Advanced topics in motion estimation / motion compensation  Global motion estimation  Advanced motion models: sub-pixel motion, affine motion, meshes, variable-block-size MEMC...

Main Observations  Video signal is a sequence of still images or frames  Correlation in video sequence  Temporal correlation: similar background with a few moving objects in the foreground  Spatial correlation: similar pixels seem to group together – just like spatial correlation in images  There is usually much more temporal correlation then spatial  Motion model in video sequence  Natural motion  moving people & moving objects  translational, rotational, scaling  Camera motion  camera panning, camera zooming, fading

Examples of Video Sequences Frame  Observations of Visual Data  There is a lot of redundancy, correlation, strong structure within natural image/video  Images  Spatial correlation: a lot of smooth areas with occasional edges  Video  Temporal correlation: neighboring frames seem to be very similar

Simple Video Coders  JPEG/JPEG2000 encodes every frame independently  Quite popular: Motion-JPEG, Motion-JPEG2000  Does not take into account any temporal correlation  Advantage: very simple and fast, no latency (frame delay), easy frame access for video editing  Disadvantage: low coding performance  JPEG/JPEG2000 encodes frame difference  Requires very stationary background to be effective  Advantage: improves compression, low latency  Disadvantage: still low coding performance, open-loop design, quantization error accumulation from coder/decoder mismatch  JPEG/JPEG2000 encodes frame difference – closed-loop  Advantage: no error accumulation, low latency, simple  Disadvantage: too simple motion model, still low compression

Motion-Compensated Framework  Transform-based coding on motion-compensated prediction error (residue)  Popular transformations: block DCT or wavelet  Closed-loop DPCM to prevent error propagation (drifting)  Usually employed block-translation motion model  All international video coding standards are based on this coding framework  Video teleconferencing: H.261, H.263, H.263++, H.26L/H.264  Video archive & play-back: MPEG-1, MPEG-2 (in DVDs) MPEG-4

Typical MC Codec Entropy Decoding, Inverse Q, Inverse Transform Motion Comp. Predictor Transform, Quantization, Entropy Coding Motion Estimation Frame Buffer (Delay) Motion Compensated Prediction Input Frame Encoded Residual (To Channel) Approximated Input Frame (To Display) Motion Vector and Block Mode Data (Side-Info, To Channel) Decoder

Motion Estimation  Goal: extract correlation between adjacent video frames to improve compression efficiency  General problem statement:  Practical motion model: small objects or regions moving in translational fashion  Block-based motion estimation (BME) and compensation (BMC) time axis

Intra- and Inter-Coding  Inter-coding:  blocks of predicted motion error labeled P-block is encoded  Intra-coding  any block that motion estimation fails to find a good match is labeled I-block and encoded as is (without any motion compensation)  Conditional replenishment  when prediction error is low, no coding or decoding is necessary  we simply record the motion vector and replenish the block from the reference frame.

Motion Models  Translation  Affine  Bilinear  Perspective

Principle of BME  Partition current frame into small non-overlapped blocks called macro-blocks (MB)  For each block, within a search window, find the motion vector (displacement) that minimizes a pre-defined mismatch error  For each block, motion vector and prediction error (residue) are encoded Search Window Reference Frame Current Frame MV

BME: Error Measure  Sum of absolute differences  Sum of squared errors (mean-squared error)  Discussions:  Other norms, correlation measure have been tested  Approximately same coding performance  SAD is less complex for some hardware architectures search range current blockreference block

Common Setting  Macro-block  Luminance: 16x16, four 8x8 blocks  Chrominance: two 8x8 blocks  Motion estimation only performed for luminance  Motion vector range  [ -15, 15] YY YY CrCb Search Area

Search Strategies I  All possible MV candidates within the search range are investigated  Very computationally expensive  Optimal, highly regular, parallel computable Exhaustive Search dx dy

Search Strategies II  Sampling the search space  At every stage, investigate a few candidates  Move in the direction of the best match  Can adaptively reduce the displacement size for each stage Gradient Search  Sampling the search space  Divide search space into regions  Pick a center point for each region  Perform more elaborate search on the region with best center Divide and Conquer

Search Strategies III Multi-resolution or Hierarchical Search current frame reference frame DD BME MV Field Full Search

Fast BME Algorithm: Example I  Use + pattern at each stage (5 candidates)  Move center to best match  Reduce step size at each stage  Fast, reasonable quality  Similar algorithms: three-step-search, four- step-search, cross search... 2D Log Search dx dy

Fast BME Algorithm: Example II  Divide-and-conquer  Move search to region with best match  Finer search at later stages Binary Search

Optimal BME: Spiral Search  Early termination  Start with a predicted search center, default=(0,0)  Spiral search around center in diamond or square pattern  Keep track of best match so far; update whenever a better candidate is found  MPEG-4, H.263+ Spiral Search dx dy

Optimal BME: Partial Matching  Triangle inequality  Strategy  Compute partial sums for macro-blocks in both current and reference frame  Eliminate candidates based on partial sums  Nice partial sums: row projections, column projections!  Avoid full 2D matching, translate the problem into 1D matching  Can be combined with spiral search and early termination partial sums

Spatial Correlation Based BME  Exploit intra-frame spatial correlation to narrow down search space for BME  Blocks covering the same object should move together  MVs from causal neighboring blocks can be used to predict MV for the current block  Reduce bit-rate for MV encoding: regularize the MV field  Reduce BME complexity C1 234

BME/BMC: Example I Previous FrameCurrent FrameMotion Vector Field Frame DifferenceMotion-Compensated Difference

BME/BMC: Example II Previous FrameCurrent FrameMotion Vector Field Frame DifferenceMotion-Compensated Difference

Sub-Pixel Motion Estimation  Sub-pixel motion vector resolution  Use linear/bilinear interpolation to fill in sub-pixels  Trade-offs: motion accuracy versus MV bit-rate and complexity increase  H.26L uses down to 1/4-MEMC, maybe even 1/8 integer pixel half pixel AB CD b cd b = round[(A+B)/2] c = round[(A+C)/2] d = round[(A+B+C+D)/4]

B frames  Possible temporal prediction for B pictures: b C1 C2 Frame k-1 Frame k Frame k+1

B Frames  Can have better coding efficiency  Average of two predictions reduces the variance  New objects can be better predicted using future frames

Multiple Reference Frames  More than one previously decoded pictures can be used as reference  R-D optimization is also needed to choose the best reference frame  Employed in H.264

Variable-Block-Size BME  Motion model for H.264  Generalization of the traditional translation BME framework  Sub-divide macro-block: 16x16, 16x8, 8x16, 8x8, 8x4, 4x8, 4x4 Mode 1Mode 2Mode 3Mode 4Mode 5Mode 6Mode 7

Mesh-Based Motion Estimation  MPEG-4 object motion  Affine warping motion model  Deformable polygon meshes  Similar MAD, SSE error measures  Trade-offs: more accurate ME vs. tremendous complexity  Bilinear and perspective motion models are rarely used in video coding

Global Motion Estimation  Rarely used in practice: BME/BMC mostly suffices  Reference frame resampling: an option in H.263+/H  Global affine motion model: special-effect warping  3D subband & wavelet coding: align frames before temporal filtering [Taubman]

Conclusion  Temporal correlation dominates spatial correlation in video sequences  Motion estimation and motion compensation improve coding performance the most in video coding  State-of-the-art video coders, such as the current H.26L verification model, still employ BME-block DCT coding framework  Despite its simplicity, BME is still the bottleneck of real- time video communications