Graphics Reference
In-Depth Information
one from B0, B1 and B2, respectively in that order. However, for inter-prediction
block merging, up to four candidates are inserted in the merge list by sequentially
checking A1, B1, B0, A0 and B2, in that order.
Instead of just checking whether a neighboring block is available and contains
motion information, some additional redundancy checks are performed before
taking all the motion data of the neighboring block as a merge candidate. These
redundancy checks can be divided into two categories for two different purposes:
￿
avoid having candidates with redundant motion data in the list
￿
prevent merging two partitions that could be expressed by other means which
would create redundant syntax
When N is the number of spatial merge candidates, a complete redundancy
check would consist of N .N 1 2 motion data comparisons. In case of the five
potential spatial merge candidates, ten motion data comparisons would be needed
to assure that all candidates in the merge list have different motion data. During the
development of HEVC, the checks for redundant motion data have been reduced
to a subset in a way that the coding efficiency is kept while the comparison logic
is significantly reduced [ 1 ]. In the final design, no more than two comparisons are
performed per candidate resulting in five overall comparisons. Given the order of
{A1, B1, B0, A0, B2}, B0 only checks B1, A0 only A1 and B2 only A1 and B1.
For an explanation of the partitioning redundancy check consider the following
example. The bottom PU of a 2N N partitioning is merged with the top one by
choosing candidate B1. This would result in one CU with two PUs having the same
motion data which could be equally signaled as a 2N 2N CU. Overall, this check
applies for all second PUs of the rectangular and asymmetric partitions 2N N,
2N nU, 2N nD, N 2N, nR 2N and nL 2N. Please note that for the spatial merge
candidates, only the redundancy checks are performed and the motion data is copied
from the candidate blocks as it is. Hence, no motion vector scaling is needed here.
Temporal Candidate
The derivation of the motion vectors for the temporal merge candidate is the same
as for the TMVP described in Sect. 5.2.1.1 . Since a merge candidate comprises all
motion data and the TMVP is only one motion vector, the derivation of the whole
motion data only depends on the slice type. For bi-predictive slices, a TMVP is
derived for each reference picture list. Depending on the availability of the TMVP
for each list, the prediction type is set to bi-prediction or to the list for which the
TMVP is available. All associated reference picture indices are set equal to zero.
Consequently for uni-predictive slices, only the TMVP for list 0 is derived together
with the reference picture index equal to zero.
When at least one TMVP is available and the temporal merge candidate is added
to the list, no redundancy check is performed. This makes the merge list construction
independent of the co-located picture which improves error resilience. Consider the
case where the temporal merge candidate would be redundant and therefore not
Search WWH ::




Custom Search