• No results found

Motion Estimation. Macroblock Partitions. Sub-pixel Motion Estimation. Sub-pixel Motion Estimation

N/A
N/A
Protected

Academic year: 2021

Share "Motion Estimation. Macroblock Partitions. Sub-pixel Motion Estimation. Sub-pixel Motion Estimation"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

Motion Estimation and Intra Frame Prediction in

H.264/AVC Encoder

Rahul Vanam University of Washington

2

Motion Estimation

H.264/AVC Encoder [2]

3

Motion Estimation

• H.264 does block based coding.

• Each frame is divided into blocks of 16x16 pixels called macroblocks (MB).

• Each MB can be encoded using blocks of pixels that are already encoded within the current frame - Intra frame coding.

• MBs can be coded using blocks of pixels in previous or future encoded frames - Inter frame coding.

• The process of finding a match of pixel blocks in inter frame coding is called Motion Estimation.

4

Macroblock Partitions

16x16

8x8 8x8

8x8 8x8

16x8 16x8

8x16

8x16

16x16 16x16

8x8 4x4

4x4 4x4

4x4

8x4 8x4

8x8

4x8 4x8 8x8

16x16 blocks can be broken into blocks of sizes 8x8, 16x8, or 8x16.

8x8 blocks can be broken into blocks of sizes 4x4, 4x8, or 8x4.

5

Sub-pixel Motion Estimation

• Compute the block distortion at each pixel position within the search window

Integer pixel search

6

Sub-pixel Motion Estimation

Integer pixel search

Center of best match

• Find the position corresponding to the minimum block distortion

(2)

7

Sub-pixel Motion Estimation

Half pixel search

Center of the best match

• Half pixel motion estimation is then done where the best match was found in the integer pixel search step.

8

Sub-pixel Motion Estimation

Quarter pixel search

Center of the best match

• Finally, quarter pixel motion estimation is done where the best match was found from the half pixel search step, giving us the final motion vector.

9

Motion Estimation

• Motion estimation is computationally expensive since

– search is done at every pixel position – over different reference frames

• There are several different fast integer search methods – diamond search, hexagon search, Simplified Uneven Multihexagon search (UMH), etc.

10

Diamond Search Algorithm

• It uses large diamond search pattern of radius 2 and small diamond search pattern of radius 1.

S. Zhu and K. K. Ma, IEEE CSVT 2000

Large diamond search pattern Small diamond search pattern

11

Diamond Search Algorithm

Apply large diamond to the center of the search window

12

Diamond Search Algorithm

Compute the block distortions corresponding to all positions and check if the center position has the minimum distortion.

?

(3)

13

Diamond Search Algorithm

Minimum distortion position

14

Diamond Search Algorithm

The minimum point in the previous step is the center position of this step.

Apply large diamond to the new center position.

Find the new minimum block distortion.

If the center is not the minimum, move the center to the minimum point and reapply the large diamond pattern.

Past search points Current search points

Points that overlap

15

Diamond Search Algorithm

If the center is the minimum block distortion position, then apply a small diamond.

16

Diamond Search Algorithm

The minimum block distortion position in this step gives the final motion vector.

Final motion vector (3,0) Starting point

(0,0)

17

Hexagon Search Algorithm

• It consists of large hexagon pattern of radius 2 in horizontal and vertical direction, and small hexagon (or diamond) pattern of radius 1.

• The search approach is similar to Diamond search.

C. Zhu, X. Lin and L-P. Chau, IEEE CSVT, 2002

Large hexagon pattern Small hexagon pattern 18

Hexagon Search Algorithm

Apply large hexagon to the center of the search window.

Compute the block distortions corresponding to all positions and check if the center position has the minimum distortion.

?

(4)

19

Hexagon Search Algorithm

Minimum distortion position

20

Hexagon Search Algorithm

The minimum point in the previous step is the center position of this step.

Apply large hexagon to the new center position.

Find the new minimum block distortion.

If the center is not the minimum, move the center to the minimum point and reapply the large hexagon pattern.

Past search points Current search points

Points that overlap

21

Hexagon Search Algorithm

