IP Library Granted Patent US 11,197,016
Granted Patent B2
US 11,197,016 · App. 17/212,339 · Granted Dec 7, 2021

Motion vector range based on motion vector precision

Inventors: Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Hongbin Liu (Beijing, CN); Jizheng Xu (San Diego, CA); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.; BYTEDANCE INC.
H04N19/513H04N19/172H04N19/176H04N19/184H04N19/186H04N19/51H04N19/517
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,197,016
App. No.
17/212,339
Granted
Dec 7, 2021
Kind
B2
Abstract

A method for video processing is provided to comprise: determining a motion vector precision of one or more motion vectors related to a current video block of a video; selecting, based on the motion vector precision, a motion vector range; and performing, based on the motion vector range, a conversion between the current video block and a bitstream representation of the video.

Claims (44)

1. A method for processing video data, comprising:

deriving, for a conversion between a current video block of a video and a bitstream of the video, at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of the current video block;

scaling each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

performing a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein the clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], M is greater than 16 and << is an arithmetic left shift operation; and

performing the conversion based on the at least one clipped temporal collocated motion vector,

wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the conversion directly, or is combined with at least one motion vector difference to derive a refined motion vector, and

wherein, in response to the at least one motion vector difference comprising two motion vector differences and a third picture order count difference between a first reference picture and the current picture being less than a forth picture order count difference between a second reference picture and the current picture, the conversion uses a scaling process to obtain motion vector difference of the first reference picture from the motion vector difference of the second reference picture, and wherein the scaling process uses a second clipping operation to constrain each component of the motion vector difference of the first reference picture to fall in a range [−((1<<(M−1))), (1<<(M−1))−1].

2. The method of claim 1 , wherein each component of the refined motion vector has a bit-depth M-bit.

3. The method of claim 1 , wherein the at least one clipped temporal collocated motion vector includes a first temporal collocated motion vector which is used to construct a subblock motion candidate list, and wherein the first temporal collocated motion vector is derived based on a temporal motion shift from a spatial neighboring block of the current video block, and a reference picture related to the temporal motion shift is same as a collocated picture of the current video block.

4. The method of claim 1 , wherein the at least one clipped temporal collocated motion vector includes a second temporal collocated motion vector which is used to construct a affine motion candidate list, and wherein the second temporal collocated motion vector is used to derive a temporal-based control point motion vector, and the temporal-based control point motion vectore is combined with at least one spatial-based control point motion vector to derive an affine motion vector predictor candidate of the affine motion candidate list.

5. The method of claim 1 , wherein M is 18 and the range is [−131072, 131071].

6. The method of claim 1 , wherein the conversion is performed based on the at least one clipped temporal collocated motion vector for a spatial-temporal motion vector prediction mode of the current video block.

7. The method of claim 1 , wherein the conversion comprises decoding the current video block from the bitstream.

8. The method of claim 1 , wherein the conversion comprises encoding the current video block into 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:

derive, for a conversion between a current video block of a video and a bitstream of the video, at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of the current video block;

scale each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

perform a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein the clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], M is greater than 16 and << is an arithmetic left shift operation; and

perform the conversion based on the at least one clipped temporal collocated motion vector,

wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the conversion directly, or is combined with at least one motion vector difference to derive a refined motion vector, and

wherein, in response to the at least one motion vector difference comprising two motion vector differences and a third picture order count difference between a first reference picture and the current picture being less than a forth picture order count difference between a second reference picture and the current picture, the conversion uses a scaling process to obtain motion vector difference of the first reference picture from the motion vector difference of the second reference picture, and wherein the scaling process uses a second clipping operation to constrain each component of the motion vector difference of the first reference picture to fall in a range [−((1<<(M−1))), (1<<(M−1))−1].

10. The apparatus of claim 9 , wherein each component of the refined motion vector has a bit-depth M-bit.

11. The apparatus of claim 9 , wherein the at least one clipped temporal collocated motion vector includes a first temporal collocated motion vector which is used to construct a subblock motion candidate list, and wherein the first temporal collocated motion vector is derived based on a temporal motion shift from a spatial neighboring block of the current video block, and a reference picture related to the temporal motion shift is same as a collocated picture of the current video block.

