IP Library › Granted Patent US 11,909,989
Granted Patent B2
US 11,909,989 · App. 17/365,843 · Granted Feb 20, 2024

Number of motion candidates in a look up table to be checked according to mode

Inventors: Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Hongbin Liu (Beijing, CN); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD; BYTEDANCE INC.
H04N19/176H04N19/105H04N19/139H04N19/159H04N19/513H04N19/52
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,909,989
App. No.
17/365,843
Granted
Feb 20, 2024
Kind
B2
Abstract

Devices, systems and methods for encoding and decoding digital video using a table containing coding candidates are described. In a representative aspect, a video processing method is provided to include maintaining a set of tables, wherein each table includes motion candidates and each motion candidate is associated with corresponding motion information; and performing a conversion between a bitstream representation of a video including a current block and the current block, and wherein the performing of the conversion includes checking at most N motion candidates in a table based on a rule.

Claims (52)

1. A video processing method, comprising:

maintaining a set of tables, wherein each table includes one or more motion candidates derived from one or more video blocks that have been coded, wherein an arrangement of motion candidates in each table in the set of tables is based on a coding order of the one or more video blocks;

constructing a motion candidate list for a current video block, wherein N motion candidates are checked in one table of the set of tables during the constructing to determine whether to add a checked candidate into the motion candidate list, N being an integer smaller than a size of the one table and depending on a coding mode of the current video block;

determining motion information of the current video block using the motion candidate list; and

coding the current video block based on the determined motion information,

wherein the one table is used for coding of video blocks each of which is coded with a merge mode or an Advanced Motion Vector Prediction (AMVP) mode,

wherein N depends on whether the coding mode is the merge mode or the AMVP mode, and

wherein N further depends on at least one of a size of the one table or a maximum number of allowable candidates in the motion candidate list.

2. The method of claim 1 , wherein the coding comprises decoding the current video block from a bitstream.

3. The method of claim 1 , wherein the coding comprises encoding the current video block into a bitstream.

4. The method of claim 1 , wherein N further depends on at least one of a block size, or a block shape of the current video block.

5. The method of claim 1 , wherein N is signaled in a bitstream.

6. The method of claim 1 , wherein N is smaller when the current video block is coded with the AMVP mode as compared to when the current video block is coded with the merge mode.

7. The method of claim 1 , wherein N is same when the current video block is coded with the AMVP mode and when the current video block is coded with the merge mode.

8. The method of claim 1 , wherein a motion candidate in the one table is associated with motion information including at least one of: a prediction direction, a reference picture index, motion vector values, an intensity compensation flag, an affine flag, a motion vector difference precision, or a motion vector difference value.

9. The method of claim 1 , further comprising updating the one table using the determined motion information.

10. The method of claim 9 , further comprising:

coding a subsequent video block based on the updated table.

11. The method of claim 1 , wherein the one table is updated using motion information of video blocks each of which is coded with a coding mode belonging to at least one specific coding mode.

12. The method of claim 11 , wherein the at least one specific mode comprises at least one of the AMVP mode or the merge mode.

13. A video processing apparatus comprising a processor and a non- transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:

maintain a set of tables, wherein each table includes one or more motion candidates derived from one or more video blocks that have been coded, wherein an arrangement of motion candidates in each table in the set of tables is based on a coding order of the one or more video blocks;

construct a motion candidate list for a current video block, wherein N motion candidates are checked in one table of the set of tables during the constructing to determine whether to add a checked candidate into the motion candidate list, N being an integer smaller than a size of the one table and depending on a coding mode of the current video block;

determine motion information of the current video block using the motion candidate list; and

code the current video block based on the determined motion information,

wherein the one table is used for coding of video blocks each of which is coded with a merge mode or an Advanced Motion Vector Prediction (AMVP) mode,

wherein N depends on whether the coding mode is the merge mode or the AMVP mode, and

wherein N further depends on at least one of a size of the one table or a maximum number of allowable candidates in the motion candidate list.

14. The apparatus of claim 13 , wherein the instructions upon execution by the processor, further cause the processor to:

decode the current video block from a bitstream.

15. The apparatus of claim 13 , wherein the instructions upon execution by the processor, further cause the processor to:

code the current video block into a bitstream.

16. The apparatus of claim 13 , wherein N further depends on at least one of a block size, or a block shape of the current video block.

17. The apparatus of claim 13 , wherein N is signaled in a bitstream.

18. The apparatus of claim 13 , wherein N is smaller when the current video block is coded with the AMVP mode as compared to when the current video block is coded with the merge mode.

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

maintain a set of tables, wherein each table includes one or more motion candidates derived from one or more video blocks that have been coded, wherein an arrangement of motion candidates in each table in the set of tables is based on a coding order of the one or more video blocks;

construct a motion candidate list for a current video block, wherein N motion candidates are checked in one table of the set of tables during the constructing to determine whether to add a checked candidate into the motion candidate list, N being an integer smaller than a size of the one table and depending on a coding mode of the current video block;

determine motion information of the current video block using the motion candidate list; and

code the current video block based on the determined motion information,

wherein the one table is used for coding of video blocks each of which is coded with a merge mode or an Advanced Motion Vector Prediction (AMVP) mode,

wherein N depends on whether the coding mode is the merge mode or the AMVP mode, and

wherein N further depends on at least one of a size of the one table or a maximum number of allowable candidates in the motion candidate list.

20. A method for storing a bitstream of a video, wherein the method comprises:

maintaining a set of tables, wherein each table includes one or more motion candidates derived from one or more video blocks that have been encoded, wherein arrangement of motion candidates in each table in the set of tables is based on a coding order of the one or more video blocks;

constructing a motion candidate list for a current video block, wherein N motion candidates are checked in one table of the set of tables during the constructing to determine whether to add a checked candidate into the motion candidate list, N being an integer smaller than a size of the one table and depending on a coding mode of the current video block;

determining motion information of the current video block using the motion candidate list;

encoding the current video block into the bitstream based on the determined motion information; and

storing the bitstream in a non-transitory computer-readable recording medium,

wherein the one table is used for coding of video blocks each of which is coded with a merge mode or an Advanced Motion Vector Prediction (AMVP) mode,

wherein N depends on whether the coding mode is the merge mode or the AMVP mode, and

wherein N further depends on at least one of a size of the one table or a maximum number of allowable candidates in the motion candidate list.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2021
From: ZHANG, LI; ZHANG, KAI
To: BYTEDANCE INC.
Reel/Frame 056739/0374 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2021
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 056739/0434 →
Priority Claims (2)
WO PCT/CN2018/093663 · Jun 29, 2018 · international
WO PCT/CN2018/093987 · Jul 2, 2018 · international
Continuity (3)
Continuation 17005634 · Aug 28, 2020
Continuation PCTIB2019055575 · Jul 1, 2019
Related Publication 20210337216A1 · Oct 28, 2021
Cited By (6)
US 12,368,880 US 12,401,820 US 12,549,756 US 12,556,738 US 12,604,029 US 12,641,216