Decoder, encoder, and method including coding for intra subdivisions

JP7936918B2Active Publication Date: 2026-10-16FRAUNHOFER GESELLSCHAFT ZUR FORDERUNG DER ANGEWANDTEN FORSCHUNG EV
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2025124175
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-09-24
Filing Date
2025-07-24
Publication Date
2026-10-16
Estimated Expiration
2040-06-23

AI Technical Summary

Benefits of technology

【0032】 図面は必ずしも正確な縮尺でなく、むしろ、概して、本発明の原理を示すことに重点が置かれる。下の説明において、本発明の様々な実施形態が、以下の図面を参照して説明される。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007936918000002
    Figure 0007936918000002
  • Figure 0007936918000003
    Figure 0007936918000003
  • Figure 0007936918000004
    Figure 0007936918000004
Patent Text Reader

Abstract

To provide an encoder and a decoder configured to ease restrictions when using intra subpartitions.SOLUTION: A decoder is configured to derive, from a data stream 112 into which a picture is coded, an assignment of a picture, at a granularity of blocks into which the picture 110 is subdivided, to a set 114 of prediction types which include intra prediction 116 and inter prediction 118, so that each block 120 is assigned to an associated prediction type out of the set of prediction types, and derive, from the data stream, for each of intra-predicted blocks 120 to which the intra-prediction is assigned, associated intra-prediction modes 123a-123d out of a set of intra-prediction modes.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to picture coding / decoding or video coding / decoding.

Background Art

[0002] Today, there exist coding constraints related to blocks that use intra-partitions for encoding or decoding pictures or videos.

SUMMARY OF THE INVENTION

Means for Solving the Problems

[0003] Preamble In the following, different embodiments and aspects of the invention are described.

[0004] Furthermore, further embodiments are defined by the enclosed claims.

[0005] It should be noted that any embodiment defined by the claims may be supplemented by any of the details (features and functions) described in the following embodiments.

[0006] Moreover, the embodiments may be used individually and may also be supplemented by any of the features of another embodiment, or by any feature included in the claims.

[0007] Furthermore, it should be noted that the individual aspects described in the present specification may be used individually or in combination. Accordingly, details may be added to each of the individual aspects without adding details to another of the aspects.

[0008] It should also be noted that this disclosure explicitly or implicitly describes features that can be used in encoders (devices for providing an encoded representation of an input signal, e.g., a picture or video) and decoders (devices for providing a decoded representation of a signal based on an encoded representation). Accordingly, any of the features described herein may be used in the context of an encoder and in the context of a decoder.

[0009] In addition, the features and functions disclosed herein in relation to the methods may also be used in apparatuses (configured to perform such functions). Furthermore, any features and functions disclosed herein in relation to apparatuses may also be used in corresponding methods. In other words, the methods disclosed herein may be supplemented by any of the features and functions described in relation to apparatuses.

[0010] Furthermore, as described in the section on "Alternative Implementations," any of the features and functions described herein may be implemented in hardware, software, or a combination of hardware and software.

[0011] The object of this application is to provide a video codec that uses block-based predictive coding with improved coding efficiency. It is desirable to obtain a more flexible coding concept for blocks that use intra subdivisions, or an alternative coding concept for blocks that use intra subdivisions.

[0012] This is achieved by the scope of the independent claims of this application.

[0013] Further embodiments of the present invention are defined by the subject matter of the dependent claims of this application.

[0014] According to a first aspect, the inventors of this application recognized that one problem encountered when encoding or decoding blocks using intra-subdivisions (ISPs) is that, currently in VTM-5.0, intra-subdivisions cannot use Low Frequency Non-Separable Transform (LFNST), i.e., quadratic transforms. According to a first aspect of this application, this difficulty is overcome by enabling the use of quadratic transforms for blocks using ISPs, i.e., by allowing the use of two-step transforms at the transform unit level. The use of a first transform and concatenation of a linear and quadratic transform in intra-subdivisions introduces an additional syntactic element, but it has been found that this additional signaling overhead is more than compensated for by the fact that the quadratic transform following the linear transform can better condense non-zero coefficients, thereby resulting in a reduced amount of data used to represent residual blocks specific to the subdivision. It has been found that by using quadratic transforms for intra-subdivisions as well, higher coding efficiency and reduced bitrates can be achieved. In the following, the second transformation may be equivalent to a concatenation of a linear transformation and a quadratic transformation applied to a subset of the coefficients of the first transformation. The linear transformation may be the first transformation. The activation of the second transformation for intra-partitioning may be linked to certain conditions. The second transformation is activated for partitioning, for example, if there are no non-zero transformation coefficients, i.e., no non-zero coefficients of the linear transformation outside a given area, and / or the number of non-zero transformation coefficients is below a given limit, and / or the position of the last non-zero coefficient along a scan path progressing from the position of the DC coefficient to the position of the highest frequency coefficient, as indicated by the last position syntax element in the data stream, is below a further predetermined threshold.

[0015] Accordingly, according to a first aspect of this application, an encoder for encoding a picture and a decoder for decoding a picture are proposed. The decoder / encoder is configured to derive / encode from / to the data stream into which the picture is coded an allocation of the picture to a set of prediction types, including intra-predictions and inter-predictions, at the granularity of the blocks into which the picture is subdivided, such that each block is allocated to a relevant prediction type from a set of prediction types. Thus, each block of the picture is, for example, allocated to an intra-prediction or an inter-prediction. The allocation may define a prediction type with respect to each block. Furthermore, the decoder / encoder is configured to derive / encode from / to the data stream a relevant intra-prediction mode from a set of intra-prediction modes, with respect to each intra-predicted block to which an intra-prediction is allocated.

[0016] For each of a given intra-predicted blocks whose associated intra-prediction mode is included in a given subset of a given intra-prediction mode, the decoder / encoder is configured to derive / encode information from / to the data stream about the division of each given intra-predicted block into divisions. The division information may represent a horizontal division, a vertical division, or a quad-split. Furthermore, for each of a given intra-predicted blocks, the encoder / decoder is configured to intra-predict each division of each given intra-predicted block in a manner corresponding to the given intra-prediction mode assigned to each given intra-predicted block. A given intra-prediction mode for each given intra-predicted block may be represented by an intra-prediction mode from the set of intra-prediction modes for the given intra-predicted block. For each division of each given intra-predicted block, the same intra-prediction mode, i.e., a given intra-prediction mode, may be used for intra-prediction. A given subset of a given intra-prediction mode is, for example, a subset of the set of intra-prediction modes. For each of a given intra-predicted blocks, a given subset of a given intra-prediction mode defines, for example, a list of the most likely intra-prediction modes from the set of intra-prediction modes for each given intra-predicted block.

[0017] The decoder / encoder is configured to derive / encode information about the predicted residuals for each block, for each given intra-predicted block, from / encode information about the predicted residuals for each given intra-predicted block, by deriving / encoding from / into the data stream a prediction residual signal specific to the segment associated with the prediction residual signal of the spatial domain of each segment of the given intra-predicted block by a predetermined transformation. For each given intra-predicted block, the segment-specific prediction residual signal can be in the transform domain. Furthermore, the decoder / encoder is configured to derive / encode information about the predicted residuals for each given intra-predicted block, from / into the data stream, by deriving / encoding information from / into the data stream that identifies a predetermined transformation from a set of transformations including a first transformation and a second transformation equivalent to the concatenation of a linear transformation and a quadratic transformation applied to a subset of the coefficients of the linear transformation. The linear transformation may be the first transformation. In this case, the second transformation is equivalent to the concatenation of the first transformation and a quadratic transformation applied to a subset of the coefficients of the first transformation. If a given transformation is the second transformation, the decoder / encoder may be configured to use the linear and quadratic transformations individually, or to use a single transformation that combines the linear and quadratic transformations to produce the same result. Alternatively, the given transformation is the first transformation, and the quadratic transformation is not composed of the given transformations with respect to each section. The decoder / encoder may be configured to perform derivation / encoding from / to the data stream of information identifying a given transformation among the set of transformations by reading / transmitting transformation syntax elements transmitted in the data stream with respect to each given intra-predicted block. The information identifying a given transformation among the set of transformations can be an index pointing to a list of transformations, which may be equal to the set of transformations or contain a subset of the set of transformations. A transformation included in a set of decoders can be the inverse transformation of a transformation included in a set of encoders.

[0018] Furthermore, the decoder is configured to reconstruct each block using information about the predicted residuals of each block and the predicted signal obtained using the predicted type assigned to each block. For each block encoded by the encoder, each block can be reconstructed using information about the predicted residuals of each block and the predicted signal obtained using the predicted type assigned to each block.

[0019] Information identifying a particular transformation from a set of transformations can be derived / encoded individually for each given intra-predicted block or for each segment of each given intra-predicted block. In other words, a decoder / encoder can be configured to perform the derivation / encoding of information identifying a particular transformation from a data stream for each segment or for the entire block. When the information is derived / encoded for the entire block, the given transformation is identical for each segment of each given intra-predicted block.

[0020] According to the embodiment, information identifying a given transformation from a set of transformations may be derived / encoded by reading / transmitting a (transmitted) secondary transformation flag in / from the data stream for each given intra-predicted block in / from the data stream, indicating whether the given transformation is a first transformation or a second transformation. The secondary transformation flag may indicate whether a second transformation is used for the entire block. If the use of a second transformation is indicated, the decoder / encoder may be configured to derive / encode information identifying a given transformation by deriving / encoding information identifying the second transformation for each segment. The information identifying the second transformation may indicate a primary transformation and / or a secondary transformation. If the primary and / or secondary transformations cannot be set or selected by default or based on the associated intra-prediction mode, block dimension, segment dimension, segment processing rank, and / or segment, the information identifying the second transformation may be derived / signaled from / to the data stream. According to the embodiment, a primary transformation is set and a secondary transformation is selected based on information that identifies a second transformation, or a secondary transformation is set and a primary transformation is selected based on information that identifies a second transformation.

[0021] According to a second aspect, the inventors of the present application have found that one problem encountered when dividing a block stems from the fact that the current design of intra subdivisions (ISPs) only allows the use of horizontal or vertical divisions, resulting in divisions having different horizontal and vertical dimensions. According to a second aspect of the present application, this difficulty is overcome by introducing a quadripartition that divides the block in both horizontal and vertical dimensions. This quadripartition can result in divisions having the same horizontal and vertical dimensions. Thus, divisions of equal size can be realized. The introduction of a third division, which may be called a quadripartition, requires increased signaling overhead due to having to distinguish between horizontal division, vertical division, and quadripartition, compared to simply choosing between horizontal and vertical divisions, and thus may require additional syntax elements or an increased number of syntax elements with more states, but it has been found that higher coding efficiency and reduced bitrate can be realized.

[0022] Accordingly, according to a second aspect of this application, an encoder for encoding a picture and a decoder for decoding a picture are proposed. The decoder / encoder is configured to derive / encode from / to the data stream into which the picture is coded an allocation of the picture to a set of prediction types, including intra-predictions and inter-predictions, at the granularity of the blocks into which the picture is subdivided, such that each block is allocated to a relevant prediction type from a set of prediction types. Thus, each block of the picture is, for example, allocated to an intra-prediction or an inter-prediction. The allocation may define a prediction type with respect to each block. Furthermore, the decoder / encoder is configured to derive / encode from / to the data stream a relevant intra-prediction mode from a set of intra-prediction modes, with respect to each intra-predicted block to which an intra-prediction is allocated.

[0023] For each of a given intra-predicted blocks whose associated intra-prediction mode is included in a given subset of a given intra-prediction mode, the decoder / encoder is configured to derive / encode information from / into a data stream that identifies each given intra-predicted block's division into divisions, within a set of division modes that includes: a first division in which each given intra-predicted block is divided horizontally such that each division of the given intra-predicted block is the same width as the given intra-predicted block; a second division in which each given intra-predicted block is divided vertically such that each division of the given intra-predicted block is the same height as the given intra-predicted block; and a third division in which each given intra-predicted block is divided horizontally and vertically such that each division of the given intra-predicted block is arranged in rows and columns of divisions. In horizontal division, each given intra-predicted block is divided along the vertical dimension, resulting in n divisions having the same horizontal size as the given intra-predicted block and a reduced vertical size equal to 1 / n times the vertical size of the given intra-predicted block. In the vertical division, each predetermined intra-predicted block is divided along the horizontal dimension, resulting in n divisions having the same vertical size as the predetermined intra-predicted block and a reduced horizontal size equal to 1 / n times the horizontal size of the predetermined intra-predicted block. In the third division, each predetermined intra-predicted block can be divided into n parts along the horizontal dimension and n parts along the vertical dimension, each having a reduced horizontal size equal to 1 / n times the horizontal size of the predetermined intra-predicted block and a reduced vertical size equal to 1 / n times the vertical size of the predetermined intra-predicted block. 2 It brings about individual divisions.

[0024] Further, the decoder / encoder is configured to, for each of predetermined intra-predicted blocks whose associated intra prediction modes are included in a predetermined subset of predetermined intra prediction modes, intra-predict each partition of the respective predetermined intra-predicted block in a manner corresponding to the predetermined intra prediction mode assigned to the respective predetermined intra-predicted block.

[0025] Further, the decoder / encoder is configured to derive / encode the prediction residual for each predetermined intra-predicted block by deriving / encoding, from / into the data stream, a partition-specific prediction residual signal associated with the spatial-domain prediction residual signal of the respective partition of the respective predetermined intra-predicted block by a predetermined transform, so as to derive / encode information on the prediction residual of each respective block from / into the data stream for each block.

[0026] Further, the decoder is configured to reconstruct each block using the information on the prediction residual of each respective block and the prediction signal obtained using the prediction type assigned to each respective block. For each block encoded by the encoder, each respective block is reconstructable using the information on the prediction residual of each respective block and the prediction signal obtained using the prediction type assigned to each respective block.

[0027] According to the third aspect, the inventor of the present application has recognized that one problem encountered when encoding or decoding a block using Intra Sub-Partitions (ISP) stems from the fact that the current design of Intra Sub-Partitions (ISP) only allows the use of the same intra prediction mode for all partitions of the block. According to the third aspect of the present application, this difficulty is overcome by determining a partition-specific intra prediction mode for each partition of a given intra-predicted block using a predetermined rule. According to the predetermined rule, the partition-specific intra prediction mode is determined based on the intra prediction mode of the entire block. This feature allows local variations between the partitions of the block to be taken into account in the intra prediction of the block. The determination of the individual intra prediction for each partition is guided by information in the data stream, such as an additional syntax element indicating that the individual intra prediction mode is used and / or an additional syntax element indicating a predetermined rule among a set of rules, and it has been found that higher coding efficiency and coding quality can be achieved despite the additional signaling overhead associated with such information.

[0028] Therefore, according to the third aspect of the present application, an encoder for encoding a picture and a decoder for decoding a picture are proposed. The decoder / encoder is configured to derive / encode, from / to the data stream in which the picture is coded, the assignment of the picture to a set of prediction types including intra prediction and inter prediction, at the granularity of blocks into which the picture is sub-divided, such that each block is assigned to an associated prediction type from the set of prediction types. Accordingly, each block of the picture is, for example, either assigned to intra prediction or assigned to inter prediction. The assignment may define the prediction type for each block. Furthermore, the decoder / encoder is configured to derive / encode, from / to the data stream, an associated intra prediction mode from a set of intra prediction modes for each of the intra-predicted blocks to which intra prediction is assigned.

[0029] For each of a given intra-predicted blocks whose associated intra-prediction modes are included in a given subset of a given intra-prediction mode, the decoder / encoder is configured to derive / encode from / to the data stream information about the division of each given intra-predicted block into divisions, and to derive / encode from the data stream information identifying a given rule from a set of rules, using the information identifying the given rule to derive / encode for each division of each given intra-predicted block a division-specific intra-prediction mode is determined from a given subset of a given intra-prediction mode based on the associated intra-prediction mode for each given intra-predicted block. The given intra-prediction modes in a given subset of a given intra-prediction mode can be sorted in a list, for example. Similar intra-prediction modes can be grouped together. Using a given rule, for each division, a given intra-prediction mode in the list that is close to the given intra-prediction mode for the entire block can be determined. Thus, local variations of the intra-prediction mode for each division can be considered. Furthermore, the decoder / encoder is configured to intrapredict each segment of a given intrapredicted block using an intraprediction mode specific to the segment determined for each segment, for each given intrapredicted block whose associated intraprediction mode is included in a given subset of given intraprediction modes.

