Interframe Coding Heejune AHN Embedded Communications Laboratory Seoul National Univ. of Technology Fall 2008 Last updated 2008. 10. 12.

Slides:



Advertisements
Similar presentations
Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape.
Advertisements

11/11/02 IDR Workshop Dealing With Location Uncertainty in Images Hasan F. Ates Princeton University 11/11/02.
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.
SWE 423: Multimedia Systems
Temporal Video Denoising Based on Multihypothesis Motion Compensation Liwei Guo; Au, O.C.; Mengyao Ma; Zhiqin Liang; Hong Kong Univ. of Sci. & Technol.,
{ Fast Disparity Estimation Using Spatio- temporal Correlation of Disparity Field for Multiview Video Coding Wei Zhu, Xiang Tian, Fan Zhou and Yaowu Chen.
A New Block Based Motion Estimation with True Region Motion Field Jozef Huska & Peter Kulla EUROCON 2007 The International Conference on “Computer as a.
2009/04/07 Yun-Yang Ma.  Overview  What is CUDA ◦ Architecture ◦ Programming Model ◦ Memory Model  H.264 Motion Estimation on CUDA ◦ Method ◦ Experimental.
Yen-Lin Lee and Truong Nguyen ECE Dept., UCSD, La Jolla, CA Method and Architecture Design for Motion Compensated Frame Interpolation in High-Definition.
Efficient multi-frame motion estimation algorithms for MPEG-4 AVC/JVTH.264 Mei-Juan Chen, Yi-Yen Chiang, Hung- Ju Li and Ming-Chieh Chi ISCAS 2004.
Mobile Motion Tracking using Onboard Camera
Mobile Motion Tracking using Onboard Camera Lam Man Kit CEG Wong Yuk Man CEG.
Analysis, Fast Algorithm, and VLSI Architecture Design for H
MOTION ESTIMATION An Overview BY: ABHISHEK GIROTRA Trainee Design Engineer.
Lecture06 Video Compression. Spatial Vs. Temporal Redundancy Image compression techniques exploit spatial redundancy, the phenomenon that picture contents.
Decision Trees for Error Concealment in Video Decoding Song Cen and Pamela C. Cosman, Senior Member, IEEE IEEE TRANSACTION ON MULTIMEDIA, VOL. 5, NO. 1,
Multi-Frame Reference in H.264/AVC 卓傳育. Outline Introduction to Multi-Frame Reference in H.264/AVC Multi-Frame Reference Problem Two papers propose to.
A New Diamond Search Algorithm for Fast Block- Matching Motion Estimation Shan Zhu and Kai-Kuang Ma IEEE TRANSACTIONS ON IMAGE PROCESSION, VOL. 9, NO.
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.
Jump to first page The research report Block matching algorithm Motion compensation Spatial transformation Xiaomei Yu.
An Introduction to H.264/AVC and 3D Video Coding.
Video Compression Concepts Nimrod Peleg Update: Dec
1 Thread-Parallel MPEG-2, MPEG4 and H.264 Video Encoders for SoC Multi- Processor Architecture Tom R. Jacobs, Vassilios A. Chouliars, and David J. Mulvaney.
3D Stereo Video Coding Heejune AHN Embedded Communications Laboratory Seoul National Univ. of Technology Fall 2013 Last updated
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.
GODIAN MABINDAH RUTHERFORD UNUSI RICHARD MWANGI.  Differential coding operates by making numbers small. This is a major goal in compression technology:
 Coding efficiency/Compression ratio:  The loss of information or distortion measure:
Transform Coding Heejune AHN Embedded Communications Laboratory
Video Coding. Introduction Video Coding The objective of video coding is to compress moving images. The MPEG (Moving Picture Experts Group) and H.26X.
RICE UNIVERSITY Implementing the Viterbi algorithm on programmable processors Sridhar Rajagopal Elec 696
1 Efficient Reference Frame Selector for H.264 Tien-Ying Kuo, Hsin-Ju Lu IEEE CSVT 2008.
Low Bit Rate H Video Coding: Efficiency, Scalability and Error Resilience Faouzi Kossentini Signal Processing and Multimedia Group Department of.
Image and Video Compression Fundamentals Heejune AHN Embedded Communications Laboratory Seoul National Univ. of Technology Fall 2013 Last updated 2013.
© 2007 SET Associates Corporation SAR Processing Performance on Cell Processor and Xeon Mark Backues, SET Corporation Uttam Majumder, AFRL/RYAS.
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.
Compression video overview 演講者:林崇元. Outline Introduction Fundamentals of video compression Picture type Signal quality measure Video encoder and decoder.
1 University of Texas at Austin Machine Learning Group 图像与视频处理 计算机学院 Motion Detection and Estimation.
Advances in digital image compression techniques Guojun Lu, Computer Communications, Vol. 16, No. 4, Apr, 1993, pp
MPEG-4: Multimedia Coding Standard Supporting Mobile Multimedia System -MPEG-4 Natural Video Coding April, 2001.
Segmentation of Vehicles in Traffic Video Tun-Yu Chiang Wilson Lau.
Image Processing Architecture, © Oleh TretiakPage 1Lecture 6 ECE-C453 Image Processing Architecture Lecture 6, 2/3/04 Lossy Video Coding Ideas.
Rate-Control in Video Codec Heejune AHN Embedded Communications Laboratory Seoul National Univ. of Technology Fall 2008 Last updated
Course14 Dynamic Vision. Biological vision can cope with changing world Moving and changing objects Change illumination Change View-point.
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.
Flow Control in Compressed Video Communications #2 Multimedia Systems and Standards S2 IF ITTelkom.
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.
Architectural Effects on DSP Algorithms and Optimizations Sajal Dogra Ritesh Rathore.
The Effect of Data-Reuse Transformations on Multimedia Applications for Application Specific Processors N. Vassiliadis, A. Chormoviti, N. Kavvadias, S.
Principles of Video Compression Dr. S. M. N. Arosha Senanayake, Senior Member/IEEE Associate Professor in Artificial Intelligence Room No: M2.06
1שידור ווידיאו ואודיו ברשת האינטרנט Dr. Ofer Hadar Communication Systems Engineering Department Ben-Gurion University of the Negev URL:
Video Coding: Block Motion Estimation Trac D. Tran ECE Department The Johns Hopkins University Baltimore MD
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.
Dr. Ofer Hadar Communication Systems Engineering Department
MIRA, SVM, k-NN Lirong Xia. MIRA, SVM, k-NN Lirong Xia.
ELE 488 Fall 2006 Image Processing and Transmission ( )
Sum of Absolute Differences Hardware Accelerator
VLIW DSP vs. SuperScalar Implementation of a Baseline H.263 Encoder
MPEG4 Natural Video Coding
VIDEO COMPRESSION FUNDAMENTALS
LSH-based Motion Estimation
MIRA, SVM, k-NN Lirong Xia. MIRA, SVM, k-NN Lirong Xia.
Presentation transcript:

Interframe Coding Heejune AHN Embedded Communications Laboratory Seoul National Univ. of Technology Fall 2008 Last updated

Heejune AHN: Image and Video Compressionp. 2 Agenda Interframe Coding Concept Block Matching Algorithm Fast Block Matching Algorithms Block Matching Algorithm Variations Enhanced Motion Models Implementation Cases

Heejune AHN: Image and Video Compressionp Interframe Coding Motivation Video has High Temporal Correlation between frames. Var[ X(t+1) – X(t) ] << Var[ X(t+1) ] Two successive video framesDFD (displaced Frame Difference)

Heejune AHN: Image and Video Compressionp. 4 Motion Estimation and compensation Motion estimation Find the best parameters of current frame from reference frames Motion compensation Subtracts (Add) the predicted values from current frame (to DFD frame) Reference frames Current frame MC ME Recon. Motion parameters Encode Residual Texture Info MC Reference frames Recon.

Heejune AHN: Image and Video Compressionp. 5 Performance Criteria Coding performance Residual signal has low energy (variance measure) Complexity Computational and implementation complexity Storage and Delay Number of required frames Side Information Size and complexity of motion parameters Error resilience When data is partially lost. Some factors are trade off Coding perf. against complexity, storage, side info, error resilience.

Heejune AHN: Image and Video Compressionp. 6 2D Motion x y stationary background moving object shifted object time t previous frame current frame Prediction for the luminance signal S(x,y,t) within the moving object: „Displacement vector“

Heejune AHN: Image and Video Compressionp Block Matching Algorithm BMA(Block matching algorithm) Segment frame into same rectangular Blocks 2-D linear motion (mv x, mv y ) per each block Real Motion MV X(t) X(t+1)

Heejune AHN: Image and Video Compressionp. 8 Difference Measure MSE MAE and SAE CCF (Cross Correlation Function)

Heejune AHN: Image and Video Compressionp. 9 Full Search Algorithm “Full Search” does Not means the whole frame, but whole position in limited Search Window Method Raster order or Spiral order (Figure. 6.6)

Heejune AHN: Image and Video Compressionp. 10 Full Search Complexity (2w+1) x (2w+1) points (for search window [-w, w]) NxN size Block computation int SAE(uchar *f, uchar *g, int mvx, int mvy){ for ( x=0; x< N; x++){ for ( y=0; y< N; y++){ sae += ABS(*(f + (y+mvy)*width +(x+mvx), *(g + y*width+x)); } mvx_min = mvy_min = 0; min = SAE(f, g, 0, 0); for(mvy=-w, mvy<=w, mvy++) for(mvx=-w, mvx<=w, mvx++){ sae = SAE(pre, cur, mv, mv) if(min >sae) mvx_min = mvx, mvy_min = mvy, min = sae; }

Heejune AHN: Image and Video Compressionp Fast BMAs Complexity Reduction Approaches Reduce test points Monotonic variation assumption –The closer to the optimal point, the smaller difference Change the test-point order (more like first) Binary Search than Linear Search Benefit from Early Stop of block difference calculation Reduce the computation at one point Sub-sampled value Note Trade-off! 0 -w +w

Heejune AHN: Image and Video Compressionp. 12 TSS (3-Step Search) Step 0: Search center (0,0), n = w Step 1: n = floor[ n / 2 ] Step 2: Search 8 points and find the min values Step 3: if n == 1 stop, o.w. Go to Step 1 Properties Logarithmic/Binary search (only 3 step when p = 8) Search decreasing distance w/2 => w/4 => w/8.... until 1 Complexity : O(log 2 w)

Heejune AHN: Image and Video Compressionp. 13 2D Logarithmic Search Step 0: Search center (0,0) Step 1: Search 4 points with s step size Step 2: find min, if center S = S/2, ow. move center to the min locaiton Step 3: if S = 1, go to step 4, else go to Step 1 Step 4: search the 8 neighbors, and decide min. Properties Similar to TSS, but more accurate Complexity ~ O(log 2 w) but not fixed loop count

Heejune AHN: Image and Video Compressionp. 14 Examples TSS (Tree Step Search) Logarithmic Search Cross Search One-at-a-time Search Nearest Neighbors Search From Other Source. TSS (Three Step search) TDL (Two Dim. Logarithmic) CDS (Conjugate Direction Search) CSA (Cross Search Algorithm) OSA (Orthogonal Search Algorithm)

Heejune AHN: Image and Video Compressionp. 15 Fast BMA Performance Complexity AlgorithmMaximum number of search points w 4816 FSM(2w + 1) TDL2 + 7 log 2 w TSS1 + 8 log 2 w MMEA1 + 6 log 2 w CDS3 + 2w OSA1 + 4 log 2 w91317 CSA5 + 4 log 2 w131721

Heejune AHN: Image and Video Compressionp. 16 Estimation Performance AlgorithmSplit screenTrevor white entropy (bits/pel) standard deviation entropy (bits/pel) standard deviation FSM TDL TSS MMEA CDS OSA CSA

Heejune AHN: Image and Video Compressionp. 17 Issues in Fast MC Algorithm Local Minimum Error Fast MC calculates only few of positions Many cases are not “monotonic” curves, single hill. Possibly can conclude with local minimum. See Figure

Heejune AHN: Image and Video Compressionp. 18 Hierarchical MC Reduced image Sub-sampled, filtered N levels with half resolution Search top (N) level fully reduced search window range (w/2 N-1 ) Search lower N-1 level only 9(8?) neighbor positions only

Heejune AHN: Image and Video Compressionp. 19 Benefits of hierarchical search Escape Local minimum Complexity Reduction e.g) Window = 16 full search (2 × )2 = 4225 operations HBMA with N =4, (2 × 4 + 1)^2 + 3 × 9 = 108 operations Sub-sampled signal Original signal

Heejune AHN: Image and Video Compressionp Variations of BMA: Multi-frame MC Multiple Frame MC “Forward pred” starts from H.261 “backward, bidirectional” starts from MPEG-1 “multiple reference (each MB takes its own ref picture) starts from H.264 forward bidirectional: average backward

Heejune AHN: Image and Video Compressionp Variations of BMA: Multi-frame MC Multiple Frame distance Search Range = frame difference x window Since displacement = velocity x time eg) w = 8, 64 points (1 frame diff), 256 points (2 frame diff) Practice search only [-w, w] of (mvx1, mvy1) for (mvx2, mvy2) -w +2w +w -2w t t -1 t -2 mvx1,mvy1 mvx2,mvy2

Heejune AHN: Image and Video Compressionp. 22 MV at Boundary Restriction on MV range Should inside of reference pictures In H.261/MPEG-1, MPEG-2, MPEG-4 Unrestricted MV Extrapolates (extends with same boundary pixel value) In H263 Annex D,H.264 t -w +w t -1 -w +w Extrapolated t -1

Heejune AHN: Image and Video Compressionp. 23 Sub-pixel Motion Estimation Note Object cannot happens to move integer pixels We have only integer pixel samples Sub-pixel estimation Get the fractional pel values in reference frame Normally using linear interpolation Half-pel/quarter-pel

Heejune AHN: Image and Video Compressionp Enhanced Motion Models More Motion Estimation Model Rigid 2D Translation (BMA) + Transformation Global Motion + Illumination variation + zoom-in/out Object Model + overlapping of objects + 3D Rotation + Non rigid objects (deformation) Some are from computer vision area But at present most tools are too complex for application to video coding area Some are included in MPEG-4 Part 2’s Object Oriented Coding

Heejune AHN: Image and Video Compressionp. 25 Examples Region based motion compensation How to get/describe shape and motion Global motion (picture warping) Called Camera motion Mesh-based Deformation

Heejune AHN: Image and Video Compressionp Implementation Video Encoder and Decoder Complexity Profiling

Heejune AHN: Image and Video Compressionp. 27 SW Optimization Algorithm level optimization : independent of CPU Data structure design (most modern CPU, RISC) Memory Cache optimization Current blocks into cache Loop unrolling (See Fig. 6.21) Reduce the pointer operation and jump prediction (pipelining) CPU-specifics Optimization SIMD (Single Instruction with Multiple Data) Packed Instruction (See Fig. 6.22) TI DSP, Intel MMX etc MIMD (MuParalell Processing Core) VLIW (Very Long Instruction Word) of TI DSP GPU DMA utilization Coprocessor Utilization DCT, ME, Post/Pre Processing

Heejune AHN: Image and Video Compressionp. 28 HW Optimization Criteria Performance, cycle count, gate-count, data flow Example #1: Full Search Parallelization M function block, then M Speed up Search Window Memory (DRAM/SRAM) Current MB (SRAM) SAE Comparator

Heejune AHN: Image and Video Compressionp. 29 Example #2: Fast Search TSS and Hierachical search (has fixed clock property) Pipelining blocks for speed up Search Window Memory (DRAM/SRAM) Current MB (SRAM) STEP1 (+/-4 Step 2 (+/-2) Step3 (+/-1) Step 4 (+/-1/2) t=4 block4 block 3 block 2 block 1 t= 3 block 3 block 2 block 1 t=2 block 2 block 1 t =1 block 1