Video decoding method, video encoding method, non-transitory storage medium, and video coding encoding apparatus

By employing a decoder and encoder with linear or affine-linear transformations and multiple intra-prediction modes, the challenges of inefficient video block prediction and compression are addressed, leading to improved prediction accuracy and data compression efficiency.

JP2025157498APending Publication Date: 2025-10-15FRAUNHOFER GESELLSCHAFT ZUR FORDERUNG DER ANGEWANDTEN FORSCHUNG EV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2025123269
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2018-09-13
Filing Date
2025-07-23
Publication Date
2025-10-15

AI Technical Summary

Technical Problem

Existing video coding techniques face challenges in efficiently predicting and compressing video data, particularly in achieving more efficient techniques for predicting blocks to be coded and/or decoded.

Method used

The use of a decoder and encoder that apply a linear or affine-linear transformation with non-zero weight values to map neighboring samples to predicted values, forming an omnidirectional non-linear envelope, and support multiple intra-prediction modes with specific mapping rules to enhance prediction accuracy and compression efficiency.

Benefits of technology

This approach improves the efficiency of video coding by enhancing prediction accuracy and reducing the length of the code, thereby optimizing data compression.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025157498000001_ABST
    Figure 2025157498000001_ABST
Patent Text Reader

Abstract

To provide an apparatus and method for block wise encoding and decoding.SOLUTION: An decoder may be configured to predict a current block (18) of a picture by mapping a set of P neighboring samples (17'a, 17'b, 17'c) neighboring a predetermined block using a linear or affine linear transformation onto a set of Q predicted values for samples of the predetermined block. The linear or affine linear transformation may comprise P*Q weighting factors among which at least 1 / 4 P*Q weighting factors are non-zero weighting values, which comprise, for each of the Q predicted values, a series of P weighting factors relating to the respective predicted value. The series, when being arranged one below the other according to a raster scan order among the samples of the predetermined block, form an envelope which is omnidirectionally non-linear.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This specification relates to techniques including, among other things, Affine Linear Weighted Intra Prediction (ALWIP). [Background technology]

[0002] Various embodiments and aspects of the present invention are described, at least some of which are directed to methods and / or apparatus for video coding, such as High Efficiency Video Coding (HEVC), among others.

[0003] Further embodiments are defined by the appended claims.

[0004] It should be noted that any embodiment defined by the claims can, in some cases, optionally be supplemented by any of the details (features and functionality) described in the following sections.

[0005] Furthermore, the embodiments described in the following sections may be used individually or may be complemented by any of the features of the other sections or by any of the features contained in the claims.

[0006] It should also be noted that the individual aspects described herein may be used individually or in combination, and thus details may be added to each of these aspects without adding details to different ones of these individual aspects.

[0007] It should also be noted that this disclosure explicitly or implicitly describes features of decoding and / or encoding systems and / or methods.

[0008] Moreover, features and functionality described herein with respect to methods may be used in devices. Furthermore, any features and functionality disclosed herein with respect to a device may also be used in the corresponding method. In other words, the methods disclosed herein may be complemented by any of the features and functionality described with respect to these devices.

[0009] Additionally, any of the features and functionality described herein may be implemented in hardware or software, or using a combination of hardware and software, as described in the "Implementation Alternatives" section.

[0010] Moreover, in some instances, any of the features described within brackets (“(…)” or "[…]") may be optional. Summary of the Invention [Problem to be solved by the invention]

[0011] Achieving more efficient techniques for predicting blocks to be coded and / or decoded is always a goal of the art. For example, it is desirable to efficiently compress the data stream in order to reduce the length of the code. [Means for solving the problem]

[0012] According to one aspect, there is provided a decoder for decoding pictures from a data stream, comprising: A given block of the picture is configured to predict by mapping a set of P neighboring samples in a vicinity of a given block to a set of Q predicted values ​​for the samples of the given block using a linear or affine-linear transformation; A linear or affine linear transformation is * It contains Q weighting factors, of which at least 1 / 4P *A decoder is disclosed in which the Q weighting factors are non-zero weight values, and for each of the Q predictors, a series of P weighting factors associated with the respective predictor is formed, the series forming an envelope that is omnidirectionally non-linear when arranged sequentially one below the other in a raster scan order between the samples of a given block.

[0013] The decoder is P * The Q weighting coefficients may be such that they are independent of each other by any regular mapping rule.

[0014] The decoder may be such that a mean of maxima of cross-correlation between a first sequence of weighting factors associated with each predicted value and a second sequence of weighting factors associated with a predicted value other than the respective predicted value or an inverted version of the second sequence, whichever yields a higher maximum value, is below a predetermined threshold.

[0015] The decoder may be such that the predetermined threshold is 0.3.

[0016] The decoder may be such that the P neighboring samples are arranged along a one-dimensional path extending along the boundary of a given block, and for each of the Q predictors, the sequence of P weighting factors associated with the respective predictor is ordered to traverse the one-dimensional path in a given direction.

[0017] The decoder is deriving prediction residuals from the data stream for a given block to obtain corresponding residual values ​​for each of a set of Q prediction values; Reconstruct a given block by correcting each of the set of Q predicted values ​​by the corresponding residual value to obtain a corresponding reconstructed value such that the corresponding reconstructed value depends completely linearly on the P neighboring samples. It can be configured as follows.

[0018] The decoder is the decoder is configured to subdivide the picture into a plurality of blocks of different block sizes, including a predetermined block; The decoder calculates, for each of the set of block sizes, a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode; and Supporting a second set of intra prediction modes, wherein for each of the second set of intra prediction modes, a block of a respective block size is predicted according to the respective intra prediction mode by mapping a set of P neighboring samples of the block of the respective block size to a set of Q predicted values ​​for the samples of the block of the respective block using an associated linear or affine-linear transformation; For each block size in the set of block sizes, the associated linear or affine-linear transforms of the intra prediction modes in the second set of intra prediction modes for the respective block sizes are different from each other, and the cardinality of the second set of intra prediction modes for block sizes in the set of block sizes is consistent, but the associated linear or affine-linear transforms of the intra prediction modes in the second set of intra prediction modes for different block sizes in the set of block sizes are not transferable to each other by scaling.

[0019] According to one aspect, there is provided a method for decoding pictures from a data stream, comprising the steps of: mapping a set of P neighboring samples of a given block to a set of Q predicted values ​​for the samples of the given block using a linear or affine-linear transformation; A linear or affine linear transformation is * It contains Q weighting factors, of which at least 1 / 4P *A method is disclosed in which the Q weighting factors are non-zero weight values, and for each of the Q predictors, a sequence of P weighting factors associated with the respective predictor is formed, which, when arranged one below the other in a raster scan order among the samples of a given block, forms an envelope that is non-linear in all directions.

[0020] According to one aspect, there is provided an encoder for encoding a data stream from pictures, comprising: configured to map a set of P neighboring samples of a given block to a set of Q predicted values ​​for the samples of the given block using a linear or affine-linear transformation; A linear or affine linear transformation is * It contains Q weighting factors, of which at least 1 / 4P * An encoder is disclosed that forms, for each of the Q predictors, a sequence of P weighting factors associated with the respective predictor, the Q weighting factors being non-zero weight values, and the sequence, when arranged sequentially one below the other in a raster scan order among the samples of a given block, forms an envelope that is omnidirectionally non-linear.

[0021] The encoder is P * The Q weighting coefficients may be such that they are independent of each other by any regular mapping rule.

[0022] The encoder may be such that the maximum average of cross-correlations between a first series of weighting factors associated with each predicted value and a second series of weighting factors associated with predicted values ​​other than the respective predicted value or an inverted version of the second series, whichever yields a higher maximum value, is below a predetermined threshold.

[0023] The encoder may be configured to use a linear or affine-linear transform on the luma component of a given block.

[0024] According to one aspect, there is provided an encoding method, comprising the steps of: mapping a set of P neighboring samples of a given block to a set of Q predicted values ​​for the samples of the given block using a linear or affine-linear transformation; A linear or affine linear transformation is * Q weighting factors, At least 1 / 4 of that * The Q weighting coefficients are non-zero weight values, constructing, for each of the Q predicted values, a sequence of P weighting factors associated with the respective predicted value, the sequence forming an envelope that is non-linear in all directions when arranged one after the other in a raster scan order among the samples of a given block; An encoding method is disclosed.

[0025] According to one aspect, a decoder for decoding pictures from a data stream supporting a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes, comprising: A given block of the picture is assigning a given block to a first set or a second set based on a first signaling in the data stream; sorting the assigned set of intra-prediction modes according to the intra-prediction modes used for neighboring blocks in the vicinity of the given block to obtain a list of intra-prediction modes; For a given block, deriving an index into a list of intra-prediction modes from the data stream; Predict the given block using the intra prediction mode pointed to by the index. and configured to decrypt the The decoder is If the assigned set is a second set of intra-prediction modes, sorting the assigned set uses a first mapping that maps each intra-prediction mode of the first set of prediction modes to one representative intra-prediction mode in the second set of intra-prediction modes; and / or If the assigned set is a first set of intra-prediction modes, sorting the assigned set uses a second mapping that maps each intra-prediction mode of the second set of prediction modes to one representative intra-prediction mode in the first set of intra-prediction modes. A decoder configured to:

[0026] According to one aspect, there is provided a decoder for decoding pictures from a data stream supporting a set of intra prediction modes for each of different block sizes, the decoder comprising: A given block of the picture sorting the set of intra-prediction modes for a block size of a given block according to the intra-prediction modes used for neighboring blocks in the vicinity of the given block to obtain a list of intra-prediction modes; For a given block, deriving an index into a list of intra-prediction modes from the data stream; Predict the given block using the intra prediction mode pointed to by the index. and configured to decrypt the The decoder is If one of the neighboring blocks is of a different size from the given block, the assigned set is sorted using a mapping that maps each intra-prediction mode of the set of prediction modes for the block size of one of the neighboring blocks to a representative intra-prediction mode in the set of intra-prediction modes for the block size of the given block. A decoder configured to:

[0027] The decoder may further be configured to decode the index from the data stream using a variable length code, such that the code length depends on the rank of the intra-prediction mode in the list of intra-prediction modes to which the index points.

[0028] The decoder may be such that the variable length code is a unary code.

[0029] The decoder may be configured to sort the assigned set of intra prediction modes so that intra prediction modes used for neighboring blocks within the assigned set of intra prediction modes, or targeted by intra prediction modes used for neighboring blocks via a first or second mapping, are placed first in the list.

[0030] The decoder may be configured to sort the set of intra prediction modes for a given block block size so that intra prediction modes within this set of intra prediction modes used for neighboring blocks, or targeted by intra prediction modes used for neighboring blocks by mapping, are placed first in the list.

[0031] The decoder may be configured to predict a given block by mapping a set of P neighboring samples of a neighborhood of the given block to a set of Q prediction values ​​for samples of the given block using a linear or affine-linear transformation according to each of a second set of intra-prediction modes; For each of the second set of intra prediction modes, A linear or affine linear transformation is * It contains Q weighting factors, of which at least 1 / 4P *The Q weighting factors are non-zero weight values ​​and constitute, for each of the Q predicted values, a sequence of P weighting factors associated with the respective predicted value, which sequence, when arranged one below the other in raster scan order between the samples of a given block, forms an envelope that is non-linear in all directions.

[0032] The decoder may be configured to predict a given block by mapping a set of P neighboring samples of the given block to a set of Q predicted values ​​for samples of the given block using a linear or affine-linear transformation according to each of a set of intra-prediction modes; For each of the second set of intra prediction modes, a linear or affine-linear transformation is * It contains Q weighting factors, of which at least 1 / 4P * The Q weighting factors are non-zero weight values ​​and for each of the Q predictors constitute a sequence of P weighting factors associated with the respective predictor, which sequence, when arranged one below the other in raster scan order between the samples of a given block, forms an envelope that is non-linear in all directions.

[0033] The decoder is a decoder configured to subdivide a picture into a plurality of blocks of different block sizes, including a predetermined block; the decoder is configured to support, for each of a set of block sizes, a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes; The decoder is If one of the neighboring blocks is of the same block size as the given block in the set of block sizes but is assigned to a different one of the first and second sets of intra-prediction modes, then using the first and second mappings when sorting the assigned sets; When sorting the assigned set, if one of the neighboring blocks is of a different block size than the given block in the set of block sizes, and / or using a third mapping that maps each intra-prediction mode of the first set of prediction modes for the block size of the given block to a representative intra-prediction mode of the second set of intra-prediction modes for the block size of the given block, if the set assigned to the given block is the second set for the block size of the given block and the set assigned to one neighboring block is the first set for the block size of the neighboring block; and / or using a fourth mapping that, when the assigned set for a given block is a first set for the block size of the given block and the assigned set for one neighboring block is a second set for the block size of the one neighboring block, maps each intra-prediction mode of the second set of prediction modes for the block size of the one neighboring block to a representative intra-prediction mode of the first set of intra-prediction modes for the block size of the given block. If one of the neighboring blocks is of the same block size as the given block in the set of block sizes, the set assigned to the given block is a second set for the block size of the given block, and the set assigned to one of the neighboring blocks is a second set for the block size of one of the neighboring blocks; a fifth mapping is used to map each intra-prediction mode of the second set of prediction modes for the block size of one of the neighboring blocks to a representative intra-prediction mode in the second set of intra-prediction modes for the block size of the given block; The configuration may be such that:

[0034] The decoder is a decoder configured to subdivide a picture into a plurality of blocks of different block sizes, including a predetermined block; the decoder is configured to support, for each of a set of block sizes, a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes; The decoder is If a given block is not square, applying a linear or affine-linear transform associated with the intra-prediction mode pointed to by the index to a sequence of neighboring samples of a neighborhood of the given block when the given block is oriented in a first orientation; If the given block is oriented in a second orientation orthogonal to the first orientation, obtain a predicted block, and then apply an inverted version of the sequence of neighboring samples in the neighborhood of the given block to a linear or affine-linear transform associated with an intra-prediction mode of the second set of intra-prediction modes other than the linear or affine-linear transform associated with the intra-prediction mode pointed to by the index, to transpose the predicted block. By doing so, the prediction of the given block may be configured to be performed using the intra prediction mode pointed to by the index.

[0035] The decoder is The second set of intra-prediction modes includes the first and second subsets of intra-prediction modes, and the given block is square. may be configured as follows: The decoder is if the intra-prediction mode pointed to by the index is included in the first subset, applying a linear or affine-linear transform associated with the intra-prediction mode pointed to by the index to the sequence of neighboring samples in the vicinity of the given block; If the intra-prediction mode pointed to by the index is included in the second subset, obtain a predicted block, and then apply an inverted version of the sequence of neighboring samples in the vicinity of the given block to a linear or affine-linear transform associated with the intra-prediction mode of the first subset of intra-prediction modes to transpose the predicted block. by using the intra prediction mode pointed to by the index to predict the given block. It is configured as follows.

[0036] The decoder may be such that, for at least one of the intra prediction modes of the second set, prediction using one intra prediction mode requires prediction of a given block from the spatial domain to the transform domain or from the transform domain to the transform domain.

[0037] The decoder may be configured to use the first or second set of transforms for the luma components and the first set of transforms for the chroma components.

[0038] The decoder may be configured to map the second set of modes used for the luma component to the first set of modes for the luma component.

[0039] The decoder may be such that the second mapping maps multiple modes of the second set to a single mode of the first set.

[0040] The decoder may be such that the second mapping maps all modes of the second set to a single mode of the first set.

[0041] The decoder may be such that the single mode of the first set is a planar mode.

[0042] According to one aspect, a method for decoding pictures from a data stream supporting a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes, comprising: A given block of the picture is assigning a given block to either a first set or a second set based on a first signal in the data stream; sorting the assigned set of prediction modes according to the intra-prediction modes used for neighboring blocks in the vicinity of the given block to obtain a list of intra-prediction modes; For a given block, deriving an index into a list of intra-prediction modes from the data stream; Predicting using the intra prediction mode indicated by the index and decoding the signal by The decrypting step includes: a first mapping step of mapping each prediction mode of the first set of prediction modes to a representative intra-prediction mode in the second set of intra-prediction modes when sorting the assigned set if the assigned set is a second set of intra-prediction modes; and / or A method is disclosed in which, when the assigned set is a first set of intra prediction modes, a second mapping is used to sort the assigned set, mapping each intra prediction mode of a second set of prediction modes to one representative intra prediction mode in the first set of intra prediction modes.

[0043] According to one aspect, an encoder for encoding a picture onto a data stream supporting a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes, comprising: A given block of the picture is assigning and encoding a predetermined block to a first set or a second set based on a first signal in the data stream; sorting the assigned set of prediction modes according to the intra-prediction modes used for neighboring blocks in the vicinity of the given block to obtain a list of intra-prediction modes; For a given block, determining an index from the data stream into a list of intra-prediction modes; Predict the given block using the intra prediction mode pointed to by the index. and configured to encode the signal by The encoder is If the assigned set is a second set of intra-prediction modes, sorting the assigned set uses a first mapping that maps each intra-prediction mode of the first set of prediction modes to a representative intra-prediction mode in the second set of intra-prediction modes; and / or An encoder is disclosed that is configured to use a second mapping when sorting the assigned set, where the assigned set is a first set of intra prediction modes, that maps each intra prediction mode of a second set of prediction modes to one representative intra prediction mode in the first set of intra prediction modes.

[0044] According to one aspect, an encoder for encoding a picture onto a data stream supporting a set of intra prediction modes for each of different block sizes, comprising: A given block of the picture is sorting the set of intra-prediction modes for a block size of a given block according to the intra-prediction modes used for neighboring blocks in the vicinity of the given block to obtain a list of intra-prediction modes; inserting, for a given block, an index into a list of intra-prediction modes into the data stream; Predict the given block using the intra prediction mode pointed to by the index. and configured to encode the signal by The encoder is An encoder is disclosed that is configured to use a mapping to map each intra prediction mode in a set of prediction modes for the block size of one neighboring block to a representative intra prediction mode in the set of intra prediction modes for the block size of the given block when sorting the assigned set if one of the neighboring blocks is a different size from the given block.

[0045] The encoder may further be configured to encode the index in the data stream using a variable length code such that the code length depends monotonically on the rank of the intra-prediction mode in the list of intra-prediction modes to which the index points.

[0046] The encoder may be such that the variable length code is a unary code.

[0047] The encoder may be configured to sort prediction modes according to their probability and / or historical data regarding previous use for other blocks.

[0048] The encoder may be configured to write a second signalization into the data stream by successively repeating a first symbol up to a second symbol, such that an index into the list is derived based on the length of the symbol repetitions.

[0049] The encoder may be configured to sort the assigned set of intra prediction modes so that intra prediction modes used for neighboring blocks within the assigned set of intra prediction modes, or targeted by intra prediction modes used for neighboring blocks via a first or second mapping, are placed first in the list.

[0050] The encoder may be configured to sort the set of intra prediction modes for a given block size so that intra prediction modes within this set of intra prediction modes used for neighboring blocks, or that are targeted by intra prediction modes used for neighboring blocks by mapping, are placed first in the list.

[0051] The encoder may be configured to predict a given block by mapping a set of P neighboring samples of a neighborhood of the given block to a set of Q predicted values ​​for samples of the given block using a linear or affine-linear transformation according to each of a second set of intra-prediction modes; For each of the second set of intra prediction modes, A linear or affine linear transformation is * Q weighting factors, At least 1 / 4 of that * The Q weighting coefficients are non-zero weight values, For each of the Q predictors, a sequence of P weighting factors is constructed that is associated with the respective predictor, and the sequence, when arranged one below the other in raster scan order among the samples of a given block, forms an envelope that is non-linear in all directions.

[0052] The encoder may be configured to predict a given block by mapping a set of P neighboring samples of a neighborhood of the given block to a set of Q prediction values ​​for samples of the given block using a linear or affine-linear transformation according to each of a set of intra-prediction modes; For each of the second set of intra prediction modes, A linear or affine linear transformation is * Q weighting factors, At least 1 / 4 of that * The Q weighting coefficients are non-zero weight values, For each of the Q predictors, a sequence of P weighting factors is constructed that is associated with the respective predictor, and the sequence, when arranged one below the other in raster scan order among the samples of a given block, forms an envelope that is non-linear in all directions.

[0053] The encoder may be such that the encoder is configured to subdivide the picture into a plurality of blocks of different block sizes, including a predetermined block; the encoder is configured to support, for each block size, a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes; The encoder is If one of the neighboring blocks is of the same block size as the given block in the set of block sizes but is assigned to a different one of the first and second sets of intra-prediction modes, then using the first and second mappings when sorting the assigned sets; If one of the neighboring blocks is of a different block size than a given block in the set of block sizes (e.g., the blocks are not the same), then when sorting the assigned set: If the set assigned to a given block is a second set for the block size of the given block and the set assigned to one neighboring block is a first set for the block size of the neighboring block, a third mapping is used to map each intra prediction mode of the first set of prediction modes for the block size of the one neighboring block to a representative intra prediction mode in the second set of intra prediction modes for the block size of the given block; and / or and / or using a fourth mapping that, when the assigned set for a given block is a first set for the block size of the given block and the assigned set for one neighboring block is a second set for the block size of the one neighboring block, maps each intra-prediction mode of the second set of prediction modes for the block size of the one neighboring block to a representative intra-prediction mode of the first set of intra-prediction modes for the block size of the given block. If one of the neighboring blocks is of the same block size as the given block in the set of block sizes, the set assigned to the given block is a second set for the block size of the given block, and the set assigned to one of the neighboring blocks is a second set for the block size of one of the neighboring blocks; The coding unit is configured to use a fifth mapping that maps each intra prediction mode of the second set of prediction modes for the block size of one neighboring block to a representative intra prediction mode in the second set of intra prediction modes for the block size of the given block.

[0054] The encoder is an encoder configured to subdivide a picture into a plurality of blocks of different block sizes, including a predetermined block; the encoder is configured to support, for each of a set of block sizes, a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes; The encoder is If a given block is not square, applying a linear or affine-linear transform associated with the intra-prediction mode pointed to by the index to a sequence of neighboring samples of a neighborhood of the given block when the given block is oriented in a first orientation; If the given block is oriented in a second orientation orthogonal to the first orientation, obtain a predicted block, and then apply an inverted version of the sequence of neighboring samples in the neighborhood of the given block to a linear or affine-linear transform associated with an intra-prediction mode of the second set of intra-prediction modes other than the linear or affine-linear transform associated with the intra-prediction mode pointed to by the index, to transpose the predicted block. By doing so, the prediction of the given block may be configured to be performed using the intra prediction mode pointed to by the index.

[0055] The encoder is the second set of intra-prediction modes includes the first and second subsets of intra-prediction modes, the given block is square, and The encoder is if the intra-prediction mode pointed to by the index is included in the first subset, applying a linear or affine-linear transform associated with the intra-prediction mode pointed to by the index to the sequence of neighboring samples in the vicinity of the given block; If the intra-prediction mode pointed to by the index is included in the second subset, obtain a predicted block, and then apply an inverted version of the sequence of neighboring samples in the vicinity of the given block to a linear or affine-linear transform associated with the intra-prediction mode of the second subset of intra-prediction modes to transpose the predicted block. By doing so, the prediction of the given block may be configured to be performed using the intra prediction mode pointed to by the index.

[0056] The encoder may be such that, for at least one of the second set of intra prediction modes, prediction using one intra prediction mode requires prediction of a given block from the spatial domain to the transform domain or from the transform domain to the transform domain.

[0057] According to one aspect, a method for encoding a picture onto a data stream supporting a first set of intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode, and a second set of intra-prediction modes, comprising: assigning and encoding a predetermined block to a first set or a second set based on a first signal in the data stream; - sorting the assigned set of prediction modes according to the intra prediction modes used for nearby neighboring blocks of the given block to obtain a list of intra prediction modes; determining, for a given block, an index from the data stream into a list of intra-prediction modes; predicting a given block using the intra-prediction mode pointed to by the index; encoding the data stream; Including, The encoder is If the assigned set is a second set of intra-prediction modes, sorting the assigned set uses a first mapping that maps each intra-prediction mode of the first set of prediction modes to a representative intra-prediction mode in the second set of intra-prediction modes; and / or If the assigned set is a first set of intra prediction modes, the sorting of the assigned set is configured to use a second mapping that maps each intra prediction mode of the second set of prediction modes to one representative intra prediction mode in the first set of intra prediction modes. A method is disclosed.

[0058] According to one aspect, there is provided a method for decoding pictures from a data stream, comprising the steps of: A given block of the picture is subjecting a first set of neighboring samples in a vicinity of the predetermined block on a first side of the predetermined block to a transform (e.g., FFT, DCT...) to obtain a first set of transform coefficients, and / or subjecting a second set of neighboring samples in a vicinity of the predetermined block on a second side of the predetermined block to a transform to obtain a second set of transform coefficients; Subjecting the combination of the first and second sets of transform coefficients, or the combination of the first set of neighboring samples and the second set of transform coefficients, or the combination of the second set of neighboring samples and the first set of transform coefficients to a linear or affine-linear transform. A method is disclosed that includes predicting by

[0059] The decoder is Subdividing the picture into a plurality of blocks of different sizes, including a predetermined block; The first and second sets of neighboring samples may be configured to be arranged so as to be independent of the size of the neighboring block that contains them. [Not necessarily using the whole block, just the stripe]

[0060] The decoder is The first and second sets of neighboring samples may be arranged such that the first and second sets of neighboring samples are arranged along a one-dimensional path alongside the first and second edges, respectively, and the first and second sets of transform coefficients may be configured to represent a one-dimensional transform.

[0061] The decoder may be configured to form the combination by retrieving a first proper subset of transform coefficients from the first set of transform coefficients and / or a second proper subset of transform coefficients from the second set of transform coefficients, respectively, such that the combination of the first and second sets of transform coefficients does not depend on unretrieved portions of the first and / or second sets of transform coefficients, respectively.

[0062] The decoder may be configured such that subjecting a combination of the first and second sets of transform coefficients to a linear or affine-linear transform produces a predictor of a given block in the transform domain.

[0063] The decoder may be configured such that subjecting a combination of the first and second sets of transform coefficients to a linear or affine-linear transform produces a prediction for a true subset of the transform coefficients of a given block (while others are set to zero, for example, by default).

[0064] The decoder may be configured such that subjecting a combination of the first and second sets of transform coefficients to a linear or affine-linear transform produces a predictor of a given block in the spatial domain.

[0065] According to one aspect, there is provided a method for decoding pictures from a data stream, comprising the steps of: A given block of the picture is subjecting a first set of neighboring samples in a vicinity of the predetermined block on a first side of the predetermined block to a transform (e.g., FFT, DCT...) to obtain a first set of transform coefficients, and / or subjecting a second set of neighboring samples in a vicinity of the predetermined block on a second side of the predetermined block to a transform to obtain a second set of transform coefficients; Subjecting the combination of the first and second sets of transform coefficients, or the combination of the first set of neighboring samples and the second set of transform coefficients, or the combination of the second set of neighboring samples and the first set of transform coefficients to a linear or affine-linear transform. A method is disclosed that includes predicting by [For example, transform each of these parts from the spatial domain to the transform domain, and only afterwards apply a (for example, linear or affine) transformation].

[0066] According to one aspect, there is provided an encoder for encoding pictures onto a data stream, comprising: A given block of the picture is subjecting a first set of neighboring samples in a vicinity of the predetermined block on a first side of the predetermined block to a transform (e.g., FFT, DCT...) to obtain a first set of transform coefficients, and / or subjecting a second set of neighboring samples in a vicinity of the predetermined block on a second side of the predetermined block to a transform to obtain a second set of transform coefficients; Subjecting the combination of the first and second sets of transform coefficients, or the combination of the first set of neighboring samples and the second set of transform coefficients, or the combination of the second set of neighboring samples and the first set of transform coefficients to a linear or affine-linear transform. An encoder is disclosed that is configured to predict by: [e.g., transform each of these parts from the spatial domain to the transform domain, and only afterwards apply a (e.g., linear or affine) transformation]

[0067] The encoder is Subdividing the picture into a plurality of blocks of different sizes, including a predetermined block; The first and second sets of neighboring samples may be configured to be arranged so as to be independent of the size of the neighboring block that contains them.

[0068] The encoder is The first and second sets of neighboring samples may be arranged such that the first and second sets of neighboring samples are arranged along a one-dimensional path alongside the first and second edges, respectively, and the first and second sets of transform coefficients may be configured to represent a one-dimensional transform.

[0069] The encoder may be configured to form the combination by retrieving a first true subset of transform coefficients from the first set of transform coefficients and / or a second true subset of transform coefficients from the second set of transform coefficients such that the combination of the first and second sets of transform coefficients does not depend on unretrieved portions of the first and / or second sets of transform coefficients, respectively.

[0070] The encoder may be configured such that subjecting a combination of the first and second sets of transform coefficients to a linear or affine-linear transform produces a predictor of a given block in the transform domain.

[0071] The encoder may be configured such that subjecting a combination of the first and second sets of transform coefficients to a linear or affine-linear transform produces a prediction for a true subset of the transform coefficients of the given block's transform.

[0072] The encoder may be configured such that subjecting a combination of the first and second sets of transform coefficients to a linear or affine-linear transform produces a predictor of a given block in the spatial domain.

[0073] According to one aspect, there is provided a method for encoding a picture from a data stream, comprising the steps of: A given block of the picture is subjecting a first set of neighboring samples in a vicinity of the predetermined block on a first side of the predetermined block to a transform (e.g., FFT, DCT...) to obtain a first set of transform coefficients, and / or subjecting a second set of neighboring samples in a vicinity of the predetermined block on a second side of the predetermined block to a transform to obtain a second set of transform coefficients; Subjecting the combination of the first and second sets of transform coefficients, or the combination of the first set of neighboring samples and the second set of transform coefficients, or the combination of the second set of neighboring samples and the first set of transform coefficients to a linear or affine-linear transform. A method is disclosed that includes predicting by [For example, transform each of these parts from the spatial domain to the transform domain, and only afterwards apply a (for example, linear or affine) transformation]. [Brief explanation of the drawings]

[0074] [Figure 1] 1 shows an apparatus for block-wise coding of an image; [Figure 2] 1 shows an apparatus for block-wise coding of an image; [Figure 3] FIG. 1 illustrates an apparatus for block-wise decoding of an image. [Figure 4] FIG. 1 illustrates an apparatus for block-wise decoding of an image. [Figure 5] FIG. 2 illustrates a predetermined block to be predicted. [Figure 6] FIG. 10 is a diagram illustrating a prediction calculation. [Figure 7]FIG. 1 is a diagram illustrating a conventional prediction. [Figure 8] FIG. 2 is a partial diagram of a data stream. [Figure 9] FIG. 10 illustrates indexes used in the example. [Figure 10a] FIG. 10 illustrates a technique for mapping between different modes, subdivided into FIGS. 10a′, 10a″, and 10a′″. [Figure 10b] FIG. 1 illustrates a technique for mapping between different modes. [Figure 10c] FIG. 1 illustrates a technique for mapping between different modes. [Figure 10d] FIG. 1 illustrates a technique for mapping between different modes. [Figure 10e] FIG. 1 illustrates a technique for mapping between different modes. [Figure 11a] FIG. 10 is a diagram illustrating an example of a procedure. [Figure 11b] FIG. 10 is a diagram illustrating an example of a procedure. [Figure 11c] FIG. 10 is a diagram illustrating an example of mapping. [Figure 11d] FIG. 10 is a diagram illustrating an example of mapping. [Figure 12] 12A-12C illustrate an example procedure, subdivided into FIG. 12', FIG. 12'', FIG. 12''', and FIG. 12''''. [Figure 13] FIG. 10 is a diagram illustrating an example of a procedure. DETAILED DESCRIPTION OF THE INVENTION

[0075] [Encoder and decoder by example] Below, we describe various examples that help achieve more effective compression when using intra-prediction. Some examples achieve increased compression efficiency by using a set of intra-prediction modes, which may be in addition to other heuristically designed intra-prediction modes or may be provided exclusively. Other examples also take advantage of both of the features just described.

[0076] To facilitate understanding of the following examples of this application, we begin by presenting possible encoders and decoders suitable for which the examples outlined later in this application can be constructed.

[0077] 1 shows an apparatus for block-wise encoding of picture 10 into data stream 12 (also denoted 80 in some examples, see below). The apparatus is indicated using reference numeral 14 and may be a still image encoder or a video encoder. In other words, picture 10 may be the current picture from video 16 when encoder 14 is configured to encode video 16 that includes picture 10 into data stream 12, or encoder 14 may encode picture 10 exclusively into data stream 12. The following examples may utilize apparatus 14.

[0078] As mentioned above, the encoder 14 performs encoding in a block-by-block manner, or on a block basis. To do so, the encoder 14 subdivides the picture 10 into blocks, which units the encoder 14 encodes the picture 10 into the data stream 12. Possible examples of subdividing the picture 10 into blocks 18 are detailed below. Generally, the subdivision will end up in blocks 18 of a fixed size, such as an array of blocks arranged in rows and columns, or in blocks 18 of different block sizes, such as through the use of hierarchical multi-tree subdivision starting from a multi-tree subdivision of the entire picture area of ​​the picture 10 or from a pre-partitioning of the picture 10 into an array of tree blocks, although these examples should not be treated as exclusive of other possible ways of subdividing the picture 10 into blocks 18.

[0079] Furthermore, encoder 14 is a predictive encoder configured to predictively encode picture 10 into data stream 12. For a given block 18, this means that encoder 14 determines a prediction for block 18 and encodes into data stream 12 the prediction residual, i.e., the prediction error where the prediction deviates from the actual picture content in block 18.

[0080] The encoder 14 may support various prediction modes for deriving a prediction signal for a block 18. In the following example, the key prediction mode is intra-prediction mode, according to which the interior of the block 18 is spatially predicted from neighboring, already-encoded samples of the picture 10. The encoding of the picture 10 into the data stream 12, and the corresponding decoding procedure, may be based on a coding order 20 defined among the blocks 18. For example, the coding order 20 may traverse the blocks 18 in a raster scan order, such as traversing each row from left to right and then row by row from top to bottom. In the case of hierarchical multi-tree-based subdivision, a raster scan order may be applied within each hierarchical level, with a depth-first traversal order, i.e., leaf nodes within a hierarchical level may precede blocks at the same hierarchical level that have the same parent block according to the coding order 20. Depending on the coding order 20, the neighboring, already-encoded samples of the block 18 may typically be arranged on one or more edges of the block 18. In the example presented here, for example, the already coded samples in the neighbourhood of block 18 are placed above block 18 and to the left of the block.

[0081] Intra-prediction modes may not be the only prediction modes supported by encoder 14. For example, if encoder 14 is a video encoder, encoder 14 may also support intra-prediction modes in which blocks 18 are temporally predicted from previously encoded pictures of video 16. Such intra-prediction modes may be motion-compensated prediction modes in accordance with which motion vectors are signaled for such blocks 18 indicating the relative spatial offset of the portions from which the prediction signal of block 18 will be derived as a copy. Additionally or alternatively, other non-intra-prediction modes may be available as well, such as inter-view prediction modes in the case where encoder 14 is a multiview encoder, or non-prediction modes in accordance with which the interior of block 18 is coded as is, i.e., without any prediction.

[0082] Before focusing the description of this application on intra-prediction modes, a more detailed example of a possible block-based encoder, i.e., a possible implementation of encoder 14, as described with respect to FIG. 2, will now be presented and described, followed by two corresponding examples of decoders compatible with FIGS. 1 and 2, respectively.

[0083] 2 shows a possible implementation of the encoder 14 of FIG. 1, i.e., an encoder configured to use transform coding to encode the prediction residual, but this is merely an example and the present application is not limited to the type of prediction residual coding. According to FIG. 2, the encoder 14 (which may be used for the following examples) may comprise a subtractor 22 configured to subtract a corresponding prediction signal 24 from an incoming signal, i.e., picture 10, or, on a block-by-block basis, a current block 18, to obtain a prediction residual signal 26, which is then encoded into the data stream 12 by a prediction residual encoder 28. The prediction residual encoder 28 comprises a lossy encoding stage 28a and a lossless encoding stage 28b. The lossy stage 28a comprises a quantizer 30 that receives the prediction residual signal 26 and quantizes samples of the prediction residual signal 26. As already mentioned above, this example uses transform coding of the prediction residual signal 26, and therefore the lossy encoding stage 28a includes a transform stage 32 connected between the subtractor 22 and the quantizer 30 to transform such spectrally decomposed prediction residual 26 by quantizing the quantizer 30 on the transformed coefficients representing the residual signal 26. The transform may be a DCT, DST, FFT, Hadamard transform, etc. The transformed and quantized prediction residual signal 34 is then subjected to lossless coding by a lossless encoding stage 28b, which is an entropy coder that entropy codes the quantized prediction residual signal 34 into the data stream 12. The encoder 14 further includes a prediction residual signal reconstruction stage 36 connected to the output of the quantizer 30 to reconstruct the prediction residual signal from the transformed and quantized prediction residual signal 34 in a manner that is also available to the decoder, i.e., taking into account the coding loss in the quantizer 30. For this purpose, the prediction residual signal reconstruction stage 36 comprises an inverse quantizer 38 that performs the inverse of the quantization of the quantizer 30, followed by an inverse transformer 40 that performs the inverse transform to the transform performed by the transformer 32, such as the inverse of the spectral decomposition, such as the inverse of any of the specific transform examples mentioned above.Encoder 14 includes an adder 42 that adds the reconstructed prediction residual signal as output by inverse transformer 40 with prediction signal 24 to output a reconstructed signal, i.e., a reconstructed sample. This output is provided to a predictor 44 of encoder 14, which then determines prediction signal 24 based on its output. It is predictor 44 that supports all prediction modes already discussed above with respect to Figure 1. Figure 2 also shows that, if encoder 14 is a video encoder, encoder 14 may include an in-loop filter 46 that filters the fully reconstructed picture, which, after filtering, forms the reference picture for predictor 44 for inter-predicted blocks.

[0084] As already mentioned above, the encoder 14 operates on a block-by-block basis. For the following description, the block-by-block basis of interest is the subdivision of picture 10 into blocks in which an intra-prediction mode is selected from a plurality of intra-prediction modes or a set of intra-prediction modes supported by the predictor 44 or the encoder 14, respectively, and the selected intra-prediction mode is performed individually. However, other types of blocks into which picture 10 may be subdivided may exist as well. For example, the above-mentioned decision as to whether picture 10 is inter-coded or intra-coded may be made at a block granularity or unit deviating from block 18. For example, the inter / intra mode decision may be made at the coding block level, in which picture 10 is subdivided and each coding block is subdivided into predictive blocks. Predictive blocks with coding blocks for which it has been determined that intra-prediction is to be used are each subdivided for intra-prediction mode decision purposes. For this purpose, it is determined for each of these predictive blocks which supported intra-prediction mode should be used for the respective predictive block. These predictive blocks will now form the blocks 18 of interest. Predictive blocks within a coding block associated with inter prediction will be treated differently by the predictor 44. These predictive blocks will be inter predicted from a reference picture by determining a motion vector and replicating a prediction signal for this block from the location in the reference picture to which the motion vector points. Another block subdivision involves subdivision into transform blocks, units on which transformation by the transformer 32 and inverse transformer 40 is performed. The transformed blocks may be the result of further subdivision of the coding block, for example. Of course, the examples described herein should not be treated as limiting, and other examples exist as well. For completeness only, it should be noted that the subdivision into coding blocks may use, for example, multi-tree subdivision, and that predictive blocks and / or transform blocks may similarly be obtained by further subdividing the coding block using multi-tree subdivision.

[0085] A decoder or device for block-wise decoding (e.g., used in these examples) compatible with the encoder 14 of FIG. 1 is shown in FIG. 3. This decoder 54 performs the inverse of the encoder 14; i.e., the decoder 54 decodes the picture 10 from the data stream 12 in a block-wise manner and, to this end, supports multiple intra-prediction modes. The decoder 54 may, for example, comprise a residual provider 156. All other possibilities discussed above with respect to FIG. 1 are also valid for the decoder 54. To this end, the decoder 54 may be a still image decoder or a video decoder, with all prediction modes and predictabilities being similarly supported by the decoder 54. The difference between the encoder 14 and the decoder 54 is primarily that the encoder 14 chooses or selects coding decisions according to some optimization, such as, for example, to minimize some cost function that may depend on the coding rate and / or coding distortion. One of these coding choices or coding parameters may require the selection of an intra-prediction mode to be used for the current block 18 among the available or supported intra-prediction modes. The selected intra-prediction mode may then be signaled for the current block 18 in data stream 12 by encoder 14, and decoder 54 may make this selection again using this signaling in data stream 12 for block 18. Similarly, the subdivision of picture 10 into blocks 18 may undergo optimization in encoder 14, corresponding subdivision information may be conveyed in the data stream, and decoder 54 may recover the subdivision of picture 10 into blocks 18 based on the subdivision information. To summarize the above, decoder 54 may be a predictive decoder operating on a block basis, and in addition to intra-prediction modes, decoder 54 may support other prediction modes, such as inter-prediction modes, for example, if decoder 54 is a video decoder.1, which is respected in both the encoder 14 and the decoder 54, so that the same neighboring samples are available for the current block 18 in both the encoder 14 and the decoder 54. Therefore, in order to avoid unnecessary repetitions, the description of the operating modes of the encoder 14 also applies to the decoder 54 as far as the subdivision of the picture 10 into blocks is concerned, e.g., as far as the prediction is concerned and as far as the coding of the prediction residuals is concerned. The difference is that the encoder 14, by optimization, chooses certain coding options or coding parameters and signals or inserts the coding parameters into the data stream 12 from which the decoder 54 then derives them for re-prediction, subdivision, etc.

[0086] 4 illustrates one possible implementation of the decoder 54 of FIG. 3 (used in these examples, for example), i.e., one that matches the implementation of the encoder 14 of FIG. 1, as shown in FIG. 2. Because many elements of the decoder 54 of FIG. 4 are the same as those occurring in the corresponding encoder of FIG. 2, the same reference numerals, given with an apostrophe, are used in FIG. 4 to indicate these elements. Specifically, the adder 42′, the optional in-loop filter 46′, and the predictor 44′ are connected in the prediction loop in the same manner as in the encoder of FIG. 2. The reconstructed, i.e., inversely quantized and retransformed prediction residual signal applied to the adder 42′, is derived, as on the encoding side, by a sequence of an entropy decoder 56 that reverses the entropy coding of the entropy encoder 28b, followed by a residual signal reconstruction stage 36′ consisting of an inverse quantizer 38′ and an inverse transformer 40′. The output of the decoder is a reconstruction of the picture 10. The reconstruction of picture 10 may be available directly at the output of adder 42' or at the output of in-loop filter 46'. Several post-filters may be arranged at the output of the decoder to subject the reconstruction of picture 10 to some post-filtering to improve the picture quality, but this option is not shown in FIG.

[0087] Again, with respect to Figure 4, the explanations presented above with respect to Figure 2 are equally valid for Figure 4, simply with the exception that the encoder performs optimization tasks and associated decisions regarding coding choices. However, all explanations regarding block subdivision, prediction, inverse quantization, and retransformation are also valid for the decoder 54 of Figure 4.

[0088] [example] In some examples above and below, the encoder and / or decoder may reconstruct a given block (18) by correcting each of a set of Q predicted values ​​by a corresponding residual value to obtain a corresponding reconstructed value (24′) such that the corresponding reconstructed value (24′) is completely linearly dependent on P neighboring samples (templates) (except for optional clipping applied after the prediction correction).

[0089] In some cases, it is possible to refer to a "set of block sizes" that includes the various sizes that may be used. For example, a size MxN is different from MxN by MxN1, where N≠N1. Some modes are intended only for a specific block size (one of the block sizes in the set of block sizes).

[0090] Further, reference is made to a "first set of conventional modes 121" that includes conventional modes, and a "second set of ALWIP modes 122" that includes ALWIP modes (an example of ALWIP is provided below).

[0091] This specification relates, inter alia, to an improved intra-prediction mode concept for block-based picture coding that can be used in a video codec, such as HEVC or any successor to HEVC.

[0092] Intra-prediction modes are widely used in picture coding and video coding. In video coding, intra-prediction modes compete with other prediction modes, such as inter-prediction modes, such as motion-compensated prediction modes. In intra-prediction modes, a current block is predicted based on neighboring samples, i.e., samples that have already been coded as far as the encoder side is concerned and decoded as far as the decoder side is concerned. The neighboring sample values ​​are extrapolated to the current block to form a prediction signal for the current block, and the prediction residual is transmitted in the data stream for the current block. The better the prediction signal, the lower the prediction residual, and therefore fewer bits are required to code the prediction residual.

[0093] To be effective, several aspects should be taken into consideration to form an effective framework for intra prediction in a block-based picture coding environment. For example, the more intra prediction modes a codec supports, the higher the side information rate consumption for signaling a selection to the decoder. On the other hand, the set of supported intra prediction modes should be able to provide a good prediction signal, i.e., a prediction signal that results in a low prediction residual.

[0094] This specification is intended, among other things, to provide an improved intra-prediction mode concept that allows for more efficient compression of block-based picture codecs if the improved intra-prediction mode concept is used.

[0095] This object is achieved by the subject matter of the independent claims of the present application.

[0096] An apparatus and method are disclosed for block-wise decoding (or encoding) a picture (e.g., 10) from a data stream (e.g., 12, 80), which supports at least one intra prediction mode according to which an intra prediction signal for a predetermined size block of the picture is determined by applying a first template of neighboring samples of a current block to an affine linear predictor, ultimately referred to as an Affine Linear Weighted Intra Predictor (ALWIP).

[0097] The apparatus and method may have at least one of the characteristics discussed below.

[0098] [Example of a predictor that complements other predictions] The intra-prediction modes supported by the present apparatus and method may, in some examples, complement other intra-prediction modes of the codec. These may complement the DC, planar, or angular prediction modes defined in the HEVC codec resp. JEM reference software. The latter three types of intra-prediction modes shall be referred to herein as "traditional intra-prediction modes." Thus, for a given block of intra-mode, a flag (e.g., encoded in a field denoted "81" below) may be parsed by the decoder to indicate whether one of the intra-prediction modes supported by the apparatus or method will be used.

[0099] [Two or more prediction modes suggested] The apparatus and method may include two or more ALWIP modes, for example, stored in a storage unit (or in some cases, these may be retrieved on the fly). Thus, if the decoder knows that one of the ALWIP modes supported by the encoder apparatus will be used, the decoder may parse additional information (e.g., encoded in a field denoted "82" below) that may indicate which of the ALWIP modes supported by the method apparatus will be used.

[0100] The signaling of supported modes may have the property that coding of some ALWIP modes may require fewer bins than other ALWIP modes, and which of these modes require fewer and which require more bins may both depend on information that can be extracted from already decoded bitstream 12 (or 80) or may be predetermined.

[0101] [Sharing predictors across different block sizes using downsampling / upsampling] Some of the examples discussed here can be specifically illustrated by considering the example of FIG. 13 (see also the discussion below).

[0102] In some cases, an encoder or decoder may convert between predictors of different block sizes, for example, by downsampling and / or upsampling. This may occur when the ALWIP mode is provided for a particular size (e.g., MxN), but the block to be predicted (e.g., 18 or B1) is predicted to have dimensions M1xN1 different from MxN (e.g., at least one of M and N such that M≠M1 and / or N≠N1). Hereinafter, a "second template 1160" may refer to a group of already predicted neighboring samples (also denoted 17'a, 17'b, 17'c, see below) used to perform intra prediction associated with a block size for which the encoder or decoder does not have the ALWIP mode at its disposal. A "first template 1161" may refer to a template having dimensions required for prediction associated with a block size for which the encoder or decoder does have the ALWIP mode at its disposal. We now discuss an example that allows us to "jump" from the second template 1160 to the first template 1161, then make a prediction using the first template 1161, and finally return to the original block size after predicting block 18 (B1).

[0103] Referring to FIG. 13, the apparatus and method may be configured such that, for a current block 18 (B1) of a different size than the predetermined size provided to the decoder (or encoder) in the ALWIP mode, resampling a second template (1160) of neighboring samples (17'a, 17'b, 17'c) of the current block (B1, 18) to match the first template (1161) to obtain a resampled template (1136); applying the resampled template (1161) to an ALWIP predictor (1138a) to obtain a preliminary intra prediction; Resample (1140) the preliminary intra-prediction signal to match the current block to obtain an intra-prediction signal for the current block (18). It can be configured as follows.

[0104] The device may be configured to resample the second template (1160) by downsampling (D) to obtain the first template (1161).

[0105] The apparatus may be configured to resample the preliminary intra-prediction signal by upsampling the preliminary intra-prediction signal. The apparatus may be configured to transform the preliminary intra-prediction signal from the spatial domain to a transform domain and resample the preliminary intra-prediction signal in the transform domain. The apparatus may be configured to resample the preliminary intra-prediction signal in the transform domain by scaling coefficients of the preliminary intra-prediction signal.

[0106] The apparatus or method may, in some examples, Increasing the dimensions of the intra prediction signal to match the dimensions of the current block; zero-pad coefficients of additional coefficients of the preliminary intra prediction signal, the additional coefficients being associated with high frequency bins; resampling the preliminary intra prediction signal in the transform domain by It can be configured as follows.

[0107] The apparatus may be configured to create a preliminary intra prediction signal in the transform domain with an inverse quantized version of the prediction residual signal. The apparatus may be configured to resample the preliminary intra prediction signal in the spatial domain.

[0108] The apparatus may be configured to resample the preliminary intra-predicted signal by performing bilinear interpolation. The apparatus may be configured to encode information regarding resampling for different dimensions and / or use of affine linear prediction in the data field.

[0109] In some cases, it is possible to use a mapping that maps the modes required for the M1xN1 block 18 (B1) to the mode 1138a.

[0110] Although this example is described for ALWIP mode, it may also be implemented for conventional mode or for other types of modes.

[0111] [Prediction to the Transform Domain] As will become clear from the following text (see also FIG. 12), it is possible to perform intra prediction in the spatial domain and / or in the transform domain. Below, there are some considerations by the encoder device and / or decoder device in the transform domain.

[0112] 1. An apparatus for decoding pictures block-by-block from a data stream, comprising: by applying ALWIP to a first set of neighborhood samples of the current block to obtain a prediction of a set of transform coefficients of the transform of the current block; supports at least one intra-prediction mode according to which an intra-prediction signal for a current block of the picture is determined; An apparatus is also disclosed.

[0113] One of the devices may be configured to inverse transform the prediction to obtain a reconstructed signal. One of the devices may be configured to decode an index from the data stream using a variable length code and make a selection using the index. One of the devices may be configured to determine a ranking of the set of intra-prediction modes and then resample the second template.

[0114] 1. A method comprising: resampling a second template of neighboring samples of the current block to match the first template to obtain a resampled template; applying the resampled template of samples to the ALWIP to obtain a preliminary intra prediction signal; resampling the preliminary intra-prediction signal to match the current block to obtain an intra-prediction signal for the current block; A method is disclosed that includes:

[0115] 1. A method for decoding pictures block-by-block from a data stream, comprising: applying the ALWIP to a first set of neighborhood samples of the current block to obtain a prediction of a set of transform coefficients of the transform of the current block; A method is disclosed that includes:

[0116] The methods described above and / or below may use an apparatus comprising at least one device as described above and / or below.

[0117] When the proposed predictor predicts transform coefficients, non-predicted transform coefficients may be inferred to be zero. Which transform coefficients will be predicted may depend only on a given mode and not on the input (e.g., not on neighboring blocks). In addition, for a given transform, it may be predetermined that all high-frequency components of the predicted signal starting from a certain point are inferred to be zero.

[0118] In an example, a mapping may be defined that maps modes to other modes for which resampling must be performed.

[0119] Although the above examples are primarily discussed with respect to ALWIP mode, these examples may be generalized to conventional mode and other types of modes.

[0120] [Prediction from the transformed domain] Some prediction modes of the present application may be configured to first apply a transform having energy compaction properties (e.g., a discrete cosine transform (DCT) or a wavelet transform) to the natural image and use only some of the resulting transform coefficients as input to the affine linear prediction supported by the device. The coefficients to be used may be predetermined (e.g., only low-frequency coefficients) or derived from the transform signal itself (e.g., only frequency coefficients with the largest amplitude).

[0121] If it is predetermined which frequency coefficients will be used, only a partial transform, for example a discrete cosine transform that calculates only low frequency coefficients or one or more stages of a low pass filter corresponding to a given wavelet transform, may be applied to the input signal.

[0122] [Suggested prediction mode transposition] The examples discussed here are explained in more detail below with particular reference to Figures 11a and 11b.

[0123] For a given block 18 of N rows and M columns, if the ALWIP mode is already supported by the device for that block and for the given block of M rows and N columns, the device may be configured to support a new prediction mode for the block of M rows and N columns by: first, mapping a template consisting of neighboring already reconstructed samples for the block of M rows and N columns to a template that serves as input for affine-linear intra-prediction for the block of N rows and M columns; second, applying the ALWIP mode to the block of N rows and M columns; and third, transposing the result of the latter prediction so that it becomes a prediction signal for the block of M rows and N columns, where M and N may be equal.

[0124] To further explain the first step, for example, if a template consisting of nearby already reconstructed samples for a block of M rows and N columns consists of k rows above the block and l columns to the left of the block, and if a template serving as input for affine linear prediction for a block containing N rows and M columns consists of l rows above the block and k columns to the left of the block, then the pth row above the block of M rows and N columns may be mapped to the pth column to the left of the block of N rows and M columns, and the qth column to the left of the block of M rows and N columns may be mapped to the qth row above the block of N rows and M columns.

[0125] For example, there may be a mapping operation from a mode applicable to an MxN block to an associated mode applicable to an NxM block.

[0126] Although the above examples refer primarily to the ALWIP mode, they may also be valid for the conventional mode and / or other modes.

[0127] [Mapping between mode indices] For a given block shape, and for ALWIP intra prediction for that block shape that is part of the proposed apparatus and method, there may be a mapping that maps each ALWIP mode to a conventional intra prediction mode (DC, Planar, or Angular) that exists in the underlying codec (and vice versa, in the example).

[0128] This mapping can be used in the signaling of conventional intra-prediction modes present in the underlying codec, i.e., if in the decoder a list ranking among conventional intra-prediction modes is generated and this list is used in their signaling, and if the generation of the latter list is realized by a defined rule using the conventional intra-prediction modes of surrounding already reconstructed blocks, this rule is extended to also include surrounding already reconstructed blocks that use one of the proposed ALWIP modes in the underlying device by first applying the mapping to each of these modes and then treating them as conventional intra-prediction modes when generating the list.

[0129] Moreover, this mapping may additionally be used as follows: If the luma prediction signal is generated using one of the ALWIP modes for that block shape, the chroma prediction signal may be obtained by using a conventional intra prediction mode corresponding to ALWIP via mapping.

[0130] For a given block shape that is part of the proposed device and a given ALWIP mode for that block shape, there may be a mapping that maps each of the conventional intra-prediction modes present in the underlying codec to an ALWIP mode for that block shape that is part of the proposed device.

[0131] For a given first block shape that is part of the proposed device and a given ALWIP intra prediction mode for the first block shape, and for a given second block shape that is part of the proposed device and a given ALWIP intra prediction mode for the second block shape, there may be a mapping that maps each ALWIP mode for the first block shape to an ALWIP for the second block shape.

[0132] This mapping may be achieved by first applying the mapping described in the previous paragraph of this section, and then applying the mapping in the second paragraph of this section to the result (or vice versa). Both of the last two mappings just described may be used to generate a ranking of all available ALWIP modes for a given block using the intra-prediction modes of neighboring blocks, which may be either conventional intra-prediction modes or ALWIP modes. First, the mapping is applied to each of the neighboring intra-prediction modes, which gives a set of ALWIP modes corresponding to the shape of the given block. Then, all possible ALWIP modes are ranked according to a predefined rule, and ALWIP modes occurring in the set corresponding to surrounding blocks may be ranked differently from other ALWIP modes.

[0133] The latter ranking can be used in signaling the ALWIP mode by coding the ALWIP mode with a different number of bins corresponding to the ranking.

[0134] [Explanation of Example Aspects of ALWIP Conversion] 2 shows a decoder 54 for decoding a picture from data stream 12. Decoder 54 may be configured to decode a given block 18 of the picture. Specifically, predictor 44 may be configured to map a set of P neighboring samples around given block 18 to a set of Q predicted values ​​for the samples of the given block using a linear or affine-linear transformation [e.g., ALWIP].

[0135] As shown in Figure 5, a given block 18 contains Q values ​​to be predicted (which become "predicted values" at the end of the operation). If block 18 has M rows and N columns, then the values ​​to be predicted are Q = M *The Q values ​​of block 18 may be in the spatial domain (e.g., pixels) or in the transform domain (e.g., DCT, etc.). The Q values ​​of block 18 may be predicted based on P values ​​taken from neighboring blocks 17a-17c adjacent to block 18. The P values ​​of neighboring blocks 17a-17c may be located closest to (e.g., adjacent to) block 18. The P values ​​of neighboring blocks 17a-17c have already been processed and predicted. The P values ​​are designated as values ​​in portions 17'a-17'c (forming a so-called "template") 17'a-17'c (in some examples, 17'b is not used) so as to be distinguished from the block of which they are a part.

[0136] As shown in FIG. 6, to perform the prediction, a first vector 17P having P components (each component is a specific location within the neighborhood 17′a-17′c), a second vector 18Q having Q components (each component is a specific location within the block 18), and a mapping matrix 17M (each row is associated with a specific location within the block 18 and each column is associated with a specific location within the neighborhood 17′a-17′c) may be used. The mapping matrix 17M thus predicts the P values ​​of the neighborhood 17′a-17′c (template) to values ​​of the block 18 according to a predetermined mode. The elements of the mapping matrix 17M are therefore weighting coefficients. The matrix 17M (which may be associated with a conventional mode or an ALWIP mode) may be predefined and stored in a storage unit (e.g., a register, a memory, etc.) of the decoder and / or encoder, or may be retrieved on the fly. The matrix 17M (and the associated mode) is generally associated with a specific size. For example, a size MxN is generally not M1xN1 (when M≠M1 and / or N≠N1), a size associated with a size MxN is generally different from a mode associated with a size M1xN1, and a matrix 17M for a mode associated with a size MxN is generally different from a matrix 17M for a mode associated with a size M1xN1. For a mode associated with a size MxN, matrix 17M will have Q rows, where Q=M* N. For a mode associated with size M1xN1, matrix 17M will have Q1 rows, where Q1=M1 * It's N1.

[0137] There are several known conventional modes in the art, such as DC mode, planar mode, and 65 directional prediction modes. For example, there may be 67 known modes. See below for a discussion of conventional modes.

[0138] However, it has been found that different modes (besides the conventional modes) can also be used. The different additional modes presented here are referred to herein as linear or affine-linear transformations. A linear or affine-linear transformation (associated with matrix 17M) is a transformation of P * It contains Q weighting factors, of which at least 1 / 4P * The Q weighting factors are non-zero weight values ​​that, for each of the Q predicted values, constitute a sequence of P weighting factors associated with the respective predicted value, which, when arranged one below the other in raster scan order between the samples of a given block 18, form an envelope that is non-linear in all directions.

[0139] FIG. 7 shows P positions of the neighboring values ​​17'a to 17'c (template), Q positions of the blocks 17'a to 17'c, and P *An example of a diagram 70 mapping the values ​​of Q weighting factors is shown. Plane 72 is the envelope of the sequence for a DC transform (plane for a DC transform). This envelope is clearly planar and therefore excluded by the definition of linear or affine-linear transformations (ALWIP). Planar modes and 65 directional prediction modes will have different envelopes, but these will be linear in all directions. In contrast, the envelope of a linear or affine transformation will not be linear in all directions. It will be appreciated that such types of transformations may be optimal for making predictions for block 18 in some circumstances. At least one-quarter of the weighting factors will be different from zero (i.e., P * It has been found preferable that at least 25% of the Q weighting coefficients are different from 0. The weighting coefficients may be unrelated to one another according to any regular mapping rule. Thus, matrix 17M may be such that the values ​​of its elements have no obvious discernible relationship.

[0140] In an example, the ALWIP transformation is such that the maximum average of the cross-correlations between a first series of weighting coefficients associated with each predicted value and a second series of weighting coefficients associated with predicted values ​​other than the respective predicted value or an inverted version of the latter series, whichever yields a higher maximum value, is lower than a predetermined threshold (e.g., 0.2 or 0.3 or 0.35 or 0.1, e.g., a threshold in the range between 0.05 and 0.035).

[0141] The P neighboring samples (17'a-17'c) of blocks 17a-17c may be arranged along a one-dimensional path extending along the boundary (e.g., 18c, 18a) of a given block 18. For each of the Q predicted values ​​of a given block 18, the sequence of P weighting factors associated with the respective predicted value may be ordered to traverse the one-dimensional path in a predetermined direction (e.g., from left to right, from top to bottom, etc.).

[0142] In examples, the ALWIP matrix 17M may be non-diagonal or non-block diagonal.

[0143] An example of an ALWIP matrix 17M for predicting a 4x4 block 18 from four already predicted neighboring samples may be as follows: { {37, 59, 77, 28}, {32, 92, 85, 25}, {31, 69, 100, 24}, {33, 36, 106, 29}, {24, 49, 104, 48}, {24, 21, 94, 59}, {29, 0, 80, 72}, {35, 2, 66, 84}, {32, 13, 35, 99}, {39, 11, 34, 103}, {45, 21, 34, 106}, {51, 24, 40, 105}, {50, 28, 43, 101}, {56, 32, 49, 101}, {61, 31, 53, 102}, {61, 32, 54, 100} }. (where {37, 59, 77, 28} is the first row, {32, 92, 85, 25} is the second row, and {61, 32, 54, 100} is the 16th row of matrix 17M.) Matrix 17M has dimensions 16x4, and (16 * 4=64), since the matrix 17M has dimensions QxP, where Q=M * N is the number of samples in the block 18 to be predicted (the block 18 is a 4x4 block), and P is the number of samples already predicted (for example, 17'a to 17'c), where M=4, N=4, (M * N=4 * Q=16, P=4 (as a result of 4=16). The matrix is ​​non-diagonal and non-block diagonal and is not described by any particular rule.

[0144] As can be seen, less than a quarter of the weighting factors are zero (in this case, one weighting factor out of 64 is zero). The envelope formed by these values, when arranged one below the other in raster scan order, forms an envelope that is non-linear in all directions.

[0145] Although the above description is in terms of a decoder, the same can be done in an encoder (eg, encoder 14).

[0146] In some examples, for each block size (within the set of block sizes), the ALWIP transforms of the intra prediction modes in the second set of intra prediction modes 122 for the respective block sizes are different from each other. Additionally or alternatively, the cardinality of the second set of intra prediction modes 122 for block sizes in the set of block sizes may match, but the associated linear or affine-linear transforms of the intra prediction modes in the second set of intra prediction modes for different block sizes may not be convertible with respect to each other by scaling.

[0147] In some examples, ALWIP transformations may be defined such that they have "nothing in common" with conventional transformations (e.g., although an ALWIP transformation is mapped by one of the mappings above, the ALWIP transformation may have "nothing" in common with the corresponding conventional transformation).

[0148] In the example, the ALWIP mode is used for the luma component, but the ALWIP mode may be avoided for the chroma components.

[0149] From this point onwards, a first set 121 of conventional intra-prediction modes including a plurality of directional prediction modes and at least one of a DC mode and a planar mode (the set may have, for example, 67 modes); and A second set of intra-prediction modes 122 (e.g., linear or affine prediction modes (ALWIP) discussed above) This article mainly refers to:

[0150] [Signaling, Mapping] We now describe how to reduce the size of the bitstream (e.g., 12, 80) that encodes and signals the prediction mode to be chosen, e.g., using a unary variable length code or another variable length code.

[0151] This selection may be made by an encoder that encodes in the bitstream a variable-length code (which may be unary) of type "000...1," where "1" is located after a sequence of "0." (More generally, cheaper codes are given to more frequent, though not necessarily unary, intra-prediction modes.) The shortest field may therefore be "1" (indicating the first prediction mode), the second shortest field may be "01" (indicating the second prediction mode), and so on (a string containing 66 "0"s and one "1" in the 66th position may, for example, indicate the last of 67 prediction modes). Because this code may be signaled for each of a large number of blocks to be predicted, it is generally preferable for the field to be short for each block (i.e., for the mode to be used to be indicated by a short string, such as "1," "01," "001," etc.) while avoiding fields with dozens of "0"s. Therefore, strategies based on ranking between modes have been developed. According to such a strategy, the length of the code depends monotonically on the rank of the intra-prediction mode in the list of intra-prediction modes in order to recognize an index that points to a particular prediction mode in the list. The list can be understood as a list of most probable modes, and the list is not directly signaled by the encoder to the decoder, but can be interpreted by a rule common to the encoder and decoder.

[0152] 8 shows a data (video) stream 80 (e.g., 12) that encodes an image (e.g., 10 in FIGS. 1-4). Portions of the data stream 80 may refer to predetermined blocks 18 that are to be decoded.

[0153] Data stream 80 may include a first signaling 81 for assigning blocks 18 to a first set 121 or a second set 122 of intra-prediction modes. Signaling 81 may, in some examples, require one single bit.

[0154] The second signaling 82 (variable length code) in the data stream 80 may include a unary variable length code of type "000...1", as discussed above, or another variable length code that can assign cheaper codes (e.g., codes requiring fewer bits) to more frequent intra-prediction modes.

[0155] When the decoder 54 reads the first signal 81, the decoder 54 understands that the block 18 will be predicted in either an intra-prediction mode of the first set or an intra-prediction mode of the second set (i.e., through the flag 81, the block 18 will be assigned to either the first set 121 in conventional mode or the second set 122 in ALWIP mode).

[0156] In that case, in some examples, the decoder 54 may sort the assigned set of prediction modes (indicated in the first signal 81) according to the intra-prediction modes (e.g., previously used for the neighboring blocks 17a-17c). Thus, a list 90 of intra-prediction modes (a “list of most probable modes”) may be obtained. The list 90 may be stored in registers within the decoder 54 and the encoder 14. The list 90 may thus provide a particular order, shown here as a first position 91, a second position 92, a third position 93, a fourth position 94, and a fifth position 95. Of course, other positions may be provided, for example, to cover all modes in the assigned set. However, in some examples, the list 90 need not have as many positions as the number of modes (either conventional or ALWIP modes) in the set, but may have fewer. In an example, the list 90 may have fewer than 10 positions, for example, between 3 and 7 positions, for example, 5. Within list 90, the first position 91 is now utilized by prediction mode "23", the second position 92 is utilized by prediction mode "15", etc. (the numbering of the modes may be stored, for example, in a look-up table (LUT)).

[0157] Note that in the example, the assignment to a particular position may not be signaled within data stream 80 (12) but may be determined by the decoder based on predictions previously made for blocks 17a-17c. In some examples, the previously most used intra-prediction mode (or, in either case, the statistically more frequent intra-prediction mode) may obtain the highest position in list 90 (highest position may be understood as the highest-ranked position). In this case, mode "23" is the previously most used prediction mode and is therefore given the first position 91. Note again that the same sorting is performed in the encoder. The encoder will obtain a copy of list 90 (based on the same historical data regarding the most used prediction modes). Thus, the encoder and decoder share the same list without even having to signal that list within data stream 80. Other techniques are possible.

[0158] It should be appreciated that the size of data stream 80 can be reduced by assigning the shortest (cheaper) codes (e.g., "1", "01", "001", ...) in data stream 80 (e.g., 12) to the highest positions (91, 92, 93, ...) in list 90. This conclusion is possible based on the consideration that the most used prediction mode (e.g., "23", "15", "18", ...) is also the most probable prediction mode for the current block 18. (Alternatively, it is the most statistically certain mode that is given the highest position (highest rank) in list 90.) Thus, by assigning short codes to the most probable prediction modes, a reduction in the size of data stream 80 is obtained.

[0159] It should be noted that the second signal 82 is not necessarily encoded as a unary code. For example, a truncated binary code may be used. An example of a truncated binary code is provided in the following table:

[0160] [Table 1]

[0161] Index 0 is associated with the highest index 91 (which is then associated with the most probable mode), index 1 is associated with the second highest index (which is then associated with the second most probable mode), index 10 is associated with the third highest index (which is then associated with the third most probable mode), etc. As can be seen, the third most probable mode is associated with a less expensive index than the indices associated with the first and second most probable modes (index 10 for the third most probable mode requires two bits in the bitstream 80, while indices 0 and 1 for the first and second most probable modes require only one bit each for encoding).

[0162] The second signal 82 may therefore include a coding index that points to a particular position. For example, if the second signal 82 includes a "1", it will point to the first position 91, thus indicating that mode "23" will be used. If the second signal 82 includes a "01" (with reduced probability), it will point to the second position 92, thus indicating that mode "15" will be used, etc.

[0163] Therefore, the intra prediction mode pointed to by the index can be used to predict for the encoder and decoder the given block 18 that will be used.

[0164] In some cases, some problems may arise. One example is when a given block 18 is predicted using conventional mode (i.e., the first signal 81 indicates that conventional mode is to be used), but one of the neighboring blocks 17a-17c has previously been predicted using ALWIP mode. This would imply that one of the indices 91-95 in the list 90 would indicate ALWIP mode, which cannot be used (because the first signal 81 requires conventional mode). Thus, a useless instruction would be present in the list 90.

[0165] However, it should be understood that it is possible to map several ALWIP modes to conventional modes. Thus, if a particular ALWIP mode ALWIP1 is used, the mapping will allow a particular conventional mode CONV1 to be derived (mapping of ALWIP1 by mapping). Thus, if an ALWIP mode is used for a previous block 17a, 17b, or 17c, then one of the indices 91-95 will indicate the mapped conventional mode associated with the previously used ALWIP mode. Thus, the indices 91-95 in the list 90 are not wasted and will indicate an unavailable mode. The mapping may be predefined and known by both the encoder and the decoder.

[0166] The same may be true by mapping conventional modes to ALWIP modes. Note, however, that in some instances, the list of most probable modes 90 is used only for a particular set (e.g., the first set of conventional modes 121), and such list is not used for other sets (or the list of most probable modes may be predefined and fixed). This makes some mapping unnecessary in such instances (e.g., in some cases, the list of most probable ALWIP modes may be predefined based on pre-assumed probabilities and never changed on the fly, and therefore no mapping is provided in these cases).

[0167] A mapping may also refer to a block size, and different mappings may be used for different sizes. Thus, multiple mappings may be stored for different sizes (i.e., a mapping for an MxN size may be different from a mapping for an M1xN1 size).

[0168] It is possible to define a mapping from a first size to a second size, which may be the case, for example, when a nearby, previously predicted block 17a, 17b, or 17c has a different size than the block 18 to be predicted.

[0169] It may also be possible to map ALWIP mode but associated with different sizes.

[0170] Here, mapping considerations are described.

[0171] For example, if the assigned set is the second set of intra-prediction modes (ALWIP) 122, a first mapping that maps each intra-prediction mode of the first set of prediction modes to one representative intra-prediction mode in the second set of intra-prediction modes may be used when sorting the assigned set. If the assigned set is the second set of intra-prediction modes, a second mapping that maps each intra-prediction mode of the second set of prediction modes to one representative intra-prediction mode in the first set of intra-prediction modes will be used when sorting the assigned set.

[0172] Hereinafter, at least one of the following mappings may be used: First mapping (101a, Fig. 10a'): ALWIP to conventional (same size); Second mapping (102a in Fig. 10a', 102b in Fig. 10b): Conventional to ALWIP (same size); Third mapping (103, Fig. 10c): from ALWIP to conventional (from the size of the neighboring block predicted through conventional mode to a different size of the block 18 that will be predicted through ALWIP mode); Fourth mapping (104, Fig. 10d): from conventional to ALWIP (from the size of the neighboring block predicted through ALWIP mode to a different size of the block 18 that will be predicted through conventional mode); Fifth mapping (105, Fig. 10a'''): ALWIP to ALWIP (different sizes); Generalized fifth mapping (106, Fig. 10e): from one size to another (general example).

