IP Library Granted Patent US 11,800,107
Granted Patent B2
US 11,800,107 · App. 17/807,976 · Granted Oct 24, 2023

Method and apparatus for motion field storage in triangle partition mode and geometric partition mode

Inventors: Ru-Ling Liao (San Mateo, CA); Yan Ye (San Mateo, CA); Jie Chen (San Mateo, CA)
Assignee: Alibaba Group Holding Limited
H04N19/119H04N19/124H04N19/176H04N19/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,800,107
App. No.
17/807,976
Granted
Oct 24, 2023
Kind
B2
Abstract

The present disclosure provides method and apparatus for motion field storage in video coding. An exemplary method includes: determining whether a first uni-prediction motion vector for a first partition of a block and a second uni-prediction motion vector for a second partition of the block are from a same reference picture list; and in response to the first uni-prediction motion vector and the second uni-prediction motion vector being determined to be from the same reference picture list, storing, in a motion field of the block, one of the first uni-prediction motion vector and the second uni-prediction motion vector for a subblock located in a bi-predicted area of the block.

Claims (74)

1. A computer-implemented method, comprising:

determining whether a first uni-prediction motion vector for a first partition of a block and a second uni-prediction motion vector for a second partition of the block are from a same reference picture list; and

storing a motion vector for a subblock located in a bi-predicted area of the block,

wherein when the first uni-prediction motion vector and the second uni-prediction motion vector are determined to be from the same reference picture list:

the stored motion vector is the second uni-prediction motion vector,

the same reference picture list is a first reference picture list, and

wherein the second uni-prediction motion vector is stored for the subblock regardless of whether the second uni-prediction motion vector has a reference picture that is also in a second reference picture list different from the first reference picture list.

2. The method of claim 1 , wherein when an absolute value of a weight of a luma sample in the subblock is smaller than a threshold, the subblock is treated as being located in the bi-predicted area.

3. The method of claim 1 , wherein when an absolute value of a weight of a luma sample in the subblock is greater than or equal to a threshold, the subblock is treated as being located in the uni-predicted area.

4. The method of claim 1 , further comprising:

in response to the first uni-prediction motion vector and the second uni-prediction motion vector being determined to be not from the same reference picture list:

combining the first uni-prediction motion vector and the second uni-prediction motion vector to form a bi-prediction motion vector; and

storing, in the motion field of the block, the bi-prediction motion vector for a subblock located in the bi-predicted area of the block.

5. The method of claim 1 , wherein the first partition and second partition are:

two geometric partitions, or

two triangle partitions.

6. The method of claim 1 , wherein the stored motion vector is one of:

a motion vector from a top partition of the block;

a motion vector from a bottom partition of the block;

a motion vector from a left partition of the block;

a motion vector from a right partition of the block;

a motion vector for which a reference picture is closer to a target picture corresponding to a target block;

a motion vector for which a reference picture has higher quality; or

a motion vector with a smaller amount of motion.

7. An apparatus, comprising:

a memory configured to store instructions; and

a processor coupled to the memory and configured to execute the instructions to cause the apparatus to:

determine whether a first uni-prediction motion vector for a first partition of a block and a second uni-prediction motion vector for a second partition of the block are from a same reference picture list; and

store a motion vector for a subblock located in a bi-predicted area of the block,

wherein when the first uni-prediction motion vector and the second uni-prediction motion vector are determined to be from the same reference picture list:

the stored motion vector is the second uni-prediction motion vector,

the same reference picture list is a first reference picture list, and

wherein the second uni-prediction motion vector is stored for the subblock regardless of whether the second uni-prediction motion vector has a reference picture that is also in a second reference picture list different from the first reference picture list.

8. The apparatus of claim 7 , wherein when an absolute value of a weight of a luma sample in the subblock is smaller than a threshold, the subblock is treated as being located in the bi-predicted area.

