# US 11,451,769 B2 · Method and device for MPM list generation for multi-line intra prediction

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

- Number: US 11,451,769 B2
- Document ID: US11451769B2
- Status: Granted
- Kind: B2
- Application number: 16/986,815
- Filed: 2020-08-06
- Published: 2020-12-24
- Granted: 2022-09-20
- Earliest claimed: 2018-09-14
- Assignees: Tencent America LLC
- Applicants: Tencent America LLC
- Inventors: Liang Zhao; Xin Zhao; Xiang Li; Shan Liu
- Web page: https://patentgrep.com/patent/US11451769B2

## CPC

- H04N 19/103: Selection of coding mode or of prediction mode
- H04N 19/11: among a plurality of spatial predictive coding modes
- H04N 19/159: Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/44: Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
- H04N 19/463: by compressing encoding parameters before transmission
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method of and device for controlling multi-line intra prediction using a non-zero reference line. The method includes determining whether an intra prediction mode of a first neighboring block of a current block is an angular mode, determining whether an intra prediction mode of a second neighboring block of the current block is an angular mode, and generating a Most Probable Mode (MPM) list of the current block.

## Claims

### Claim 1

A video decoding method performed by at least one processor to control multi-line intra prediction using a non-zero reference line, the method comprising:
determining whether an intra prediction mode of a first neighboring block of a current block is an angular mode;
determining whether an intra prediction mode of a second neighboring block of the current block is an angular mode; and
generating a Most Probable Mode (MPM) list for intra prediction of the current block, wherein the generating comprises:
including in the MPM list, based on determining that the intra prediction mode of the first neighboring block is an angular mode and that the intra prediction mode of the second neighboring block is not an angular mode, the intra prediction mode of the first neighboring block, a left adjacent angular mode of the intra prediction mode of the first neighboring block, a right adjacent angular mode of the intra prediction mode of the first neighboring block, an adjacent angular mode of the left adjacent angular mode other than the intra prediction mode of the first neighboring block, an adjacent angular mode of the right adjacent angular mode other than the intra prediction mode of the first neighboring block, and a vertical mode or a horizontal mode,
wherein the including comprises:
setting a first candidate mode of the MPM list to the intra prediction mode of the first neighboring block;
setting a second candidate mode of the MPM list to the left adjacent angular mode of the intra prediction mode of the first neighboring block;
setting a third candidate mode of the MPM list to the right adjacent angular mode of the intra prediction mode of the first neighboring block;
setting a fourth candidate mode of the MPM list to the adjacent angular mode of the left adjacent angular mode other than the intra prediction mode of the first neighboring block; and
setting a fifth candidate mode of the MPM list to the adjacent angular mode of the right adjacent angular mode other than the intra prediction mode of the first neighboring block, and
wherein the MPM list is generated such that an order of most probable candidate modes in an index of the MPM list is, from lowest to higher within the index, the first candidate mode to the fifth candidate mode.

### Claim 2 (depends on 1)

The video decoding method of claim 1, wherein
the including further comprises setting a sixth candidate mode of the MPM list to the vertical mode, based on none of the first candidate mode to the fifth candidate mode being the vertical mode.

### Claim 3 (depends on 2)

The video decoding method of claim 2, wherein
the MPM list is generated such that the order of most probable candidate modes in the index of the MPM list is, from lowest to highest within the index, the first candidate mode to the sixth candidate mode.

### Claim 4 (depends on 2)

The video decoding method of claim 2, where the MPM list is generated to consist of six candidate modes that are angular modes.

### Claim 5 (depends on 1)

The video decoding method of claim 1, wherein
the including further comprises setting a sixth candidate mode of the MPM list to the horizontal mode, based on one of the first candidate mode to the fifth candidate mode being the vertical mode.

### Claim 6 (depends on 5)

The video decoding method of claim 5, wherein
the MPM list is generated such that the order of most probable candidate modes in the index of the MPM list is, from lowest to highest within the index, the first candidate mode to the sixth candidate mode.

### Claim 7 (depends on 5)

The video decoding method of claim 5, where the MPM list is generated to consist of six candidate modes that are angular modes.

### Claim 8 (depends on 1)

The video decoding method of claim 1, wherein the MPM list is generated to consist of six candidate modes that are angular modes.

### Claim 9