[0173] A more detailed discussion is provided here: Figure 10a is subdivided into Figure 10a', Figure 10a'', and Figure 10a'''.

[0174] 10a' shows an example of a first mapping 101a in which different conventional modes (CONV1, CONV2, CONV3) are mapped to different ALWIP modes (ALWIP1, ALWIP2, ALWIP3) through different mappings. In the example, the different conventional modes and the different ALWIP modes have the same size. In an example where the list 90 for ALWIP is not updated on the fly (but is indexed based on predefined probabilities), this mapping is not used.

[0175] FIG. 10a″ shows an example of a second mapping 102a in which different ALWIP modes (ALWIP1, ALWIP2, ALWIP3) of the second set 122 are mapped to different conventional modes (CONV1, CONV2, CONV3) of the first set 121. In the example, the different conventional modes and the different ALWIP modes have the same size. This second mapping may be used when the list 90 of most probable modes is updated on the fly for at least the conventional modes (hence, the list 90 may be referred to as the “list 90 of most probable conventional modes”). Thus, if the previous block 17a, 17b, or 17c is predicted using ALWIP2, then list 90 will indicate conventional mode CONV1 in one of its indices (i.e., because ALWIP1 is already in use and because second mapping 102a maps ALWIP2 to CONV1, CONV1 becomes one of the most probable conventional modes even if CONV1 is not yet in use).