9. The apparatus of claim 7 , wherein when an absolute value of a weight of a luma sample in the subblock is greater than or equal to a threshold, the subblock is treated as being located in the uni-predicted area.

10. The apparatus of claim 7 , wherein the processor is further configured to execute the instructions to cause the apparatus to:

in response to the first uni-prediction motion vector and the second uni-prediction motion vector being determined to be not from the same reference picture list:

combine the first uni-prediction motion vector and the second uni-prediction motion vector to form a bi-prediction motion vector; and

store, in the motion field of the block, the bi-prediction motion vector for a subblock located in the bi-predicted area of the block.

11. The apparatus of claim 7 , wherein the first partition and second partition are:

two geometric partitions, or

two triangle partitions.

12. The apparatus of claim 7 , wherein the stored motion vector is one of:

a motion vector from a top partition of the block;

a motion vector from a bottom partition of the block;

a motion vector from a left partition of the block;

a motion vector from a right partition of the block;

a motion vector for which a reference picture is closer to a target picture corresponding to a target block;

a motion vector for which a reference picture has higher quality; or

a motion vector with a smaller amount of motion.

13. A non-transitory computer-readable storage medium storing a set of instructions that are executable by one or more processors of a device, wherein the execution of the set of the instructions causes the device to perform:

determining whether a first uni-prediction motion vector for a first partition of a block and a second uni-prediction motion vector for a second partition of the block are from a same reference picture list; and

storing a motion vector for a subblock located in a bi-predicted area of the block,

wherein when the first uni-prediction motion vector and the second uni-prediction motion vector are determined to be from the same reference picture list:

the stored motion vector is the second uni-prediction motion vector,

the same reference picture list is a first reference picture list, and

wherein the second uni-prediction motion vector is stored for the subblock regardless of whether the second uni-prediction motion vector has a reference picture that is also in a second reference picture list different from the first reference picture list.

14. The non-transitory computer-readable storage medium of claim 13 , wherein when an absolute value of a weight of a luma sample in the subblock is smaller than a threshold, the subblock is treated as being located in the bi-predicted area.

15. The non-transitory computer-readable storage medium of claim 13 , wherein when an absolute value of a weight of a luma sample in the subblock is greater than or equal to a threshold, the subblock is treated as being located in the uni-predicted area.

16. The non-transitory computer-readable storage medium of claim 13 , wherein the execution of the set of the instructions causes the device to further perform:

in response to the first uni-prediction motion vector and the second uni-prediction motion vector being determined to be not from the same reference picture list:

combining the first uni-prediction motion vector and the second uni-prediction motion vector to form a bi-prediction motion vector; and

storing, in the motion field of the block, the bi-prediction motion vector for a subblock located in the bi-predicted area of the block.

17. The non-transitory computer-readable storage medium of claim 13 , wherein the first partition and second partition are:

two geometric partitions, or

two triangle partitions.

18. The non-transitory computer-readable storage medium of claim 13 , wherein the stored motion vector is one of:

a motion vector from a top partition of the block;

a motion vector from a bottom partition of the block;

a motion vector from a left partition of the block;

a motion vector from a right partition of the block;

a motion vector for which a reference picture is closer to a target picture corresponding to a target block;

a motion vector for which a reference picture has higher quality; or

a motion vector with a smaller amount of motion.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2026
From: ALIBABA INNOVATION PRIVATE LIMITED
To: HFI INNOVATION INC.
Reel/Frame 075499/0876 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2026
From: ALIBABA GROUP HOLDING LIMITED
To: ALIBABA INNOVATION PRIVATE LIMITED
Reel/Frame 074832/0914 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2023
From: LIAO, RU-LING; YE, YAN; CHEN, JIE
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 064330/0129 →
Continuity (3)
Continuation 16880245 · May 21, 2020
Provisional Application 62865920 · Jun 24, 2019
Related Publication 20220329797A1 · Oct 13, 2022
Cited By (1)
US 12,676,964