[0030] Furthermore, the decoder / encoder is configured to derive / encode information regarding the predicted residuals for each predetermined intra-predicted block from / to the data stream, by deriving / encoding a segment-specific predicted residual signal from the data stream for each segment of each predetermined intra-predicted block, which is associated with the predicted residual signal of the spatial domain of each segment of each predetermined intra-predicted block by a predetermined transformation.

[0031] Furthermore, the decoder is configured to reconstruct each block using information about the predicted residuals of each block and the predicted signal obtained using the predicted type assigned to each block. For each block encoded by the encoder, each block can be reconstructed using information about the predicted residuals of each block and the predicted signal obtained using the predicted type assigned to each block.

[0032] The drawings are not necessarily to exact scale, and rather, the emphasis is generally on illustrating the principles of the present invention. In the following description, various embodiments of the present invention will be described with reference to the following drawings. [Brief explanation of the drawing]

[0033] [Figure 1] This is a schematic diagram of an encoder. [Figure 2] This is a schematic diagram of the decoder. [Figure 3] This is a schematic diagram of the picture's block-based reconstruction by the decoder. [Figure 4] This is a schematic diagram illustrating the use of a quadratic transformation for each block of the picture to be decoded, according to the embodiment. [Figure 5] This is a schematic diagram of the area of ​​a non-zero transformation region located within the division of a picture block, according to the embodiment. [Figure 6] This is a schematic diagram illustrating the use of the third section of the picture block according to the embodiment. [Figure 7] This is a schematic diagram illustrating the use of the intra-predictive mode specific to the embodiment. [Figure 8] This is a schematic diagram illustrating the use of the angular intra prediction mode specific to the classification according to the embodiment. [Figure 9] This is a block diagram of a method for decoding a picture using a quadratic transformation for each block of the picture to be decoded, according to an embodiment. [Figure 10] This is a block diagram of a method for encoding a picture using a quadratic transformation for each block division of the picture to be encoded, according to an embodiment. [Figure 11] This is a block diagram of a method for decoding a picture using a third section for blocking the picture, according to an embodiment. [Figure 12] This is a block diagram of a method for encoding a picture using a third section for blocking the picture, according to an embodiment. [Figure 13] This is a block diagram of a method for decoding a picture using a segment-specific intra-prediction mode for a block of picture, according to an embodiment. [Figure 14] This is a block diagram of a method for encoding a picture using a segment-specific intra-prediction mode for a block of pictures, according to an embodiment. [Figure 15] This figure shows the syntax of the coding unit according to the embodiment. [Modes for carrying out the invention]

[0034] In the following description, elements that are equal or equivalent, or elements that have equal or equivalent functions, are indicated by equal or equivalent reference numbers, even if they appear in different figures.

[0035] In the following description, several details are given to provide a more complete description of embodiments of the present invention. However, it will be apparent to those skilled in the art that embodiments of the present invention may be carried out without these specific details. In other cases, well-known structures and devices are shown in block diagrams rather than in detail, in order to avoid obscuring embodiments of the present invention. In addition, features of the different embodiments described hereafter may be combined with each other unless explicitly stated otherwise.

[0036] The following description of the figures begins with a presentation of a description of a block-based predictive codec encoder and decoder for coding video pictures, in order to form an example of a coding framework in which embodiments of the present invention may be incorporated. Each encoder and decoder is described in relation to Figures 1 to 3. Hereafter, in relation to Figures 4 to 8, a description of embodiments of the concept of the present invention is presented, along with a description of how such concepts may be incorporated into the encoders and decoders of Figures 1 and 2, respectively. However, embodiments described using Figures 4 onward may be used to form encoders and decoders that do not operate by the coding frameworks that underlie the encoders and decoders of Figures 1 and 2.

[0037] Figure 1 illustrates a device (e.g., a video encoder) for predictively coding picture 12 into a data stream 14 using transform-based residual coding as an example. The device or encoder is indicated by reference numeral 10. Figure 2 illustrates a corresponding decoder 20, i.e., a device 20 configured to predictively decode picture 12' from a data stream 14 using transform-based residual decoding, where an apostrophe is used to indicate that picture 12' reconstructed by decoder 20 deviates from picture 12 originally coded by device 10 in terms of coding loss caused by quantization of the predictive residual signal. While Figures 1 and 2 illustrate transform-based predictive residual coding, embodiments of the present application are not limited to this type of predictive residual coding. This also applies to other details described in relation to Figures 1 and 2, as outlined below.

[0038] Encoder 10 is configured to apply a spatial-spectral transform to the predicted residual signal and encode the resulting predicted residual signal into a data stream 14. Similarly, decoder 20 is configured to decode the predicted residual signal from the data stream 14 and apply a spectral-spatial transform to the resulting predicted residual signal.

[0039] Internally, the encoder 10 may include a predictive residual signal formatter 22 that generates a predictive residual 24 to measure the deviation of the original signal, i.e., the predicted signal 26 from the picture 12, and the predicted signal 26 can be interpreted, according to embodiments of the present invention, as a linear combination of one or more predictor blocks. The predictive residual signal formatter 22 may be, for example, a subtractor that subtracts the predicted signal from the original signal, i.e., the picture 12. The encoder 10 then further includes a converter 28 that applies a spatial-spectral transform to the predictive residual signal 24 to obtain a spectral domain predictive residual signal 24', which is then quantized by a quantizer 32 also included in the encoder 10. The thus quantized predictive residual signal 24'' is coded into the bitstream 14. For this purpose, the encoder 10 may optionally include an entropy coder 34 that entropy codes the transformed and quantized predictive residual signal into the datastream 14.

[0040] The predicted signal 26 is encoded in the data stream 14 and generated by the prediction stage 36 of the encoder 10 based on the predicted residual signal 24'' that can be decoded from the data stream 14. For this purpose, the prediction stage 36 may internally include, as shown in Figure 1, an inverse quantizer 38 that inversely quantizes the predicted residual signal 24'' to obtain a predicted residual signal 24'''' in the spectral region corresponding to signal 24', excluding quantization losses, and a subsequent inverse converter 40 that inversely transforms the latter predicted residual signal 24'''', i.e., applies a spectral-spatial transformation, to obtain a predicted residual signal 24'''' corresponding to the original predicted residual signal 24, excluding quantization losses. Then, the combiner 42 of the prediction stage 36 resynthesizes the predicted signal 26 and the predicted residual signal 24'''' by addition or other means to obtain a reconstructed signal 46, i.e., a reconstruction of the original signal 12. The reconstructed signal 46 may correspond to signal 12'. Then, the prediction module 44 in prediction stage 36 generates a prediction signal 26 based on the signal 46 by, for example, using spatial prediction, i.e., intrapicture prediction and / or temporal prediction, i.e., interpicture prediction.

[0041] Similarly, the decoder 20 shown in Figure 2 may internally consist of components corresponding to the prediction stage 36 and interconnected in a manner corresponding to the prediction stage 36. In particular, the entropy decoder 50 of decoder 20 may entropy decode the predicted residual signal 24'' in the spectral region quantized from the data stream, and then the inverse quantizer 52, inverse converter 54, combiner 56, and prediction module 58, which are interconnected and cooperate in the manner described above in relation to the module of the prediction stage 36, reconstruct the signal based on the predicted residual signal 24'', and as a result, the output of the combiner 56 yields the reconstructed signal, i.e., picture 12', as shown in Figure 2.

[0042] Although not specifically described above, it is quite clear that encoder 10 may set several coding parameters, including prediction mode, motion parameters, etc., by some optimization method, such as optimizing the coding cost, for example, based on some rate and distortion-related criteria. For example, encoder 10 and decoder 20 and corresponding modules 44, 58 may support different prediction modes, such as intra-coding mode and inter-coding mode, respectively. The granularity at which encoders and decoders switch between these prediction modes may correspond to subdivisions of pictures 12 and 12' into coding segments or coding blocks, respectively. At the level of these coding segments, for example, a picture may be subdivided into intra-coding blocks and inter-coding blocks.

[0043] The blocks to be intracoded are predicted based on the spatially already coded / decoded neighbors (e.g., the current template) of each block (e.g., the current block), as outlined in more detail in relation to Figures 4 to 8. Several intracoding modes exist, including directional or angular intracoding modes, which may be selected for each intracoded segment, and according to the directional or angular intracoding mode, each segment is filled by extrapolating neighbor sample values ​​along a specific direction, which is specific to each directional intracoding mode, to each intracoded segment. The intracoding modes may also include one or more further modes, such as a DC coding mode in which the prediction for each intracoded block assigns DC values ​​to all samples within each intracoded segment, and / or a planar intracoding mode in which the prediction for each block is approximated or determined to be the spatial distribution of sample values ​​shown by a two-dimensional linear function on the sample positions of each intracoded block by manipulating the slope and offset of a plane defined by a two-dimensional linear function based on neighbor samples.

[0044] In comparison, the intercoded blocks may be, for example, temporally predicted. With respect to the intercoded blocks, motion vectors may be signaled within the data stream 14, and the motion vectors indicate the spatial displacement of the portion of the already coded picture (e.g., a reference picture) to which picture 12 belongs, from which the already coded / decoded picture is sampled to obtain a prediction signal for each intercoded block. This means that in addition to the residual signal coding included by the data stream 14, such as an entropy-coded transform coefficient level representing the prediction residual signal 24'' in the quantized spectral domain, the data stream 14 may encode within its stream coding mode parameters for assigning coding modes to different blocks, prediction parameters for parts of the block such as motion parameters for the intercoded segments, and any further parameters such as parameters that control and signal the subdivision of pictures 12 and 12' into segments, respectively. The decoder 20 uses these parameters to subdivide the picture in the same way that the encoder did, assign the same prediction mode to the segments, and perform the same predictions that result in the same prediction signals.

[0045] Figure 3 shows the relationship between one reconstructed signal, i.e., the reconstructed picture 12', and the synthesis of the predicted residual signal 24'''' and the predicted signal 26, which are signaled in the other data stream 14. As already shown above, the synthesis can be additive. The predicted signal 26 is shown in Figure 3 as a subdivision of the picture area into intracoded blocks, shown with diagonal lines for illustrative purposes, and interconnected blocks, shown without diagonal lines for illustrative purposes. The subdivision may be a regular subdivision of the picture area into rows and columns of square or non-square blocks, or any subdivision such as a multi-tree subdivision of picture 12 from a root block of a tree to multiple leaf blocks of varying sizes, such as a quadtree subdivision, a mixture of which is shown in Figure 3, where the picture area is first subdivision into rows and columns of a root block of a tree, which are then further subdivision into one or more leaf blocks by repeated multi-tree subdivisions.

[0046] Indeed, the data stream 14 may code an intracoding mode within its stream for each intracoding block 80, assigning one of several supported intracoding modes to each intracoding block 80. With respect to the intercoding block 82, the data stream 14 may code one or more motion parameters within its stream. Generally, the intercoding block 82 is not limited to being coded in time. Alternatively, the intercoding block 82 may be any block predicted from an already coded portion outside of the current picture 12 itself, such as an already coded picture in the video to which the picture 12 belongs, or a picture in a different field of view or a lower layer hierarchically if the encoder and decoder are scalable encoders and decoders, respectively.

[0047] The predicted residual signal 24'''' in Figure 3 is also shown as a subdivision of the picture area into block 84. These blocks may be called transform blocks to distinguish them from the encoded blocks 80 and 82. In fact, Figure 3 shows that encoder 10 and decoder 20 may use two different subdivisions of picture 12 and picture 12' into blocks, respectively: one subdivision into encoded blocks 80 and 82, and another subdivision into transform block 84. Both subdivisions may be the same, meaning that each encoded block 80 and 82 may simultaneously form transform block 84, but Figure 3 shows the case where the subdivision into transform block 84 forms an extension of the subdivision into encoded blocks 80 and 82, such that, for example, any boundary between the two blocks 80 and 82 covers the boundary between the two blocks 84, or in other words, each block 80, 82 coincides with one of the transform blocks 84 or a group of transform blocks 84. However, the subdivisions may be determined or selected independently of each other, and therefore, the transformation block 84 may, alternatively, straddle the block boundary between blocks 80 and 82. With respect to the subdivision to the transformation block 84, the same applies as to the subdivision to blocks 80 and 82, namely, that block 84 may be the result of a regular subdivision of the picture area into blocks (arranged or not arranged in rows and columns), the result of an iterative multi-tree subdivision of the picture area, or a combination thereof, or any other type of block division. Just as an aside, it should be noted that the block residual signals 82 and 84 are not limited to being square, rectangular, or any other shape.

[0048] Furthermore, Figure 3 shows that the combination of the predicted signal 26 and the predicted residual signal 24'''' immediately yields the reconstructed signal 12'. However, it should be noted that according to alternative embodiments, two or more predicted signals 26 may be combined with the predicted residual signals 24'''' to yield the picture 12'.

[0049] In Figure 3, the transformation block 84 has the following significance: The converter 28 and inverse converter 54 perform their transformations on these transformation blocks 84 as units. For example, many codecs use some kind of DST (Discrete Sine Transform) or DCT (Discrete Cosine Transform) for all transformation blocks 84. Some codecs allow skipping transformations for some of the transformation blocks 84 so that the predicted residual signal is coded directly in the spatial domain. However, according to the embodiments described in relation to Figures 4 to 8, the encoder 10 and decoder 20 are configured so that they support several transformations. For example, the transformations supported by the encoder 10 and decoder 20 may include: • DCT-II (or DCT-III). DCT stands for Discrete Cosine Transform. DST-IV. DST represents the discrete sine transform. · DCT-IV · DST-VII • Identity transformation (IT)

[0050] Naturally, the converter 28 supports all forward versions of these conversions, while the decoder 20 or inverse converter 54 supports their corresponding backward or reverse versions, namely: • Inverse DCT-II (or Inverse DCT-III) · Reverse DST-IV ·Inverse DCT-IV · Reverse DST-VII • Identity transformation (IT)

[0051] The following explanation provides further details regarding which transformations may be supported by encoder 10 and decoder 20. Note that in any case, a set of supported transformations may include only one transformation, such as a single spectral-space or spatial-spectral transformation, but that transformations may not be used by the encoder or decoder at all or for a single block 80, 82, or 84.

[0052] As already outlined above, Figures 1 to 3 are presented as examples of how the concepts of the invention described in relation to Figures 4 to 8 may be implemented to form specific examples of encoders and decoders according to this application. The encoders and decoders in Figures 1 and 2 may, respectively, illustrate possible implementations of the encoders and decoders described herein. However, Figures 1 and 2 are merely examples. However, the encoders according to embodiments of this application may perform block-based coding of picture 12 using concepts outlined in more detail in relation to Figures 4 to 8, and may differ from the encoder in Figure 1 in that, for example, the intra-coded block 80 is further subdivided into segments, and / or the subdivision into segments is performed by horizontal and vertical subdivision with respect to a single intra-coded block 80, and / or first and secondary transforms are used for the segments of a single intra-coded block 80, and / or individual intra-predictive modes are used for the segments of a single intra-coded block 80. Similarly, a decoder according to an embodiment of the present application may perform block-based decoding of picture 12' from data stream 14 using coding concepts further outlined in relation to Figures 4 to 8, but may differ from the decoder 20 in Figure 2 in that, for example, an intra-coded block 80 is further subdivided into segments, and / or the subdivision into segments is performed by horizontal and vertical subdivision with respect to a single intra-coded block 80, and / or a first and second transformation is used for the segments of a single intra-coded block 80, and / or individual intra-prediction modes are used for the segments of a single intra-coded block 80.