If the center is the minimum block distortion position, then apply a small hexagon.

22

Hexagon Search Algorithm

The minimum block distortion position in this step gives the final motion vector.

Final motion vector (3,0) (0,0)

23

Hexagon Search Algorithm (HEXS)

Comparison with Diamond search (DS)

– HEXS uses fewer search points compared to diamond search (DS). In our example, HEXS requires 14 search points while DS requires 18 search points.

– HEXS gives higher savings in searches for larger motion vectors.

– HEXS results in slightly higher mean distortion compared to DS.

24

Intra-Frame Prediction

H.264/AVC Encoder [2]

(5)

25

Intra-Frame Prediction

• Intra modes for Luma samples – 9 modes for 4x4 blocks – 4 modes for 8x8 blocks

• Intra modes for Chroma samples – 4 modes for 8x8 blocks

26

Intra Luma Prediction for 4x4 blocks

• Samples a, b, …, p are predicted from samples A,…, M that have been encoded previously.

n j f b

p o m L

l k i K

h g e J

d c a I

G H

F E D C B A M

Samples to be intra predicted Samples that are

already encoded

27

Intra Luma Prediction for 4x4 blocks

• The direction of prediction for 8 modes are shown above [2].

• In Mode 2, the samples a,..,p are predicted using average of samples A,..,D and I,…,L.

28

Intra Luma Prediction for 4x4 blocks

Five of the 9 intra 4x4 modes [3]

29

Intra Luma Prediction for 16x16 blocks

• There are 4 modes – Mode 0: vertical prediction – Mode 1: horizontal prediction – Mode 2: DC prediction – Mode 4: Plane prediction

• Intra chroma prediction has the same modes as above, but prediction is done for 8x8 chroma blocks.

30

Mode Decision

16x16 luma Macroblock

Intra Modes (For all frames)

Inter Modes (Only for P and B-frames)

• Nine 4x4 Modes

• Four 16x16 Modes

• Macroblock partitions:

16x16,16x8,8x16, 8x8,8x4,4x8,4x4

• Use of reference frames

• Use of integer, half and quarter pixel motion estimation

• Each mode (inter or intra) has an associated Rate-Distortion (RD) cost.

• Encoder performs mode decision to select the mode having the least RD cost. This process is computationally intensive.

(6)

31

References

1. I.E.Richardson, “H.264 and MPEG-4 video compression,” Wiley, 2003.

2. G. J. Sullivan, P. Topiwala, and A. Luthra, “The H.264/AVC Advanced Video Coding

Standard:Overview and Introduction to the Fidelity Range Extensions,” SPIE Conference on Applications of Digital Image Processing XXVII, August, 2004 3. T. Wiegand, G. J. Sullivan, G. Bjøntegaard, and A.

Luthra, “Overview of the H.264/AVC Video Coding

Standard,” IEEE CSVT, Vol.13, pp. 560-576, July

2003.

References

Related documents

Results from the equilibrium adsorption of Cd and Pb onto PABC were modelled using Langmuir, Freundlich, Temkin and Hills isotherm models in order to obtain the best

The proposed work detecting suspicious URLs and also it blocks them by redirecting it to a genuine page, for instance google.com. The proposed system intends to detect

Keywords : Diabetes mellitus, Liposome, Microemulsions, Nanocubicle, Oral insulin delivery systems.... invasive insulin delivery, including oral, transdermal, and

i) ANSPW- Average number of syllables per word. Lesser the value of ANSPW more is the readability. ii) ANWPS- Average number of words per sentence. Lesser the value of ANSPW more

Outcomes studied were gestational age at delivery, colour of amniotic fluid, FHR tracings, mode of delivery, indication for cesarean section or instrumental

At the point when the plunging time was less than 1 moment the staying property of the arrangement over glass substrates was less and when it was expanded to more than 1

plus IL-2 in vitro and the ability of this combination to potently upregulate Fas/FasL gene expression and rap- idly induce Fas-dependent endothelial cell apoptosis within the

Collaborating filtering using unsupervised learning for image reconstruction from missing data EURASIP Journal on Advances in Signal Processing Banouar et al EURASIP Journal on Advances