provides exactly the same number of SPs for each
macroblock (MB) for the basic computation. The
second one provides some extra points for each MB
in proportion to the initial sum of absolute
differences (InitSAD) in the starting SP divided by
the average minimum SAD of previously processed
MBs (AvgMinSAD). The bigger this ratio is, the
more extra points are allocated to the MB. If some
SPs are left after a given MB processing they are
added to the computational pool of the next MB.
2.2 Starting Search Point Selection
The starting SP is chosen from the prediction set
which contains motion vectors (MVs) of left, left-
upper, upper, and right-upper neighbors, zero motion
point, and the co-located block in the previous
frame. The vector which gives the smallest SAD is
selected.
2.3 Adaptive Search Strategy Selection
The strategy used in the first step is selected on the
basis of a few factors: the number of available SPs,
the ratio of InitSAD to AvgMinSAD, and the
standard deviation of neighboring MVs around their
median. If the standard deviation is greater than 5,
the high-motion activity is assumed and three step
search (TSS) (Koga et al., 1981) is used. Otherwise,
either diamond search (DS) (Zhu and Ma, 1997) or
kite-cross-diamond search (KCDS) (Lam et al.,
2004) is selected on the basis of the ratio of InitSAD
to AvgMinSAD and the number of available SPs.
All values of the parameters which affect the
strategy selection where adjusted experimentally
(Jakubowski and Pastuszak, 2007).
If the amount of resources is sufficient,
surroundings of all the points from the prediction set
are investigated using TSS. This phase of search is
called the multi-path search. If after the multi-path
search some resources are still available they can be
utilized in the last step by the full search.
2.4 Variable Block-Size and Sub-Pixel
ME
Since MVs of all partition modes are usually highly
correlated, the probability of finding the optimal MV
in the close neighborhood of MV for mode 16×16 is
on average larger than 80% (Jakubowski and
Pastuszak, 2008). Therefore, similarly like in the fast
full search (FFS) method adopted in the H.264/AVC
reference software, all modes are checked in parallel
in each point of the search path for mode 16x16.
Firstly, all SADs of 4×4 blocks are computed and
then reused to compose SADs for other modes.
However, in FFS, after IPME, each mode gets its
own search center for SPME which leads to a
substantial increase of computational cost. In our
approach, search centers for integer-pixel, half-pixel,
and quarter-pixel ME for all modes are the same as
for mode 16×16 and the best MV for each mode is
selected from among SPs checked for mode 16×16.
It makes it possible to check all modes in parallel
also during SPME with a relatively small coding
efficiency degradation.
3 MULTIPLE REFERENCE
FRAME ME
The goal of the MRFME method added to the MPS
algorithm is to select the optimal reference frame
(RF) at the early stage of ME process. In the MPS
algorithm the test of the prediction set and the first
strategy are the most crucial elements for the
algorithm performance. These two steps require
about 30 SPs/MB/Frame on average (including
SPME) and give over 90% contribution to the final
outcome. Thus, it has been assumed that they are
sufficient to determine the optimal RF. Initially, it
has been supposed that SPME will not be necessary
to select the optimal RF, however, it turned out that
SPME has a significant influence on the optimal RF
selection and even after half-pixel ME about 20% of
selected frames is inconsistent with the optimal
ones.
Since the probability that the nearest RF is the
optimal one is in general much greater than 50%
(Huang et al., 2006), this frame takes priority over
the others and gets more resources in the first step. A
simplified flowchart of the method is shown in Fig.
1. At the beginning, the prediction set and the first
strategy are checked in the closest RF up to the
quarter-pixel accuracy. In the next step, the
prediction set is checked in the remaining frames up
to the integer pixels. If the cost for the best point is
smaller than in the previous frame – the first strategy
is also checked up to the quarter pixels. This way,
the optimal frame is selected and ME is continued in
this frame until it is finished or computational
resources are exhausted. If some resources are still
available, the ME process can be continued in the
remaining frames. Additionally, the best point found
in a given frame is included to the prediction set of
the next frame.
AN ADAPTIVE COMPUTATION-AWARE ALGORITHM FOR MULTI-FRAME VARIABLE BLOCK-SIZE MOTION
ESTIMATION IN H.264/AVC
123