[0053] In one embodiment, as shown in Figure 4, the data stream 112 on which the picture 110 is coded may carry information 112a, which is inserted into the data stream 112 by the encoder, and based on the information 112a, the decoder derives the allocation of the picture 110 to a set of prediction types 114 at a granularity of blocks into which the picture is subdivided. That is, the information 112a allocates each block of the picture 110 to one of the prediction types in the set of prediction types 114. The set of prediction types 114 includes intra-predictions 116 and inter-predictions 118 as described above, and as a result, each block is allocated to the corresponding prediction type in the set 114. For each intra-predicted block 120, that is, for each block assigned to the intra-prediction 116, the data stream 112 includes information 112c, which is inserted by the encoder, and from the information 112c, the decoder derives, for each intra-predicted block 120, which intra-prediction mode from the set of intra-prediction modes 122 is associated with each intra-predicted block 120. For each of a given intra-predicted block 120, that is, an intra-predicted block 120 whose associated intra-prediction mode is included in a given subset 124 of intra-prediction modes, the data stream 112 further includes information 112d, which is inserted into the data stream 112 by the encoder to enable the decoder to derive from the information 112d the division 128 of each given intra-predicted block 120 into division 130. Note that not every intra-predicted block is a given intra-predicted block. Rather, as described above and further described below, the information 112b carried in the data stream for an intra-predicted block may determine whether a particular intra-predicted block is a given intra-predicted block, i.e., an ISP block. Similarly, a subset of intra-prediction modes is not necessarily a proper subset, and all intra-prediction modes in set 122 may be elements of subset 124.Set 122 may include angular intra-prediction mode 123a, planar intra-prediction mode 123b, DC intra-prediction mode 123c, and / or block-based intra-prediction mode 123d. Subset 124 may include, for example, angular intra-prediction mode 123a, planar intra-prediction mode 123b, and / or DC intra-prediction mode 123c.

[0054] Different possibilities regarding the divisions are shown in Figure 4. Based on the division 128 for each predetermined intra-predicted block 120, each division 130 of each predetermined intra-predicted block 120 is intra-predicted in a manner corresponding to a predetermined intra-prediction mode assigned to each predetermined intra-predicted block in order to obtain a prediction signal specific to the division. Several examples of intra-prediction modes are presented above, and further details are briefly given below in this specification.

[0055] The data stream 112 further includes information 112e regarding the predicted residuals of each block, for each block. For each given intra-predicted block 120, this is carried in the data stream as follows: In particular, for each segment 130 of each given intra-predicted block 120, the data stream 112 includes a segment-specific predicted residual signal 132 associated with the predicted residual signal 134 of the spatial region of each segment 130 by a given transform T. The information 136 in the data stream 112 is inserted into the data stream by the encoder and derived from the data stream by the decoder for each given intra-predicted block to identify a given transform T from a set of transforms 138. The information 136 is derived, for example, by reading a transform syntax element 112f transmitted in the data stream 112 for each given intra-predicted block 120. The transform syntax element 112f may be signaled in the data stream 112 for the entire block or for each segment 130 of each given intra-predicted block 120. Information 136 identifying a predetermined transformation T from a set of transformations 138 can be derived for each section 130 or for the entire block 120. The set of transformations 138 includes at least a first transformation T1 and a second transformation T2, the second transformation T2 corresponding to the concatenation of a linear transformation T1 / Tp and a quadratic transformation Ts applied to a subset 140 of the transformation coefficients of the linear transformation T1 / Tp. The linear transformation Tp may be the first transformation T1. The first transformation T1 and / or the linear transformation Tp may be separable transformations such as DCT or DST, and the quadratic transformation may be an inseparable transformation. Based on information regarding the prediction residuals and prediction signals, each block can then be reconstructed by the decoder using the prediction type assigned to each block. That is, for inter-predicted blocks, the prediction signal is derived by inter-prediction, and for intra-predicted blocks, the prediction signal is obtained by intra-prediction.

[0056] The transformation syntax element 112f may be represented by a secondary transformation flag and / or a secondary transformation indicator syntax element. The secondary transformation flag may indicate whether a given transformation is a first transformation T1 or a second transformation T2, and the secondary transformation indicator syntax element may indicate the secondary transformation Ts to be used when the given transformation is a second transformation T2.

[0057] According to the embodiment, the decoder / encoder is configured to determine whether a given transformation T is a first transformation T1 or a second transformation T2, and to determine the quadratic transformation Ts at different levels among block level and partition level by selecting one of different quadratic transformation candidates. Thus, a given transformation T can be either a first transformation T1 or a second transformation T2, and the quadratic transformation Ts for the second transformation T2 can be selected from different quadratic transformation candidates to determine the quadratic transformation Ts at different levels among block level and partition level.

[0058] Before proceeding with a description of the various possibilities for signaling the transformation information 136 for ISP blocks, several further nodes illustrate possible implementations of the above description. For example, the above description temporarily ignored the fact that intra-predicted blocks do not necessarily have to be ISP blocks. In other words, frankly speaking, not every intra-predicted block is a given intra-predicted block. Details of this and further implementations will become clear from the following brief consideration.

[0059] In particular, the decoder and encoder may support different intra-prediction modes, which are grouped into set 122 in Figure 4. An angular intra-prediction mode 123a may exist, according to which neighboring reference samples of the intra-predicted area, for example, the entire intra-predicted block for non-ISP intra-predicted blocks and the respective individual divisions 130 for ISP blocks, are used to fill a given block 120 and obtain an intra-prediction signal for the block. In particular, reference samples that may be arranged parallel to the boundary of the area, such as parallel to the top and left edges of the area, represent the contents of a picture that is extrapolated or copied along a given direction within this area. Before extrapolation or copying, the contents of the picture represented by the neighboring samples may be subjected to interpolation filtering, or in other words, may be derived from the neighboring samples by interpolation filtering. The angular intra-prediction mode 123a has different intra-prediction directions from one another. Each angle intra-prediction mode 123a may be associated with an index, and the association of an index to an angle intra-prediction mode 123a may be such that the direction rotates monotonically clockwise or counterclockwise when ordering the angle intra-prediction modes 123a according to the associated mode index.

[0060] Non-angle intra-prediction modes, such as planar intra-prediction mode 123b, may also exist. According to planar intra-prediction mode 123b, a two-dimensional linear function defined by horizontal gradient, vertical gradient, and offset is derived based on the aforementioned neighboring samples in the vicinity of the intra-predicted area. This linear function defines the predicted sample values ​​within the intra-predicted area, i.e., the entire block 120 or a specific section 130. The horizontal gradient, vertical gradient, and offset are derived based on neighboring samples.

[0061] Certain non-angle intra-prediction modes 123c, DC modes, may be included in set 122. Here, one value, i.e., the DC value, is derived based on neighboring samples, and this one DC value is considered to belong to all samples in the intra-predicted area, i.e., the entire block 120 or the area of ​​a particular section 130, in order to obtain an intra-prediction signal. Two examples of non-intra-prediction modes are shown, but there may be none at all, one or more in set 122.

[0062] The intra-prediction modes 123a to c form a subset 124 of intra-prediction modes supported by the encoder and decoder. The intra-prediction modes 123a to c may optionally compete in terms of rate / distortion optimization with intra-prediction modes based on blocks indicated using reference numeral 123d, as shown in 123d of Figure 4. According to these block-based intra-prediction modes 123d, the matrix-vector product between a vector derived from one neighboring sample and a predetermined prediction matrix of the other may be used to obtain a prediction vector used to predict samples within the area to be intra-predicted. If such block-based intra-prediction modes 123d exist, the prediction matrices associated with each mode may be different from one another. Thus, in short, the encoder and decoder according to the embodiments described herein may include a set 124 of intra-prediction modes 123a to 123d.

[0063] Block 120 to be intra-predicted may be coded / decoded using intra-prediction as follows. For example, mode indication 112c may be done as follows. In particular, if block-based prediction mode 123d is supported, a set selection syntax element or information 112b—which may be named intra_mip_flag—may be carried in the data stream 120 to indicate whether block 120 should be predicted using one of the subsets 124 of intra-prediction modes or one of the modes 123d. Information 112b is shown in Figure 4 in particular relation to information 112c. From one perspective, information 112b and 112c work together to indicate the intra-predictive mode for block 120 in set 122, but it should be noted that when block 120 in Figure 4 is assumed to be an ISP block, the mode of the block is already known to be in set 124, and information 112c is sufficient to indicate the mode of block 120.

[0064] If information 112b indicates that block 120 should be predicted using one of the modes in subset 124, then information 112c may be signaled as follows: A list of the most likely candidates from set 124 may be constructed / formed in the decoder and encoder based on the intra-prediction modes used by neighboring blocks in the vicinity of block 120. Neighboring blocks may be determined relative to the position of block 120 in a predetermined way, such as by determining neighboring blocks that cover a particular neighboring sample of block 120, such as the sample above the upper left sample of block 120, and the block containing the sample to the left of the corner sample mentioned above. Of course, this is merely an example. The same is true for the number of neighboring blocks used for mode prediction, and this number is not limited to two for all embodiments. Three or more, or even just one, may be used. If none of these neighboring blocks are found, a default intra-prediction mode from set 124 may be used by default in place of the intra-prediction mode of the missing neighboring block. The same may be true if any of the neighboring blocks are coded / decoded using interpredictive modes, such as by motion-compensated prediction. The construction of a list of the most probable modes from set 122 may be such that the length of the list, i.e., the number of most probable modes in that list, is predetermined by default. An index in the data stream may indicate one of the modes from this list used for block 120. Indexing is performed along the ordering or ranking of the list such that the index of the list is of a variable length, for example, coded such that the length of the index increases monotonically along the order 530. The index of the list forms part of the information 112c. First, only the most probable modes from set 124 are put into the most probable mode list, and along the order of the list, more probable modes are placed upstream of modes that are less likely to be suitable for intrapredicted block 120. This is valuable. When the modes of a list are derived based on the modes used for neighboring blocks, it is possible that one of the latter was intra-predicted using the block-based mode 123d. In that case, a mapping from the block-based modes 123d to the modes in set 124 may be used for constructing the list. If the set-selective syntax element 112b indicates that a given block 120 should be coded by one of the modes in set 124, then optionally, an MPM syntax element—which may be called intra_luma_mpm_flag—may be part of information 112c indicating whether the intra-predicted mode used for a given block 120 is in the MPM list, and if the intra-predicted mode used for a given block 120 is in the MPM list, the data stream 112 includes an index of the now-mentioned list to the MPM list—which may be called intra_luma_mpm_idx—indicating the mode used for a given block in the MPM list by indexing it in the order of the list. However, if a mode from set 124 is not in the MPM list, the data stream 112 includes, as part of information 112c, a further syntax element—which may be called intra_luma_mpm_remainder—indicating which mode from set 124 should be used for block 120. This syntax element may indicate a mode by simply distinguishing the modes from set 124 that are not included in the MPM list.

[0065] In other cases, i.e., when information 112b indicates that a given block 120 should be predicted using one of the block-based intra-prediction modes 123d, coding of block 120 into a data stream and decoding from the data stream may be performed. For this purpose, indexing may be used to index one of the selected block-based intra-prediction modes 123d or to indicate which of the block-based intra-prediction modes 123d should be used. For this purpose, the construction of another MPM list may be used together with information indicating whether the selected mode among the modes 123d is in that MPM list, and if so, which in the MPM list is the selected mode, or if not, which of the modes 123d the mode of block 120 is.

[0066] If block 120 is coded using one of the modes in subset 124, i.e., a potentially predetermined intra-predictable block, then further syntax elements or further information may be included in the data stream, the further syntax elements may parameterize the intra-predictable modes in subset 124 in some way. Optionally, the syntax element—which may be called intra_luma_ref_idx—may parameterize or modify the region around block 120 where the aforementioned reference samples are located, and based on this, the modes in subset 124 are used to intra-predict within block 120 in terms of distance to the perimeter of block 120, etc. A syntax element—which may be part of information 112b or may be shown using this reference code in Figure 4, and may be called intra_subpartitions_mode_flag—may indicate whether block 120 is an ISP block, that is, the syntax element parameterizes whether the aforementioned reference sample is used by a selected mode from set 124 to intra-predict block 120 as a whole or as a whole, or whether the block 120 is subdivided and intra-prediction is performed in units of sequentially intra-predicted subpartitions 130, which may work to supplement / reconstruct subpartitions 130 for intra-prediction, with respect to one subpartition 130 prediction residual coded in the data stream for that subpartition 130 followed by a new reference sample. The ISP coding options controlled by the ISP syntax element 112b described above may, according to any embodiment, only be available if an optionally existing syntax element controlling the location of the reference sample has a predetermined state corresponding to a region adjacent to block 120 (and the corresponding syntax element may only be present in the data stream in that case).

[0067] Section 130 may be defined by subdividing block 120 along a predetermined direction, such as horizontally, so that section 130 is the same height as block 120 as shown in 127b, or vertically, so that section 130 is the same width as block 120 as shown in 127a. Optionally, it may also be possible to indicate one or more other sections 127c, such as a division into n × n sections 130. If a section is signaled to be active with respect to block 120, a syntax element as part of information 112d may be present in the data stream, i.e., if block 120 is an ISP block as described, this syntax element 112d may control which division direction is used.

[0068] According to one embodiment, section 128 of block 120 may be executed as described in relation to Figure 6.

[0069] Now, let's begin the explanation related to the coding of residuals for ISP block 120. That is, block 120 is signaled to be divided into sections 130 according to a selected section 126, and for each section 130, the data stream 112 encodes a residual signal 112e specific to the section within the data stream 112, and the decoder decodes the residual signal for section 130 from the data stream 112. As described, the decoder uses the spatial domain residual signal 134 derived from signal 132 to correct the prediction signal derived for each section 130 using the intra-prediction mode signaled for ISP block 120, so that the next section may be intra-predicted using a reference sample that is in the neighborhood of this next section and, for example, partially present within the previous section. The residual signal 132 specific to the section is carried in the data stream in the transformation domain. Which transformation T forms the basis of the segment-specific signal 132 is signaled in the data stream using information 112f in one of the methods described herein, such as segment by segment, so that the transformation T may differ among the segments 130 of a single ISP block 120. However, before describing different embodiments in this regard, it will be briefly explained how the segment-specific residual signal 132 is coded in the data stream 112, that is, what the information 112e in the data stream 112 indicating the segment-specific residual signal 132 may look like.

[0070] In particular, information 112e may include, for each segment 130, a coded block flag (CBF), a final position (LP) syntax element, and coding of the transformation coefficient levels of the transformation coefficients that form the signal 132 of the transformation region of each segment 130. Thus, for an ISP block 120 having K segments 130, there may be K CBFs and one LP for each segment 130 having a non-zero CBF. The context used to code each CBF may depend on the CBF values ​​of already coded segments 130 within the same block 120—in line with the order in which the segments are subjected to prediction. A 2-D transformation may be used as the transformation T for a particular segment 130, except when one of the dimensions of that segment 130 is 1 (sample width), in which case a 1-D transformation is applied. Therefore, the decoder can obtain the transformation coefficient level of the transformation T for each section 130, and apply the inverse transformation to that transformation coefficient level to obtain the predicted residual sample for each section 130 of the spatial domain, as shown in 134.

[0071] According to the ISP method, i.e., the classification to section 130, this method may be available for the current intra-coded block only if one or more specific conditions are met. One or more conditions may include, for example, that the intra-coded block must be larger than some minimum size in terms of the number of samples in the block, and / or that the intra-coded block may not be allowed to exceed certain dimensions, at least horizontally and vertically, so as not to lead to a transformation size that is too large. More precisely, the ISP mode may be available only if the intra-coded block is less than or equal to the size related to the largest transformation mentioned above in at least one direction, i.e., horizontally or vertically. Thus, the intra_subpartitions_mode_flag signaling the ISP mode as part of the information 112b about the intra-coded block may only be present in the data stream if the block satisfies the conditions mentioned above. Otherwise, the decoder may infer that the intra-coded block will be intra-coded without subpartitioning. If the intra_subpartitions_mode_flag indicates that the intra-coded block 80 is an ISP-coded block, then a partition dimension flag—which may be called intra_subpartitions_split_flag—as part of information 112d may be further signaled with respect to the intra-coded block 80. However, this intra_subpartitions_mode_flag is not necessarily explicitly signaled, and in certain circumstances it may be inferred to indicate the dimension of a particular partition.For example, if the block being intracoded has a width exceeding the size of the maximum transformation described above (but a height that does not), the dimension of the subdivision may be required to be horizontal, and if the height of the block exceeds the size of the maximum transformation described above (but the width does not), the dimension may be required to be vertical. In either case, the intra_subpartitions_split_flag is not explicitly signaled in the data stream and is inferred accordingly by the decoder. Furthermore, the encoder and decoder may determine the number of subdivisions 130 into which block 120 is divided, depending on the size of block 120. In this case, the signal does not need to be used in the data stream. For small block sizes, the number may be 2, while otherwise, the number of subdivisions 130 may be 4. The order in which subdivisions are coded for intra-prediction and prediction residuals into the data stream may proceed along the direction of subdivisions, from the leftmost subdivision in the horizontal direction as shown in 127b, and from the topmost subdivision to the furthest subdivision in the vertical subdivision 127a. Signaling is not used in this case either.