[0176] 10c shows an example of a third mapping 103 in which conventional modes of the first set 121 (size 152) are mapped to ALWIP modes of the second set 122 (size 151). In examples where the list 90 is not updated on the fly for ALWIP (but an index is provided based on a predefined probability), this mapping is not used.

[0177] 10d shows an example of a fourth mapping 104 in which ALWIP modes of the second set 122 (size 151) are mapped to conventional modes of the first set 121 (size 152). In examples in which the list 90 is not updated on the fly for ALWIP modes (but an index is provided based on a predefined probability), this fourth mapping 104 is not used.

[0178] Figure 10a''' shows the different ALWIP modes (ALWIP11, ALWIP12, ALWIP13) with the same size (size 1 or 151) for different mappings (1051, 105 n1 shows an example of a fifth mapping 105 in which different ALWIP modes (ALWIP11', ALWIP12', ALWIP13') of different sizes are mapped through the fifth mapping 105. Other ALWIP modes (ALWIPn1, ALWIPn2, ALWIPn3) of the same size (size n or 15n) can be mapped to different ALWIP modes (ALWIPn1', ALWIPn2', ALWIPn3') of different sizes. Therefore, there is a possibility of mapping any ALWIP mode to different other ALWIP modes.

[0179] Figure 10e shows a mapping 106, which is a more general example than the fifth mapping 105, where different modes used for size 151 are mapped to modes for different sizes 152. This mapping does not map only ALWIP modes to ALWIP modes, but also maps conventional modes to conventional modes, conventional modes to ALWIP modes, and ALWIP modes to conventional modes.

[0180] A specific case of the second mapping 102a will now be discussed with reference to the second mapping 102b in FIG. 10b. In some examples, multiple (or all) ALWIP modes of the same size (within a set of sizes) may be mapped to one single conventional mode. A first set 121 of conventional modes 131 is shown here. Here, only one mode 131 is represented for the first set 121 of conventional modes, each of which is associated with a particular size (e.g., CONV11 is one particular conventional mode 131 for size 1, CONV21 is one particular conventional mode 131 for size 2, CONV1 is one particular conventional mode 131 for size n, etc.). The first set 121 may include other conventional modes 131 not shown here. However, the conventional modes 131 shown here (CONV11, CONV12, CONV13) may be of the same type (e.g., all planar modes). A second set 122 of ALWIP modes is also shown. The second set 122 includes multiple modes for each size (e.g., size 1, size 2, ..., size n) (size 1: ALWIP11, ALWIP12, ALWIP13; size 2: ALWIP21, ALWIP22, ALWIP23; size n: ALWIPn1, ALWIPn2, ALWIPn3). A second mapping 102b may be defined. For example, multiple (or all) ALWIP modes (i.e., ALWIP11, ALWIP12, ALWIP13) of the same size (size 1) may be mapped to the same conventional mode CONV11 (which may have the same size of ALWIP11, ALWIP12, ALWIP13). Thus, although there are other conventional modes 131 (not shown) with the same size (size 1) in the first set 121, multiple (or all) ALWIP modes are mapped to the same conventional mode conv11. The same can apply to the ALWIP modes of size 2 (ALWIP21, ALWIP22, ALWIP23), which are all mapped to the same conventional mode CONV21.The same can apply to ALWIPs of size n (ALWIPn1, ALWIPn2, ALWIPn3) that all map to the same conventional mode convn1. In some examples, the conventional mappings CONV11, CONV21, CONV2 to which multiple ALWIP modes are mapped may all be planar modes. Thus, multiple different ALWIP modes may be mapped to one single conventional mode. (In certain examples, different ALWIP modes may be mapped to multiple conventional modes.)

[0181] In some examples, at least one of the following techniques may be implemented: using the first or second mapping (101a, 101b, 102b) if one of the neighboring blocks (17a-17c) is of the same block size as the given block (18) in the set of block sizes but is assigned to a different one of the first and second sets (121, 122) of intra prediction modes; If one of the neighboring blocks (17a-17c) is of a different block size than the given block (18) in the set of block sizes, If the set assigned to a given block (18) is the second set (122) for the block size of the given block, and the set assigned to one neighboring block (17a-17c) is the first set (121) for the block size of one neighboring block, a third mapping (103) is used to map each intra prediction mode of the first set (121) of prediction modes for the block size of one neighboring block to one representative intra prediction mode in the second set (122) of intra prediction modes for the block size of the given block; and / or If the set assigned to a given block (18) is a first set (121) for the block size of the given block, and the set assigned to one neighboring block (17a-17c) is a second set (122) for the block size of one neighboring block, a fourth mapping (104) is used to map each intra prediction mode of the second set (122) of prediction modes for the block size of the one neighboring block to one representative intra prediction mode in the first set (121) of intra prediction modes for the block size of the given block; and / or If one of the neighboring blocks (17a to 17c) is of a block size different from a predetermined block (18) in the set of block sizes, the set assigned to the predetermined block (18) is the second set (122) for the block size of the predetermined block, and the set assigned to one of the neighboring blocks (17a to 17c) is the second set (122) for the block size of one of the neighboring blocks; A fifth mapping (105) is used to map each intra prediction mode of the second set (122) of prediction modes for the block size of one neighboring block to one representative intra prediction mode in the second set (122) of intra prediction modes for the block size of the given block.

[0182] Conventional to ALWIP mapping (eg, 102a, 102b) may be used for the chroma components when the ALWIP mode is used for the luma component.

[0183] As explained above, in some instances, list 90 is static. This may be the case, for example, when flag 81 requires the use of ALWIP mode; in these cases, in some instances, there is no list 90 that is updated on the fly, but rather a list with predefined relationships.

[0184] The above example often refers to a list 90 pointing to five modes through five indices 91-95, although a different number of indices (more or fewer) may be defined.

[0185] In an example, the first signal 81 may require one single bit (e.g., signaling a choice between "ALWIP mode" and "conventional mode"). In an example, the second signal 82 may require a variable length: for example, a cheaper code (e.g., having a narrower length) may be associated with the statistically most frequent mode. In some cases, the code length may depend (e.g., monotonically) on the rank of the intra-prediction mode to which the index points, with a higher rank being associated with the most frequent index (and also the most frequent mode). Although other codes may be used, one example may be a unary code (see above).

[0186] Transpose 11a, 11b, and 11c, we refer to the "proposed prediction mode transposition" discussed above, where a given block 18 of size MxN (where M ≠ N) or NxM (where M ≠ N) is to be predicted from previously predicted neighboring blocks 17a, 17b, 17c, specifically from a sequence of P neighboring samples 17'a-17'c forming a template 170. (Here, block 17b shown in FIG. 5 is not used, although it is envisioned that block 17b could be used in some instances.)

[0187] We assume that decoder 56 or encoder 14 has a particular ALWIP mode (here denoted ALWIP1) that is suitable for size NxM, but not for size MxN. Or, in other words, an NxM ALWIP matrix 17M is stored, but an MxN ALWIP matrix 17M is not. (In principle, it is conceivable that it would be preferable to have and store a separate MxN matrix for the ALWIP modes. However, to reduce storage and / or signaling, it may be preferable to reduce the amount of ALWIP modes stored within the encoder and / or decoder.)

[0188] In some cases, a first signal 81 in stream 80(12) may indicate that ALWIP mode is to be used for a given block 18. A second signal 82 may have an encoded index associated with (or in any case to indicate) ALWIP1. Thus, different operations may be performed depending on the orientation of block 18. As in FIG. 11 a, if a given block 18 to be predicted has size M×N (corresponding to the size of ALWIP1), then mode ALWIP1 is applied 140 to P samples of template 170 to predict P samples of block 18. 11b, if the given block 18 to be predicted has a size MxN (opposite to the size of the stored ALWIP1), it is not possible to simply apply ALWIP1 (assuming that the NxM matrix 17M is not stored), since ALWIP1 has a size NxM which is different from the size MxN of the given block 18. However, it should be understood that it is possible to employ a technique in which the encoder 14 or decoder 54 accordingly performs the following steps: 1) inverting 141 the sequence of templates 170 (oriented according to direction R170) to obtain inverted templates 170 (e.g., oriented according to direction R170T); 2) applying ALWIP1 to the inverted version 170T of template 170 (142) to obtain a predicted block 18T of size NxM (compatible with ALWIP1); 3) Transpose 144 the predicted block 18T to obtain the given block 18.

[0189] In particular, whether an MxN ALWIP mode or an NxM ALWIP mode is used, no signaling needs to be provided within stream 12 (80), nor does it need to signal that a transposition is being performed. It is simply possible to use the fifth mapping 105 of Figure 10a'''. In fact, to reconstruct block 18: 1) The second signal 82 may signal (either directly or by index 91-95 of list 90) that a particular ALWIP mode (e.g., ALWIP1) is to be used for the MxN block 18; 2) However, in the decoder, the MxN matrix for ALWIP1 is not stored (ALWIP1 can be considered to be part of the subset 120N of ALWIP modes that are not stored); 3) Nevertheless, NxM ALWIP modes are stored in the decoder (which may be considered to be part of the subset 120S of stored ALWIP modes); 4) Mapping 105 maps unstored MxN ALWIP1 modes to stored NxM ALWIP modes; 5) The procedure of FIG. 11b may be carried out, thus arriving at the reconstruction of block 18.

