Back to Search Document details
13th Meeting: Marrakech, January 2019 2019-01-03 05:21
CE4: History based spatial-temporal MV prediction (Test 4.2.4)

Abstract not available in document

JVET-M0404 CE4: History based spatial-temporal MV prediction (Test 4.2.4) [X. Xu, X. Li, S. Liu (Tencent)]

The proposed method derives a new candidate using last two history MVs and one collocated merge candidate (referred as HMVP-TMVP). The new candidate is inserted after A1, B1, B0 and A0 candidates, as follows:

i = 0
if( availableFlagA1 )
mergeCandList[ i++ ] = A1
if( availableFlagB1 )
mergeCandList[ i++ ] = B1
if( availableFlagB0 )
mergeCandList[ i++ ] = B0
if( availableFlagA0 )
mergeCandList[ i++ ] = A0
if( availableFlagSbCol )
mergeCandList[ i++ ] = HMVP+TMVP
if( availableFlagB2 )
mergeCandList[ i++ ] = B2
if( availableFlagCol )
mergeCandList[ i++ ] = Col

For the two MVs from HMVP, the last coded and second to last coded MVs in the buffer are used (referred as A and B). For the temporal candidate, the same position as VTM-3.0 collocated position (referred as C) is used.

If three candidates, of which the reference indices are equal to zero, are available, the following apply.

mvLX[0] = (mvLX_A[0] * 3 + mvLX_B[0] * 3 + mvLX_C[0] * 2 ) / 8

mvLX[1] = (mvLX_A[1] * 3 + mvLX_B[1] * 3 + mvLX_C[1] * 2 ) / 8

If two motion information, of which the reference indices are equal to zero, is available, the following apply

mvLX[0] = (mvLX_A[0] + mvLX_C[0] ) / 2

mvLX[1] = (mvLX_A[1] + mvLX_C[1] ) / 2

or

mvLX[0] = (mvLX_B[0] + mvLX_C[0] ) / 2

mvLX[1] = (mvLX_B[1] + mvLX_C[1] ) / 2

Note: If the temporal candidate is unavailable, the HMVP-TMVP mode is off.

Decisions
Note: If the temporal candidate is unavailable, the HMVP-TMVP mode is off.
Citation