JVET-M0060 CE4: Enhanced Merge with MVD (Test 4.4.4) [T. Hashimoto, E. Sasaki, T. Ikai (Sharp)]
Directional candidates
Directional candidates are used in addition to horizontal / vertical candidates of VTM-3.0. The directional candidates are shown as below.
Motion direction (proposal)
Direction IDX | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
x-axis | +2 | –2 | 0 | 0 | +1 | -1 | -1 | +1 |
y-axis | 0 | 0 | +2 | –2 | +1 | -1 | +1 | -1 |
Note: the value of x-axis and y-axis of diagonal direction are half of that of horizontal and vertical direction respectively.
Multiple distance lists
Two set of distance lists are proposed. The selection flag is context coded so that it applies in an optimal way. The distance list is shown as follows.
First distance list
Distance IDX | 0 | 1 | 2 | 3 |
Pixel distance | 1/4-pel | 1/2-pel | 3/4-pel | 5/4-pel |
Second distance list
Distance IDX | 0 | 1 | 2 | 3 |
Pixel distance | 1-pel | 2-pel | 4-pel | 8-pel |
Full-pel position for large range
In test d, motion vectors are converted into an integer position if the distance is large. Since integer position doesn’t need additional pixels for interpolation, necessary area size for MMVD encoding / decoding decreases, which would reduce memory band requirement. When the second distance list is selected and distance index is larger than 1, the motion vectors are converted into an integer position.