[0190] The above example is proposed for a rectangular block MxN, where M≠N. However, a similar procedure may be performed for a square block MxM. Note that in practice, exactly as in Figure 11b (albeit with M=N), it may be possible to simply apply an inverted version of the template 170, make a prediction using the stored transformation, and finally transpose the obtained block 180T. As shown in Figure 11d, the set 120Q of modes (ALWIP and / or conventional) may include the following subsets: a first subset 120QS of modes stored for the square block (for these modes, a matrix 17M is stored); and A second subset 120QN of modes that are not stored for square blocks but for which predictions can be made by using the method of FIG. 11b (where M=N).

[0191] Thus, if index 91-95 or the second signal directly indicates a mode within the first subset 120QS of stored modes (case 1), then that mode is directly called (and the procedure of Figure 11a is performed, where M = N).

[0192] Otherwise, if index 91-95 or the second signal directly indicates a mode within the second subset 120QN of unstored modes (case 2), a mode from the first subset 120QS is called after being mapped from a mode in subset 120QN.

[0193] The examples discussed above and below can be in the spatial domain and / or in the transform domain.

[0194] [Example in the transform domain] 12 shows the prediction of a spatial domain block 18 (which may be, for example, one of the predetermined blocks 18 described above, such as in FIG. 5) from previously predicted neighboring blocks 17c and 17a, where the prediction is made in the transform domain (e.g., after applying a transform such as a Fast Fourier Transform (FFT), and / or a Discrete Cosine Transform (DCT), wavelets, etc.).

