HMVC for affine and SBTMVP motion vector prediction modes
An apparatus for encoding or decoding blocks of a current picture encodes sub-blocks of a first block of a current picture. The sub-blocks encoded or decoded based on motion vectors determined according a motion information data associated with the first block. In a second step, a set of second motion information data is determined as a function of the first motion information data. These second motion information data are added to a list of motion information data, that is used to determine a motion information data for further blocks of the current picture to encode or decode.
1 . A method comprising:
decoding sub-blocks of a first block of a current picture, the sub-blocks being decoded based on first sub-block motion vectors determined according to first motion information data associated with the first block;
determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions in the first block; and
adding the second motion vector to a History-based Motion Vector Prediction (HMVP) list of motion information data, items of the HMVP list being used to determine a motion information data for a second block of the current picture.
2 . An apparatus for decoding blocks of a current picture, the apparatus comprising a processor configured for:
decoding sub-blocks of a first block of a current picture, the sub-blocks being decoded based on first sub-block motion vectors determined according to first motion information data associated with the first block;
determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions in the first block; and
adding the second motion vector to a History-based Motion Vector Prediction (HMVP) list of motion information data, items of the HMVP list being used to determine a motion information data for a second block of the current picture.
3 . A method comprising:
encoding sub-blocks of a first block of a current picture, the sub-blocks being encoded based on first sub-block motion vectors determined according to first motion information data associated with the first block;
determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions in the first block; and
adding the second motion vector to a History-based Motion Vector Prediction (HMVP) list of motion information data, items of the HMVP list being used to determine a motion information data for a second block of the current picture.
4 . An apparatus for encoding blocks of a current picture, the apparatus comprising a processor configured for:
encoding sub-blocks of a first block of a current picture, the sub-blocks being encoded based on first sub-block motion vectors determined according to first motion information data associated with the first block;
determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions in the first block; and
adding the second motion vector to a History-based Motion Vector Prediction (HMVP) list of motion information data, items of the HMVP list being used to determine a motion information data for a second block of the current picture.
5 . The method of claim 1 , wherein the combination of the at least two first sub-block motion vectors depends on a size of the first block or on a size of the sub-blocks.
6 . A device comprising:
the apparatus of claim 2 ; and
at least one of (i) an antenna configured to receive a signal, the signal including the decoded blocks of the current picture, (ii) a band limiter configured to limit the received signal to a band of frequencies that includes the decoded blocks of the current picture, or (iii) a display configured to display an output representative of the decoded blocks of the current picture.
7 . A non-transitory computer readable medium containing data content generated according to the method of claim 3 , for playback using a processor.
8 . The apparatus of claim 2 , wherein the combination of the at least two first sub-block motion vectors depends on a size of the first block or on a size of the sub-blocks.
9 . The method of claim 3 , wherein the combination of the at least two first sub-block motion vectors depends on a size of the first block or on a size of the sub-blocks.
10 . The apparatus of claim 4 , wherein the combination of the at least two first sub-block motion vectors depends on a size of the first block or on a size of the sub-blocks.
11 . A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform the method of claim 1 .
12 . A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform the method of claim 3 .
13 . The method of claim 1 , wherein the combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block is an average of the at least two first sub-block motion vectors selected from spatially distinct positions of the first block.
14 . The method of claim 1 , wherein determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block comprises determining the second motion vector by computing a weighted average of at least two first sub-block motion vectors selected from spatially distinct positions of the first block, wherein weights of the weighted average and/or the spatially distinct positions are determined as a function of a size of the first block.
15 . The apparatus of claim 2 , wherein the combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block is an average of the at least two first sub-block motion vectors selected from spatially distinct positions of the first block.
16 . The apparatus of claim 2 , wherein determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block comprises determining the second motion vector by computing a weighted average of at least two first sub-block motion vectors selected from spatially distinct positions of the first block, wherein weights of the weighted average and/or the spatially distinct positions are determined as a function of a size of the first block.
17 . The method of claim 3 , wherein the combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block is an average of the at least two first sub-block motion vectors selected from spatially distinct positions of the first block.
18 . The method of claim 3 , wherein determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block comprises determining the second motion vector by computing a weighted average of at least two first sub-block motion vectors selected from spatially distinct positions of the first block, wherein weights of the weighted average and/or the spatially distinct positions are determined as a function of a size of the first block.
19 . The apparatus of claim 4 , wherein the combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block is an average of the at least two first sub-block motion vectors selected from spatially distinct positions of the first block.
20 . The apparatus of claim 4 , wherein determining a second motion vector as a combination of at least two first sub-block motion vectors of sub-blocks selected from spatially distinct positions of the first block comprises determining the second motion vector by computing a weighted average of at least two first sub-block motion vectors selected from spatially distinct positions of the first block, wherein weights of the weighted average and/or the spatially distinct positions are determined as a function of a size of the first block.