12. The apparatus of claim 9 , wherein the at least one clipped temporal collocated motion vector includes a second temporal collocated motion vector which is used to construct a affine motion candidate list, and wherein the second temporal collocated motion vector is used to derive a temporal-based control point motion vector, and the temporal-based control point motion vectore is combined with at least one spatial-based control point motion vector to derive an affine motion vector predictor candidate of the affine motion candidate list.

13. The apparatus of claim 9 , wherein M is 18 and the range is [−131072, 131071].

14. The apparatus of claim 9 , wherein the conversion is performed based on the at least one clipped temporal collocated motion vector for a spatial-temporal motion vector prediction mode of the current video block.

15. A non-transitory computer-readable storage medium storing instructions that cause a processor to:

derive, for a conversion between a current video block of a video and a bitstream of the video, at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of the current video block;

scale each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

perform a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein the clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], M is greater than 16 and << is an arithmetic left shift operation; and

perform the conversion based on the at least one clipped temporal collocated motion vector,

wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the conversion directly, or is combined with at least one motion vector difference to derive a refined motion vector, and

wherein, in response to the at least one motion vector difference comprising two motion vector differences and a third picture order count difference between a first reference picture and the current picture being less than a forth picture order count difference between a second reference picture and the current picture, the conversion uses a scaling process to obtain motion vector difference of the first reference picture from the motion vector difference of the second reference picture, and wherein the scaling process uses a second clipping operation to constrain each component of the motion vector difference of the first reference picture to fall in a range [−((1<<(M−1))), (1<<(M−1))−1].

16. A non-transitory computer-readable recording medium storing a bitstream of a video which is generated by a method performed by a video processing apparatus, wherein the method comprises:

deriving at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of the current video block;

scaling each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

performing a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein the clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], M is greater than 16 and << is an arithmetic left shift operation; and

generating the bitstream based on the at least one clipped temporal collocated motion vector,

wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the conversion directly, or is combined with at least one motion vector difference to derive a refined motion vector, and

wherein, in response to the at least one motion vector difference comprising two motion vector differences and a third picture order count difference between a first reference picture and the current picture being less than a forth picture order count difference between a second reference picture and the current picture, the conversion uses a scaling process to obtain motion vector difference of the first reference picture from the motion vector difference of the second reference picture, and wherein the scaling process uses a second clipping operation to constrain each component of the motion vector difference of the first reference picture to fall in a range [−((1<<(M−1))), (1<<(M−1))−1].

17. The non-transitory computer-readable storage medium of claim 15 , wherein each component of the refined motion vector has a bit-depth M-bit.

18. The non-transitory computer-readable storage medium of claim 15 , wherein the at least one clipped temporal collocated motion vector includes a first temporal collocated motion vector which is used to construct a subblock motion candidate list, and wherein the first temporal collocated motion vector is derived based on a temporal motion shift from a spatial neighboring block of the current video block, and a reference picture related to the temporal motion shift is same as a collocated picture of the current video block.

19. The non-transitory computer-readable storage medium of claim 15 , wherein the at least one clipped temporal collocated motion vector includes a second temporal collocated motion vector which is used to construct a affine motion candidate list, and wherein the second temporal collocated motion vector is used to derive a temporal-based control point motion vector, and the temporal-based control point motion vectore is combined with at least one spatial-based control point motion vector to derive an affine motion vector predictor candidate of the affine motion candidate list.

20. The non-transitory computer-readable storage medium of claim 15 , wherein M is 18 and the range is [−131072, 131071].

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2021
From: ZHANG, LI; ZHANG, KAI; XU, JIZHENG
To: BYTEDANCE INC.
Reel/Frame 055717/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2021
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 055717/0761 →
Priority Claims (1)
WO PCT/CN2018/122740 · Dec 21, 2018 · international
Continuity (2)
Continuation PCTCN2019127011 · Dec 20, 2019
Related Publication 20210211710A1 · Jul 8, 2021