# US 2025/0379986 A1 · Template-based intra mode derivation merge mode improvements

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

- Number: US 2025/0379986 A1
- Document ID: US20250379986A1
- Status: Published application
- Kind: A1
- Application number: 19/223,598
- Filed: 2025-05-30
- Published: 2025-12-11
- Earliest claimed: 2024-06-05
- Assignees: Nokia Technologies Oy
- Applicants: Nokia Technologies Oy
- Inventors: Döne BUGDAYCI SANSLI; Saverio BLASI
- Web page: https://patentgrep.com/patent/US20250379986A1

## CPC

- H04N 19/159: Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
- H04N 19/105: Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
- H04N 19/11: among a plurality of spatial predictive coding modes
- 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 19/593: involving spatial prediction techniques
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Multiple techniques are presented for template-based intra mode derivation merge mode improvements. Three main examples are outlined: (I) Recomputing blending weights of TIMD merge candidates; (II) Using block vectors from neighboring blocks to replace one or more TIMD Merge predictors; and (III) Partitioning a template into sub-templates.

## Claims

### Claim 1

An apparatus, comprising:
one or more processors; and
one or more memories storing instructions that, when executed by the one or more processors, cause the apparatus at least to perform:
performing a process for a video having a frame split into blocks, comprising producing an intra-prediction for a current block based on an intra-prediction process, where the intra-prediction process comprises:
computing two or more predictors for the current block based on two or more intra-prediction modes; and
blending the two or more predictors to form the intra-prediction for the current block using blending weights assigned to the two or more predictors,
where the intra-prediction modes are extracted from at least one different block predicted by using a template-based intra mode derivation, where the intra-prediction modes are determined based on computing distortions in a first template adjacent one or more edges of the at least one different block,
where the blending weights assigned to the two or more predictors are determined based on computing distortions in a second template adjacent one or more edges of the current block.

### Claim 2 (depends on 1)

The apparatus according to claim 1, wherein the one or more memories further store instructions that, when executed by the one or more processors, cause the apparatus at least to perform:
computing a template distortion for each of the two or more intra-prediction modes, where each intra-prediction mode is used to predict already reconstructed samples in the second template that is adjacent the one or more edges of the current block; and
assigning individual ones of the blending weights to individual ones of the predictors based on the computed template distortions.

### Claim 3 (depends on 2)

The apparatus according to claim 2, wherein a highest blending weight among the blending weights assigned to the predictors is assigned to a predictor obtained with an intra-prediction mode resulting in a lowest distortion among the distortions computed on the second template using the two or more intra-prediction modes extracted from the at least one different block.

### Claim 4 (depends on 2)

The apparatus according to claim 2, wherein a lowest blending weight among the blending weights assigned to the predictors is assigned to a predictor obtained with the intra-prediction mode resulting in a highest distortion among the distortions computed on the second template using the two or more intra-prediction modes extracted from thee at least one different block.

### Claim 5 (depends on 1)

The apparatus according to claim 1, wherein the one or more memories further store instructions that, when executed by the one or more processors, cause the apparatus at least to perform: selecting one or more blending weights to use between weights determined based on computing distortions in the second template and weights extracted from the at least one different block predicted by using a template-based intra mode derivation, where the weights are determined based on computing distortions in the first template.

### Claim 6 (depends on 1)

The apparatus according to claim 1, wherein:
a first set of blending weights are determined based on computed distortions in the first template adjacent the one or more edges of the at least one different block;
a second set of blending weights are determined based on computed distortions in the second template adjacent the one or more edges of the current block;
a first cost is determined based on the first set of blending weights and the computed distortions in the second template;
a second cost is determined based on the second set of blending weights and the computed distortions in the second template; and
the blending weights to form the intra-prediction for the current block are selected between the first set or second set based on the first and second costs.

### Claim 7

An apparatus, comprising:
one or more processors; and
one or more memories storing instructions that, when executed by the one or more processors, cause the apparatus at least to perform:
performing a process for a video having a frame split into blocks, comprising producing an intra-prediction for a current block based on an intra-prediction process, where the intra-prediction process comprises:
computing one or more predictors for the current block based on intra-prediction modes; and
blending the one or more predictors to form the intra-prediction for the current block,
where the intra-prediction modes are extracted from at least one different block predicted by using at least a template-based intra mode derivation, where the intra-prediction modes are determined based on computing distortions in a template surrounding the at least one different block,
where at least one of the one or more predictors is predicted by extracting reconstructed samples from the frame by using at least a block vector pointing to a specific region in the frame.

### Claim 8 (depends on 7)