[0072] The residual transformation 112e may be performed for each section 130, as described above. That is, each section 130 may be transformed separately using some transformation T. As an intermediate note, for non-ISP intracoded blocks, the number of transformations may also depend on the size of the block, and if the non-ISP intracoded block is smaller than the maximum transformation size described above in both the horizontal and vertical directions, the residual of the intracoded block will be coded using one transformation, i.e., the residual of the block will be subjected to a single transformation. This may not occur in the case of ISP blocks when the latter is transformed per partition. If the horizontal direction exceeds the maximum transformation size, the non-ISP intracoded block will be divided into two or a corresponding number of transformation blocks horizontally, so that half of them or the transformation blocks satisfy the maximum transformation size, and the residual of the block will be subjected to one transformation per half / transformation block. The same applies to blocks that exceed the maximum transformation size vertically. If the size of the maximum transformation is exceeded in both the vertical and horizontal directions, four or a corresponding number of transformations are used to transform the residuals of the block into four quarters of this block or into the corresponding number of transformation blocks for regular two-dimensional subdivisions of the block. Naturally, the processing of non-ISP intra-coded blocks is separate from the handling of ISP intra-coded blocks 120 in other ways. For example, explicit signaling such as division flags is not used for non-ISP intra-coded blocks. According to the embodiment, non-ISP intra-coded blocks are intra-predicted as a whole, while ISP blocks are intra-coded sequentially segment by segment. Further differences may relate to the coding of transformations for coding the predicted residuals. For each transformation, i.e., for each segment 130 in the case of ISP blocks and for each transformation in the case of non-ISP intra-coded blocks, an encoded block flag CBF such as tu_cbf_luma is sent, but for non-ISP blocks. With respect to the intra-coded blocks of P, this flag may always be coded for each transformation, while it can be inferred that this flag is 1 for the transformation of the last segment 130 of block 120 if all previous CBFs for the previous transformation / segment are 0.

[0073] Several notes are made regarding the variations of the above description. For example, sequential intracoding of segments was described, which includes taking into account the predicted residual of the previous segment when intracoding the current segment. However, the above embodiment may be modified in that the intra-prediction is performed for all or subgroups of segments based on a reference sample outside the ISP block, i.e., collectively, while the segment-based processing of the ISP block is related only to coding the segment-based transformation. It should be noted that the variations described above may be mixed to result in embodiments in which encoders and decoders use different variations of the above for different block sizes, for example, in which there are blocks of different sizes for which segment-by-segment intra-prediction is used when the blocks are ISP coded, and blocks of different sizes for which segment-by-block or segment-by-group intra-prediction is used when the blocks are ISP coded. Furthermore, as has often been stated above, the signaling presented above is illustrative only and may be performed differently. For example, signaling using an MPM list is illustrative only and may be performed without such an MPM list. Furthermore, the order of signaling and the mutual conditioning between the syntax elements presented above may be changed.

[0074] In the following, the Low Frequency Inseparable Transform (LFNST) is used as the quadratic transform Ts. However, it is clear that other quadratic transforms may also be used.

[0075] Low-frequency inseparable transforms are quadratic transforms that are applied only to the upper-left corner of the linear transform coefficients, for example, to a subset 140 of the coefficients of the linear transform Tp / T1. In VTM-6.0, there are various sets of LFNSTs that are selected depending on the intra-mode of the current block. Each set of LFNSTs contains two different transforms. Thus, the decoder has three options to select according to the element being explicitly signaled (0 -> no LFNST, 1 -> use the first LFNST, 2 -> use the second LFNST). In some cases, an LFNST may not be applicable to a block under certain conditions. Example 1: The linear transformation coefficient is not zero in a specific area 160 of block 120. Example 2: The transformation coefficients obtained after applying a quadratic transformation violate certain conditions, such as the number of significant coefficients exceeding a certain threshold, or the final position syntax element of the result exceeding a certain threshold. In the examples and related cases described above, it is presumed that the signaling is not analyzed by the decoder and that no quadratic transformation is applied.

[0076] Currently, in VTM-6.0, (intra subdivision) ISPs cannot use LFNST. It is proposed to enable this algorithm for blocks that use ISPs at the Transform Unit (TU) level. This means that if a block using an ISP is divided into n subdivisions, each of the resulting subdivisions will use the LFNST algorithm in the same way as, for example, a normal block that does not use an ISP. Subsequent embodiments will describe different possibilities regarding the implicit and explicit signaling of the use of LFNSTs and any selection among the quadratic transform candidates, as well as regarding performing either of the decisions / signalings described above at the block level and the subdivision level, respectively.

[0077] The quadratic transformation Ts is applied at the sub-section level. Therefore, for example, there exists a syntax element, i.e., a transformation syntax element 112f, that is analyzed for each sub-section 130 to determine whether a quadratic transformation Ts is calculated and, if so, which one is calculated. Naturally, this syntax element can only be analyzed if the conditions for the quadratic transformation are met, for example, if the number of significant coefficients exceeds a certain threshold and / or if there are no non-zero coefficients outside a given area (for example, only in that case).

[0078] As outlined above, currently in VTM-6.0, the (intra subdivision) ISP cannot use LFNST. This specification proposes enabling this algorithm for blocks that use ISP. This means that each subdivision 130 of block 120 that uses ISP has the potential to apply a quadratic transformation Ts. This can be explicitly indicated to the decoder by information 112f via syntax elements, or implicitly indicated by using parameters already present in the decoder or by a combination of implicit and explicit elements. Various examples are provided below, in addition to those described above.

[0079] In other words, the above different possibilities regarding the combination of LFNST and ISP were shown. Below, signaling or modification variations of transformation T for transform coding the predicted residuals of section 130 are outlined thereafter.

[0080] Explicitly at the lower level The quadratic transformation Ts may be explicitly signaled to the decoder for each sub-section 130. This version simply applies the normal use of LFNST to each sub-section 130 generated by the ISP.

[0081] In other words, let's resume the explanation related to the transformation coding of the predicted residuals 132 for each segment 130. As explained, the predicted residuals 132 may be coded into the data stream 112 in the transformation domain. This transformation domain is associated with the spatial domain by the transformation T. According to the variation now presented, information 112f may indicate for each segment 130 whether this transformation T is a first transformation T1 or a subsequent linear transformation Tp / T1 with a secondary transformation Ts. In other words, for each segment, a transformation syntax element 112f is read that indicates whether a first transformation T1 or a second transformation T2 is used for each segment. The secondary transformation Ts may be determined by default for block 120 or signaled once for ISP block 120. Depending on the intra-prediction mode from the set 124 for block 120, two Ts form a set of quadratic transformation candidates for block 120, and one quadratic transformation candidate may be selected for block 120. The linear transformation T1 is determined by default, for example, for ISP block 120.In that case, a decision is sent to apply a quadratic transform Ts for the entire block 120, but the decision is based on the following conditions: 1) the non-zero transform coefficients are outside a given area 140 (as shown in Figure 5), 2) the number of non-zero coefficients exceeds some limit, and 3) the last non-zero coefficient along a scan path that progresses from the position of the DC coefficient to the opposite or highest frequency coefficient, indicated by one or more syntax elements referred to herein as LP syntax elements with respect to the transform of the residuals of each section, which serve to some extent as a measure of the expected count of non-zero coefficients in the transform. This is valid only for segments where the position of the zero coefficient exceeds some threshold, or 4) LFNST is unavailable if one of two or more of conditions 1 to 3 is met, or 5) LFNST is unavailable if each of the subsets of conditions 1 to 3 is met, and one of those conditions applies to the residual transformation coded by information 112e, in which case LFNST is unavailable for a particular segment (and otherwise available), or where residual information 112e does not immediately indicate that the quadratic transformation may not apply for the reasons shown above.

[0082] In this regard, please recall what has already been explained above. In particular, for each section 130 of block 120, a CBF is transmitted within the data stream for each section. The CBF may indicate whether a section, for example, a transformation unit, contains residual information, for example, information generated by the prediction. If that is, if the CBF indicates that the residual is 0, the quadratic transformation flag 112f may not be present for each section 130. Furthermore, as also explained above, the availability of the quadratic transformation option may depend on certain circumstances, for example, the LP syntax element described above acting as an indicator of a non-zero zone. For each section 130, the LP syntax element signals an area 160 of the non-zero transformation region shown in Figure 5, where all non-zero coefficients of the prediction residual signal 132 specific to the section are exclusively located, and therefore only zero coefficients are located. Depending on the extent and / or location of the area 160 of this non-zero conversion region, a given conversion T is required to be equal only to a primary conversion T1, or a secondary conversion T2 is available, in which case a secondary conversion flag 112f is transmitted by the encoder or read by the decoder. For example, a secondary conversion Ts is available only if the area 160 of the non-zero conversion region does not exceed the portion of the conversion coefficients of conversion T1 to which the secondary conversion Ts applies, i.e., portion 140 of Figure 4 or Figure 5. Thus, whether the secondary conversion flag 112f exists with respect to a particular section 130 is a section-specific issue, and the secondary conversion flag may exist with respect to one conversion 130 of block 120, while it may not exist or be absent with respect to another section 130 of that block 120.

[0083] Depending on the extent and / or location of the area 160 of the non-zero transformation region, the decoder may be configured to determine whether to read from the data stream 112 a quadratic transformation flag 112f transmitted in the data stream 112 for each section 130 indicating whether a given transformation T is a first transformation T1 or a second transformation T2, or to infer that the given transformation T is a first transformation T1. If the area 160 of the non-zero transformation region is located entirely within the area defined by the portion 140 of the transformation coefficients of the transformation T1 to which the quadratic transformations Ts are applied, the quadratic transformation flag 112f is read. Otherwise, the given transformation T is inferred to be a first transformation T1. Whether the quadratic transformation flag 112f indicates a first transformation T1 or a second transformation T2 as the given transformation may depend on one or more of the conditions 1 to 5 described above.

[0084] Alternatively or additionally, the decision of whether to read the quadratic transformation flag 112f or to infer that a given transformation T is a first transformation T1 depends on whether the area 160 of the non-zero transformation region exclusively contains the coefficients 140 of the linear transformation Tp / T1 to which the quadratic transformation Ts is applied by the concatenation of the linear transformation Tp / T1 and the quadratic transformation Ts, and / or on the number of non-zero coefficients in the area 160 of the non-zero transformation region.

[0085] According to one embodiment, the decoder / encoder is configured to infer that a predetermined transformation T is a first transformation T1 if the dimension of section 130 is less than a predetermined threshold.

[0086] Furthermore, a specific flag, i.e., a quadratic transformation indicator syntax element, may be present in the data stream for each section 130 of block 120 that is signaled to have a quadratic transformation option available and to be applied, i.e., the flag selects a quadratic transformation Ts from a corresponding set of quadratic transformations, i.e., a set containing two possible quadratic transformations. Instead of sending two flags for such a section 130, a three-array syntax element may be used to indicate the transformation to be used for each section, i.e., information 112f about that section 130.

[0087] Before proceeding to the following options for indicating the transformation T used for section 130 of block 120, the following should be further noted. In particular, note that the coding of the transformation coefficient levels for a particular section 130 is limited to only the non-zero portions 160. The LP syntax element may indicate a portion by indicating the position of the first non-zero coefficient when scanning the transformation coefficients of transformation T1 in one dimension from the position of the highest spectral frequency to the position of the DC frequency, such as the left / upper corner of transformation T1. The position may be indicated by x and y coordinates in the case of a two-dimensional T1 transformation, or as an index that measures the non-zero position mentioned above as the distance from the position of the DC transformation in units of coefficients, along the one-dimensional scan order mentioned above. It should be further noted that the transformation coefficient levels transmitted with respect to section 130 in the data stream 112 may be the transformation coefficients of the first transformation T1 or the coefficients of the second transformation T2, depending on the transformation signal to become a combined transformation T2 or a single transformation T1. It should be further noted that if the transformation T is signaled as a two-step transformation, i.e., a second transformation T2 following T1, the decoder may perform an inverse transformation to obtain the spatial domain residual signal 134 for each section 130 by sequentially performing the inverse of the second transformation followed by the inverse of the subsequent transformation T1, or by performing the inverse of T2 combined into a single inverse transformation. In other words, the predicted residual signal 132 specific to the section is an inverse transformation T that forms the inverse of a given transformation T in order to obtain the spatial domain residual signal 134. -1It is acceptable to put it on the table.

[0088] Explicitly at the block level A quadratic transformation Ts may be explicitly signaled to the decoder only once for the entire block 120. This means that all sub-sections 130 within block 120 apply the same quadratic transformation Ts. If the quadratic transformation flag 112f indicates that a given transformation T is a second transformation T2, the decoder / encoder may be configured to use the second transformation T2 for all sections 130.

[0089] This may suggest that certain restrictions on the application of quadratic transformations may be applied differently. For example, Example 2 above is not strictly necessary in this case, even if it may still be applicable. Alternatively, they may be applied to the group as a whole, or require different thresholds, etc.

[0090] In other words, signal 112f may be included in the data stream 112 once for the entire block 120, and signal 112f signals whether Ts is applicable, i.e., whether T is T1 or Ts is a subsequent T1, i.e., T2, and if the latter is true, which Ts from the set of candidate quadratic transforms is applicable. The LFNST, i.e., the availability restriction regarding the application of Ts, may be tested for each section 130, and the signaling for the entire block 120 applies only with respect to the section 130 for which the LFNST is available. If the LFNST is unavailable for all sections 130, the signaling 112f may be aborted with respect to block 120, i.e., the encoder does not encode such an LFNST activation flag with respect to block 120, and the decoder infers that the flag is set to LFNST deactivation. Alternatively, it is suggested that signaling 112f may exist for block 120 only if it is available for all segments 130, otherwise LFNST is not used. In the latter case, therefore, Ts selective signaling is coded for block 120 only if the availability of LFNST for all segments 130 is met and the signaling for block-level LFNST activation indicates LFNST activation for block 120. The same or other criteria or thresholds considered above in 1 to 5 may be used in variations of signaling block-level activation of LFNST only if LFNST is available for all segments 130 of block 120.

[0091] According to one embodiment, the decoder may be configured to decide whether to read a quadratic transformation flag 112f transmitted in the data stream 112 for each predetermined intra-predicted block 120, indicating whether a given transformation T is a first transformation T1 or a second transformation T2, or to infer that the given transformation T is a first transformation T1. This decision may depend on the relative position of the area 160 of the non-zero transformation region shown in Figure 5 with respect to the coefficient 140 of the linear transformation Tp / T1 to which the quadratic transformation is applied by the concatenation of the linear transformation Tp / T1 and the quadratic transformation Ts. If the area 160 of the non-zero transformation region is located entirely within the area defined by the transformation coefficient 140 of the linear transformation Tp / T1 to which the quadratic transformation Ts is applied, the quadratic transformation flag 112f is read. Otherwise, the given transformation T is inferred to be a first transformation T1. Alternatively or additionally, the decision may depend on whether the area 160 of the non-zero transformation region exclusively contains the coefficients 140 of the linear transformation Tp / T1 to which the quadratic transformation Ts is applied by the concatenation of the linear transformation Tp / T1 and the quadratic transformation Ts, and / or on the number of non-zero coefficients within the area 160 of the non-zero transformation region. Whether the quadratic transformation flag 112f indicates a first transformation T1 or a second transformation T2 as a given transformation may depend on one or more of the conditions 1 to 5 described above. In addition to the quadratic transformation flag 112f, quadratic transformation indicator syntax elements may be signaled block-wide for each given intra-predicted block 120 to indicate an exact quadratic transformation for all sections 130.

