IP Library Granted Patent US 11,310,508
Granted Patent B2
US 11,310,508 · App. 17/203,604 · Granted Apr 19, 2022

Motion vector precision in merge with motion vector difference mode

Inventors: Hongbin Liu (Beijing, CN); Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Jizheng Xu (San Diego, CA); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.; BYTEDANCE INC.
H04N19/137H04N19/105H04N19/132H04N19/46
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,310,508
App. No.
17/203,604
Granted
Apr 19, 2022
Kind
B2
Abstract

A method of video processing is provided to include: performing a conversion between one or more video blocks of a video and a coded representation of the video, wherein a first field in the coded representation indicates whether fractional sample precision is used for indicating motion distances in a merge with motion vector difference (MMVD) mode used during the conversion, and wherein the MMVD mode includes a motion vector expression that includes a starting point, a motion distance and a motion direction for the current video block.

Claims (56)

1. A method of processing video data, comprising:

constructing a merge candidate list for a current video unit of a video;

generating a first motion vector from the merge candidate list;

determining a motion vector difference offset based on a motion distance and a motion direction, wherein the motion distance is determined based on a motion distance index and a sample precision;

determining, a motion vector difference (MVD) based on the motion vector difference offset;

determining, a second motion vector based on the MVD and the first motion vector; and

performing a conversion between the current video unit and a bitstream of the video based on the second motion vector;

wherein a first flag in the bitstream indicates whether only integer sample precision is used for indicating the motion distance,

wherein the first flag is included in the bitstream in a case that a merge mode with motion vector difference enablement flag indicates that the merge mode with motion vector difference is enabled,

wherein an element in a first column of a motion distance table is a product of a factor and a corresponding element with a same motion distance index in a second column of the motion distance table, wherein the first column is used to derive the motion distance when the first flag indicate that only integer sample precision is used for indicating the motion distance, and the second column is used to derive the motion distance when the first flag indicates that not only integer sample precision is used for indicating the motion distance, wherein the factor is 4.

2. The method of claim 1 , wherein the motion distance index is binarized by a truncated rice process.

3. The method of claim 1 , wherein the first flag is a picture header level.

4. The method of claim 3 , wherein a second flag in the bitstream indicates whether only integer sample precision is enabled for indicating the motion distance, and wherein the second flag is a sequence parameter set (SPS) level.

5. The method of claim 4 , wherein the first flag is not included in the bitstream in response to the second flag indicating false.

6. The method of claim 4 , wherein the first flag is included in the bitstream in response to the second flag indicating true.

7. The method of claim 1 , wherein the conversion includes encoding the current video unit into the bitstream.

8. The method of claim 1 , wherein the conversion includes decoding the current video unit 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:

construct a merge candidate list for a current video unit of a video;

generate a first motion vector from the merge candidate list;

determine a motion vector difference offset based on a motion distance and a motion direction, wherein the motion distance is determined based on a motion distance index and a sample precision;

determine, a motion vector difference (MVD) based on the motion vector difference offset;

determine, a second motion vector based on the MVD and the first motion vector; and

perform a conversion between the current video unit and a bitstream of the video based on the second motion vector;

wherein a first flag in the bitstream indicates whether only integer sample precision is used for indicating the motion distance,

wherein the first flag is included in the bitstream in a case that a merge mode with motion vector difference enablement flag indicates that the merge mode with motion vector difference is enabled,

wherein an element in a first column of a motion distance table is a product of a factor and a corresponding element with a same motion distance index in a second column of the motion distance table, wherein the first column is used to derive the motion distance when the first flag indicate that only integer sample precision is used for indicating the motion distance, and the second column is used to derive the motion distance when the first flag indicates that not only integer sample precision is used for indicating the motion distance, wherein the factor is 4.

10. The apparatus of claim 9 , wherein the motion distance index is binarized by a truncated rice process.

