IP Library › Granted Patent US 11,109,020
Granted Patent B2
US 11,109,020 · App. 16/993,561 · Granted Aug 31, 2021

Which LUT to be updated or no updating

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/105H04L65/601H04L65/607H04N19/137H04N19/174H04N19/176H04N19/184H04N19/513H04N19/70H04N19/96
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,109,020
App. No.
16/993,561
Granted
Aug 31, 2021
Kind
B2
Abstract

A method of video decoding includes maintaining a number of tables, wherein each table includes a set of motion candidates and each motion candidate is associated with corresponding motion information derived from previously coded video blocks, performing a conversion between a current video block and a bitstream representation of the current video block in a video region, and updating the one or more tables based on an updating rule.

Claims (48)

1. A method of coding video data, comprising

maintaining one or multiple tables, wherein each table of the one or multiple tables includes one or more motion candidates derived from one or more video blocks that have been coded, and arrangement of the motion candidates in the table is based on a sequence of addition of the motion candidates into the table;

constructing a motion candidate list for a current video block; wherein during the constructing, at least one motion candidate of a table of the one or multiple tables is selectively checked in an order;

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 table of the one or multiple tables has a size which indicates a number of allowed motion candidates in the table,

a candidate in the table is deleted due to adding a new motion candidate into the table when a number of motion candidates in the table reaches the size of the table before the new motion candidate is added to the table, and

a value of the size of the table is a predefined value and sizes of the multiple tables are same.

2. The method of claim 1 , wherein the syntax element is signaled in at least one of a Sequence Parameter Set (SPS), a Picture Parameter Set (PPS), a picture header or a Slice header.

3. The method of claim 1 , wherein further comprising:

maintaining a counter for the table, wherein the counter indicates a number of motion candidates in the table and the counter is not greater than the size of the table.

4. The method of claim 1 , wherein the size of the table is based on at least one of a slice type, a temporal layer index of a picture, a picture order count (POC) distance between one slice and the closest intra slice.

5. The method of claim 1 , wherein the table is reset at beginning of coding a new region comprising multiples video blocks.

6. The method of claim 5 , wherein the new region is a new Coding Tree unit (CTU row), a new tile or a new slice.

7. The method of claim 5 , wherein the resetting comprises resetting the number of motion candidates in the table to zero.

8. The method of claim 1 , wherein the number of the tables is pre-defined.

9. The method of claim 1 , wherein the one or multiple tables comprises N tables, wherein N is equal to K*P, wherein K is an integer representing a number of tables per coding thread corresponding to a CTU row or tile of a slice of the video data, and P is an integer representing a number of CTU rows or a number of tiles in the slice.

10. The method of claim 1 , wherein the one or multiple tables comprises N tables, wherein N is equal to P when CTU row of a slice or tile of a slice of the video data uses a single table and P is an integer representing a number of CTU rows or a number of tiles in the slice.

11. The method of claim 1 , wherein the number of the one or multiple tables is based on is based on at least one of a slice type, a temporal layer index of a picture, picture order count (POC) distance between one slice and the closest intra slice.

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

13. The method of claim 1 , wherein the motion candidate list is one of a motion vector prediction list or a merge candidate list.

14. The method of claim 1 , one or more of checked candidates are added into the motion candidate list is based on the checking result.

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

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

17. An apparatus for coding 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:

maintain one or multiple tables, wherein each table of the one or multiple tables includes one or more motion candidates derived from one or more video blocks that have been coded, and arrangement of the motion candidates in the table is based on a sequence of addition of the motion candidates into the table;

construct a motion candidate list for a current video block; wherein during the constructing, at least one motion candidate of a table of the one or multiple tables is selectively checked in an order;

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 table of the one or multiple tables has a size which indicates a number of allowed motion candidates in the table,

a candidate in the table is deleted due to adding a new motion candidate into the table when a number of motion candidates in the table reaches the size of the table before the new motion candidate is added to the table, and

a value of the size of the table is a predefined value and sizes of the multiple tables are same.

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

maintain one or multiple tables, wherein each table of the one or multiple tables includes one or more motion candidates derived from one or more video blocks that have been coded, and arrangement of the motion candidates in the table is based on a sequence of addition of the motion candidates into the table;

construct a motion candidate list for a current video block; wherein during the constructing, at least one motion candidate of a table of the one or multiple tables is selectively checked in an order;

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 table of the one or multiple tables has a size which indicates a number of allowed motion candidates in the table,

a candidate in the table is deleted due to adding a new motion candidate into the table when a number of motion candidates in the table reaches the size of the table before the new motion candidate is added to the table, and

a value of the size of the table is a predefined value and sizes of the multiple tables are same.

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

maintaining one or multiple tables, wherein each table of the one or multiple tables includes one or more motion candidates derived from one or more video blocks that have been coded, and arrangement of the motion candidates in the table is based on a sequence of addition of the motion candidates into the table;

constructing a motion candidate list for a current video block; wherein during the constructing, at least one motion candidate of a table of the one or multiple tables is selectively checked in an order;

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 table of the one or multiple tables has a size which indicates a number of allowed motion candidates in the table,

a candidate in the table is deleted due to adding a new motion candidate into the table when a number of motion candidates in the table reaches the size of the table before the new motion candidate is added to the table, and

a value of the size of the table is a predefined value and sizes of the multiple tables are same.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2020
From: ZHANG, LI; ZHANG, KAI
To: BYTEDANCE INC.
Reel/Frame 053500/0497 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2020
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 053500/0566 →
Priority Claims (1)
WO PCT/CN2018/093663 · Jun 29, 2018 · international
Continuity (2)
Continuation PCTIB2019055588 · Jul 1, 2019
Related Publication 20200404316A1 · Dec 24, 2020