IP Library › Granted Patent US 11,973,971
Granted Patent B2
US 11,973,971 · App. 17/369,132 · Granted Apr 30, 2024

Conditions for updating LUTs

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/513H04N19/176H04N19/94
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,973,971
App. No.
17/369,132
Granted
Apr 30, 2024
Kind
B2
Abstract

Devices, systems and methods for processing video are described. In a representative aspect, a video processing method is provided to include: maintaining tables, wherein each table includes a set of motion candidates and each motion candidate is associated with corresponding motion information; performing a conversion between a first video block and a bitstream representation of a video including the first video block based on the tables; and updating, after performing of the conversion, zero or more tables, based on an update rule.

Claims (52)

1. A method of processing video data, comprising:

maintaining one or multiple tables, wherein each table includes one or more motion candidates derived from one or more video blocks that have been coded, wherein the table is a look up table which is stored with the one or more motion candidates;

constructing a motion candidate list for a current video block of a video, wherein the table is checked to determine whether to add at least one motion candidate in the table to the motion candidate list;

wherein an order of partial or all motion candidates in the table during constructing the motion candidate list for the current video block is different than that of the partial or all motion candidates in the table during constructing a motion candidate list for a subsequent video block;

determining motion information of the current video block from the motion candidate list other than the table; and

performing a conversion between the current video block and a bitstream of the video based on the determined motion information;

wherein the method further comprises:

updating, based on the motion information of the current video block, the one or more tables by adding a new motion candidate;

wherein the updating is performed without reordering motion candidates that have been added into the table before the new motion candidate;

wherein the table is maintained during processing multiple blocks and the motion candidate list is constructed for one specific block.

2. The method of claim 1 , wherein during constructing the motion candidate list, the partial or all motion candidates in the table are reordered.

3. The method of claim 1 , the new motion candidate corresponds to the motion information of the current video block.

4. The method of claim 1 , wherein the motion candidate in the table is associated with motion information which includes at least one of: block position information indicating source of the motion information, a prediction direction, a reference picture index, motion vector values, intensity compensation flag, affine flag, motion vector difference precision, or motion vector difference value, a filter parameter used in a filtering process.

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

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

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

maintain one or multiple tables, wherein each table includes one or more motion candidates derived from one or more video blocks that have been coded, wherein the table is a look up table which is stored with the one or more motion candidates;

construct a motion candidate list for a current video block of a video, wherein the table is checked to determine whether to add at least one motion candidate in the table to the motion candidate list;

wherein an order of partial or all motion candidates in the table during constructing the motion candidate list for the current video block is different than that of the partial or all motion candidates in the table during constructing a motion candidate list for a subsequent video block;

determine motion information of the current video block from the motion candidate list other than the table; and

perform a conversion between the current video block and a bitstream of the video based on the determined motion information;

wherein the instructions upon execution by the processor, further cause the processor to:

update, based on the motion information of the current video block, the one or more tables by adding a new motion candidate;

wherein the updating is performed without reordering motion candidates that have been added into the table before the new motion candidate;

wherein the table is maintained during processing multiple blocks and the motion candidate list is constructed for one specific block.

8. The apparatus of claim 7 , wherein during constructing the motion candidate list, the partial or all motion candidates in the table are reordered.

9. The apparatus of claim 7 , wherein the new motion candidate corresponds to the motion information of the current video block.

10. The apparatus of claim 7 , wherein the motion candidate in the table is associated with motion information which includes at least one of: block position information indicating source of the motion information, a prediction direction, a reference picture index, motion vector values, intensity compensation flag, affine flag, motion vector difference precision, or motion vector difference value, a filter parameter used in a filtering process.

11. The apparatus of claim 7 , wherein the conversion comprises encoding the current video block into a bitstream, or decoding the current video block from a bitstream.

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

maintain one or multiple tables, wherein each table includes one or more motion candidates derived from one or more video blocks that have been coded, wherein the table is a look up table which is stored with the one or more motion candidates;

construct a motion candidate list for a current video block of a video, wherein the table is checked to determine whether to add at least one motion candidate in the table to the motion candidate list;

wherein an order of partial or all motion candidates in the table during constructing the motion candidate list for the current video block is different than that of the partial or all motion candidates in the table during constructing a motion candidate list for a subsequent video block;

determine motion information of the current video block from the motion candidate list other than the table; and

perform a conversion between the current video block and a bitstream of the video based on the determined motion information;

wherein the instructions further cause the processor to:

update, based on the motion information of the current video block, the one or more tables by adding a new motion candidate;

wherein the updating is performed without reordering motion candidates that have been added into the table before the new motion candidate;

wherein the table is maintained during processing multiple blocks and the motion candidate list is constructed for one specific block.

13. The non-transitory computer-readable storage medium of claim 12 , wherein during constructing the motion candidate list, the partial or all motion candidates in the table are reordered.

14. The non-transitory computer-readable storage medium of claim 12 , the new motion candidate corresponds to the motion information of the current video block.

15. The non-transitory computer-readable storage medium of claim 12 wherein the motion candidate in the table is associated with motion information which includes at least one of: block position information indicating source of the motion information, a prediction direction, a reference picture index, motion vector values, intensity compensation flag, affine flag, motion vector difference precision, or motion vector difference value, a filter parameter used in a filtering process.

16. 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 includes one or more motion candidates derived from one or more video blocks that have been coded, wherein the table is a look up table which is stored with the one or more motion candidates;

constructing a motion candidate list for a current video block of a video, wherein the table is checked to determine whether to add at least one motion candidate in the table to the motion candidate list;

wherein an order of partial or all motion candidates in the table during constructing the motion candidate list for the current video block is different than that of the partial or all motion candidates in the table during constructing a motion candidate list for a subsequent video block;

determining motion information of the current video block from the motion candidate list other than the table; and

performing a conversion between the current video block and the bitstream of the video based on the determined motion information;

wherein the method further comprises:

updating, based on the motion information of the current video block, the one or more tables by adding a new motion candidate;

wherein the updating is performed without reordering motion candidates that have been added into the table before the new motion candidate;

wherein the table is maintained during processing multiple blocks and the motion candidate list is constructed for one specific block.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2021
From: ZHANG, LI; ZHANG, KAI
To: BYTEDANCE INC.
Reel/Frame 056775/0041 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2021
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 056775/0333 →
Priority Claims (4)
WO PCT/CN2018/093663 · Jun 29, 2018 · international
WO PCT/CN2018/093987 · Jul 2, 2018 · international
WO PCT/CN2018/094929 · Jul 7, 2018 · international
WO PCT/CN2018/101220 · Aug 18, 2018 · international
Continuity (3)
Continuation 16998258 · Aug 20, 2020
Continuation PCTIB2019055593 · Jul 1, 2019
Related Publication 20210360278A1 · Nov 18, 2021
Cited By (5)
US 12,368,880 US 12,549,756 US 12,556,738 US 12,604,029 US 12,641,216