[0092] The decoder may be configured to perform the decision once for all segments 130 of a given intra-predicted block 120, and the above-described conditions on which the decision may depend may be checked for all segments 130 of the given intra-predicted block 120. According to one embodiment, the decision is performed once for all segments 130 of a given intra-predicted block 120 by checking one or more of the following criteria for all segments 130 and determining that the secondary conversion flag 112f should be read if one or more of the following criteria are met for all segments 130. - No non-zero conversion coefficients are outside the designated area 140, and / or - The number of non-zero coefficients exceeds a predetermined limit, and / or - The position of the last non-zero coefficient along the scan path, which progresses from the position of the DC coefficient to the position of the highest frequency coefficient, as indicated by the final position syntax element in the data stream, exceeds a further predetermined threshold.

[0093] As will be explained in more detail in the additional notes below, only some of the above criteria must be met for all sections 130, and some may need to be met for at least one section 130 of a given intra-predicted block 120, so that the quadratic transformation flag 112f is read.

[0094] According to one embodiment, the decoder / encoder is configured to infer that a predetermined transformation T is a first transformation T1 if the dimension of section 130 is less than a predetermined threshold.

[0095] Explicitly combine block level and subdivision level. Explicit syntax elements may exist at both the block level and the sub-section level. For example, at the block level, all sub-sections 130 may be signaled whether or not to use the quadratic transformation Ts, for example, by a quadratic transformation flag 112f. If the quadratic transformation Ts is used, each sub-section 130 explicitly signals (independently of each other) which quadratic transformation is applied, for example by a quadratic transformation instruction syntax element. Naturally, the overall activation of the LFNST may only affect the sections 130 of block 120 where the residual information 112e satisfies the conditions for LFNST availability. The corresponding activation may be coded into the data stream only for block 120 if the conditions for LFNST availability are met for at least one section. And for those sections only, a syntax element that explicitly selects Ts is coded. Alternatively, this suggests that signaling 112f may be present for block 120 only if it is available for all segments 130, otherwise LFNST is not used. In other words, signaling for block-level LFNST activation is signaled only if LFNST availability applies to all segments, and therefore, for each segment, Ts selection signaling is included in the data stream for block 120.

[0096] In other words, instead of signaling whether Ts is applied to each segment 130 of block 120 where LFNST is available, and if so, which of the set of candidate Ts determined for the ISP block should be used as Ts, information 112f may instead signal a decision only once across the block whether LFNST is applied to each segment 130 of block 120 where LFNST is available, by coding a separate Ts selection syntax element for each such segment, if the linear transformation T1 may be determined for all segments of block 120, and if LFNST is signaled to be applied to segment 130 of block 120, then information 112f may signal a decision only once across the block, while modifying the quadratic transformation Ts for each segment 130 of block 120 where LFNST is available in terms of the other factors mentioned above (location of non-zero parts, and / or the number of non-zero coefficients and / or the location of the last non-zero coefficient).

[0097] For all explicit signaling (e.g., explicit at the sub-partition level and / or explicit at the block level and / or an explicit combination of block level and sub-partition level), the decoder / encoder may be configured to select one or more subsets of candidate quadratic transforms Ts from the set of candidate quadratic transforms Ts, depending on the relevant intra-prediction mode, i.e., the intra-prediction mode selected for block 120 of set 122 or subset 124. If one or more subsets of candidate quadratic transforms Ts contain two or more candidate quadratic transforms Ts, the decoder / encoder selects a quadratic transform Ts from the subset of candidate quadratic transforms Ts, depending on the quadratic transform instruction syntax element transmitted in the data stream 112 for each given intra-predicted block 120.

[0098] According to the embodiment, the set of candidate quadratic transforms has no elements in common with the quadratic transform Ts used by the decoder / encoder for other intra-predicted blocks that are intra-predicted without being separated.

[0099] Implicitly The decoder obtains information 136 about the transformation to be used, meaning it may use existing elements at the moment the coefficients are decoded to determine whether a quadratic transformation is applied for each subdivision 130. Examples of these parameters include the subdivision index, subdivision size, block size, intra-mode, etc.

[0100] The decoder / encoder may be configured to determine whether a given transformation T for each segment 130 is a first transformation T1 or a second transformation T2, depending on the rank of each segment 130 in the order in which the segments 130 are subjected to intra-prediction 116, the size of each segment 130, the size of a given intra-predicted block 120, and / or the associated intra-prediction mode 122. The result of this determination may be signaled by the quadratic transformation flag 112f of the explicit signaling described above. The exact quadratic transformation Ts may be selected depending on the associated intra-prediction mode 122, the size of the segment, the size of the block 120, the processing rank of the segment 130, and / or segment 128. This selection may be performed once for all segments 130 of a given intra-predicted block 120, or for each segment 130 of a given intra-predicted block 120.

[0101] A mix of implicit and explicit Any of the examples above, or related versions thereof, may be combined with implicit rules. For example, whether or not a quadratic transformation is used may be explicitly determined, but the decision of which quadratic transformation must be used may be implicitly derived by using the intra-mode, subdivision size, block size, subdivision index, ISP partition type (horizontal or vertical), etc.

[0102] Additional notes The following details and examples are added to the above explanation. For example, another example regarding the conditions for the availability of LFNST is added. More precisely, when explicitly signaling the use / activation of a quadratic transformation at the block level, the possibility of an LFNST, or more precisely, the transmission of the quadratic transformation flag 112f for block 120 to activate the quadratic transformation Ts across the block, may be defined by two or more conditions a), b), c), etc. This has already been explained. For example, two or more conditions, such as two or more of the conditions 1 through 5 listed above, may be required to be satisfied for all of the block's segments 130. Alternatively, two or more conditions may be required to be true or satisfied for at least one of those segments 130. However, one or more conditions (e.g., a) and b)) should be true for all segments, while one or more other conditions (e.g., c)) may be required to be true for at least one segment.

[0103] With regard to cases where a specific condition must be true or met in at least one section 130, an LFNST signaled for the entire block 120 may apply to all sections 130 within block 120, regardless of the individual availability conditions of each section 130, if it is signaled to be activated. Another possibility is that the LFNST may apply only to those sections 130 that satisfy this condition. If no section 130 satisfies this availability condition, the LFNST is not signaled (or parsed), and it is assumed that the LFNST is not used.

[0104] The decoder / encoder may be configured to perform the above decision on whether to read the secondary transformation flag 112f once for all sections 130 of a given intra-predicted block 120 or to infer that a given transformation T is the first transformation T1, for example, across the entire block, by checking one or more of the following criteria a to c for all sections 130 and determining that the secondary transformation flag 112f should be read if one or more of the following first criteria a to c are met for all sections 130, while one or more of the following second criteria a to c are met for at least one section. a) No non-zero conversion coefficients are outside the designated area 140, and / or b) The position of the last non-zero coefficient along the scan path, which progresses from the position of the DC coefficient to the position of the highest frequency coefficient, as indicated by the final position syntax element in the data stream, exceeds a further predetermined threshold, and / or c) The number of non-zero coefficients exceeds a predetermined limit.

[0105] According to the embodiment, the decoder / encoder is configured to determine that the secondary conversion flag 112f should be read if one or more first criteria from criteria a to c are met with respect to all sections 130, and / or if one or more second criteria from criteria a to c are met with respect to at least one section 130. Thus, if all sections 130 satisfy one or more of conditions a to c, the secondary conversion flag 112f may be read without requiring that one or more additional second criteria be met by at least one of the sections 130. Alternatively, if at least one section 130 satisfies one or more of the second criteria, the secondary conversion flag 112f may be read with respect to the entire block 120 without requiring that all sections 130 satisfy at least one of the first criteria.

[0106] If the secondary conversion flag 112f indicates that a given conversion T is the second conversion T2, the second conversion T2 is used for categories 130 where one or more of the second criteria are met, and the first conversion T1 is used for categories 130 where at least one of the one or more of the second criteria is not met.

[0107] Example 1: Assume that there is a block 120 having N divisions 130, and the availability of LFNST is condition a) In all sections 130, all coefficients outside the designated area 140 must be zero. b) At least one segment 130 must have the last significant position (in scan order) that exceeds a specific threshold. This is defined by [the following]. In this example, condition a) must be true in all sections 130 for LFNST to be available, while condition b) is only required in at least one.

[0108] According to the embodiment, one or more first criteria is that there are no non-zero conversion coefficients outside a predetermined area 140, and one or more second criteria is that the position of the last non-zero coefficient along the scan path, which progresses from the position of the DC coefficient to the position of the highest frequency coefficient, as indicated by the final position syntax element in the data stream 112, exceeds a further predetermined threshold.

[0109] Example 2: Assume that there is a block 120 having N divisions 130, and the availability of LFNST is condition a) In all sections 130, all coefficients outside the designated area 140 must be zero. b) In all segments, the last significant position (in scan order) must exceed a certain threshold. This is defined by [the following]. In this example, both a) and b) must be true in all sections 130.

[0110] Example 3: Assume that there is a block 120 having N divisions 130, and the availability of LFNST is condition a) In all sections 130, all coefficients outside the designated area 140 must be zero. It is defined by [this]. In this example, only condition a) exists, and that condition must be true for all sections 130 in order that LFNST is available.

[0111] Regarding the use of a new kernel or an existing kernel Subdivisions 130 to which a quadratic transformation Ts is applied may share the same quadratic transformation as non-ISP blocks, or those subdivisions 130 may have a dedicated quadratic transformation table used only for ISP subdivisions 130. This may apply in all cases, or perhaps only to subsets thereof. For example, with respect to 1xN, 2xN, Nx2, and Nx1 subdivisions (or even more so, any subset depending on the dimension of the subdivisions), or perhaps depending on the intra-mode, or the index of the subdivision, or the ISP partition type (horizontal or vertical), or other parameters available on the decoder side. In other words, when a particular block is coded / decoded as an ISP (given) block, compared to when it is coded as a non-ISP block that otherwise associates the same intra-coding mode, for that particular block, Ts candidates that do not have elements in common with each other may be used.

[0112] Regarding the use of LFNST, there are differences between non-ISP blocking and ISP blocking.

[0113] From an encoder's perspective, LFNST is the application of a "quadratic" transformation to the coefficients of a "linear" transformation. This follows the LFNST index, i.e., transformation syntax element 112f, which can take three different values ​​(0 -> LFNST is not applied, 1 -> LFNST1 is applied, 2 -> LFNST2 is applied). In other words, transformation syntax element 112f may indicate whether a second transformation T2 is used for the block. If transformation syntax element 112f is in a first state (e.g., 0), it indicates the use of the first transformation T1; if transformation syntax element 112f is in a second state (e.g., 1) or a third state (e.g., 2), it indicates the use of the second transformation T2. ​​LFNST1 and LFNST2 are intra-mode dependent; that is, the basis function used for the transformation changes in relation to the intra-mode.

[0114] Furthermore, a value of 0 for the LFNST index may be implicitly enforced if certain availability conditions are not met. In other words, the decoder / encoder may infer that it will use the first transformation T1 for non-ISP blocks if the availability conditions below are not met. Condition 1: No non-zero coefficients exist outside the specified range (the range is determined by the block size). Condition 2: There must be at least one non-zero coefficient in DC that is not (0,0).

[0115] The use of LFNST in ISP blocks is the same as in non-ISP blocks, with the following differences: 1) LFNST is signaled globally only once across the entire block. In other words, the transformation syntax element 112f is derived / signaled across the entire block. 2) The availability of the LFNST index, i.e., the conversion syntax element 112f, may depend on the following conditions. The conditions that must occur for the LFNST index to be parsable (otherwise, the LFNST index is assumed to be 0) are as follows: a. The size of each sub-division must be at least 4x4. b. Condition 1 (as described above) must be satisfied for all subdivisions. Therefore, if at least one violates Condition 1, LFNST0 (no LFNST) is used for all subdivisions. c. Condition 2 (mentioned above) is ignored in the case of an ISP. In other words, with respect to the availability of the transformation syntax element 112f, it is not necessary for each segment to contain a non-zero coefficient other than the DC coefficient (0,0). 3) When the LFNST index is analyzed, the following occurs: a. The index is 0. i. LFNST is not used for all subdivisions. b. The index is 1 i. For each sub-part, if the sub-part's CBF (encoded block flag) is non-zero, then LFNST1, for example, the first variant of the second transformation T2, is applied. c. The index is 2 i. For each subdivision, if the subdivision's CBF is non-zero, then LFNST2, for example, the second variant of the second transformation T2, is applied. If the LFNST index is 1 or 2, the primary transformation used for each sub-division is DCT2.

[0116] According to the embodiment, the transformation syntax element 112f, i.e., lfnst_idx, is parsed according to the syntax of the coding unit shown in Figure 15.

[0117] According to the embodiment, the values ​​considered on lfnst_idx 112f may be binary-evolved, for example, using a truncated unary codeword of one or two bins, where the first bin may indicate whether a given transformation is a first transformation T1 or a second transformation T2, and the second bin may indicate which second transformation T2 should be used for block 120 or section 130. The first bin may represent a quadratic transformation flag, and the second bin may represent a quadratic transformation instruction flag, i.e., a quadratic transformation instruction syntax element. The binary-evolved lfnst_idx 112f, for example, the first bin and / or the second bin, may be entropy-encoded into a data stream using context-adaptive binary arithmetic coding (CABAC). This is just an example, and it is clear that lfnst-idx 112f can be signaled within the data stream in different ways.

[0118] The function transform_tree 113 shown in Figure 15 is iterative and loops through all subdivisions 130. Therefore, lfnst_idx 112f is signaled only once at the end of block 120. It may be checked whether the width and height of each subdivision 130 of the transformed block 120 are both at least 4 (213). lfnst_idx 112f may be signaled in the data stream or derived from the data stream by the decoder only if both the width and height of each subdivision 130 of the transformed block 120 are at least 4. This condition can only be violated in the LUMA component if a given block is an ISP block, i.e., an intra-predicted block 120 that is divided into subdivisions 130 using subdivision 128. For ISPs, i.e., a given block 120 that is divided into subdivisions 128, condition 2 is ignored (see LfnstDcOnly 313). In other words, for a given block 120 that undergoes section 128, information 136 identifying a given transformation T can be derived from / signaled to the data stream without controlling whether each section 130 has at least one non-zero coefficient other than the DC coefficient (0,0). However, for each section, it is checked whether the CBF (encoded block flag) of each section is non-zero. Information 136 identifying a given transformation T may be derived from / signaled to the data stream only for sections that contain at least one non-zero transformation coefficient. Note that in VVC, blocks using ISP always have at least one section with a non-zero CBF.

[0119] The transformation process for scaled transformation coefficients is described below. The selection of a linear transformation for the ISP may be influenced by the lfnst_idx syntax element 112f. The linear transformation is specified by trTypeHor and trTypeVer for the horizontal and vertical directions of block 120 or each section 130. The linear transformation is a separable transformation.

[0120] The variables trTypeHor, which specifies the horizontal transformation kernel, and trTypeVer, which specifies the vertical transformation kernel, are derived as follows: - If one or more of the following conditions are true, trTypeHor and trTypeVer will be set to equal to 0. - cIdx is greater than 0 - IntraSubPartitionsSplitType is not equal to ISP_NO_SPLIT and lfnst_idx is not equal to 0 - Instead, if implicitMtsEnabled is equal to 1, the following applies: - If cu_sbt_flag is equal to 1, trTypeHor and trTypeVer are specified in Table 40 according to cu_sbt_horizontal_flag and cu_sbt_pos_flag. - If not (cu_sbt_flag is equal to 0), trTypeHor and trTypeVer are derived as follows: trTypeHor = ( nTbW >= 4 && nTbW <= 16 ) ? 1 : 0 trTypeVer = ( nTbH >= 4 && nTbH <= 16 ) ? 1 : 0 - Otherwise, trTypeHor and trTypeVer are specified in Table 39 of the VVC standard according to mts_idx.

