Digital Signal Processing Reference
In-Depth Information
Fig. 15 Block motion
estimation
motion
vector
Current block
search area
Current frame
Reference frame
there exists high degree of temporal correlation among them. As such, there is
high probability that the current block can find a very similar matching block in
the reference frame. The displacement between the location of the current block
and that of the matching macro-block is the motion vector of the current block. This
is shown to the right hand side of Fig. 15 . By transmitting the motion vector alone
to the receiver, a predicted copy of the current block can be obtained by copying the
matching macro-block from the reference frame. That process is known as motion
compensation .
The similarity between the current block in the current frame and corresponding
matching block in the reference frame is measured using a mean of absolute
difference ( MAD ) criterion :
N
1
i = 0
N
1
j = 0 | x ( i , j ) y ( i + m , j + n ) |
1
N 2
(
,
)=
MAD
m
n
(27)
where the size of the macro-block is N pixels by N pixels. x ( i, j ) is the value of the
( i, j ) th pixel of the current frame and y ( i
n ) th
pixel of the reference frame. MAD ( m, n ) is the mean absolute difference value
between the current block and the candidate matching block with a displacement of
( m, n ),
+
m , j
+
n ) is the value of the ( i
+
m , j
+
p, where p is a bounded, pre-set search range which is usually
twice or thrice the size of a macro-block. The motion vector ( MV )ofthecurrent
block is found as
p
m, n
arg min
MV
=
.
p MAD
(
m
,
n
)
.
(28)
p
m
,
n
N v macro-blocks. With Eqs.
( 27 ) and( 28 ) , one may express the whole frame full-search block matching motion
estimation algorithm as a six-level nested loop as shown in Fig. 16 .
The performance requirement for such a motion estimation operation is rather
stringent. Take MPEG-II for example, a typical video frame of 1080p format con-
tains 1920
We assume each video frame is partitioned into N h ×
×
1080 pixels. With a macro-block size N
=
16, one has N h =
1920
/
16
=
120, N v =
N /2. Since there are 30
frames per second, the number of the sum of absolute difference operations that
1080
/
16
=
68. Usually, N
=
16, and p
=
 
 
 
Search WWH ::




Custom Search