Restrictions on motion vector difference
View Patent ↗Restrictions on motion vector difference are disclosed. In one example method of video processing, performing a conversion between a first block of video and a bitstream representation of the first block based on a constrained signaled MVD component associated with the first block, wherein value of the signaled motion vector difference (MVD) component is constrained in a predetermined range.
1. A method of processing video data, comprising:
determining, for a first conversion between a first block of a video and a bitstream of the video, a first motion vector difference (MVD) component associated with the first block and included in the bitstream; and
performing the first conversion at least based on the first MVD component;
wherein a value of the first MVD component is constrained in a predetermined range, wherein the predetermined range is [−2 M , 2 M −1], where M=17,
wherein the method further comprises:
determining, for a second conversion between a second block of the video and the bitstream, a second MVD component of a first list associated with the second block and included in the bitstream;
determining, based on the second MVD component, a third MVD component of a second list associated with the second block; and
performing the second conversion at least based on the second MVD component and third MVD component, and
wherein the value of the second MVD component is constrained in a predetermined range which has a maximum value 2 M −1, or the value of the third MVD component is constrained in a predetermined range which has a maximum value 2 M −1.
2. The method of claim 1 , wherein the first list is a list X with X=0, and the second list is a list Y with Y=1 correspondingly.
3. The method of claim 1 , wherein the third MVD component is a negative of the second MVD component.
4. The method of claim 1 , wherein the predetermined range of the first MVD component is adapted to an allowable MVD precision and/or allowable motion vector precision of a codec.
5. The method of claim 4 , wherein the allowable MVD precision and/or allowable motion vector precision is 1/16-luma-sample precision.
6. The method of claim 1 , wherein the M=K+L, wherein K=13 and L=4, in which K denotes the number of bits used to represent an integer part of the first MVD component, and L denotes the number of bits used to represent a fractional part of the first MVD component, wherein the first MVD component is represented in ½L-luma-sample precision.
7. The method of claim 1 , wherein the conversion comprises encoding the first block into the bitstream.
8. The method of claim 1 , wherein the conversion comprises decoding the first block from the bitstream.
9. An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:
determine, for a first conversion between a first block of a video and a bitstream of the video, a first motion vector difference (MVD) component associated with the first block and included in the bitstream; and
perform the first conversion at least based on the first MVD component;
wherein a value of the first MVD component is constrained in a predetermined range, wherein the predetermined range is [−2 M , 2 M −1], where M=17,
wherein the instructions further cause the processor to:
determine, for a second conversion between a second block of the video and the bitstream, a second MVD component of a first list associated with the second block and included in the bitstream;
determine, based on the second MVD component, a third MVD component of a second list associated with the second block; and
perform the second conversion at least based on the second MVD component and third MVD component, and
wherein the value of the second MVD component is constrained in a predetermined range which has a maximum value 2 M −1, or the value of the third MVD component is constrained in a predetermined range which has a maximum value 2 M −1.
10. The apparatus of claim 9 , wherein the M=K+L, wherein K=13 and L=4, in which K denotes the number of bits used to represent an integer part of the first MVD component, and L denotes the number of bits used to represent a fractional part of the first MVD component, wherein the first MVD component is represented in ½L-luma-sample precision.
11. The apparatus of claim 9 , wherein the predetermined range of the first MVD component is adapted to an allowable MVD precision and/or allowable motion vector precision of a codec.
12. The apparatus of claim 11 , wherein the allowable MVD precision and/or allowable motion vector precision is 1/16-luma-sample precision.
13. The apparatus of claim 9 , wherein the first list is a list X with X=0, and the second list is a list Y with Y=1 correspondingly.
14. The apparatus of claim 9 , wherein the third MVD component is a negative of the second MVD component.
15. A non-transitory computer-readable storage medium storing instructions that cause a processor to:
determine, for a first conversion between a first block of a video and a bitstream of the video, a first motion vector difference (MVD) component associated with the first block and included in the bitstream; and
perform the first conversion at least based on the first MVD component;
wherein a value of the first MVD component is constrained in a predetermined range, wherein the predetermined range is [−2 M , 2 M −1], where M=17,
wherein the instructions further cause the processor to:
determine, for a second conversion between a second block of the video and the bitstream, a second MVD component of a first list associated with the second block and included in the bitstream;
determine, based on the second MVD component, a third MVD component of a second list associated with the second block; and
perform the second conversion at least based on the second MVD component and third MVD component, and
wherein the value of the second MVD component is constrained in a predetermined range which has a maximum value 2 M −1, or the value of the third MVD component is constrained in a predetermined range which has a maximum value 2 M −1.
16. The non-transitory computer-readable storage medium of claim 15 , wherein the M=K+L, wherein K=13 and L=4, in which K denotes the number of bits used to represent an integer part of the first MVD component, and L denotes the number of bits used to represent a fractional part of the first MVD component, wherein the first MVD component is represented in ½L-luma-sample precision.
17. The non-transitory computer-readable storage medium of claim 15 , wherein the first list is a list X with X=0, and the second list is a list Y with Y=1 correspondingly.
18. The non-transitory computer-readable storage medium of claim 15 , wherein the third MVD component is a negative of the second MVD component.
19. The non-transitory computer-readable storage medium of claim 15 , wherein the predetermined range of the first MVD component is adapted to an allowable MVD precision and/or allowable motion vector precision of a codec.
20. A non-transitory computer-readable recording medium storing a bitstream which is generated by a method performed by a video processing apparatus, wherein the method comprises:
determining a first motion vector difference (MVD) component associated with a first block of a video; and
generating the bitstream at least based on the first MVD component;
wherein a value of the first MVD component is constrained in a predetermined range, wherein the predetermined range is [−2 M , 2 M −1], where M=17,
wherein the method further comprises:
determining, for a second conversion between a second block of the video and the bitstream, a second MVD component of a first list associated with the second block and included in the bitstream;
determining, based on the second MVD component, a third MVD component of a second list associated with the second block; and
performing the second conversion at least based on the second MVD component and third MVD component, and
wherein the value of the second MVD component is constrained in a predetermined range which has a maximum value 2 M −1, or the value of the third MVD component is constrained in a predetermined range which has a maximum value 2 M −1.