[0121] For ISPs, trTypeHor and trTypeVer are set to 0 if lfnst_idx > 0 (where 0 represents DCT-II). Thus, a given block 120 that is intra-predicted and partitioned uses DCT-II as the primary transformer, both as the horizontal transformer and the vertical transformer. The primary transformer is the same as the first transformer.

[0122] The flag that forces (DCT-II, DCT-II) as the linear transform is called sps_mts_enabled_flag (MTS stands for "Multiple Transform Selection"). If sps_mts_enabled_flag is 0, the linear transform is (DCT-II, DCT-II) in all cases, which is completely independent of the fact that LFNST is used or not. In other words, the linear transform Tp is equal to the first transform T1. Thus, the decoder / encoder is configured to derive / encode information 136 from / into the data stream that identifies a given transform T from a set of transforms 138, which includes the first transform T1 and a second transform T2 that is equal to the concatenation of the first transform T1 and the quadratic transform Ts applied to a subset 140 of the coefficients of the first transform T1. Thus, we have DCT-II as the linear transform in this case, with respect to the cases lfnst_idx = 0 and lfnst_idx > 0.

[0123] A sps_mts_enabled_flag equal to 1 indicates that sps_explicit_mts_intra_enabled_flag and sps_explicit_mts_inter_enabled_flag exist in the SPS. A sps_mts_enabled_flag equal to 0 indicates that sps_explicit_mts_intra_enabled_flag and sps_explicit_mts_inter_enabled_flag do not exist in the SPS.

[0124] In the conversion process for scaled conversion factors, setting the HLS flag to 0 prevents setting the values ​​of trTypeHor and trTypeVer.

[0125] The variable implicitMtsEnabled is derived as follows: - implicitMtsEnabled is set to equal to 1 if sps_mts_enabled_flag is equal to 1 and one or more of the following conditions are true. - IntraSubPartitionsSplitType is not equal to ISP_NO_SPLIT - cu_sbt_flag is equal to 1 and Max(nTbW, nTbH) is less than or equal to 32. - sps_explicit_mts_intra_enabled_flag is equal to 0, CuPredMode

[0000] [xTbY][yTbY] is equal to MODE_INTRA, lfnst_idx[x0][y0] is equal to 0, and intra_mip_flag[x0][y0] is equal to 0 - Otherwise, implicitMtsEnabled is set to equal to 0. The variable implicitMtsEnabled remains at a value of 0, which prevents the linear transformation from becoming any transformation other than DCT-II.

[0126] The variables trTypeHor, which specifies the horizontal transformation kernel, and trTypeVer, which specifies the vertical transformation kernel, are derived as follows: - If one or more of the following conditions are true, trTypeHor and trTypeVer will be set to equal to 0. - cIdx is greater than 0 - IntraSubPartitionsSplitType is not equal to ISP_NO_SPLIT, and lfnst_idx is not equal to 0 (this forces the primary to be CDT-II if lfnst_idx is not 0. This is unrelated to implicitMtsEnabled. The primary transformation is the first transformation). - Instead, if implicitMtsEnabled is equal to 1, the following applies: - If cu_sbt_flag is equal to 1, trTypeHor and trTypeVer are specified in Table 40 according to cu_sbt_horizontal_flag and cu_sbt_pos_flag. - If not (cu_sbt_flag is equal to 0), trTypeHor and trTypeVer are derived as follows: trTypeHor = ( nTbW >= 4 && nTbW <= 16 ) ? 1 : 0 trTypeVer = ( nTbH >= 4 && nTbH <= 16 ) ? 1 : 0 - Otherwise, trTypeHor and trTypeVer are specified in Table 39 of the VVC standard according to mts_idx. For a given block 120, i.e., trTypeHor and trTypeVer are set to their default values ​​(mts_idx is always 0 with respect to ISP). Therefore, trTypeHor and trTypeVer are set to 0, i.e., DCT-II.

[0127] Therefore, it is clear that the first and second linear transformations can be the same transformation. The decoder / encoder is configured to use the first transformation as a linear transformation.

[0128] Regardless of whether block 120 undergoes segmentation 128, that is, whether it is an ISP block or not, a second transformation may be applied according to the following characteristics.

[0129] In particular, using lfnst_idx 112f, the variable ApplyLfnstFlag is derived as follows. - If treeType is equal to SINGLE_TREE, the following applies: ApplyLfnstFlag = ( lfnst_idx > 0 && cIdx == 0 ) ? 1 : 0 - Otherwise, the following applies: ApplyLfnstFlag = ( lfnst_idx > 0 ) ? 1 : 0

[0130] In a transformation process for scaled transformation coefficients, ApplyLfnstFlag prepares the variables for the transformation process, and ApplyLfnstFlag invokes that transformation process.

[0131] When ApplyLfnstFlag is equal to 1, transform_skip_flag[ xTbY ][ yTbY ][ cIdx ] is equal to 0, and both nTbW and nTbH are 4 or greater, the following is true. - The variables predModeIntra, nLfnstOutSize, log2LfnstSize, nLfnstSize, and nonZeroSize are derived as follows: predModeIntra = ( cIdx == 0 ) ? IntraPredModeY[ xTbY ][ yTbY ] : IntraPredModeC[ xTbY ][ yTbY ] (1178) nLfnstOutSize = ( nTbW >= 8 && nTbH >= 8 ) ? 48 : 16 log2LfnstSize = ( nTbW >= 8 && nTbH >= 8 ) ? 3 : 2 nLfnstSize = 1 << log2LfnstSize nonZeroSize = ( ( nTbW == 4 && nTbH == 4 ) || ( nTbW == 8 && nTbH == 8 ) ) ? 8 : 16 - When intra_mip_flag[ xTbY ][ yTbY ] is equal to 1 and cIdx is equal to 0, predModeIntra is set to be equal to INTRA_PLANAR. - When predModeIntra is equal to INTRA_LT_CCLM, INTRA_L_CCLM, or INTRA_T_CCLM, predModeIntra is derived as follows: - If intra_mip_flag[ xTbY + nTbW * SubWidthC / 2 ][ yTbY + nTbH * SubHeightC / 2 ] is equal to 1, then predModeIntra is set to be equal to INTRA_PLANAR. - Instead, if CuPredMode

[0000] [ xTbY + nTbW * SubWidthC / 2 ][ yTbY + nTbH * SubHeightC / 2 ] is equal to MODE_IBC or MODE_PLT, then predModeIntra is set to be equal to INTRA_DC. - Otherwise, predModeIntra is set to be equal to IntraPredModeY[ xTbY + nTbW * SubWidthC / 2 ][ yTbY + nTbH * SubHeightC / 2 ]. - The wide-angle intra-prediction mode mapping process defined in Section 8.4.5.2.6 is called with predModeIntra, nTbW, nTbH, and cIdx as inputs and a modified predModeIntra as output. The value of the list u[x] where - x = 0..nonZeroSize - 1 is derived as follows: xC = DiagScanOrder

[0002]

[0002] [x]

[0000] yC = DiagScanOrder

[0002]

[0002] [x]

[0001] u[ x ] = d[ xC ][ yC ] - The one-dimensional low-frequency inseparable transformation process defined in Section 8.7.4.2 is invoked with input length nonZeroSize of scaled transformation coefficients, output length nTrS set to be equal to nLfnstOutSize, a list u[x] of scaled non-zero transformation coefficients where x = 0..nonZeroSize - 1, and an intra-prediction mode predModeIntra for selecting a set of LFNSTs, and outputting a list v[x] where x = 0..nLfnstOutSize - 1. (This invokes the process that actually performs the LFNST transformation process.) - An array d[x][y] where x=0..nLfnstSize-1 and y=0..nLfnstSize-1 is derived as follows. - If predModeIntra is 34 or less, the following applies: d[ x ][ y ] = ( y < 4 ) ? v[ x + ( y << log2LfnstSize ) ] : ( ( x < 4 ) ? v[ 32 + x + ( ( y - 4 ) << 2 ) ] : d[ x ][ y ] ) - Otherwise, the following applies: d[ x ][ y ] = ( x < 4 ) ? v[ y + ( x << log2LfnstSize ) ] : ( ( y < 4 ) ? v[ 32 + y + ( ( x - 4 ) << 2 ) ] : d[ x ][ y ] )

[0132] According to the embodiment, the encoder / decoder described in relation to Figure 4 and / or Figure 5 may include the features and / or functions described in relation to Figures 6 to 8.

[0133] Four-part usage (embodiment) The current design of ISPs allows for the use of two different types of partitioning. • Horizontal partitioning: Dividing into n parts along the vertical dimension. • Vertical partitioning: Dividing into n parts along the horizontal dimension. In VTM-5.0, n can be 2 or 4 depending on the block size.

[0134] In the embodiment shown in Figure 6, a third partitioning type is introduced. Picture 110 is coded into data stream 112. The decoder / encoder according to Figure 6 is configured to derive / encode from / to data stream 112a of the allocation of picture 110 at the granularity of the block 120 to which picture 110 is subparted, to the set of prediction types 114, including intra-prediction 116 and inter-prediction 118, such that each block 120 is allocated to the relevant prediction type from the set of prediction types 114. Furthermore, the decoder / encoder is configured to derive / encode from / to data stream 112 a relevant intra-prediction mode 125 from the set of intra-prediction modes 122 for each intra-predicted block 120 to which intra-prediction 116 is allocated.

[0135] For each of the predetermined intra-predicted blocks 120 in which the associated intra-prediction mode 125 is included in a predetermined subset 124 of a predetermined intra-prediction mode, the decoder / encoder divides each predetermined intra-predicted block 120 into a first division 127a in which each predetermined intra-predicted block 120 is horizontally divided such that each division 130 of each predetermined intra-predicted block 120 has the same width as each predetermined intra-predicted block 120, and divides each predetermined intra-predicted block 120 into a first division 127a in which each predetermined intra-predicted block 120 is horizontally divided such that each division 130 of each predetermined intra-predicted block 120 has the same width as each predetermined intra-predicted block 120. The decoder / encoder is configured to derive / encode information 126 from / to a data stream 112 that identifies each predetermined intra-predicted block 120's division 128 to division 130 from a set of division modes 127, which includes a second division 127b in which each predetermined intra-predicted block 120 is vertically divided so that it is arranged in rows and columns of divisions, and a third division 127c in which each predetermined intra-predicted block 120 is horizontally and vertically divided so that the divisions 130 of each predetermined intra-predicted block 120 are arranged in rows and columns of divisions. Furthermore, for each predetermined intra-predicted block 120 whose associated intra-prediction mode 125 is included in a predetermined subset 124 of the predetermined intra-prediction modes, the decoder / encoder is configured to intra-predict each division 130 of each predetermined intra-predicted block 120 in a manner corresponding to the predetermined intra-prediction mode 125 assigned to each predetermined intra-predicted block 120.

[0136] The decoder / encoder is configured to derive / encode information 112e regarding the predicted residuals 132 for each predetermined intra-predicted block 120 by deriving / encoding from / to the data stream 112 an accurate predicted residual signal 132 specific to the segment associated with the predicted residual signal of the spatial domain of each segment 130 of each predetermined intra-predicted block 120, for each segment 130 of each predetermined intra-predicted block 120, using a predetermined transformation T.

[0137] Furthermore, the decoder / encoder is configured to reconstruct each block 120 using information about the predicted residual 132 for each block 120 and the predicted signal obtained using the predicted type 125 assigned to each block 120.

[0138] According to the embodiment, each predetermined intra-predicted block 120 is divided horizontally in the third section 127c with the same frequency as vertically, such that the number of rows in the section is equal to the number of columns in the section.

[0139] According to the embodiment, the decoder is configured to derive information 126 from the data stream 112 that identifies the segment 128 of each predetermined intra-predicted block 120 to segment 130 in the set of segment modes 127 by reading segment indicators 112d transmitted in the data stream 112 for each predetermined intra-predicted block 120 and by using the segment indicators 112d, i.e., segment indexes, to identify the segment 128 of each predetermined intra-predicted block 120 to segment 130 in the set of segment modes 127. The encoder may include similar features to the decoder and is configured to encode the information 126 into the data stream 112 by transmitting segment indicators 112d in the data stream 112.

[0140] According to the embodiment, the decoder is configured to read the partition indicator 112d transmitted in the data stream 112 for each given intra-predicted block 120 by reading a first flag, which is included by the partition indicator 112d and indicates whether partition 128 of each given intra-predicted block 120 is a third partition 127c. The encoder may include similar features to the decoder and is configured to transmit the partition indicator 112d by transmitting the first flag. If partition 128 of each given intra-predicted block 120 is not a third partition 127c, the decoder / encoder is configured to read / transmit a second flag, which is included by the partition indicator 112d and indicates whether partition 128 of each given intra-predicted block 120 is a first partition 127a or a second partition 127b.

[0141] According to the embodiment, the encoder / decoder described in relation to Figure 6 may include features and / or functions described in relation to one of the embodiments of Figures 4, 5, 7, and 8.

[0142] Example of a preferred version: Each division is of equal size, and the preferred value of n can be 2 or 4. Therefore, there are either 4 divisions or 16 divisions, each having the same dimension.

[0143] Proposed algorithm: It is proposed to include another type of partitioning, namely a third partition 127c, i.e., a 4-part partition, which divides the block into n parts in both the horizontal and vertical dimensions. Thus, the total number of subparts is n 2This results in a total of four subdivisions for n=2. This partitioning type may require a new syntax element to indicate its use, or it may be implicitly determined by existing block parameters in the decoder, such as the block dimension or intra-mode. The partitioning works in the same way as existing partitioning types.

[0144] Use of local intra mode (implementation) In the design of the VTM-5.0 ISP, the intra-mode is shared across all subdivisions. Therefore, for example, it is only necessary to signal the intra-mode once for the entire block. We will define this mode as the global block mode.

[0145] In the embodiment shown in Figure 7, a local intra-mode is introduced. Each section 130 (for example, 1300 to 1303) may be assigned to its own intra-mode. Some sections 130 of a predetermined intra-predicted block 120 may be assigned to the same intra-mode as the other sections 130 of the predetermined intra-predicted block 120. Alternatively, each section 130 of a predetermined intra-predicted block 120 may be assigned to a different intra-mode than the other sections 130 of the predetermined intra-predicted block 120.

[0146] Figure 7 shows details of the decoder for decoding the picture from the data stream 112 and the encoder for encoding the picture into the data stream 112. Also, although not shown in Figure 7, the decoder / encoder is configured to derive / encode from / to the data stream 112 the allocation of the picture at a block granularity in which the picture is subdivided, to the set of prediction types 114, including intra-predictions 116 and inter-predictions 118, such that each block 120 is allocated to the relevant prediction type from the set of prediction types 114. This can be performed by the decoder / encoder in the same manner as the decoder / encoder described in relation to Figures 4 to 6.

[0147] Furthermore, the decoder / encoder is configured to derive, for each intra-predicted block 120 to which an intra-prediction is assigned, the relevant intra-prediction mode 125 from the set of intra-prediction modes from the data stream 112. The set of intra-prediction modes may be equal to or similar to the set 122 described in relation to Figure 4 or Figure 6, and hereafter, a given subset of intra-prediction modes referred to may be equal to or similar to a given subset 124 of intra-prediction modes described in relation to Figure 4 or Figure 6.

