20
Motion Predictors Motion Predictors and Motion and Motion Estimation in H.264 Estimation in H.264 K. C. Yang K. C. Yang

Motion Predictors and Motion Estimation in H.264 K. C. Yang

  • View
    226

  • Download
    2

Embed Size (px)

Citation preview

Motion Predictors and Motion Predictors and Motion Estimation in H.264Motion Estimation in H.264

K. C. YangK. C. Yang

OutlineOutline

Variable Size Block Matching in H.264Variable Size Block Matching in H.264 Concept of Variable Block SizesConcept of Variable Block Sizes Motion Vector Predictors in H.264Motion Vector Predictors in H.264

Fast Integer Motion Estimation for H.264 Fast Integer Motion Estimation for H.264 Video Coding StandardVideo Coding Standard

An Unsymmetrical-Cross Multi-Resolution An Unsymmetrical-Cross Multi-Resolution Motion Search Algorithm for MPEG4-Motion Search Algorithm for MPEG4-AVC/H.264 CodingAVC/H.264 Coding

Motion EstimationMotion Estimation

Video clip

Current frameReference frame

Motion vector

Variable Block Sizes in H.264Variable Block Sizes in H.264

16 16 16 8 8 16 8 8

8 4 4 8 4 4

Block Type DecisionBlock Type Decision

Minimize the cost functionMinimize the cost function

mm : Motion vector : Motion vector pp : Predicted motion vector : Predicted motion vector MOTIONMOTION : Largrange multiplier : Largrange multiplier cc : current frame : current frame rr : reference frame : reference frame

( , ) ( , ( )) ( )MOTION MOTIONJ m SAD c r m R m p

Predicted MV

Real MV

cr

MV predictorsMV predictors

UP UR

LF

UPLF

UR

MV predictorsMV predictors

UP UR

LF

UP UR

LF

UP UR

LF

pMV = median (MVpMV = median (MVUPUP, MP, MPURUR, MV, MVLFLF ) )

pMVpMVUPUP = MV = MVUPUP, pMV, pMVDOWNDOWN = MV = MVLFLF

pMVpMVLEFTLEFT = MV = MVLFLF, pMV, pMVRIGHTRIGHT = MV = MVURUR

MV predictorsMV predictors

pMVpMVaa = median (MV = median (MVUPUP, MP, MPURUR, MV, MVLFLF ) )

pMVpMVbb = median (MV = median (MVUPUP, MP, MPURUR, MV, MVaa ) )

pMVpMVcc = median (MV = median (MVaa, MP, MPbb, MV, MVLFLF ) )

pMVpMVdd = median (MV = median (MVaa, MP, MPbb, MV, MVcc ) )

a bc d

UP UR

LF

Fast Integer Motion Fast Integer Motion Estimation for H.264 Video Estimation for H.264 Video

Coding StandardCoding StandardAndy Chang, Peter H. W. Wong, Y.M. Yeung, and OscaAndy Chang, Peter H. W. Wong, Y.M. Yeung, and Osca

r C. Aur C. Au

The Hong Kong University of Science and TechnologyThe Hong Kong University of Science and Technology

ICME 2004ICME 2004

ObservationObservation

Hit ratio Hit ratio (8 x 8 MV = 16 x 16 MV)(8 x 8 MV = 16 x 16 MV)

(MV(MV88xx – MV – MV1616xx, MV, MV88yy – MV – MV1616yy))

Integer MVInteger MV Sub-pel MVSub-pel MV

Foreman QCIFForeman QCIF 93%93% 76.6%76.6%

Stefan QCIFStefan QCIF 90%90% 82.6%82.6%

0 1

2 3

Block 0 Block 1

AlgorithmAlgorithm

8 x 8 block8 x 8 block Full searchFull search

16 x 16 block16 x 16 block MVMVaa, MV, MVbb, MV, MVcc, median(MV, median(MVUPUP, MV, MVURUR,MV,MVLFLF))

16 x 8 block16 x 8 block Up : MVUp : MVaa, MV, MVbb, MV, MVUPUP

Down : MVDown : MVcc, MV, MVdd, MV, MVLFLF

8 x 16 block8 x 16 block Left : MVLeft : MVaa, MV, MVcc, MV, MVLFLF

Right : MVRight : MVbb, MV, MVdd, MV, MVURUR

LF

UP UR

a b

c d

The ME is performed around the eight neighboring locations of the best predicted MV.

Simulation ResultsSimulation Results

On average 69.7% computation saving.On average 69.7% computation saving.

Stefan

An Unsymmetrical-Cross An Unsymmetrical-Cross Multi-Resolution Motion Multi-Resolution Motion

Search Algorithm for Search Algorithm for MPEG4-AVC/H.264 CodingMPEG4-AVC/H.264 Coding

Peng Yang, Yu-Wen He, and Shi Qiang YangPeng Yang, Yu-Wen He, and Shi Qiang Yang

Tsinghua University, ChinaTsinghua University, China

ICME 2004ICME 2004

AlgorithmAlgorithm

Predictor selectionPredictor selection

Motion estimationMotion estimation Unsymmetrical-cross searchUnsymmetrical-cross search Multi-resolution grid searchMulti-resolution grid search Extended hexagon-diamond based searchExtended hexagon-diamond based search

MV Predictors SelectionMV Predictors Selection

Higher level

Lower level

16 x 16 block16 x 16 block (0, 0), default predicted MV(0, 0), default predicted MV

OthersOthers (0, 0), default predicted MV, and up layer MV(0, 0), default predicted MV, and up layer MV e.g.e.g.

Use the Lagrangian cost function to find thUse the Lagrangian cost function to find the minimum.e minimum.

MV Predictors SelectionMV Predictors Selection

Unsymmetrical-Cross SearchUnsymmetrical-Cross Search

Multi-Resolution Grid SearchMulti-Resolution Grid SearchExtended hexagon-diamond Extended hexagon-diamond

based searchbased search

Simulation ResultsSimulation Results

Compare with the Fast Full Search in JM6.1Compare with the Fast Full Search in JM6.1

time saving

Simulation ResultsSimulation Results

Rate-distortionRate-distortion