# US 11,909,959 B2 · Encoder, a decoder and corresponding methods for merge mode

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

- Number: US 11,909,959 B2
- Document ID: US11909959B2
- Status: Granted
- Kind: B2
- Application number: 17/324,401
- Filed: 2021-05-19
- Published: 2021-09-02
- Granted: 2024-02-20
- Earliest claimed: 2018-11-20
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Timofey Mikhailovich Solovyev; Semih Esenlik; Jianle Chen; Anand Meher Kotra; Biao Wang; Han Gao
- Web page: https://patentgrep.com/patent/US11909959B2

## CPC

- H04N 19/107: between spatial and temporal predictive coding, e.g. picture refresh
- H04N 19/52: by predictive encoding
- H04N 19/119: Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

The present disclosure provides methods and devices of processing a block according to a merge candidate list, the method comprising: constructing a first list according to motion information of neighboring blocks of a current block; obtaining prediction information of the current block; when the prediction information of the current block indicates that a sub-block prediction is applied to the current block, obtaining a uni-prediction candidate for the current block according to the first list; using, the uni-prediction candidate for the current block to perform inter prediction of the current block. According to embodiment of the present disclosure, the regular merge list can be directly used and there is no need to explicitly generate the uni-prediction merge candidate list for sub-block prediction.

## Claims

### Claim 1

A method of processing a block according to a merge candidate list, the method comprising:
constructing a first list according to motion information of neighboring blocks of a current block, wherein the motion information includes the information whether one or two reference picture lists are used, a reference index, and a motion vector for each reference picture list, and wherein the first list is a merge candidate list;
obtaining prediction information of the current block;
if the prediction information of the current block indicates that a sub-block prediction is applied to the current block,
obtaining a uni-prediction candidate for the current block according to the first list; and
using, the uni-prediction candidate for the current block to perform inter prediction of the current block,
wherein constructing the first list further comprises:
after checking whether a neighboring block is available and contains the motion information, performing redundancy checks before using the motion information of the neighboring blocks as merge candidates in the first list, wherein the redundancy checks ensure that the merge candidates with same motion information are excluded from the first list, and wherein the redundancy checks include a first redundancy check performed among left, top-right, top, and top-left neighboring blocks, and a second redundancy check performed among left, bottom-left, and top-left neighboring blocks.

### Claim 2 (depends on 1)

The method of claim 1, wherein the current block comprises two sub-blocks, and wherein each sub-block corresponds to a uni-prediction candidate, and wherein the uni-prediction candidate is obtained without generating a uni-prediction merge candidate list for the sub-block prediction.

### Claim 3 (depends on 1)

The method of claim 1, wherein one uni-prediction candidate is generated according to one bi-prediction candidate of the first list.

### Claim 4 (depends on 1)

The method of claim 1, wherein two uni-prediction candidates are generated according to one bi-prediction candidate of the first list.

### Claim 5 (depends on 3)

The method of claim 3, wherein one uni-prediction candidate is a first part of the bi-prediction candidate.

### Claim 6 (depends on 3)

The method of claim 3, wherein one uni-prediction candidate is a second part of the bi-prediction candidate.

### Claim 7 (depends on 1)

The method of claim 1, wherein the sub-block prediction is a triangular prediction.

### Claim 8 (depends on 4)

The method of claim 4, wherein generation of the two uni-prediction candidates according to the one bi-prediction candidate of the first list comprise:
determining a similarity between the two uni-prediction candidates.

### Claim 9 (depends on 1)

The method of claim 1, wherein the uni-prediction candidate is generated according to a bi-prediction candidate of the first list based on a candidate order in the first list.

### Claim 10

A non-transitory computer-readable medium having stored thereon instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:
constructing a first list according to motion information of neighboring blocks of a current block, wherein the motion information includes the information whether one or two reference picture lists are used, a reference index, and a motion vector for each reference picture list, and wherein the first list is a merge candidate list;
obtaining prediction information of the current block;
if the prediction information of the current block indicates that a sub-block prediction is applied to the current block,
obtaining a uni-prediction candidate for the current block according to the first list; and
using, the uni-prediction candidate for the current block to perform inter prediction of the current block,
wherein constructing the first list further comprises:
after checking whether a neighboring block is available and contains the motion information, performing redundancy checks before using the motion information of the neighboring blocks as merge candidates in the first list, wherein the redundancy checks ensure that the merge candidates with same motion information are excluded from the first list, and wherein the redundancy checks include a first redundancy check performed among left, top-right, top, and top-left neighboring blocks, and a second redundancy check performed among left, bottom-left, and top-left neighboring blocks.

### Claim 11 (depends on 10)

The non-transitory computer-readable medium of claim 10, wherein the current block comprises two sub-blocks, and wherein each sub-block corresponds to a uni-prediction candidate, and wherein the uni-prediction candidate is obtained without generating a uni-prediction merge candidate list for the sub-block prediction.

### Claim 12 (depends on 10)

The non-transitory computer-readable medium of claim 10, wherein one uni-prediction candidate is generated according to one bi-prediction candidate of the first list.

### Claim 13 (depends on 12)

The non-transitory computer-readable medium of claim 12, wherein one uni-prediction candidate is a first part of the bi-prediction candidate.

### Claim 14 (depends on 12)

The non-transitory computer-readable medium of claim 12, wherein one uni-prediction candidate is a second part of the bi-prediction candidate.

### Claim 15

A decoder, comprising:
one or more processors; and a non-transitory computer-readable storage medium coupled to the processors and storing instructions for execution by the processors, wherein the instructions, when executed by the processors, causes the decoder to:
construct a first list according to motion information of neighboring blocks of a current block, wherein the motion information includes the information whether one or two reference picture lists are used, a reference index, and a motion vector for each reference picture list, and wherein the first list is a merge candidate list;
obtain prediction information of the current block;
if the prediction information of the current block indicates that a sub-block prediction is applied to the current block,
obtain a uni-prediction candidate for the current block according to the first list; and
use, the uni-prediction candidate for the current block to perform inter prediction of the current block,
wherein constructing the first list further comprises:
after checking whether a neighboring block is available and contains the motion information, performing redundancy checks before using the motion information of the neighboring blocks as merge candidates in the first list, wherein the redundancy checks ensure that the merge candidates with same motion information are excluded from the first list, and wherein the redundancy checks include a first redundancy check performed among left, top-right, top, and top-left neighboring blocks, and a second redundancy check performed among left, bottom-left, and top-left neighboring blocks.

### Claim 16 (depends on 15)

The decoder of claim 15, wherein the current block comprises two sub-blocks, and wherein each sub-block corresponds to a uni-prediction candidate, and wherein the uni-prediction candidate is obtained without generating a uni-prediction merge candidate list for the sub-block prediction.

### Claim 17 (depends on 15)

The decoder of claim 15, wherein one uni-prediction candidate is generated according to one bi-prediction candidate of the first list.

### Claim 18 (depends on 17)

The decoder of claim 17, wherein one uni-prediction candidate is a first part of the bi-prediction candidate.

### Claim 19 (depends on 17)

The decoder of claim 17, wherein one uni-prediction candidate is a second part of the bi-prediction candidate.

### Claim 20 (depends on 15)

The decoder of claim 15, wherein the sub-block prediction is a triangular prediction.