[0195] 12′ shows a predetermined block 18 to be predicted. Q values ​​of block 18 are to be predicted from first and second sets (e.g., true subsets) 17′c and 17′a of neighboring blocks 17c and 17a (the first and second sets 17′c and 17′a may represent lines or stripes or arrays that are close to, e.g., adjacent to, the edges 18c and 18a of the block 18 to be predicted, and may include samples that have already been predicted). The values ​​of the first and second sets 17′c and 17′a may be selected independently of the size of the neighboring blocks 17c and 17a, respectively; whatever the dimensions of the neighboring blocks 17c and 17a, the dimensions of the first and second sets 17′c and 17′a are based on the dimensions of block 18. The values ​​of the first and second sets 17′c and 17′a (templates) may be selected independently of the size of the blocks 17c and 17a. In an example, the first and second sets 17'c, 17'a may be arranged along a one-dimensional path alongside the first and second edges 18c, 18a, respectively. As discussed above, it is possible to perform sub-sampling, for example, by utilizing only some specific transform coefficients.

[0196] A transform 160 (e.g., FFT, DCT, wavelet, etc.) can be applied to at least some of the samples of the first and second sets 17'c and 17'a. The first and second sets 17'cT, 17'aT of transform coefficients (templates in the transform domain) can represent a one-dimensional transform of the samples of the first and second sets 17'c, 17'a, the latter being arranged along a one-dimensional path. It is not necessary to transform the entire neighborhood blocks 17c and 17a, but only the less frequent parts (or, in either case, reduced parts). Advantageously, it does not matter if the size of the first and second sets 17'c and 17'a does not match the size of the sides 18c and 18a of the block 18: the length of the sets 17'c and 17'a can be longer or shorter than the length of the sides 18c and 18a.