11. The apparatus of claim 9 , wherein the first flag is a picture header level.

12. The apparatus of claim 11 , wherein a second flag in the bitstream indicates whether only integer sample precision is enabled for indicating the motion distance, and wherein the second flag is a sequence parameter set (SPS) level.

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

construct a merge candidate list for a current video unit of a video;

generate a first motion vector from the merge candidate list;

determine a motion vector difference offset based on a motion distance and a motion direction, wherein the motion distance is determined based on a motion distance index and a sample precision;

determine, a motion vector difference (MVD) based on the motion vector difference offset;

determine, a second motion vector based on the MVD and the first motion vector; and

perform a conversion between the current video unit and a bitstream of the video based on the second motion vector;

wherein a first flag in the bitstream indicates whether only integer sample precision is used for indicating the motion distance,

wherein the first flag is included in the bitstream in a case that a merge mode with motion vector difference enablement flag indicates that the merge mode with motion vector difference is enabled,

wherein an element in a first column of a motion distance table is a product of a factor and a corresponding element with a same motion distance index in a second column of the motion distance table, wherein the first column is used to derive the motion distance when the first flag indicate that only integer sample precision is used for indicating the motion distance, and the second column is used to derive the motion distance when the first flag indicates that not only integer sample precision is used for indicating the motion distance, wherein the factor is 4.

14. 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:

constructing a merge candidate list for a current video unit of a video;

generating a first motion vector from the merge candidate list;

determining a motion vector difference offset based on a motion distance and a motion direction, wherein the motion distance is determined based on a motion distance index and a sample precision;

determining, a motion vector difference (MVD) based on the motion vector difference offset;

determining, a second motion vector based on the MVD and the first motion vector; and

generating the bitstream based on the second motion vector;

wherein a first flag in the bitstream indicates whether only integer sample precision is used for indicating the motion distance,

wherein the first flag is included in the bitstream in a case that a merge mode with motion vector difference enablement flag indicates that the merge mode with motion vector difference is enabled,

wherein an element in a first column of a motion distance table is a product of a factor and a corresponding element with a same motion distance index in a second column of the motion distance table, wherein the first column is used to derive the motion distance when the first flag indicate that only integer sample precision is used for indicating the motion distance, and the second column is used to derive the motion distance when the first flag indicates that not only integer sample precision is used for indicating the motion distance, wherein the factor is 4.

15. The non-transitory computer-readable storage medium of claim 13 , wherein the motion distance index is binarized by a truncated rice process.

16. The non-transitory computer-readable storage medium of claim 13 , wherein the motion distance index is binarized by a truncated rice process.

17. The non-transitory computer-readable storage medium of claim 13 , wherein the first flag is a picture header level.

18. The non-transitory computer-readable storage medium of claim 17 , wherein a second flag in the bitstream indicates whether only integer sample precision is enabled for indicating the motion distance, and wherein the second flag is a sequence parameter set (SPS) level.

19. The non-transitory computer-readable storage medium of claim 18 , wherein the first flag is not included in the bitstream in response to the second flag indicating false.

20. The non-transitory computer-readable storage medium of claim 18 , wherein the first flag is included in the bitstream in response to the second flag indicating true.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2021
From: ZHANG, LI; ZHANG, KAI; XU, JIZHENG
To: BYTEDANCE INC.
Reel/Frame 055612/0914 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2021
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 055612/0942 →
Priority Claims (3)
WO PCT/CN2018/122626 · Dec 21, 2018 · international
WO PCT/CN2018/125417 · Dec 29, 2018 · international
WO PCT/CN2019/072814 · Jan 23, 2019 · international
Continuity (2)
Continuation PCTCN2019126990 · Dec 20, 2019
Related Publication 20210203945A1 · Jul 1, 2021
Cited By (7)
US 12,192,473 US 12,289,466 US 12,401,812 US 12,407,812 US 12,483,691 US 12,615,394 US 12,744,910