# US 2020/0404267 A1 · Motion and apparatus for motion field storage in video coding

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2020/0404267 A1
- Document ID: US20200404267A1
- Status: Published application
- Kind: A1
- Application number: 16/880,245
- Filed: 2020-05-21
- Published: 2020-12-24
- Earliest claimed: 2019-06-24
- Assignees: Alibaba Group Holding Limited
- Applicants: Alibaba Group Holding Limited
- Inventors: Ruling LIAO; Yan YE; Jie CHEN
- Web page: https://patentgrep.com/patent/US20200404267A1

## CPC

- H04N 19/119: Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
- H04N 19/513: Processing of motion vectors
- H04N 19/124: Quantisation
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/52: by predictive encoding
- H04N 19/573: Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
- H04N 19/577: Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## 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

### Claim 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
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.

### Claim 2 (depends on 1)

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 and second uni-prediction motion vectors 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.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first partition and second partition are:
two geometric partitions, or
two triangle partitions.

### Claim 4 (depends on 1)

The method of claim 1, wherein the stored one of the first uni-prediction motion vector and the second uni-prediction 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, and a motion vector with a smaller amount of motion.

### Claim 5 (depends on 1)

The method of claim 1, wherein the stored one of the first uni-prediction motion vector and the second uni-prediction motion vector is the second uni-prediction motion vector.

### Claim 6 (depends on 1)

The method of claim 1, wherein the subblock comprises M×N pixels, and at least one of the M and N is larger than 4.

### Claim 7 (depends on 1)

The method of claim 1, wherein the subblock comprises M×N pixel samples, and at least one of the M and N is equal to or larger than 8.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
splitting the block into a plurality of subblocks, each of the plurality of subblocks being one of an 8×8 subblock, a 4×8 subblock, a 8×4 subblock, an 16×16 subblock, and a min(width of the block, 16)×min(height of the block, 16) subblock.

### Claim 9

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
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, store, 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.

### Claim 10 (depends on 9)

The apparatus of claim 9, 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 and second uni-prediction motion vectors 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.

### Claim 11 (depends on 9)

The apparatus of claim 9, wherein the first partition and second partition are:
two geometric partitions, or
two triangle partitions.

### Claim 12 (depends on 9)

The apparatus of claim 9, wherein the stored one of the first uni-prediction motion vector and the second uni-prediction 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, and a motion vector with a smaller amount of motion.

### Claim 13 (depends on 9)

The apparatus of claim 9, wherein the subblock comprises M×N pixels, and at least one of the M and N is larger than 4.

### Claim 14 (depends on 9)

The apparatus of claim 9, wherein the subblock comprises M×N pixel samples, and at least one of the M and N is equal to or larger than 8.

### Claim 15 (depends on 9)

The apparatus of claim 9, wherein the processor is further configured to execute the instructions to cause the apparatus to:
split the block into a plurality of subblocks, each of the plurality of subblocks being one of an 8×8 subblock, a 4×8 subblock, a 8×4 subblock, an 16×16 subblock, and a min(width of the block, 16)×min(height of the block, 16) subblock.

### Claim 16

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

### Claim 17 (depends on 16)

The non-transitory computer-readable storage medium of claim 16, 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 and second uni-prediction motion vectors 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.

### Claim 18 (depends on 16)

The non-transitory computer-readable storage medium of claim 16, wherein the first partition and second partition are:
two geometric partitions, or
two triangle partitions.

### Claim 19 (depends on 16)

The non-transitory computer-readable storage medium of claim 16, wherein the stored one of the first uni-prediction motion vector and the second uni-prediction 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, and a motion vector with a smaller amount of motion.

### Claim 20 (depends on 16)

The non-transitory computer-readable storage medium of claim 16, wherein the subblock comprises M×N pixels, and at least one of the M and N is larger than 4.