[0197] FIG. 12″ shows that the first and second sets 17′c and 17′a (formed by “transform coefficients”) are now in the transform domain and are therefore denoted 17′cT and 17′aT, respectively.

[0198] 12 ″, a prediction block 18T of the block 18 in the transform domain is obtained. The ALWIP intra-prediction transform 162 may be in accordance with the intra-prediction mode signaled in the signals 81 and / or 82. In particular, it may occur that the predicted version 18T in the transform domain of the block 18 has too few transform coefficients: in that case, it is simply possible to perform a zero-padding operation before the inverse transform 164: the remaining transform coefficients (e.g., frequent bins) may be set to 0. Thus, after the inverse transform 164, the entire value set of the block 18 may be obtained. The prediction block 18T of the transform domain may therefore be smaller than the prediction block 18 of the spatial domain. The prediction block 18T of the transform domain may also be larger than the prediction block 18. In that case, a low-pass filter may be applied afterwards.

[0199] To obtain the prediction block 18T in the spatial domain of FIG. 12''', an inverse FFT (IFFT), or inverse DCT (IDCT), or another inverse transform 164 is applied to the prediction block 18T.

[0200] In some instances, it is possible to generate a predictor of a given block 18 in the spatial domain.

[0201] [Conventional intra prediction mode] The following is a discussion regarding conventional intra-prediction modes, at least some of which may be included in the first set 121 of conventional intra-prediction modes (eg, conv1, conv2, etc.).

[0202] Conventional intra prediction modes can be represented by matrix-vector multiplication and filtering operations applied to input vectors, respectively, output vectors. However, we point out that the matrices used in the latter calculation of the matrix-vector product have a very special structure, as we will explain next.

[0203] To set up a notation, we assume that an M×N block (M rows, N columns) is given for which an intra prediction signal (in the luma component) is to be calculated by a conventional intra prediction mode. The reference samples that serve as input for the prediction consist of already reconstructed samples. In general, the reference samples may consist of N+q samples at the top of the block (some samples at the top right of the block may not be directly available but can be generated by a defined padding operation) and M+p samples at the left of the block (some samples at the bottom left of the block may not be directly available but can be generated by a defined padding operation).

[0204] For conventional intra prediction modes, the reference samples are considered as a vector ref of size M+p+N+q, whose first M+p elements consist of reference samples to the left of the block and whose last N+p elements consist of samples from the top of the block.

[0205] We first describe the case where the conventional intra prediction mode is a directional intra prediction mode, also called an angular intra prediction mode.

[0206] Here, in a first step, an interpolation filtering operation is applied to the reference sample ref. The latter operation generates sample values ​​for non-integer sample positions that lie between the true sample positions in the fixed resolution. Thus, for a fixed integer k and each i∈{1,...,M+p+N+q-1}, k sample values ​​are generated whose sample positions lie between the i-th and (i+1)-th components of ref. Optionally, a smoothing filtering operation is performed before or after the interpolation filtering operation. The overall result of the filter operation is again the sum of the values ​​of ref fltr It is noted that for some directional modes, e.g., horizontal or vertical intra-prediction modes, no interpolation may be performed, i.e., the number k may be equal to zero.

[0207] In a second step, the prediction signal pred is calculated as a matrix-vector product for a fixed matrix A, which corresponds to the conventional intra prediction mode and has M*N rows and (M+p+N+q)*(k+1)-k columns. pred=A·ref fltr where · denotes matrix-vector multiplication, where each row of matrix A has only one non-zero element that is 1. In other words, each predicted sample value is exactly one ref fltr value.

[0208] In a final step, a second filtering operation may be applied to the signal that is an extension of pred by the already reconstructed samples of the block resp. left of the block above, to yield an overall directional intra-predicted signal.

[0209] Next, we consider the case where the conventional intra prediction mode is planar. Here, the vector ref fltr A smoothing-only operation, without interpolation, can be applied to the reference samples to yield the (unfiltered) planar prediction signal pred planar is calculated by matrix-vector multiplication pred planar =A planar ref fltr In this case, the matrix A planar is A planar A has the property that each row of A consists of only four non-zero components. In other words, each predicted sample value is calculated as a linear combination of the four reference sample values. planar The column positions of the four non-zero elements of the fixed row of ref correspond to the reference sample to the left of the block in the same row as the sample to be predicted, the reference sample to the top of the block in the same column as the sample to be predicted, the reference sample that is in the row at the top of the block and is the first sample in the row completely to the right of the block, and the reference sample that is in the column to the left of the block and is the first sample in the column completely below the block. fltr It is located inside.

[0210] In the final step, the predicted signal is generated by the already reconstructed samples of the block above and to the left of the block, respectively, to yield an overall planar intra prediction signal. planar A second filtering operation may be applied to the signal which is an extension of

[0211] Finally, we consider the case where the conventional intra prediction mode is DC mode, where the (unfiltered) DC prediction signal pred DC If is calculated by matrix-vector multiplication, then pred DC =A DC ref fltr In this case, the matrix A DC is A DC In the final step, the pred is calculated by the already reconstructed samples of the block (resp. left) above the block to produce the overall DC intra prediction signal. DC A second filtering operation may be applied to the signal which is an extension of

[0212] It is noted that the matrices used in the ALWIP intra prediction of the present application are not a priori constrained to one of the aforementioned patterns of matrices corresponding to directional, DC, or planar modes. Rather, these matrices are the result of an offline data-driven training approach that takes into account, for example, the possibility of partitioning blocks into various shapes, loss functions that model the losses (rate or rate-distortion) of common video encoders, the signaling cost required to signal the mode, and various other features known in the art.

[0213] [Downsampling / Upsampling, Transform Domain for ALWIP] Reference is now made to Figure 13. As explained above, in some cases, an encoder or decoder may convert between predictors of different block sizes, for example, by downsampling and / or upsampling.

[0214] As explained above, a "second template 1160" (in the spatial domain) may refer to a group of Q neighboring samples (identified above as 17'a, 17'b, and 17'c) that are used to perform intra prediction but for which the encoder or decoder does not have ALWIP mode at its disposal. Essentially, the "second template 1160" is formed by the samples 17'a, 17'b, and 17'c that are used for ALWIP prediction.

[0215] The following discussion is valid for both ALWIP and conventional transformations, but is focused primarily on ALWIP transformations.

[0216] 13 shows a current predetermined spatial domain block B1 (size M1xN1), which may be one block 18 in the above example. Block 18 is to be predicted by an ALWIP transform (e.g., one of the above). However, at the encoder or decoder, ALWIP transforms for a different size MxN (where M≠M1 and / or N≠N1) are free to be used.

[0217] It should be noted that the second template 1160 (formed by samples 17'a, 17'b, 17'c) has already been reconstructed (predicted).

[0218] If the dimensions of block 18 (B1) do not store an ALWIP mode for reconstructing block 18 (B1), and a block (B) with different dimensions MxN has an ALWIP transformation at its disposal, the following procedure can be implemented. In particular, an ALWIP transformation for block B of size MxN requires a template (herein referred to as "first template 1161") with a different size from the already obtained second template 1160. Below, techniques for overcoming this obstacle are discussed.

[0219] A transform operation (here denoted D) may be applied, for example, to the second template 1160. The transform D may provide an element 1136 formed from the transformed (resampled) first template 1161 and a block B (1138) of size MxN to be predicted.

[0220] For example, an MxN block B1 (18) (with unknown coefficients) can be logically transformed into an MxN block B (1138) (now also with unknown coefficients). Because the coefficients of block B (1138) are unknown, no transformation to the transform domain is necessary.

[0221] Similarly, transformation D transforms template 1160 (of size MxN) into a different template 1161 (of size M1xN1) with different dimensions.

[0222] In some cases, the conversion operation D may be a downsampling operation if M>M and N>N (and in particular if M is a multiple of M and N is a multiple of N). For example, M=2 * M and N1=2 * If N, then the transformation operation D may simply be based on hiding some bins in a chess-like fashion.

[0223] At this point, block B is predicted on an MxN basis by the ALWIP transform discussed above. The ALWIP transform (associated with the size MxN) is included in the encoder or decoder. In transition path 1138a, device 14 or 54 may now use the ALWIP transform originally defined for the MxN block (e.g., in predictor 44, 44′). By applying the transition path discussed above, a prediction is obtained for block B of size MxN.

[0224] If the prediction in block B (1138) is taken for size MxN, the image to be reconstructed will have size M1xN1. It is simply possible to perform a transformation 1140(U) that transforms block B (1138) from size MxN to a block 18 of size M1xN1. This transformation 1140(U) can be, for example, a bilinear interpolation or upsampling operation. This transformation 1140(U) can be performed by introducing the coefficients in the M1xN1 block in addition to the coefficients in the MxN block 1138. For example, if M1=2 * M and N1=2 * For N, it is simply possible to perform interpolation (e.g., bilinear interpolation) to approximate ("guess") the coefficients of those discarded by the transform D. Thus, the MxN predictions can be obtained as component blocks 18 and used to display the block image as part of the image 10.

[0225] In the example, it is possible to make a mapping from the mode to be used for block 18 (B1) to mode 1138a.

[0226] Further Embodiments and Examples Generally, the examples may be implemented as a computer program product including program instructions that, when executed on a computer, are operable to perform one of these methods. The program instructions may, for example, be stored on a machine-readable medium.

[0227] Another example comprises the computer program for performing one of the methods described herein, stored on a machine readable carrier.

[0228] In other words, an example of a method is, therefore, a computer program having program instructions for performing one of the methods described herein, when the computer program runs on a computer.

[0229] A further example of a method is therefore a data carrier medium (or digital storage medium, or computer-readable medium) having stored thereon a computer program for performing one of the methods described herein. The data carrier medium, digital storage medium, or recording medium is tangible and / or non-transitory, rather than a signal, which is intangible and transitory.

[0230] A further example of a method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein. A data stream or a sequence of signals may for example be transmitted via a data communication connection, for example via the Internet.

[0231] Further examples include a processing means, for example a computer, or a programmable logic device, for performing one of the methods described herein.

[0232] A further example comprises a computer having installed thereon the computer program for performing one of the methods described herein.

[0233] Further examples include an apparatus or system that transfers (e.g., electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may be, for example, a computer, a mobile device, a memory device, etc. The apparatus or system may, for example, comprise a file server for transferring the computer program to the receiver.

[0234] In some examples, a programmable logic device (e.g., a field programmable gate array) may be used to perform some or all of the functionality of the methods described herein. In some examples, a field programmable gate array may cooperate with a microprocessor to perform one of the methods described herein. In general, the methods may be performed by any suitable hardware apparatus.

[0235] The examples described above are merely illustrative of the principles discussed above. It is understood that modifications and variations of the arrangements and details described herein will become apparent. It is therefore the intention to be limited only by the scope of the following claims and not by the specific details presented by way of description and illustration of the examples herein.

[0236] Equal or equivalent elements with equal or equivalent functionality are designated in the following description by equal or equivalent reference signs, even if they occur in different drawings. [Explanation of symbols]

[0237] 10 Pictures 12 Data Stream 14 Encoder 16 videos 17a~17c Neighboring blocks 17'a, 17'b, 17'c Neighborhood samples 17'aT Second set of conversion coefficients Second set of 17cT conversion coefficients 17M queue 18 Current Block 18a Second Side 18c First side 18T prediction block 20 Coding Order 22 Subtractor 24 Predictive Signals 24' Reconstruction Value 26 Prediction residual signal 28 Prediction Residual Encoder 28a Lossy Encoding Stage 28b Lossless Encoding Stage 30 Quantizer 32 Converter 34 Transformed and quantized prediction residual signal 36 Prediction residual signal reconstruction stage 36' Residual signal reconstruction stage 38,38' inverse quantizer 40,40' Inverter 42,42' adder 44,44' Predictor 46,46' In-loop filter 54 Decoder 56 Entropy Decoder 70 Charts 72 plane 80 Data Stream 81 First Signal 82 Second Signal 90 List 91 1st position 92 Second position 93 Third Position 94 Fourth Position 95 5th position 101 Mapping 101a First map 102a Second map 102b Second mapping 103 The third map 104 The Fourth Mapping 105 The Fifth Mapping 1051 Mapping 105 n Mapping 106 Generalized fifth map 120N ALWIP mode subset 120Q mode collection 120QN second subset 120QS First subset 120S First subset of intra prediction modes 121 First set of conventional intra prediction modes 122 Second set of intra prediction modes 131 Conventional Mode 151, 152 Block Size 156 Residual Provider 162 ALWIP Intra Prediction Conversion 164 Inverse Transformation 170 templates 170T inverted version 1136 Resampled Templates 1138 Block B 1138a ALWIP predictor, mode 1140 conversion 1160 Second Template 1161 First Template

Claims

1. 1. A video decoding method comprising: receiving a picture via a data stream; determining from the data stream that a luma prediction signal corresponding to a block of the picture is generated using a matrix-based mode; mapping the matrix-based modes to different intra-prediction modes; and using the mapping to obtain a corresponding chroma prediction signal; decoding the picture using the chroma prediction signal; 1. A video decoding method comprising:

2. The different intra prediction modes are: planar intra prediction mode, DC intra prediction mode, Angular intra prediction mode, at least one of The video decoding method of claim 1 .

3. the different intra prediction modes include a planar intra prediction mode; The video decoding method of claim 1 .

4. determining that a luma prediction signal corresponding to a block of a picture is generated using a matrix-based mode; mapping the matrix-based modes to different intra-prediction modes; and using the mapping to obtain a corresponding chroma prediction signal; encoding the chroma prediction signal into a data stream; A video encoding method comprising:

5. The different intra prediction modes are: planar intra prediction mode, DC intra prediction mode, Angular intra prediction mode, at least one of 5. The video encoding method of claim 4.

6. the different intra prediction modes include a planar intra prediction mode; 5. The video encoding method of claim 4.

7. A non-transitory storage medium storing instructions that, when executed by at least one processor, cause the at least one processor to perform the method of any one of claims 1 to 6.

8. A video coding apparatus, a non-transitory computer-readable medium; At least one processor configured to cooperate with the non-transitory computer-readable medium to perform the method of any one of claims 1 to 6; A video coding apparatus comprising:

Citation Information

Patent Citations

  • Enhanced intra-prediction mode signaling for video coding using neighboring mode

    WO2012170812A1

  • Image coding method, image decoding method, image coding device and image decoding device

    WO2016199330A1