[0148] For each of the predetermined intra-predicted blocks 120 whose associated intra-prediction mode 125 is included in a predetermined subset 124 of a given intra-prediction mode, the decoder / encoder is configured to derive / encode 126 from / to the data stream 112 with respect to the section 128 of each predetermined intra-predicted block 120 to section 130. The derivation or encoding of section 128 may be performed as described in relation to Figures 4 and / or 6. Furthermore, for each of the predetermined intra-predicted blocks 120 whose associated intra-prediction mode 125 is included in a predetermined subset 124 of the predetermined intra-prediction modes, the decoder / encoder is configured to derive / encode information 150 from / to the data stream 112 that identifies a predetermined rule 156 from a set of rules 154, and using that information 150, for each segment 130 of each predetermined intra-predicted block 120, a segment-specific intra-prediction mode 152 is determined from a predetermined subset 124 of the predetermined intra-prediction modes based on the associated intra-prediction mode 125 for each predetermined intra-predicted block 120. Each segment 130 of each predetermined intra-predicted block 120 is intra-predicted using the segment-specific intra-prediction mode 152 determined for that segment. An intra-prediction mode 1520 specific to the first category may be assigned to the first category 1300, an intra-prediction mode 1521 specific to the second category may be assigned to the second category 1301, an intra-prediction mode 1522 specific to the third category may be assigned to the third category 1302, and an intra-prediction mode 1523 specific to the fourth category may be assigned to the fourth category 1303. Which category-specific intra-prediction mode 152 is determined for each category 130 depends on a predetermined rule 156 and associated intra-prediction mode 125 for each predetermined intra-predicted block 120.

[0149] Furthermore, the decoder / encoder is configured to derive information regarding the predicted residuals for each predetermined intra-predicted block 120 from / to the data stream 112, by deriving from the data stream 112 a prediction residual signal 132 specific to the segment, which is associated with the prediction residual signal 134 of the spatial region of each segment 130 of each predetermined intra-predicted block 120 by a predetermined transformation T for each segment 130 of each predetermined intra-predicted block 120. The derivation of the prediction residuals can be performed as described in Figure 4 or Figure 6.

[0150] The decoder / encoder is configured to reconstruct each block 120 using information about the prediction residuals for each block 120 and the prediction signal obtained using the prediction type assigned to each block 120. Block 120 may be reconstructed for each section 130 by obtaining a section-specific prediction signal using an intra-prediction mode 152 specific to the section determined for each section 130. The sections 130 may be intra-predicted sequentially. Block 120 may be reconstructed sequentially by reconstructing each section 130 of block 120 using the section-specific prediction signal and section-specific prediction residual for each section 130.

[0151] According to the embodiment, the decoder / encoder is configured to sequentially perform intra-prediction of each predetermined intra-predicted block 120 section 130 in a manner corresponding to a predetermined intra-prediction mode 125 assigned to each predetermined intra-predicted block 120, by using correction of the intra-prediction signal for the previous section by a prediction residual signal 132 specific to the section of the previous section.

[0152] According to the embodiment, the decoder / encoder is configured to derive / encode information 150 that identifies a particular rule 156 from a set of rules 154 from a data stream 112, and using that information 150, for each section 130 of each particular intra-predicted block 120, a section-specific intra-prediction mode 152 is determined from a predetermined subset 124 of a particular intra-prediction mode based on the relevant intra-prediction mode 125 for each particular intra-predicted block, by reading the rule index 112g transmitted in the data stream 112 for each particular intra-predicted block 120, or by predicting the rule index based on the characteristics of neighboring blocks. Thus, the information 150 that identifies a particular rule 156 from a set of rules 154 can be explicitly signaled by the rule index 112g transmitted in the data stream 112, or can be implicitly obtained by predicting the rule index based on the characteristics of neighboring blocks in the vicinity of the particular block 120. The rule index may be used to identify a particular rule 156 from a set of rules 154.

[0153] According to the embodiment, the decoder / decoder is configured such that if the associated intra-prediction mode 125 for each predetermined intra-predicted block 120 is an angular mode 123a, then the intra-prediction mode 152 specific to the division 130 of each predetermined intra-predicted block 120 is also an angular mode 123a. Furthermore, as shown in Figure 8, the average of the intra-prediction directions 170 of the intra-prediction modes 152 specific to the division 130 of each predetermined intra-predicted block 120 is equal to the intra-prediction direction 172 of the associated intra-prediction mode 125 for each predetermined intra-predicted block 120. Figure 8 shows, on the left, the intra-prediction directions 170 of intra-prediction modes 152 specific to the divisions according to the first rule 1551 of the set of rules 154, and on the right, the intra-prediction directions 170 of intra-prediction modes 152 specific to the divisions according to the second rule 1552 of the set of rules 154, when the angular intra-prediction modes 123a are ordered according to the clockwise rotation of their associated intra-prediction directions.

[0154] As outlined above, the angle intra-prediction modes 123a have different intra-prediction directions 170 / 172. Each angle intra-prediction mode 123a may be associated with an index, and the association of the index to the angle intra-prediction mode 123a may be such that the direction rotates monotonically clockwise or counterclockwise when ordering the angle intra-prediction modes 123a according to the associated mode index.

[0155] According to the embodiment, the decoder / encoder is configured such that the set of rules 154 includes one or more pairs of a first variant rule, e.g., 1551, and a second variant rule, e.g., 1552. The first variant rule, e.g., the first rule 1551 determines the intra-prediction mode 152 for each predetermined intra-predicted block 120 such that when spatially traversing a section 130 along a predetermined direction 174, the magnitude of the angular deviation increases monotonically along the predetermined direction 174 with the opposite sign of angular deviation upstream of the center compared to downstream of the center, as the magnitude of the angular deviation increases monotonically along the predetermined direction 174 as the distance from the center of each predetermined intra-predicted block 120, the intra-prediction direction 170 of the intra-prediction mode 152 for each predetermined intra-predicted block 120 is shifted from the intra-prediction direction 172 of the associated intra-prediction mode 125 for each predetermined intra-predicted block 120. A second variation rule, for example, the second rule 1552, determines the intra-prediction mode 152 for each predetermined intra-predicted block 120 such that, with respect to each division 130 of each predetermined intra-predicted block 120, the intra-prediction direction 170 of the intra-prediction mode 152 specific to the division 130 is deviated from the intra-prediction direction 172 of the associated intra-prediction mode 125 for each predetermined intra-predicted block 120 by the magnitude of the deviation of the intra-prediction direction 170 of the associated intra-prediction mode 125 for each predetermined intra-predicted block 120 by the first variation rule, for example, the first rule 1551, with the magnitude of the deviation of the deviation of the intra-prediction direction 170 of the associated intra-prediction mode 125 for each predetermined intra-predicted block 120 by the magnitude of the deviation of the deviation of the deviation of the deviation of the associated intra-prediction mode 125 for each predetermined intra-predicted block 120 by the sign of the deviation of the deviation of the associated intra-prediction mode 125 for each predetermined intra-predicted block 120 by the first rule 1551. The first deformation rule 1551 and the second deformation rule 1552 define an intra-prediction mode 152 specific to each segment, based on the magnitude of deviations at the same angle, but with the sign of deviations at opposite angles.

[0156] In the above derivation or encoding of section 128, information 126 may identify section 128 from the set of section modes 127. The set of section modes 127 may include a first section 127a in which each predetermined intra-predicted block 120 is divided horizontally such that each section 130 of each predetermined intra-predicted block 120 is the same width as each predetermined intra-predicted block 120, as shown in Figure 4 or Figure 6, and a second section 127b in which each predetermined intra-predicted block 120 is divided vertically such that each section 130 of each predetermined intra-predicted block 120 is the same height as each predetermined intra-predicted block 120. Optionally, the set of section modes 127 may include a third section 127c in which each predetermined intra-predicted block 120 is divided horizontally and vertically such that each predetermined intra-predicted block 120 is divided into rows and columns of sections. The predetermined method 174 is vertical if the division 128 of each predetermined intra-predicted block 120 is the first division 127a, and horizontal if the division 128 of each predetermined intra-predicted block is the second division 127b. The divisions shown in Figures 7 and 8 are executed according to the first division 127a.

[0157] According to one embodiment, the decoder / encoder is configured to determine the division 128 in terms of the number of divisions 130 based on the dimensions of each predetermined intra-predicted block 120. The division 128 depends, for example, on the height and width of each predetermined intra-predicted block 120. The division 128 may result in a number of divisions 130 greater than two. Each predetermined intra-predicted block 120 may be divided into at least three divisions 130 by the division 128.

[0158] According to the embodiment, the encoder / decoder described in relation to Figure 7 and / or Figure 8 may include the features and / or functions described in relation to Figures 1 to 6.

[0159] Proposed algorithm: It is proposed that each subdivision 130 may have its own intra-mode, i.e., a subdivision-specific intra-prediction mode 152 that does not necessarily have to be equal to the global block mode, i.e., the associated intra-prediction mode 125. In this new method, the global block mode 125 is still analyzed by the decoder, for example, but each subdivision 130 has its own local mode 152. This local mode 152 may depend on the global block mode 125, the subdivision index, explicitly sent syntax elements, neighboring intra-modes, etc. For example, suppose there is a block 120 with four subdivisions having indices 0 to 3 and global intra-mode i, e.g., subdivisions 1300 to 1303. Then the local intra-mode 152 of the subdivision 130 may be: • Local mode 0 = i - 2 • Local mode 1 = i - 1 • Local mode 2 = i + 1 • Local mode 3 = i + 2

[0160] Example of a preferred version: If an ISP is used, a flag, i.e., the local intra-prediction indicator 112h, is parsed by the decoder to determine whether a local variation of intra-mode 125 exists. The decoder / encoder may be configured to read / transmit the local intra-prediction indicator 112h indicating whether a segment-specific intra-prediction mode 152 is used for the prediction of each segment 130. If a local variation exists, a second flag, i.e., rule index 112g, is sent to indicate which model of the variation, i.e., rule 156, is used. If the local intra-prediction indicator 112h indicates the use of an intra-prediction mode 152 specific to the section, the decoder / encoder may be configured to read / send rule index 112g or predict a rule index based on the characteristics of neighboring blocks and use the rule index to identify a given rule 156 from the set of rules 154. For example, there are two possibilities.

[0161] [Table 1]

[0162] Additional notes: The picture 110 shown in Figure 4 or Figure 6 may be associated with the picture 12 or 12' described in relation to Figures 1 to 3. The data stream 112 shown in Figures 4, 6, and 7 may be associated with the data stream 14 described in relation to Figures 1 and 2. The intra-predicted block 120 shown in Figures 4, 6, 7, and 8 may be associated with the intra-predicted block 80 described in relation to Figure 3.

[0163] Figure 9 shows a method 1000 for decoding a picture, which includes 1100 deriving the allocation of a picture at the granularity of the block to which the picture is subdivided, to a set of prediction types, including intra-predictions and inter-predictions, so that each block is allocated to a relevant prediction type from a set of prediction types, from the data stream to which the picture is coded. For each intra-predicted block to which an intra-prediction is allocated, the method 1000 includes 1200 deriving a relevant intra-prediction mode from a set of intra-prediction modes from the data stream. For each predetermined intra-predicted block to which a relevant intra-prediction mode is included in a predetermined subset of a given intra-prediction mode, the method 1000 includes 1300 deriving information from the data stream about the division of each predetermined intra-predicted block into divisions, and intra-predicting each division of each predetermined intra-predicted block in a manner corresponding to the predetermined intra-prediction mode allocated to each predetermined intra-predicted block. Furthermore, Method 1000 includes deriving information about the predicted residuals of each block from the data stream for each given intra-predicted block by deriving from the data stream 1510 a predicted residual signal specific to the segment associated with the predicted residual signal of the spatial domain of each segment of each given intra-predicted block by a given transformation for each segment of each given intra-predicted block, for each given segment of each given intra-predicted block. Furthermore, Method 1000 includes deriving information about the predicted residuals of each block from the data stream by deriving from the data stream 1520 information identifying a given transformation from a set of transformations including a first transformation and a second transformation equivalent to the concatenation of a linear transformation and a quadratic transformation applied to a subset of the coefficients of the linear transformation, for each given intra-predicted block. Each block is reconstructed using the information about the predicted residuals of each block and the predicted signal obtained using the prediction type assigned to each block (1600).

[0164] As shown in Figure 10, the method 2000 for encoding a picture corresponding to the decoding method 1000 includes encoding the allocation of the picture at the granularity of the blocks to which the picture is subdivided, to a set of prediction types including intra-predictions and inter-predictions, in a data stream to which the picture is coded, such that each block is allocated to a relevant prediction type from a set of prediction types. The method 2000 includes encoding the relevant intra-prediction mode from a set of intra-prediction modes in a data stream for each intra-predicted block to which an intra-prediction is allocated, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a data stream, in a manner corresponding to the predetermined intra-prediction mode allocated to each predetermined intra-predicted block, in a data stream Furthermore, Method 2000 includes encoding information about the predicted residuals of each block in a data stream for each predetermined intra-predicted block by encoding in a data stream 2510 a prediction residual signal specific to the segment associated with the prediction residual signal of the spatial region of each segment of each predetermined intra-predicted block by a predetermined transformation for each segment of each predetermined intra-predicted block. Furthermore, Method 2000 includes encoding information about the predicted residuals of each block in a data stream by encoding in a data stream 2520 information identifying a predetermined transformation from a set of transformations including a first transformation and a second transformation equivalent to the concatenation of a linear transformation and a quadratic transformation applied to a subset of the coefficients of the linear transformation for each predetermined intra-predicted block. For each block, each block has information about the predicted residuals of each block and the allocation to each block The predicted signal obtained using the selected prediction type can be reconstructed using that.

[0165] Figure 11 shows a method 3000 for decoding a picture, which includes deriving the allocation of the picture at the granularity of the block into which the picture is subdivided, to a set of prediction types, including intra-predictions and inter-predictions, from the data stream into which the picture is coded, such that each block is allocated to a relevant prediction type from a set of prediction types. The method 3000 includes deriving the relevant intra-prediction mode from a set of intra-prediction modes from the data stream for each intra-predicted block to which an intra-prediction is allocated, which includes 1200. With respect to each of a predetermined intra-predicted block whose associated intra-prediction mode is included in a predetermined subset of a predetermined intra-prediction mode, method 3000 includes deriving information from a data stream that identifies each predetermined intra-predicted block's division into a division from a set of division modes, which include: a first division into which each predetermined intra-predicted block is divided horizontally such that each division of the predetermined intra-predicted block is the same width as each predetermined intra-predicted block; a second division into which each predetermined intra-predicted block is divided vertically such that each division of the predetermined intra-predicted block is the same height as each predetermined intra-predicted block; and a third division into which each predetermined intra-predicted block is divided horizontally and vertically such that each division of the predetermined intra-predicted block is arranged in rows and columns of divisions. With respect to each of a predetermined intra-predicted block whose associated intra-prediction mode is included in a predetermined subset of a predetermined intra-prediction mode, method 3000 includes intra-predicting each segment of each predetermined intra-predicted block in a manner corresponding to the predetermined intra-prediction mode assigned to each predetermined intra-predicted block 1400.Furthermore, Method 3000 includes deriving information about the predicted residuals of each block from the data stream for each given intra-predicted block by deriving a prediction residual signal specific to the segment, which is associated with the prediction residual signal of the spatial region of each segment of each given intra-predicted block by a predetermined transformation, for each segment of each given intra-predicted block 1500. Method 3000 also includes reconstructing each block using the information about the predicted residuals of each block and the prediction signal obtained using the prediction type assigned to each block 1600.

[0166] As shown in Figure 12, the method 4000 for encoding a picture, corresponding to the method 3000 for decoding, includes encoding the allocation of the picture at the granularity of the blocks into which the picture is subdivided, to a set of prediction types, including intra-predictions and inter-predictions, in the data stream into which the picture is coded, such that each block is allocated to a relevant prediction type from a set of prediction types. The method 4000 also includes encoding the relevant intra-prediction mode from a set of intra-prediction modes into the data stream for each intra-predicted block to which an intra-prediction is allocated, in the data stream, in the data stream, in the data stream. With respect to each of a predetermined intra-predicted block whose associated intra-prediction mode is included in a predetermined subset of a predetermined intra-prediction mode, the method 4000 includes encoding information into a data stream that identifies each predetermined intra-predicted block's division into a division from a set of division modes, which include: a first division into which each predetermined intra-predicted block is divided horizontally such that each division of the predetermined intra-predicted block is the same width as the predetermined intra-predicted block; a second division into which each predetermined intra-predicted block is divided vertically such that each division of the predetermined intra-predicted block is the same height as the predetermined intra-predicted block; and a third division into which each predetermined intra-predicted block is divided horizontally and vertically such that each division of the predetermined intra-predicted block is arranged in rows and columns of divisions. With respect to each of a predetermined intra-predicted block whose associated intra-prediction mode is included in a predetermined subset of a predetermined intra-prediction mode, method 4000 includes intra-predicting each segment of each predetermined intra-predicted block in a manner corresponding to a predetermined intra-prediction mode assigned to each predetermined intra-predicted block.Furthermore, method 4000 includes encoding information about the predicted residuals of each block into a data stream for each given intra-predicted block by encoding into a data stream a prediction residual signal specific to the segment, which is associated with the prediction residual signal of the spatial region of each segment of each given intra-predicted block by a predetermined transformation, for each segment of each given intra-predicted block. For each block, each block is reconstructible using the information about the predicted residuals of each block and the prediction signal obtained using the prediction type assigned to each block.