A device for controlling multi-line intra prediction using a non-zero reference line for decoding a video sequence, the device comprising:
at least one memory configured to store computer program code; and
at least one processor configured to access the at least one memory and operate according to the computer program code, the computer program code comprising:
first determining code configured to cause the at least one processor to determine whether an intra prediction mode of a first neighboring block of a current block is an angular mode;
second determining code configured to cause the at least one processor to determine whether an intra prediction mode of a second neighboring block of the current block is an angular mode; and
generating code configured to cause the at least one processor to generate a Most Probable Mode (MPM) list for intra prediction of the current block, wherein the generating code comprises code configured to cause the at least one processor to:
include in the MPM list, based on determining that the intra prediction mode of the first neighboring block is an angular mode and the intra prediction mode of the second neighboring block is not an angular mode, the intra prediction mode of the first neighboring block, a left adjacent angular mode of the intra prediction mode of the first neighboring block, a right adjacent angular mode of the intra prediction mode of the first neighboring block, an adjacent angular mode of the left adjacent angular mode other than the intra prediction mode of the first neighboring block, an adjacent angular mode of the right adjacent angular mode other than the intra prediction mode of the first neighboring block, and a vertical mode or a horizontal mode;
set a first candidate mode of the MPM list to the intra prediction mode of the first neighboring block;
set a second candidate mode of the MPM list to the left adjacent angular mode of the intra prediction mode of the first neighboring block;
set a third candidate mode of the MPM list to the right adjacent angular mode of the intra prediction mode of the first neighboring block;
set a fourth candidate mode of the MPM list to the adjacent angular mode of the left adjacent angular mode other than the intra prediction mode of the first neighboring block:
set a fifth candidate mode of the MPM list to the adjacent angular mode of the right adjacent angular mode other than the intra prediction mode of the first neighboring block; and
generate the MPM list such that an order of most probable candidate modes in an index of the MPM list is, from lowest to higher within the index, the first candidate mode to the fifth candidate mode.

### Claim 10 (depends on 9)

The device of claim 9, wherein
the code of the generating code is further configured to cause the at least one processor to set a sixth candidate mode of the MPM list to the vertical mode, based on none of the first candidate mode to the fifth candidate mode being the vertical mode.

### Claim 11 (depends on 10)

The device of claim 10, wherein
the generating code is configured to generate the MPM list such that the order of most probable candidate modes in the index of the MPM list is, from lowest to highest within the index, the first candidate mode to the sixth candidate mode.

### Claim 12 (depends on 10)

The device of claim 10, where the MPM list consists of six candidate modes that are angular modes.

### Claim 13 (depends on 9)

The device of claim 9, wherein
the code of the generating code is further configured to cause the at least one processor to set a sixth candidate mode of the MPM list to the horizontal mode, based on one of the first candidate mode to the fifth candidate mode being the vertical mode.

### Claim 14 (depends on 13)

The device of claim 13, wherein
the generating code is configured to generate the MPM list such that the order of most probable candidate modes in the index of the MPM list is, from lowest to highest within the index, the first candidate mode to the sixth candidate mode.

### Claim 15 (depends on 9)

The device of claim 9, wherein the MPM list consists of six candidate modes that are angular modes.

### Claim 16

A non-transitory computer-readable storage medium storing instructions that cause at least one processor to:
determine whether an intra prediction mode of a first neighboring block of a current block is an angular mode;
determine whether an intra prediction mode of a second neighboring block of the current block is an angular mode; and
generate a Most Probable Mode (MPM) list for intra prediction of the current block, wherein the generating comprises:
including in the MPM list, based on determining that the intra prediction mode of the first neighboring block is an angular mode and the intra prediction mode of the second neighboring block is not an angular mode, the intra prediction mode of the first neighboring block, a left adjacent angular mode of the intra prediction mode of the first neighboring block, a right adjacent angular mode of the intra prediction mode of the first neighboring block, an adjacent angular mode of the left adjacent angular mode other than the intra prediction mode of the first neighboring block, an adjacent angular mode of the right adjacent angular mode other than the intra prediction mode of the first neighboring block, and a vertical mode or a horizontal mode,
wherein the including comprises:
setting a first candidate mode of the MPM list to the intra prediction mode of the first neighboring block;
setting a second candidate mode of the MPM list to the left adjacent angular mode of the intra prediction mode of the first neighboring block;
setting a third candidate mode of the MPM list to the right adjacent angular mode of the intra prediction mode of the first neighboring block;
setting a fourth candidate mode of the MPM list to the adjacent angular mode of the left adjacent angular mode other than the intra prediction mode of the first neighboring block; and
setting a fifth candidate mode of the MPM list to the adjacent angular mode of the right adjacent angular mode other than the intra prediction mode of the first neighboring block, and
wherein the MPM list is generated such that an order of most probable candidate modes in an index of the MPM list is, from lowest to higher within the index, the first candidate mode to the fifth candidate mode.