The apparatus according to claim 7, where template-based intra mode derivation information is extracted from the at least one different block, and comprises one or more of the intra-prediction modes with corresponding blending weights.

### Claim 9 (depends on 8)

The apparatus according to claim 8, wherein the extracted template-based intra mode derivation information indicates that at least one of the intra-prediction modes is a block-vector-based intra-prediction mode.

### Claim 10 (depends on 9)

The apparatus according to claim 9, wherein the extracted template-based intra mode derivation information includes at least one block vector extracted from the at least one different block.

### Claim 11 (depends on 10)

The apparatus according to claim 10, wherein the one or more memories further store instructions that, when executed by the one or more processors, cause the apparatus at least to perform: determining whether the extracted block vector is valid for the current block, where the extracted block vector is determined to be valid depending on an area that the extracted block vector refers to and availability of the samples in that area.

### Claim 12 (depends on 11)

The apparatus according to claim 11, wherein, when the extracted block vector is determined to be not valid for the current block, the block-vector-based intra-prediction mode is replaced with a pre-determined intra-prediction mode.

### Claim 13 (depends on 11)

The apparatus according to claim 11, wherein when the extracted block vector is determined to be not valid for the current block, another block vector that is valid for the current block is used for block vector-based predictor generation.

### Claim 14 (depends on 9)

The apparatus according to claim 9, wherein:
when the template-based intra mode derivation information is extracted from the at least one different block that indicates usage of a block vector-based predictor, generating a list of potential valid block vectors for the current block by extracting block vector information from previously coded blocks that utilized at least one block vector in prediction; and
generating at least one new candidate for a merge list, where block vector-based predictor is using the block vector from the generated list of potential valid block vectors.

### Claim 15 (depends on 9)

The apparatus according to claim 9, wherein:
when the template-based intra mode derivation information is extracted from the at least one different block that indicates usage of block vector-based predictor, generating a list of potential valid block vectors for the current block by extracting block vector information from previously coded blocks that utilized at least one block vector in prediction;
ranking the list of potential valid block vectors based on their distortions calculated over corresponding templates for blocks pointed to by the potential valid block vectors and the template for the current block; and
generating at least one new candidate for a merge list where block vector-based predictor is using the block vector from the ranked list of block vectors.

### Claim 16 (depends on 7)

The apparatus according to claim 7, wherein the one or more memories further store instructions that, when executed by the one or more processors, cause the apparatus at least to perform: determining a list of valid block vectors for the current block by extracting information from the at least one different block.

### Claim 17 (depends on 16)

The apparatus according to claim 16, wherein determining the list of valid block vectors comprises testing block vectors in the list for validity, where all non-valid block vectors are removed from the list.

### Claim 18

An apparatus, comprising:
one or more processors; and
one or more memories storing instructions that, when executed by the one or more processors, cause the apparatus at least to perform:
performing a process for a video having a frame split into blocks, comprising producing an intra-prediction for a current block based on an intra-prediction process, where the intra-prediction process comprises:
computing one or more predictors for the current block based on intra-prediction modes; and
blending the predictors to form the intra-prediction for the current block,
where the intra-prediction modes are computed by using at least a template-based intra mode derivation, where the intra-prediction modes are determined based on computing distortions in a template surrounding one or more edges of the current block,
where the distortions are computed based on computing a prediction of samples in the template,
where the template is partitioned into a number of sub-templates, where samples in each sub-template are predicted using a different set of reference samples, and
where a distortion is computed for a current template by combining the distortions obtained in each sub-template of the template.

### Claim 19 (depends on 18)

The apparatus according to claim 18, wherein a set of reference samples used to compute the samples in a sub-template comprises already reconstructed samples adjacent to the sub-template, immediately above and immediately on a left edge of the sub-template.

### Claim 20 (depends on 1)

The apparatus according to claim 1, wherein the one or more memories further store instructions that, when executed by the one or more processors, cause the apparatus at least to perform: performing one of the following:
the producing the intra-prediction for the current block based on the intra-prediction process is performed as part of an encoding process to encode the video into a bitstream, and the one or more memories further store instructions that, when executed by the one or more processors, cause the apparatus at least to perform: forming the bitstream based at least on the intra-prediction process, and outputting the bitstream; or
the producing the intra-prediction for the current block based on the intra-prediction process is performed as part of a decoding process to decode the video that has been encoding into a bitstream, and the one or more memories further store instructions that, when executed by the one or more processors, cause the apparatus at least to perform: forming an output video based at least on the intra-prediction process, and outputting the output video.