[0167] Figure 13 shows a method 5000 for decoding a picture, which includes deriving the allocation of the picture at the granularity of the block into which the picture is subdivided, to a set of prediction types including intra-predictions and inter-predictions, from the data stream into which the picture is coded, such that each block is allocated to a relevant prediction type from a set of prediction types.1100 Method 5000 includes deriving the relevant intra-prediction mode from a set of intra-prediction modes from the data stream for each intra-predicted block to which an intra-prediction is allocated,1200. With respect to each of a predetermined intra-predicted block whose associated intra-prediction mode is included in a predetermined subset of a predetermined intra-prediction mode, the method 5000 includes deriving from a data stream information about the division of each predetermined intra-predicted block into divisions 1300; deriving from a data stream information identifying a predetermined rule from a set of rules 1350, wherein, using the information identifying the predetermined rule, a division-specific intra-prediction mode is determined for each division of each predetermined intra-predicted block from a predetermined subset of a predetermined intra-prediction mode based on the associated intra-prediction mode for each predetermined intra-predicted block 1350; and intra-predicting each division of each predetermined intra-predicted block using the division-specific intra-prediction mode determined for each division 1400. Furthermore, Method 5000 includes deriving information about the predicted residuals of each block from the data stream for each given intra-predicted block by deriving a prediction residual signal specific to the segment, which is associated with the prediction residual signal of the spatial region of each segment of each given intra-predicted block by a predetermined transformation, for each segment of each given intra-predicted block 1500. Method 5000 also includes reconstructing each block using the information about the predicted residuals of each block and the prediction signal obtained using the prediction type assigned to each block 1600.

[0168] As shown in Figure 14, the method 6000 for encoding a picture, corresponding to the method 5000 for decoding, includes encoding the allocation of the picture at the granularity of the blocks into which the picture is subdivided, to a set of prediction types, including intra-predictions and inter-predictions, in the data stream into which the picture is coded, such that each block is allocated to a relevant prediction type from a set of prediction types. The method 6000 also includes encoding the relevant intra-prediction mode from a set of intra-prediction modes into the data stream for each intra-predicted block to which an intra-prediction is allocated, in the data stream, in the data stream, in the data stream. For each of a predetermined intra-predicted blocks whose associated intra-prediction mode is included in a predetermined subset of a predetermined intra-prediction mode, the method 6000 includes encoding information about the division of each predetermined intra-predicted block into a data stream 2300; encoding information identifying a predetermined rule from a set of rules into a data stream 2350, wherein, using the information identifying the predetermined rule, a division-specific intra-prediction mode is determined for each division of each predetermined intra-predicted block from a predetermined subset of a predetermined intra-prediction mode based on the associated intra-prediction mode for each predetermined intra-predicted block 2400; and intra-predicting each division of each predetermined intra-predicted block using the division-specific intra-prediction mode determined for each division. Furthermore, method 6000 includes encoding information about the predicted residuals of each block into a data stream for each predetermined intra-predicted block by encoding into a data stream a prediction residual signal specific to the segment, which is associated with the prediction residual signal of the spatial region of each segment of each predetermined intra-predicted block by a predetermined transformation, for each segment of each predetermined intra-predicted block. For each block, each block uses information about the predicted residuals of each block and a prediction signal obtained using the prediction type assigned to each block. It can be reconstructed using this method.

[0169] Further embodiments: While several embodiments have been described in the context of apparatus, it is clear that these embodiments also provide a description of the corresponding method, and that blocks or devices correspond to steps or features of the steps of the method. Similarly, embodiments described in the context of steps of a method also provide a description of the corresponding blocks or objects or features of the corresponding apparatus. Some or all of the steps of a method may be performed by (or using) a hardware device, such as a microprocessor, a programmable computer, or an electronic circuit. In some embodiments, one or more of the most important steps of the method may be performed by such a device.

[0170] Depending on the requirements of a particular implementation, embodiments of the present invention may be implemented in hardware or software. Implementation may be carried out using a digital storage medium that stores electronically readable control signals, such as a floppy disk, DVD, Blu-ray, CD, ROM, PROM, EPROM, EEPROM, or flash memory, which cooperates (or can cooperate) with a computer system programmable to perform each method. Thus, the digital storage medium may be computer-readable.

[0171] Some embodiments of the present invention include a data carrier having an electronically readable control signal that can cooperate with a programmable computer system so that one of the methods described herein is performed.

[0172] In general, embodiments of the present invention can be implemented as a computer program product having program code, which works to execute one of the methods when the computer program product is run on a computer. The program code may be stored, for example, on a machine-readable carrier.

[0173] Other embodiments include a computer program stored on a machine-readable carrier for performing one of the methods described herein.

[0174] In other words, an embodiment of the method of the invention is a computer program having program code for performing one of the methods described herein when the computer program is executed on a computer.

[0175] Further embodiments of the methods of the invention are, therefore, data carriers (or digital storage media, or computer-readable media) containing a recorded computer program for performing one of the methods described herein. Data carriers, digital storage media, or recorded media are generally tangible and / or non-temporary.

[0176] A further embodiment of the method of the invention is a data stream or sequence of signals representing a computer program for performing one of the methods described herein. The data stream or sequence of signals may be configured to be transmitted, for example, over a data communication connection, for example, over the Internet.

[0177] Further embodiments include processing means configured or adapted to perform one of the methods described herein, such as a computer or a programmable logic device.

[0178] Further embodiments include a computer on which a computer program for performing one of the methods described herein is installed.

[0179] Further embodiments of the present invention include an apparatus or system configured to transfer (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 include, for example, a file server for transferring the computer program to the receiver.

[0180] In some embodiments, a programmable logic device (e.g., a field-programmable gate array) may be used to perform some or all of the functions of the methods described herein. In some embodiments, the field-programmable gate array may work with a microprocessor to perform one of the methods described herein. Generally, the methods are preferably performed by any hardware device.

[0181] The devices described herein may be implemented using hardware devices, computers, or a combination of hardware devices and computers.

[0182] The apparatus described herein, or any component of the apparatus described herein, may be implemented at least partially in hardware and / or software.

[0183] The methods described herein may be performed using hardware devices, or using a computer, or using a combination of hardware devices and a computer.

[0184] Any method or any component of the apparatus described herein may be performed at least partially by hardware and / or software.

[0185] The embodiments described above are merely illustrative of the principles of the present invention. It will be understood that modifications and changes to the configurations and details described herein will be obvious to those skilled in the art. Therefore, it is intended that the invention is limited only by the scope of the claims below and not by the specific details presented in the description and explanation of the embodiments herein. [Explanation of symbols]

[0186] 10 Encoders, devices 12 pictures, original signal 12' Picture, Signal 14 Data Streams 20 Decoder, device 22 Predictive residual signal format 24 Predicted residuals Predicted residual signal in the 24' spectral region 24'' quantized predicted residual signal Predicted residual signal in the 24''' spectral region 24'''' Predicted residual signal 26 Predictive signals 28 Converters 32 Quantizer 34 Entropy Coder 36 Prediction Stage 40 Inverse Converter 42 Synthesizer 44 Prediction Modules 46 Reconstructed signal 50 Entropy Decoder 52 Inverse quantizer 54 Inverse Converter 56 Synthesizer 58 Prediction Modules 80 Intra-coded blocks 82 Intercoded blocks 84 blocks 110 Pictures 112 Data Streams 112a Information, allocation 112b Information 112c Information, Mode Display 112d Information, Classification Indicator 112e Information, residual signal, residual conversion 112f Conversion syntax element, information, secondary conversion flag, lfnst_idx 112g Rule Index 112h Local Intra Prediction Display 113 Function transform_tree 114 Prediction Type Set 116 Intra Prediction 118 Interpretation 120 Intra Predicted Blocks 122 Set of Intra Prediction Modes 123a Angle Intra Prediction Mode 123b Planar Intra Prediction Mode 123c DC Intra Predictive Mode 123d Block-based intra-predictive mode 124 Subsets of Intra Prediction Modes 125 Related intra-prediction modes and prediction types 126 Information 127 Collection of classification modes 127a First division 127b Second section 127c Third division 128 division 130 divisions, subdivisions 1300 First division 1301 Second division 1302 Third division 1303 Fourth division Predicted residual signals specific to each of the 132 segments, predicted residuals 134 Predicted residual signal in the spatial domain 136 Information 138 Set of Transformations 140 Subsets of transformation coefficients of the linear transformation T1 / Tp 150 pieces of information 152 Intra prediction mode, local mode, local intra mode specific to each category 1520 Intra-predictive mode specific to the first category 1521 Intra-predictive mode specific to the second category 1522 Intra-predictive mode specific to the third category 1523 Intra-predictive mode specific to the fourth category 154 Set of rules 1551 Rule 1 1552 Second Rule 156 Prescribed rules 160 Specific areas, non-zero conversion area areas 170 Intra Prediction Direction 172 Intra Prediction Direction 313 LfnstDcOnly 530 order 1000 ways 2000 methods 3000 ways 4000 ways 5000 ways 6000 ways

Claims

1. The method involves decoding a quadratic transformation index for intra-prediction blocks divided into partitions from a data stream, and indicating whether the quadratic transformation index applies to all partitions of the intra-prediction block. For each partition of the aforementioned intra-prediction block, the partition-specific transformation domain residual is determined. For all partitions, it is determined whether or not there are any non-zero conversion coefficients of the partition-specific conversion domain residuals outside a predetermined region. If it is determined that no non-zero conversion coefficients exist outside the predetermined area for all partitions, the quadratic conversion indicated by the quadratic conversion index is applied to all partitions in common. The system is configured to reconstruct each partition of the intra-prediction block using the partition-specific transformation domain residuals, A video decoder characterized in that the partition-specific conversion domain residuals are either converted or unconverted according to the secondary conversion index.

2. The video decoder according to claim 1, characterized in that the quadratic conversion index indicates one of the following: not using an inverse quadratic conversion, using a first inverse quadratic conversion, or using a second inverse quadratic conversion.

3. The video decoder according to claim 1, configured to estimate that a quadratic transformation is not used in the intra prediction block if it is determined that a non-zero transformation coefficient exists outside a predetermined area for at least one partition.

4. The video decoder according to claim 2, characterized in that the first inverse quadratic transform or the second inverse quadratic transform is further indicated by an intra-prediction mode assigned to the intra-prediction block.

5. The video decoder according to claim 1, characterized in that the secondary transformation index is decoded only once for the entire intra prediction block.

6. A step of decoding a quadratic transformation index for intra-prediction blocks divided into partitions from a data stream, characterized in that the quadratic transformation index indicates whether or not a quadratic transformation is applied to all partitions of the intra-prediction block. The steps include determining the partition-specific transformation domain residual for each partition of the intra prediction block, For all partitions, the step of determining whether or not there are no non-zero conversion coefficients of the partition-specific conversion domain residuals outside a predetermined region, If it is determined that no non-zero conversion coefficients exist outside the predetermined region for all partitions, the step is to apply the quadratic conversion indicated by the quadratic conversion index to all partitions in common, The process includes the step of reconstructing each partition of the intra prediction block using the partition-specific transformation domain residuals, A method for decoding a picture, characterized in that the partition-specific conversion domain residual is either converted or unconverted according to the secondary conversion index.

7. The method for decoding a picture according to claim 6, characterized in that the quadratic transformation index indicates one of the following: not using an inverse quadratic transformation, using a first inverse quadratic transformation, or using a second inverse quadratic transformation.

8. The method for decoding a picture according to claim 6, wherein if it is determined that a non-zero conversion coefficient exists outside a predetermined area for at least one partition, it is estimated that a quadratic conversion will not be used for the intra-prediction block.

9. The method for decoding a picture according to claim 7, characterized in that the first inverse quadratic transform or the second inverse quadratic transform is further indicated by an intra-prediction mode assigned to the intra-prediction block.

10. The method for decoding a picture according to claim 6, characterized in that decoding the secondary transformation index includes decoding the secondary transformation index only once for the entire intra prediction block.

11. For each partition of the intra-prediction block divided into partitions, the partition-specific transformation domain residual is determined. For all partitions, it is determined whether or not there are any non-zero conversion coefficients of the partition-specific conversion domain residuals outside a predetermined region. If it is determined that no non-zero conversion coefficients exist outside a predetermined area in all partitions, the quadratic conversion index for the intra-prediction block is encoded into the data stream, and the quadratic conversion index indicates whether or not the quadratic conversion is applied to all partitions of the intra-prediction block. The quadratic transformation indicated by the quadratic transformation index is applied to all partitions of the intra prediction block in common. The partition-specific transformation domain residuals are configured to be encoded into a data stream. A video encoder characterized in that the partition-specific conversion domain residual is either converted or unconverted according to the secondary conversion index.

12. The video encoder according to claim 11, characterized in that the secondary conversion index indicates one of the following: not using a secondary conversion, using a first secondary conversion, or using a second secondary conversion.

13. The video encoder according to claim 11, configured to omit the secondary transformation index from the data stream if it is determined that a non-zero transformation coefficient exists outside a predetermined area for at least one partition, and it is estimated that a secondary transformation will not be used for the intra prediction block.

14. The video encoder according to claim 12, characterized in that the first secondary conversion or the second secondary conversion is determined based on the intra prediction mode assigned to the intra prediction block.

15. The video encoder according to claim 11, characterized in that the secondary transformation index is encoded only once into the data stream for the entire intra prediction block.

16. The steps include determining the partition-specific transformation domain residual for each partition of an intra-prediction block that has been divided into partitions, A step of determining whether or not there are any non-zero conversion coefficients of the partition-specific conversion domain residuals outside a predetermined region for all partitions, If it is determined that no non-zero conversion coefficients exist outside a predetermined area in all partitions, the steps include: encoding a quadratic conversion index for the intra-prediction block into a data stream; and indicating whether the quadratic conversion index applies to all partitions of the intra-prediction block in common; The steps include applying the quadratic transformation indicated by the quadratic transformation index to all partitions of the intra prediction block, The steps include: encoding the partition-specific transformation domain residuals, which are transformed or untransformed according to the aforementioned secondary transformation index, into a data stream; A method for encoding pictures that include [this element].

17. The method for encoding a picture according to claim 16, characterized in that the secondary transformation index indicates one of the following: not using a secondary transformation, using a first secondary transformation, or using a second secondary transformation.

18. The method for encoding a picture according to claim 16, further comprising the step of estimating that a quadratic transformation is not used for the intra-prediction block if it is determined that a non-zero transformation coefficient exists outside a predetermined area for at least one partition, and omitting the quadratic transformation index from the data stream.

19. The picture encoding method according to claim 17, characterized in that the first secondary transformation or the second secondary transformation is determined based on the intra prediction mode assigned to the intra prediction block.

20. The picture encoding method according to claim 16, characterized in that encoding the secondary transformation index includes encoding the secondary transformation index into a data stream only once for the entire intra prediction block.

Citation Information

Patent Citations

  • Method and apparatus for configuring transform for video compression

    WO2019027302A1

  • Intra prediction-based video signal processing method and device

    WO2020175965A1

  • Method and apparatus for video coding

    WO2020206254A1

  • Methods and apparatuses for coding video data with adaptive secondary transform signaling depending on TB level syntax

    WO2020211775A1