Abstract: The present invention is concerned with transform coefficient coding, wherein predetermined sets of transforms may be used. Embodiments of the present invention provide an encoder (10) and a decoder (20) for encoding a picture (12) into/from a data stream (14) using block-based prediction and block-based residual coding, the encoder (10) and decoder (20) supporting a set (94) of transforms for the block-based residual coding. The encoder (10) and decoder (20) are configured to determine (122) a transform candidate list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a height and a width of the current residual block (84), and to encode/decode a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms and selectively signal/derive the selected transform (102) in/from the data stream (14).
SET OF TRANSFORMS
GENERAL DESCRIPTION
The present invention is concerned with picture and video coding, and in particular with block-based picture and video coding. The picture may be a still image or a consecutive order of images in a moving picture sequence. Some particular examples and embodiments of the present invention are concerned with an unified and extended scheme for residual coding in the context of video coding, utilizing a mode-dependent set of transform candidates used for a transform for obtaining the respective residual signal in the spatial domain.
1. Technical Background
In addition to DCT-II and 4x4 DST-VII, which have been employed in some standards as in HEVC (High Efficiency Video Coding), other standards like JEM (Joint Exploration Test Model) for example may define two extra families of transforms. The set of Adaptive Multiple Core Transforms (AMT) and Mode-dependent Non-Separable Secondary Transforms (NSST).
2.1 Adaptive multiple core transform [1 ,8]
AMT extends the set of available transforms for luma components by transforms from the DCT/DST families, namely DST-VII, DCT-V!II, DST-I and DCT-V. AMT applies if the ac-cording CU level flag is set, otherwise DCT-II is used. For inter coded blocks, two additional flags decide between DST-VII and DCT-VIII for each horizontal and vertical transform, respectively. If a block is intra coded, it depends on the intra prediction mode, which transforms are available. Each intra mode maps to two out of three predefined sets. One for each horizontal and vertical transform. Each set consists of two transforms. If the number of significant coefficients is larger than a predefined threshold an index is signaled for each direction, otherwise the first transform of each set is used.
2.2 Mode-dependent non-separable secondary transforms [1 ,2]
NSST defines second stage transforms which are applied to coefficients of a core trans form (primary transform).“If both width and height of a transform coefficient block is larger than or equal to 8, then 8x8 non-separable secondary transform is applied to the top-left 8x8 region of the transform coefficients block. Otherwise, if either W or H of a transform coefficient block is equal to 4, a 4x4 non-separable secondary transform is applied and the 4x4 non-separable transform is performed on the top-left min(8,W)xmin(8,H) region of the transform coefficient block. The above transform selection rule is applied for both luma and chroma components.” [1]
2.3 Large block-size transforms with high-frequency zeroing
“In the JEM, large block-size transforms, up to 128x128 in size, are enabled, which is pri-marily useful for higher resolution video, e.g., 1080p and 4K sequences. High frequency transform coefficients are zeroed out for those transform blocks having a size (width or height, or both width and height) larger than or equal to 64, so that only the lower-frequency coefficients are maintained. For example, for an MxN transform block, with M as the block width and N as the block height, when M is larger than or equal to 64, only the left 32 columns of transform coefficients are kept. Similarly, when N is larger than or equal to 64, only the top 32 rows of transform coefficients are kept. When transform skip mode is used for a large block, the entire block is used without zeroing out any values.”[1]
However, existing techniques may have several drawbacks. For example, with increasing picture size, the coding effort increases considerably. Thus, it would be desirable to provide a codec with improved efficiency.
Therefore, it is suggested to provide a mode-dependent set of transform candidates. The identification of the transform used for obtaining the residual signal in spatial domain may exploit a candidate list utilizing already decoded syntax elements. The coefficients of the residual block may be decoded conditioned on the available transforms in the candidate list. In doing so, the candidate list itself can be iteratively reduced by removing those transforms that conflict with already obtained information about the coefficients. When all coefficients are decoded and more than one transform candidate is left, an index into the candidate list may be signaled.
The innovative concept of introducing a mode dependent candidate list may allow for a flexible and efficient testing and signaling of transforms for residual blocks. For example, the classification of structured transforms by their induced constraints may allow for ex ploiting the dependencies between chosen transforms, resulting coefficients and neigh boring transform blocks.
Aspects of the invention
According to a first aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may be configured to determine a transform candidate list of transforms for a current residual block out of the set of transforms based on a height and a width of the current residual block. The encoder may further be configured to encode a prediction residual within the residual block using one selected transform out of the selectable list of transforms and selectively signal the selected transform in the data stream. Signaling may selectively denote the fact that possibly the candidate list contains merely one candidate transform so that the signaling may be left off.
According to the first aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to determine a transform candidate list of transforms for a current residual block out of the set of transforms based on a height and a width of the current residual block, and to decode a prediction residual within the residual block in a domain of one selected transform out of the selectable list of transforms with selectively deriving the selected transform from the data stream. Deriving may selectively denote the fact that possibly the candidate list contains merely one candidate transform so that the signaling/derivation may be left off.
According to a second aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms, and to encode transform coefficient data into the data stream which represents a prediction residual within the residual block using one selected transform out of the selectable list of transforms. The encoder may further be configured to signal the selected transform in the data stream, and/or to perform the determination of the selectable list in a manner depending on the transform coefficient data or on a portion of the transform coefficient data.
According to the second aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms, and to decode transform coefficient data from the data stream which represents a prediction residual within the residual block using one selected transform out of the selectable list of transforms. The decoder may further be configured to derive the selected transform from the data stream, and/or to perform the determination of the selectable list, in a manner de pending on the transform coefficient data or on a portion of the data transform coefficient data.
According to a third aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms, and to signal the se lected transform in the data stream. The encoder may further be configured to encode transform coefficients which represent a prediction residual within the residual block using one selected transform out of the selectable list of transforms in a manner dependent on the selected transform or on the selectable list of transforms.
According to the third aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms, and to derive the selected transform from the data stream. The decoder may further be configured to decode from the data stream transform coefficients which represent a prediction residua! within the residual block using one selected transform out of the selectable list of trans-forms in a manner dependent on the selected transform or the selectable list of transforms.
According to a fourth aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may be configured to determine a selectable list of
transforms for a current residual block out of the set of transforms, and to encode a pre-diction residual within the residual block using one selected transform out of the selectable list of transforms. The encoder may further be configured to signal the selected transform in the data stream using an transform indicator, wherein the transform indicator is signaled in the data stream using a code with one or more digits, wherein each of a set of the one or more digits is uniquely associated with a respective transform property.
According to the fourth aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based pre diction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms, and to decode from the data stream a prediction residual within the residual block using one selected transform out of the selectable list of transforms. The decoder may further be con figured to derive the selected transform from the data stream using an transform indicator, wherein the transform indicator is derived from the data stream using a code with one or more digits, wherein each of a set of the one or more digits is uniquely associated with a respective transform property. For example, the code may comprise bins of the transform indicator subject to binary arithmetic coding or syntax elements which the transform indicator is composed of and which may be parsed from the data stream.
According to a fifth aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may further be configured to predict an intra-pre-dicted block by applying a spatial neighborhood of the intra-predicted block onto a selected neural network out of a plurality of neural networks to obtain a prediction of the in-tra-predicted block, and to determine a selectable set of transforms for a residual block covering the intra-predicted block out of the set of transforms based on the selected neu-ral network and a block size of the residual block. The encoder may further be configured to encode a prediction residual associated with the prediction of the intra-predicted block within the residual block using one selected transform out of the selectable set of trans forms and signal the selected transform in the data stream.
According to the fifth aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the
block-based residual decoding. The decoder may be configured to predict an intra-pre dicted block by applying a spatial neighborhood of the intra-predicted block onto a selected neural network out of a plurality of neural networks to obtain a prediction of the in-tra-predicted block, and to determine a selectable set of transforms for a residual block covering the intra-predicted block out of the set of transforms based on the selected neu-ral network and a block size of the residual block. The decoder may further be configured to decode a prediction residual associated with the prediction of the intra-predicted block within the residual block from the data stream in a domain of one selected transform out of the selectable set of transforms with deriving the selected transform from the data stream.
According to a sixth aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding. The encoder may be configured to predict an intra-predicted block by applying a spatial neighborhood of the intra-predicted block onto a neural network to obtain a prediction of the intra-predicted block in a domain of a primary transform, and to encode a prediction residual associated with the prediction of the intra-predicted block within a residual block using one selected transform out of a selectable set of trans forms and signal the selected transform in the data stream, wherein the selectable set of transforms is populated by at least one multi-stage transform involving the primary trans form and a secondary transform applied onto a sub-group of primary transform coefficients of the primary transform.
According to the sixth aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual coding. The decoder may be configured to predict an intra-predicted block by applying a spatial neighborhood of the intra-predicted block onto a neural network to obtain a prediction of the intra-predicted block in a domain of a primary trans form, and to decode from the data stream a prediction residual associated with the prediction of the intra-predicted block within a residual block in a further domain of one selected transform out of a selectable set of transforms with deriving the selected transform from the data stream, wherein the selectable set of transforms is populated by at least one multi-stage transform involving the primary transform and a secondary transform applied onto a sub-group of primary transform coefficients of the primary transform.
According to a seventh aspect, embodiments of the present innovative concept may pro vide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block- based residual coding. The encoder may be configured to predict an intra-predicted block based on a spatial neighborhood of the intra-predicted block using a selected one of out of a set of intra prediction modes to obtain a prediction of the intra-predicted block, and to determine a selectable set of transforms for a residual block covering the intra-predicted block out of the set of transforms based on the selected intra prediction mode and a block size of the residual block. The encoder may further be configured to encode a prediction residual associated with the prediction of the intra-predicted block within the residual block using one selected transform out of the selectable set of transforms and signal the se-lected transform in the data stream.
According to the seventh aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to predict an intra-predicted block based on a spatial neighborhood of the intra-predicted block using a se lected one of out of a set of intra prediction modes to obtain a prediction of the intra-pre-dicted block, and to determine a selectable set of transforms for a residual block covering the intra-predicted block out of the set of transforms based on the selected intra prediction mode and a block size of the residual block. The decoder may further be configured to decode from the data stream a prediction residual associated with the prediction of the intra-predicted block within the residual block in a domain of one selected transform out of the selectable set of transforms with deriving the selected transform from the data stream.
According to an eighth aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, e.g. also out of the set of transforms for sake of coding the latter’s prediction residual. The encoder may further be configured to encode a prediction residual within the residual block using one selected transform out of the selectable list of transforms and signal the selected transform in the data stream.
According to the eighth aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based pre diction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to determine a se-lectab!e list of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, e.g. also out of the set of transforms for sake of coding the latter's prediction residual. The decoder may further be configured to decode a prediction residual within the residual block in a domain of one selected transform out of the selectable list of transforms with deriving the selected trans-form from the data stream.
According to a ninth aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms, in a manner dependent on a quantization parameter of the current block. If the quantization parameter corresponds to a quantization that is finer than a certain threshold, then the selectable list of transforms for a current residual block is populated with at least one multi-stage transform comprising a primary transform that is applied onto a prediction residual within the current residual block and a secondary transform that is applied onto a sub-group of primary transform coefficients of the primary transform. However, if the quantization parameter corresponds to a quantization coarser than a certain threshold, then the selectable list of transforms for a current residual block may be populated, either in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage transform according to which the primary transform coefficients beyond the sub-group are zeroed. In both cases the encoder may be configured to encode the prediction residual within the residual block using one selected transform out of the selectable list of transforms and signal the selected transform in the data stream.
According to the ninth aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms, in manner dependent on a quantization parameter of the current block. If the quantization parameter corresponds to a quantization that is finer than a certain threshold, then the selectable list of transforms for a current residual block is populated with at least one multi-stage transform comprising a primary transform being applied onto a prediction residual within the
current residua! block, and a secondary transform being applied onto a sub-group of primary transform coefficients of the primary transform. However, if the quantization parameter corresponds to a quantization that is coarser than a certain threshold, then the se-lectable list of transforms for a current residual block is populated, either in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage transform wherein the primary transform coefficients beyond the sub-group are zeroed. In both cases, the decoder may be configured to decode the prediction resid ual within the residual block in a domain of one selected transform out of the selectable list of transforms with deriving the selected transform from the data stream.
According to a tenth aspect, embodiments of the present innovative concept may provide an encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding. The encoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, in a manner dependent on a number of, or dependent on a sum over, significant transform coefficients in one or more neighboring residual blocks. If the number or sum is larger than a certain threshold, then the selectable list of transforms for a current residual block is populated with at least one multistage transform including a primary transform being applied onto a prediction residual of the current residual block and a secondary transform being applied onto a sub-group of primary transform coefficients of the primary transform. However, if the number or sum is smaller than the certain threshold, then the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage transform, wherein primary transform coefficients beyond the sub-group are zeroed. In both cases, the encoder may be config-ured to encode a prediction residual within the residual block using one selected transform out of the selectable list of transforms and signal the selected transform in the data stream.
According to the tenth aspect, further embodiments of the present innovative concept may provide a decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding. The decoder may be configured to determine a selectable list of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, in manner dependent on a number of, or dependent on a sum over, significant transform coefficients in one or more
neighboring residual blocks. If the number or sum is larger than a certain threshold, then the selectable list of transforms for a current residual block is populated with at least one multi-stage transform including a primary transform being applied onto a prediction residual of the current residual block and a secondary transform being applied onto a subgroup of primary transform coefficients of the primary transform. However, if the number or sum is smaller than the certain threshold, then the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage transform wherein primary transform coefficients beyond the sub-group are zeroed. In both cases, the decoder may further be configured to decode a prediction residual within the residual block in a domain of one selected transform out of the selectable list of transforms with deriving the selected transform from the data stream.
According to a further aspect, computer programs are provided, wherein each of the computer programs is configured to implement the above-described methods of encoding and/or decoding when being executed on a computer or signal processor, so that the above-described method is implemented by one of the computer programs.
In the following, embodiments of the present disclosure are described in more detail with reference to the figures, in which
Fig. 1 shows a schematic block diagram of an encoder that may be used in one or more embodiments of the present invention
Fig. 2 shows a schematic block diagram of a decoder that may be used in one or more embodiments of the present invention,
Fig. 3 shows a schematic block diagram of a block based coding scheme that may be used in one or more embodiments of the present invention,
Fig. 4 shows some examples of partitioning a residual block into groups and subgroups of transform coefficients upon exploitation of a transform,
Fig. 5 shows some further examples of partitioning a residual block into groups and subgroups of transform coefficients upon exploitation of a transform,
Fig. 6 shows some examples of different stages of a multi-stage transform com prising a primary transformation and a secondary transformation,
Fig. 7 shows a schematic block diagram of block-based residual coding using a set of transforms comprising one or more neural networks according to an embodiment of the present invention,
Fig. 8 shows a concept of a multi-stage transform comprising a primary transform and a secondary transform according to an embodiment of the present invention,
Fig. 9 shows a concept of a multi-stage transform comprising a primary transform and a secondary transform in the spatial domain exploiting a coding order in rows and columns according to an embodiment of the present invention,
Fig. 10 shows a concept of a primary-only transform according to an embodiment of the present invention,
Fig. 11 shows a schematic block diagram of a block-based residual coding scheme using a multi-stage transform comprising a neural network according to an embodiment of the present invention,
Fig. 12 shows a schematic block diagram of a block-based residual coding scheme using a set of transforms and a selectable set of transforms according to an embodiment of the present invention,
Fig. 13 shows a schematic block diagram of a residual block comprising a plurality of significant and non-significant transform coefficients which are coded in a predetermined coding order according to an embodiment of the present in- vention,
Fig. 14 shows a schematic block diagram of a block-based residual coding scheme using a set of transforms and a selectable set of transforms and using transform signaling according to an embodiment of the present invention,
Fig. 15 shows a schematic block diagram of block-based residual coding scheme using a set of transforms and a selectable set of transforms and using transform signaling according to an embodiment of the present invention,
Fig. 16 shows a schematic block diagram of a block-based residual coding scheme in which some transform coefficients are set to zero according to an embodiment of the present invention,
Fig. 17 shows a schematic residual block comprising a plurality of primary coefficients, wherein some of them are set to zero prior to subjecting the remaining non-zero valued primary coefficients to a secondary transformation according to an embodiment of the present invention,
Fig. 18 shows, from a decoder perspective, a schematic block diagram of a transform block in which some transform coefficients may be zeroed according to an embodiment, and
Fig. 19 shows, from a decoder perspective, a schematic block diagram of a transform block in which some transform coefficients may be zeroed according to a further embodiment.
DESCRIPTION OF THE FIGURES
Equal or equivalent elements or elements with equal or equivalent functionality are de noted in the following description by equal or equivalent reference numerals.
Method steps which are depicted by means of a block diagram and which are described with reference to said block diagram may also be executed in an order different from the depicted and/or described order. Furthermore, method steps concerning a particular feature of a device may be replaceable with said feature of said device, and the other way around.
The term transformation may herein also be abbreviated by the term trafo. The term trans-formation may synonymously be used both for a transformation and a transform (i.e. the result of a transformation).
The following description of the figures starts with a presentation of a description of video encoder and video decoder of a block-based predictive codec for coding pictures of a video in order to form an example for a coding framework into which embodiments described herein may be built. The video encoder and video decoder are described with re spect to Figures 1 to 3. Thereinafter the description of further embodiments of the present application are presented with respect to figures. Same are numbered and in the above section a reference is made which portions above refer to which embodiment described and claimed below. All these embodiments could be built into the video encoder and decoder of Figures 1 and 2, respectively, although the embodiments described herein such as those described with respect to the subsequent Figures may also be used to form video encoder and video decoders not operating according to the coding framework underlying the video encoder and video decoder of Figures 1 and 2.
Figure 1 shows an apparatus for predictively coding a video 11 composed of a sequence of pictures 12 into a data stream 14. Block-wise predictive coding is used to this end. Fur ther, transform-based residual coding is exemplarily used. The apparatus, or encoder, is indicated using reference sign 10.
Figure 2 shows a corresponding decoder 20, i.e. an apparatus 20 configured to predictively decode the video 1 T composed of pictures 12’ in picture blocks from the data stream 14, also here exemplarily using transform-based residual decoding, wherein the apostrophe has been used to indicate that the pictures 12’ and video 11’, respectively, as reconstructed by decoder 20 deviate from pictures 12 originally encoded by apparatus 10 in terms of coding loss introduced by a quantization of the prediction residual signal.
Figure 1 and Figure 2 exemplarily use transform based prediction residual coding, alt-hough embodiments of the present application are not restricted to this kind of prediction residual coding. This is true for other details described with respect to Figures 1 and 2, too, as will be outlined hereinafter.
The encoder 10 is configured to subject the prediction residual signal to spatial-to-spectral transformation and to encode the prediction residual signal, thus obtained, into the data stream 14. Likewise, the decoder 20 is configured to decode the prediction residual signal from the data stream 14 and subject the prediction residual signal thus obtained to spec-tral-to-spatial transformation.
Internally, the encoder 10 may comprise a prediction residual signal former 22 which generates a prediction residual 24 so as to measure a deviation of a prediction signal 26 from the original signal, i.e. video 11 or a current picture 12. The prediction residual signal for-mer 22 may, for instance, be a subtractor which subtracts the prediction signal 26 from the original signal, i.e. current picture 12.
The encoder 10 then further comprises a transformer 28 which subjects the prediction re-sidual signal 24 to a spatial-to-spectral transformation to obtain a spectral-domain predic tion residual signal 24’ which is then subject to quantization by a quantizer 32, also comprised by encoder 10. The thus quantized prediction residual signal 24” is coded into bit-stream 14.
To this end, encoder 10 may optionally comprise an entropy coder 34 which entropy codes the prediction residual signal as transformed and quantized into data stream 14. The prediction residual 24 is generated by a prediction stage 36 of encoder 10 on the ba-sis of the prediction residual signal 24” decoded into, and decodable from, data stream 14.
To this end, the prediction stage 36 may internally, as is shown in Figure 1 , comprise a dequantizer 38 which dequantizes prediction residual signal 24” so as to gain spectral-do-main prediction residual signal 24’”, which corresponds to signal 24’ except for quantiza-tion loss, followed by an inverse transformer 40 which subjects the latter prediction residual signal 24”’ to an inverse transformation, i.e. a spectral-to-spatial transformation, to obtain prediction residual signal 24"”, which corresponds to the original prediction residual signal 24 except for quantization loss. A combiner 42 of the prediction stage 36 then re combines, such as by addition, the prediction signal 26 and the prediction residual signal 24”” so as to obtain a reconstructed signal 46, i.e. a reconstruction of the original signal 12. Reconstructed signal 46 may correspond to signal 12’.
A prediction module 44 of prediction stage 36 then generates the prediction signal 26 on the basis of signal 46 by using, for instance, spatial prediction, i.e. intra prediction, and/or temporal prediction, i.e. inter prediction. Details in this regard are described in the following.
Likewise, decoder 20 may be internally composed of components corresponding to, and interconnected in a manner corresponding to, prediction stage 36. In particular, entropy decoder 50 of decoder 20 may entropy decode the quantized spectral-domain prediction residual signal 24" from the data stream, whereupon dequantizer 52, inverse transformer 54, combiner 56 and prediction module 58, interconnected and cooperating in the manner described above with respect to the modules of prediction stage 36, recover the reconstructed signal on the basis of prediction residual signal 24" so that, as shown in Figure 2, the output of combiner 56 results in the reconstructed signal, namely the video 1 Tor a current picture 12’ thereof.
Although not specifically described above, it is readily clear that the encoder 10 may set some coding parameters including, for instance, prediction modes, motion parameters and the like, according to some optimization scheme such as, for instance, in a manner optimizing some rate and distortion related criterion, i.e. coding cost, and/or using some rate control. As described in more details below, encoder 10 and decoder 20 and the corresponding modules 44, 58, respectively, support different prediction modes such as intracoding modes and inter-coding modes or modes where the former modes form a kind of set or pool of primitive prediction modes based on which the predictions of picture blocks are composed. The granularity at which encoder and decoder switch between these pre-diction compositions may correspond to a subdivision of the pictures 12 and 12’, respec tively, into blocks. Note that some of these blocks may be blocks being solely intra-coded and some blocks may be blocks solely being inter-coded and, optionally, even further blocks may be blocks obtained using both intra-coding and inter-coding, but details are set-out hereinafter.
According to intra-coding mode, a prediction signal for a block is obtained on the basis of a spatial, already coded/decoded neighborhood of the respective block. Several intra-coding sub-modes may exist the selection among which, quasi, represents a kind of intra prediction parameter. There may be directional or angular intra-coding sub-modes according to which the prediction signal for the respective block is filled by extrapolating the sample values of the neighborhood along a certain direction which is specific for the respective directional intra-coding sub-mode, into the respective block. The intra-coding sub-modes may, for instance, also comprise one or more further sub-modes such as a DC coding mode, according to which the prediction signal for the respective block assigns a DC value to all samples within the respective block, and/or a planar intra-coding mode according to which the prediction signal of the respective block is approximated or determined to be a spatial distribution of sample values described by a two-dimensional linear function over the sample positions of the respective block with deriving tilt and offset of the plane defined by the two-dimensional linear function on the basis of the neighboring samples.
Compared thereto, according to inter-prediction mode, a prediction signal for a block may be obtained, for instance, by temporally predicting the block inner. For parametrization of an inter-prediction mode, motion vectors may be signaled within the data stream, the motion vectors indicating the spatial displacement of the portion of a previously coded picture of the video 11 at which the previously coded/decoded picture is sampled in order to obtain the prediction signal for the respective block. This means, in addition to the residual signal coding comprised by data stream 14, such as the entropy-coded transform coefficient levels representing the quantized spectral-domain prediction residual signal 24”, data stream 14 may have encoded thereinto prediction related parameters for assigning to the blocks prediction modes, prediction parameters for the assigned prediction modes, such as motion parameters for inter-prediction modes, and, optionally, further parameters which control a composition of the final prediction signal for the blocks using the assigned prediction modes and prediction parameters as will be outlined in more detail below. Additionally, the data stream 14 may comprise parameters controlling and signaling the subdi vision of picture 12 and 12’, respectively, into the blocks. The decoder 20 uses these pa-ram eters to subdivide the picture 12 in the same manner as the encoder 10 did, to assign the same prediction modes and parameters to the blocks, and to perform the same prediction to result in the same prediction signal.
Figure 3 illustrates the relationship between the reconstructed signal, i.e. the reconstructed picture 12’, on the one hand, and the combination of the prediction residual signal 24”" as signaled in the data stream 14, and the prediction signal 26, on the other hand. As already denoted above, the combination may be an addition.
The prediction signal 26 is illustrated in Figure 3 as a subdivision of the picture area into blocks 80 of varying size, although this is merely an example. The subdivision may be any subdivision, such as a regular subdivision of the picture area into rows and columns of blocks, or a multi -tree subdivision of picture 12 into leaf blocks of varying size, such as a quadtree subdivision or the like, wherein a mixture thereof is illustrated in Figure 3 where the picture area is firstly subdivided into rows and columns of tree-root blocks which are then further subdivided in accordance with a recursive multi-tree subdivisioning to result into blocks 80.
The prediction residual signal 24”” in Figure 3 is also illustrated as a subdivision of the picture area into blocks 84. These blocks might be called transform or residual blocks in order to distinguish same from the coding blocks 80. In effect, Figure 3 illustrates that en-coder 10 and decoder 20 may use two different subdivisions of picture 12 and picture 12', respectively, into blocks, namely one subdivisioning into coding blocks 80 and another subdivision into blocks 84. Both subdivisions might be the same, i.e. each block 80, may concurrently form a transform block 84 and vice versa, but Figure 3 illustrates the case where, for instance, a subdivision into transform blocks 84 forms an extension of the sub division into blocks 80 so that any border between two blocks 80 overlays a border between two blocks 84, or alternatively speaking each block 80 either coincides with one of the transform blocks 84 or coincides with a cluster of transform blocks 84.
However, the subdivisions may also be determined or selected independent from each other so that transform blocks 84 could alternatively cross block borders between blocks 80. As far as the subdivision into transform blocks 84 is concerned, similar statements are thus true as those brought forward with respect to the subdivision into blocks 80, i.e. the blocks 84 may be the result of a regular subdivision of a picture area into blocks, arranged in rows and columns, the result of a recursive multi-tree subdivisioning of the picture area, or a combination thereof or any other sort of segmentation.
Just as an aside, it is noted that blocks 80 and 84 are not restricted to being quadratic, rectangular or any other shape. Further, the subdivision of a current picture 12 into blocks 80 at which the prediction signal is formed, and the subdivision of a current picture 12 into blocks 84 at which the prediction residual is coded, may not be the only subdivision used for coding/decoding. These subdivisions form a granularity at which prediction signal de-termination and residual coding is performed, but firstly, the residual coding may alternatively be done without subdivisioning, and secondly, at other granularities than these sub divisions, encoder 10 and decoder 20 may set certain coding parameters which might include some of the aforementioned parameters such as prediction parameters, prediction signal composition control signals and the like.
Figure 3 illustrates that the combination of the prediction signal 26 and the prediction residual signal 24"” directly results in the reconstructed signal 12’. However, it should be noted that more than one prediction signal 26 may be combined with the prediction residua! signal 24”” to result into picture 12’ in accordance with alternative embodiments such as prediction signals obtained from other views or from other coding layers which are coded/decoded in a separate prediction loop with separate DPB, for instance.
In Figure 3, the transform blocks 84 shall have the following significance. Transformer 28 and inverse transformer 54 perform their transformations in units of these transform blocks 84. For instance, many codecs use some sort of DST or DCT for all transform blocks 84. Some codecs allow for skipping the transformation so that, for some of the transform blocks 84, the prediction residual signal is coded in the spatial domain directly. However, in accordance with embodiments described below, encoder 10 and decoder 20 are configured in such a manner that they support several transforms. For example, the transforms supported by encoder 10 and decoder 20 could comprise:
o DCT-II (or DCT-III), where DCT stands for Discrete Cosine T ransform
o DST-IV, where DST stands for Discrete Sine Transform
o DCT-IV
o DST- VI I
o Identity Transformation (IT)
Naturally, while transformer 28 would support all of the forward transform versions of these transforms, the decoder 20 or inverse transformer 54 would support the corresponding backward or inverse versions thereof:
o Inverse DCT-II (or inverse DCT-III)
o Inverse DST-IV
o Inverse DCT-IV
o Inverse DST-VII
o Identity Transformation (IT)
In any case, it should be noted that the set of supported transforms may comprise merely one transform such as one spectral-to-spatial or spatial-to-spectral transform.
As already outlined above, Figures 1 to 3 have been presented as an example where the concepts described further below may be implemented in order to form specific examples for video encoders and decoders according to the present application. Insofar, the video encoder and decoder of Figures 1 and 2, respectively, represent possible implementa tions of the video encoders and decoders described herein below.
As to the claims, note that“non-separable” relates to separability in vertical and horizontal direction.
3. Structured multi-stage transforms
Generally, an arbitrary linear transform for a residual block with size D=W*H, can be defined by D*D parameters. Here, it is referred to these kind of transforms as fully connected transforms. While these transforms are most flexible, their complexity in terms of number of needed operations and required parameter storage increase quadratic with size D.
Hence, fully connected transforms are only applicable for small transform sizes. In order to reduce the complexity, the transforms can be constrained to have a certain structure, which allow an efficient implementation and reduce the number of transform parameters. One approach requires the transforms to factorize into multiple transforms, where each transform stage itself separates into independent sub-groups. The complexity of those multi stage transforms can be adjusted by choosing the number of transform stages, the dimensions of the independent sub-groups and by also constraining the sub-group transforms.
Example: Reduction of number of multiplications due to partitioning into sub-blocks
Consider a data block with width W and height H. This data block can be represented by a H x W matrix B that is serialized to a (H*W) x 1 vector b for further processing.
Let the data block be transformed by a fully connected transform. Transform is done by calculation of matrix vector product T*b between transform matrix T and serialized data block vector b. T ransform matrix shape is (H*W) x (H*W) leading to a required number of HTW multiplications per output coefficient. Therefore, for H*W output coefficients, a total of (H*W)2 multiplications is needed.
For H = 8 and W = 8 this results in 4096 multiplications required for the transform coefficient calculation. Now, let the data block be subdivided into H/4*W/4 sub-blocks representable by 4x4 matrices Bi, assuming both H and W being divisible by 4. Each sub-block is again serialized to 16x1 vector bi for further processing. Transform coefficients are now calculated transforming each sub-block by a fully connected transform and stitching the results. Trans forms are again done by calculation of matrix vector products T*bi between sub-block trans form matrix Ti and serialized sub-block b/. Since transform matrix shape in this case is 16 x 16, a total number of 16 multiplications is required per output coefficient. So, for calculating the transform coefficients of a single sub-block 16*16 = 256 multiplications are re-quired. Since we have H/4*W/4 sub-blocks, the required number of multiplications for all sub-blocks is H/4*W/4*256=H*W*16. Looking at the H=8, W=8 case again, the number of multiplications reduces by 75% from 4096 to 1024 due to the partitioning into sub-blocks and transforming each sub-block independently. By adding a further transform stage with a different partitioning, also inter-block dependencies can be considered. Assuming the same complexity as the first stage, the total number of multiplication is 2048, so only half the complexity as the full connected 8x8 transform.
A further reduction of complexity can be achieved by allowing non-bijective transforms. More precisely, here these transforms are defined as transforms that assume certain subgroups of transform stages to be all zero and hence reduce the dimension of the residual signal. These transforms are referred to as transforms with dimension reduction and are generalizations of the transforms with high-frequency zeroing as described above. Here, the zeroing of coefficients can be applied in combination with any preceding transform stages and of an arbitrary size. This includes the case where zeroing of coefficients is applied to the first stage. These transforms do not only allow an efficient implementation but also allow an efficient signaling of no-significant coefficients, as described later.
In order to fully describe the multi-stage transforms, as introduced above, each transform stage needs to be given by a unique partitioning into sub-groups and the transforms applied to theses sub-groups.
The complexity reduction of the multi-stage transforms as described above stems from the fact that each sub-group transform can be applied independently of each other, has a limited dimension and/or can be applied using an efficient algorithm. Hence, each sub-group transform is one of the following types:
Sub-group transforms:
• (identity)
· transforms from the DCT/DST families
• fully connected transforms, for sub-group sizes up to 64
• (permutation +) pairwise Givens rotation
• (permutation +) pairwise lifting scheme transformations
• multi-stage transforms themselves
The partitioning into sub-groups can be given by any of the following rules, wherein some of them are depicted in Figures 4 and 5, denoted by the following lowercase letters:
a) For each stage and position a label is stored in ROM which assigns a unique subgroup to it.
b) For each position a label is stored in Rom which assigns a unique sub-group to it.
This partitioning is used for all stages of the transform.
c) Given a unique scan order of positions and a list of sub-group sizes D={d0,d1 ,dN}, the partitioning is done along this scan, by grouping consecutive positions, where the size of each group is given by the associated element of D.
d) Given a unique scan order of positions, the first dO consecutive positions are taken as one sub-group, the remaining positions as a second sub-group.
e) The partitioning is done in horizontal or vertical direction, such that either each row or each column defines a sub-group.
f) The partitioning is done in horizontal direction, such that each row is further partitioned into sub-groups of sizes in {2, 4, 8, 16, 24, 48, 32, 64}
g) The partitioning is done in vertical direction, such that each column is further parti tioned into sub-groups of sizes in {2, 4, 8, 16, 24, 48, 32, 64}
h) The partitioning is done by taking the sub-block which contains the first position (left- top) and has either of the shapes {4x4, 4x8, 4x12, 4x16, 8x4, 8x8, 12x4, 16x4} as one sub-group. The remaining positions form a second group.
i) The partitioning is done by taking the sub-block which contains the first position (left- top) and has either of the shapes {4x4, 4x8, 4x12, 4x16, 8x4, 8x8, 12x4, 16x4} as one sub-group. The remaining positions are partitioned into groups of sizes {1x2, 2x1 , 2x2, 4x4}.
j) The partitioning is done into subgroups with shapes 4x4 and/or 2x2.
k) Sub-group transforms of dimension in {2, 4, 8, 16}
L) Sub-group transforms of dimension in {24, 32, 48, 64}
m) The partitioning is done into subgroups with shape sizes in {2x2, 4x4, 4x8, 4x12, 4x16, 8x4, 8x8, 12x4, 16x4}
n) The partitioning is derived from the width and height of the residual block, by taking the sub-group of size min(8, width) x min(8, height) which contains the first position as one group, the remaining positions form a second group.
o) The partitioning is derived from the width (W) and height (H) of the residual block, by taking the sub-group which contains the first position and is of size in {4x4, 4x8, 4x12, 4x16, 8x4, 8x8, 12x4, 16x4}, by applying the following rules: If W == H then the shape of the sub-group is D x D where D - min(W,8). If W > H the height of the sub-group is set to 4. Its width is chosen by taking the largest size in {8, 12, 16} which is not larger than W. If H > W the width of the sub-group is set to 4. Its height is chosen by taking the largest size in {8, 12, 16} which is not larger than H.
p) Permutation stored in ROM + Pairwise partitioning.
q) Deriving from prediction mode
r) Hierarchical Structure:
CLAIMS
1. Encoder for encoding a picture (12) into a data stream (14) using block-based pre- diction and block-based residual coding, the encoder supporting a set (94) of transforms for the block-based residual coding and configured to
determine (122) a transform candidate list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a height and a width of the current residual block (84), and to
encode a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms and selectively signal the selected transform (102) in the data stream (14).
2. Encoder of claim 1 , wherein
the encoder supports a plurality of block dimensions,
for each block dimension the set (94) of transforms comprises a subset of transforms, a domain of which corresponds to the respective block dimension,
for each transform of the set (94) of transforms the encoder supports a re- verse transform, a domain of which coincides with a codomain of the respective transform, and uses the reverse transform to fill a decoded picture buffer at residual blocks for which the respective transform has been selected,
wherein the encoder is configured to, in determining the transform candidate list (98), exclusively populate the transform candidate list (98) with transforms out of the subset of transforms, the domain of which corresponds to the height and the width of the current residual block (84).
3. Encoder of claim 1 or 2, configured to, in determining the transform candidate list
(98),
if the height and width of the current residual block fulfills a first criterion, populate the transform candidate list (98) with one or more transforms out of the subset of transforms, the domain of which corresponds to the height and width of
the current residual block (84), and the codomain of which is smaller than the domain thereof, or
if the height and width of the current residual block (84) does not fulfill a first criterion, exclude from the transform candidate list the one or more transforms out of the subset of transforms, the domain of which corresponds to the height and width of the current residual block (84), and the codomain of which is smaller than the domain thereof.
4. Encoder of claim 3, wherein the one or more transforms is one or more of a DCT-II, DST-VII and DCT-III.
5. Encoder of any of claims 1 to 4, configured to, in determining the transform candidate list (98),
if the height and width of the current residual block (84) fulfills a second cri terion, populate the transform candidate list (98) with an identity transform out of the subset of transforms, the domain of which corresponds to the height and width of the current residual block (84), or
if the height and width of the current residual block (84) does not fulfill a second criterion, exclude from the transform candidate list the identity transform out of the subset of transforms, the domain of which corresponds to the height and width of the current residual block (84).
6. Encoder of any of claims 1 to 5, configured to check the first and/or second criterion by checking whether the height, the width, both of the height and the width and/or the product of height and width exceeds a certain threshold.
7. Encoder of any of claims 1 to 6, configured to, in determining the transform candi date list (98),
if the height and width of the current residual block (84) fulfills a third criterion, populate the transform candidate list (98) with a separable spectrally decomposing transform out of the subset of transforms, the domain of which corresponds to the size of the current residual block (84),
if the height and width of the current residual block (84) does not fulfill a third criterion, exclude from the transform candidate list (98) the separable spectrally de- composing transform out of the subset of transforms, the domain of which corresponds to the size of the current residual block (84).
8. Encoder of claim 7, configured to check the third criterion by checking whether a ratio of the height and the width exceeds a certain threshold.
9. Encoder of any of claims 1 to 8, configured to, in determining the transform candi date list (98),
if the height and width of the current residual block corresponds to a first predetermined block dimension, populate the transform candidate list (98) with first one or more transforms out of the subset of transforms, the domain of which corresponds to the height and width of the current residual block (84), and which is a multi-stage transform (106) involving a primary transform (108) applied onto a prediction residual (100) within the current residual block (84) and a secondary trans form (110) applied onto a first sub-group (112) of primary transform coefficients (1 14) of the primary transform (108), or
if the height and width of the current residual block (84) corresponds to a second predetermined block dimension, populate the transform candidate list (98) with second one or more transforms out of the subset of transforms, the domain of which corresponds to the height and width of the current residual block (84), and which is a multi-stage transform (106) involving a primary transform (108) applied onto a prediction residual (100) within the current residual block and a secondary transform (110) applied onto a second sub-group (112) of primary transform coeffi- cients (114) of the primary transform (108),
wherein a scaling that images a first codomain of the primary transform (108) of the first one or more transforms onto the second codomain of the primary transform (108) of the first one or more transforms does not image a circumference of the first sub-group within the first codomain onto a circumference of the second sub group within the second codomain.
10. Decoder for decoding a picture (12) from a data stream (14) using block-based pre diction and block-based residual decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
determine (122) a transform candidate list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a height and a width of the current residual block (84), and to
decode a prediction residual (100) within the residual block (84) in a domain of one selected transform (102) out of the selectable list (98) of transforms with selectively deriving the selected transform (102) from the data stream (14).
11. Decoder of claim 10, wherein
the decoder supports a plurality of block dimensions (96),
for each block dimension (96) the set (94) of transforms comprises a subset of transforms, a codomain of which corresponds to the respective block dimension
(96),
wherein the decoder is configured to, in determining the transform candidate list (98), exclusively populate the transform candidate list (98) with transforms out of the subset of transforms, the codomain of which corresponds to the height and the width of the current residual block (84).
12. Decoder of claim 10 or 11 , configured to, in determining the transform candidate list
(98),
if the height and width of the current residual block (84) fulfills a first criterion, populate the transform candidate list (98) with one or more transforms out of the subset of transforms, the codomain of which corresponds to the height and width of the current residual block (84), and the domain of which is smaller than the codomain thereof,
if the height and width of the current residual block (84) does not fulfill a first criterion, exclude from the transform candidate list (98) the one or more transforms out of the subset of transforms, the codomain of which corresponds to the height and width of the current residual block (84), and the domain of which is smaller than the domain thereof.
13. Decoder of claim 12, wherein the one or more transforms is one or more of an inverse DCT-II, DST-VII and DCT-III.
14. Decoder of any of claims 10 to 13, configured to, in determining the transform can- didate list (98),
if the height and width of the current residual block (84) fulfills a second cri terion, populate the transform candidate list (98) with an identity transform out of the subset of transforms, the codomain of which corresponds to the height and width of the current residual block (84), or
if the height and width of the current residual block (84) does not fulfill a second criterion, exclude from the transform candidate list (98) the identity transform out of the subset of transforms, the codomain of which corresponds to the height and width of the current residual block (84)
15. Decoder of any of claims 0 to 14, configured to check the first and/or second criterion by checking whether the height, the width, both of the height and the width and/or the product of height and width exceeds a certain threshold.
16. Decoder of any of claims 10 to 15, configured to, in determining the transform candidate list (98),
if the height and width of the current residual block (84) fulfills a third criterion, populate the transform candidate list (98) with a separable spectrally decomposing transform out of the subset of transforms, the codomain of which corresponds to the size of the current residual block (84), or
if the height and width of the current residual block (84) does not fulfill a third criterion, exclude from the transform candidate list the separable spectrally decom- posing transform out of the subset of transforms, the codomain of which corre sponds to the size of the current residual block (84).
17. Decoder of claim 16, configured to check the third criterion by checking whether a ratio of the height and the width exceeds a certain threshold.
18. Decoder of any of claims 10 to 17, configured to, in determining the transform can didate list (98),
if the height and width of the current residual block (84) corresponds to a first predetermined block dimension, populate the transform candidate list (98) with first one or more transforms out of the subset of transforms, the codomain of which cor- responds to the height and width of the current residual block (84), and which re- verses a multi-stage transform (106) involving a primary transform (108) applied onto a prediction residual (100) within the current residual block (84) and a secondary transform (110) applied onto a first sub-group (112) of primary transform coeffi cients (1 14) of the primary transform (108), or
if the height and width of the current residual block (84) corresponds to a second predetermined block dimension, populate the transform candidate list (98) with second one or more transforms out of the subset of transforms, the codomain of which corresponds to the height and width of the current residual block (84), and which reverses a multi-stage transform (106) involving a primary transform (108) applied onto a prediction residual (100) within the current residual block (84) and a secondary transform (1 10) applied onto a second sub-group (1 12) of primary transform coefficients (1 14) of the primary transform (108),
wherein a scaling that images a first codomain of the primary transform (108) of the first one or more transforms onto the second codomain of the primary trans form (108) of the first one or more transforms does not image a circumference of the first sub-group within the first codomain onto a circumference of the second subgroup within the second codomain.
19. A method for encoding a picture (12) into a data stream (14) using block-based pre diction and block-based residual coding, supporting a set (94) of transforms for the block-based residual coding, wherein the method comprises steps of
determining (122) a transform candidate list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a height and a width of the current residual block (84), and
encoding a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms and selectively signal the selected transform (102) in the data stream (14).
20. A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, supporting a set (94) of transforms for the block-based residual decoding, wherein the method comprises steps of
determining (122) a transform candidate list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a height and a width of the current residual block (84), and
decoding a prediction residual (100) within the residual block (84) in a do- main of one selected transform (102) out of the selectable list (98) of transforms with selectively deriving the selected transform (102) from the data stream (14).
21 . Encoder for encoding a picture (12) into a data stream (14) using block-based pre- diction and block-based residual coding, the encoder supporting a set (94) of transforms for the block-based residual coding and configured to
determine (130) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms;
encode transform coefficient data (126) into the data stream (14) which rep resents a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms;
signal (128) the selected transform (102) in the data stream (14), and/or per- form the determination (130) of the selectable list (98), in a manner depending on the transform coefficient data (126) or on a portion of the transform coefficient data
(126).
22. Encoder according to claim 21 , configured to
determine (130) the selectable list (98) of transforms, by populating the selectable list (98) with a number of transforms out of the set (94) of transforms which number depends on the transform coefficient data (126), or a portion of the trans- form coefficient data (126),
perform the signaling (128) of the selected transform (102) in the data stream (14) in a manner so that a code rate spent in the data stream (14) for the signaling the selected transform (102) is the lower the lower the number is.
23. Encoder according to claim 21 , configured to
determine (130) the selectable list (98) of transforms, by ordering the selectable list (98) of transforms depending on the transform coefficient data (126), or a portion of the transform coefficient data (126),
perform the signaling (128) of the selected transform (102) in the data stream (14) using a variable length code, codewords of which are assigned to the trans forms of the selectable list (98) of transforms depending on an order of the trans forms in the selectable list (98) of transforms.
24. Encoder according to claim 22 or 23, configured
so that the transform coefficient data (126) comprises an indication of a significant transform coefficient position (132) of the selected transform (102) and val- ues of transform coefficients (134) of the selected transform (102) which are trav ersed from the significant transform coefficient position (132) onwards by a prede termined scan order (136) which sequentially traverses coefficient positions of the selected transform (102);
wherein the determination (130) is dependent on the indication.
25. Encoder according to claim 24, configured to
encode a coarse version of the indication into the data stream (14) prior to the signaling (128) of the selected transform (102) in the data stream (14) wherein the determination (130) is dependent on the coarse version of the indication, and
encode a refinement of the coarse version of the indication into the data stream (14) subsequent of the signaling and depending on the selected transform (102).
26. Encoder according to claim 25, configured to
encode as the coarse version a hint revealing whether the significant transform coefficient position (132) is within a sub-group (138) of transform coefficients (134) or not,
and encode as the refinement a relative position information discriminating the significant transform coefficient position (132) among positions within the sub group (138) in case of the significant transform coefficient position (132) being within the sub-group (138) and discriminating the significant transform coefficient position (132) among positions outside the sub-group (138) in case of the significant trans form coefficient position (132) being outside the sub-group (138).
27. Encoder according to claim 26, wherein the encoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is within the sub-group (138), determine the selectable list (98) to comprise at least one multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block and a secondary transform applied onto a sub-group (1 12) of primary transform coefficients (114) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102),
and in case of the hint revealing that the significant transform coefficient position (132) is not within the sub-group (138), determine the selectable list (98) so as to not comprise the at least one multi-stage transform (106).
28. Encoder according to claim 27, wherein the encoder is configured to
encode the relative position information using a variable length coding -VLG
with a first maximum number of codes which corresponds to a number of coefficients within the sub-group (138) in case of the hint revealing that the significant transform coefficient position (132) is within the sub-group (138), and/or
with a second maximum number of codes which corresponds to a number of coefficients outside the sub-group (138) in case of the hint revealing that the sig- n if i cant transform coefficient position (132) is not within the sub-group (138).
29. Encoder according to any one of claims 26 to 28, wherein the encoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is within the sub-group (138), encode after the coarse version but prior to the refinement, a secondary transform indicator indicating whether the selected trans- form is among the at least one multi-stage transform (106) and/or which among the at least one multi-stage transform (106) is the selected transform.
30. Encoder according to any one of claims 26 to 29, wherein the encoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is within the sub-group (138), use contexts which depend on the secondary
transform indicator in order to context adaptively entropy encode the transform co- efficients within the sub-group (138).
31 . Encoder according to claim 29 or 30, wherein the encoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is not within the sub-group (138), context adaptively entropy encode transform coefficients within and outside the sub-group (138).
32. Encoder according to any one of claims 21 to 31 , configured to
count a number of significant transform coefficients (134) of the selected transform (102);
wherein the determination (130) of the selectable list (98) is dependent on the count.
33. Encoder according to any one of claims 21 to 32, configured to
evaluate the transform coefficient data (126) with respect to whether a num- ber of significant transform coefficients of the selected transform (102) within a sub group (138) of the transform coefficients (134) of the selected transform (102) exceeds a certain threshold or not;
perform the determination (130) dependent on the count such that
if the number is larger than the certain threshold,
the selectable list (98) of transforms for the current residual block (84) is populated with at least one multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto a sub-group (1 12) of primary transform coefficients (114) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102), and
if the number is smaller than the certain threshold,
the selectable list (98) of transforms for a current residual block (84) is not populated with any multi-stage transform (106) in volving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto the sub-group (138) of primary transform coefficients (1 14) of the primary transform.
34. Encoder according to any of claims 21 to 33, configured to determine the transform candidate list (98) so that the transforms of the transform candidate list (98) coincide in codomain.
35. Encoder according to any of claims 21 to 34, wherein the transforms of the transform candidate list (98) comprise a first transform and a second transform which
coincide in codomain,
wherein the second transform corresponds to a secondary transform being applied onto a sub-group (112) of primary transform coefficients (114) of the first transform (108) with further primary transform coefficients (114) of the first transform (108) outside the sub group (112) of primary transform coefficients of the first transform (108) being set to zero.
36. Encoder according to claim 35, configured to test coding the current residual block (84) with respect to the second transform by setting to zero further primary transform coefficients (114) of the first transform (108) outside the sub group (112) of primary transform coefficients of the first transform (108).
37. Encoder according to any of claims 21 to 36, configured to
decide
whether to populate the transform candidate list (98) with, or to exclude from the transform candidate list (98), at least one multi-stage trans form (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108) to result into the sub group (138) of the transform coefficients of the selected transform (102), or
where in the transform candidate list the at least one multi-stage transform (106) is to be placed, depending on where according to the transform coefficient data (126) significant transform coefficients are positioned.
38. Encoder according to any of claims 21 to 37, configured to
decide
whether to populate the transform candidate list (98) with, or to ex clude from the transform candidate list (98), at least one multi-stage trans form (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto a sub-group (1 12) of primary transform coefficients (1 14) of the primary transform (108) to result into the sub group (138) of the transform coefficients of the selected transform (102), or
where in the transform candidate list (98) the at least one multi-stage transform (106) is to be placed, depending on whether according to the trans form coefficient data (126) any transform coefficient outside the sub group (138) of the transform coefficients is significant.
39. Encoder according to any of claims 21 to 38, configured to
decide
whether to populate the transform candidate list (98) with, or to exclude from the transform candidate list (98), at least one multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102), or
where in the transform candidate list (98) the at least one multi-stage transform (106) is to be placed depending on whether according to the transform coefficient data (126) any transform coefficient inside the sub-group (112) but outside the sub group (138) of the transform coefficients is signifi- cant.
40. Encoder according to any of claims 21 to 39, configured to
decide
whether to populate the transform candidate list (98) with, or to exclude from the transform candidate list (98), at least one multi stage transform (106) involving a primary transform (108) applied onto the prediction residual (100) of the current residual block (84) and a secondary transform (110) applied onto a subgroup (112) of primary transform coefficients (114) of the primary transform (108) to result into transform coefficients (134) of the multi-stage transform (106) being lower in number than residual samples (105) within the prediction residual (100) of the current residual block (84), and corre sponding in transform coefficient position to a subset (138) of trans form coefficients (134) of a further transform in the transform candidate list (98) equaling the primary transform (108), wherein the pri mary transform coefficients (114) of the primary transform (108) are greater in number than the transform coefficients (134) of the multistage transform (106), or
where in the transform candidate list (98) the at least one multi-stage transform (106) is to be placed relative to the further transform,
depending on
where according to the transform coefficient data (126) significant transform coefficients are positioned, or
whether according to the transform coefficient data (126) significant transform coefficients are positioned outside the subgroup (138) of transform coefficients, or
whether according to the transform coefficient data (126) significant transform coefficients are positioned outside the sub-group (1 12) of primary transform coefficients (114).
41. Decoder for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
determine (130) a selectable list (98) of transforms for a current residual block out of the set (94) of transforms;
decode transform coefficient data (126) from the data stream (14) which rep resents a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms;
derive (128) the selected transform (102) from the data stream (14), and/or perform the determination (130) of the selectable list (98), in a manner depending on the transform coefficient data (126) or on a portion of the data transform coeffi cient data (126).
42. Decoder according to claim 41 , configured to
determine (130) the selectable list (98) of transforms, by populating the selectable list (98) with a number of transforms out of the set (94) of transforms which number depends on the transform coefficient data (126), or on a portion of the trans form coefficient data,
perform the signaling (128) of the selected transform (102) in the data stream (14) in a manner so that a code rate spent in the data stream (14) for the signaling the selected transform (102) is the lower the lower the number is.
43. Decoder according to claim 41 , configured to
determine (130) the selectable list (98) of transforms, by ordering the se lectable list (98) of transforms depending on the transform coefficient data (126), or on a portion of the transform coefficient data (126),
perform the signaling (128) the selected transform (102) in the data stream using a variable length code, codewords of which are assigned to the transforms of the selectable list (98) of transforms depending on an order of the transforms in the selectable list (98) of transforms.
44. Decoder according to claim 42 or 43, configured
so that the transform coefficient data (126) comprises an indication of a sig nificant transform coefficient position (132) of the selected transform (102) and val ues of transform coefficients (134) of the selected transform which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected transform;
wherein the determination (130) is dependent on the indication.
45. Decoder according to claim 44, configured to
decode a coarse version of the indication from the data stream (14) prior to the deriving of the selected transform (102) from the data stream (14) wherein the determination (130) is dependent on the coarse version of the indication, and
decode a refinement of the coarse version of the indication from the data stream (14) subsequent of the deriving and depending on the selected transform
(102).
46. Decoder according to claim 45, configured to
decode as the coarse version a hint revealing whether the significant trans- form coefficient position (132) is within a sub-group (138) of transform coefficients (134) or not,
and decode as the refinement a relative position information discriminating the significant transform coefficient position (132) among positions within the sub group (138) in case of the significant transform coefficient position (132) being within the sub-group (138) and discriminating the significant transform coefficient position (132) among positions outside the sub-group (138) in case of the significant transform coefficient position (132) being outside the sub-group (138).
47. Decoder according to claim 46, wherein the decoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is within the sub-group (138), determine the selectable list (98) to comprise at least one multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block and a secondary transform applied onto a sub-group (1 12) of primary transform coefficients (1 14) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102), and
in case of the hint revealing that the significant transform coefficient position (132) is not within the sub-group (138), determine the selectable list (98) so as to not comprise the at least one multi-stage transform (106).
48. Decoder according to claim 47, wherein the decoder is configured to
decode the relative position information using a variable length coding -VLC-
with a first maximum number of codes which corresponds to a number of coefficients within the sub-group (138) in case of the hint revealing that the signifi cant transform coefficient position (132) is within the sub-group (138), and/or
with a second maximum number of codes which corresponds to a number of coefficients outside the sub-group (138) in case of the hint revealing that the sig nificant transform coefficient position (132) is not within the sub-group (138).
49. Decoder according to any of claims 46 to 48, wherein the decoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is within the sub-group (138), decode after the coarse version but prior to the refinement, a secondary transform indicator indicating whether the selected trans- form is among the at least one multi-stage transform (106) and/or which among the at least one multi-stage transform (106) is the selected transform.
50. Decoder according to any of claims 46 to 49, wherein the decoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is within the sub-group (138), use contexts which depend on the secondary transform indicator in order to context adaptively entropy decode the transform co efficients within the sub-group (138).
51. Decoder according to claim 49 or 50, wherein the decoder is configured to
in case of the hint revealing that the significant transform coefficient position (132) is not within the sub-group (138), context adaptively entropy decode transform coefficients within and outside the sub-group (138).
52. Decoder according to any of claims 41 to 51 , configured to
count a number of significant transform coefficients (134) of the selected transform (102);
wherein the determination (130) is dependent on the count.
53. Decoder according to claim 41 to 52, configured to
evaluate the transform coefficient data (126) with respect to whether a num- ber of significant transform coefficients (134) of the selected transform (102) within a sub group (138) of the transform coefficients (134) of the selected transform (102) exceeds a certain threshold or not;
perform the determination (130) dependent on the count such that
if the number is larger than the certain threshold,
the selectable list (98) of transforms for the current residual block (84) is populated with at least one multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block and a secondary transform applied onto a sub-group (1 12) of primary transform coefficients (114) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102), and
if the number is smaller than the certain threshold,
the selectable list (98) of transforms for a current residual block (84) is not populated with any multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto the sub-group (138) of primary transform coefficients of the pri mary transform.
54. Decoder according to any of claim 41 to 53, configured to determine the transform candidate list (98) so that the transforms of the transform candidate list (98) coincide in codomain.
55. Decoder according to any of claims 41 to 54, configured to
decide
whether to populate the transform candidate list (98) with, or to ex- clude from the transform candidate list (98), at least one multi-stage trans form (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto a sub-group (1 12) of primary transform coefficients (114) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102), or
where in the transform candidate list (98) the at least one multi-stage transform (106) is to be placed depending on where according to the trans form coefficient data (126) significant transform coefficients are positioned.
56. Decoder according to any of claims 41 to 55, configured to
decide
whether to populate the transform candidate list (98) with, or to exclude from the transform candidate list (98), at least one multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto a sub-group (112) of primary transform coefficients (1 14) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102), or
where in the transform candidate list (98) the at least one multi-stage transform (106) is to be placed depending on whether according to the transform coefficient data (126) any transform coefficient outside the sub group (138) of the transform coefficients is significant.
57. Decoder according to any of claims 41 to 56, configured to
decide
whether to populate the transform candidate list (98) with, or to ex clude from the transform candidate list (98), at least one multi-stage transform (106) involving a primary transform applied onto the prediction residual (100) of the current residual block (84) and a secondary transform applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (106) to result into the sub group (138) of the transform coefficients of the selected transform (102), or
where in the transform candidate list (98) the at least one multi-stage transform (106) is to be placed depending on whether according to the transform coefficient data (126) any transform coefficient inside the sub-group (112) but outside the sub group (138) of the transform coefficients is significant.
58. Decoder according to any of claims 41 to 57, configured to
decide
whether to populate the transform candidate list (98) with, or to exclude from the transform candidate list (98), at least one multistage transform (106) involving a primary transform (108) applied onto the prediction residual (100) of the current residual block (84) and a secondary transform (110) applied onto a subgroup (112) of primary transform coefficients (1 14) of the primary transform (108) to result into transform coefficients (134) of the multi-stage transform (106) being lower in number than residual samples (105) within the prediction residual (100) of the current residual block (84), and corre sponding in transform coefficient position to a subset (138) of trans- form coefficients (134) of a further transform in the transform candidate list (98) equaling the primary transform (108), wherein the pri mary transform coefficients (114) of the primary transform (108) are greater in number than the transform coefficients (134) of the multi stage transform (106), or
where in the transform candidate list (98) the at least one multi-stage transform (106) is to be placed relative to the further transform,
depending on
where according to the transform coefficient data (126) significant transform coefficients are positioned, or
whether according to the transform coefficient data (126) sig nificant transform coefficients are positioned outside the subgroup (138) of transform coefficients, or
whether according to the transform coefficient data (126) sig- nificant transform coefficients are positioned outside the sub-group (112) of primary transform coefficients (114).
59. A method for encoding a picture (12) into a data stream (14) using block-based pre- diction and block-based residual coding, supporting a set (94) of transforms for the block-based residual coding, wherein the method comprises steps of
determining (130) a selectable list (98) of transforms for a current residual block out of the set (94) of transforms;
encoding transform coefficient data (126) into the data stream (14) which represents a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms;
signaling (128) the selected transform (102) in the data stream (14), and/or perform the determination (130) of the selectable list (98), in a manner depending on the transform coefficient data (126) or on a portion of the transform coefficient data (126).
60. A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, supporting a set (94) of transforms for the block-based residual decoding, wherein the method comprises steps of
determining (130) a selectable list (98) of transforms for a current residual block out of the set (94) of transforms;
decoding transform coefficient data (126) from the data stream (14) which represents a prediction residual (100) within the residual block (84) using one se- lected transform (102) out of the selectable list (98) of transforms;
deriving (128) the selected transform (102) from the data stream (14), and/or perform the determination (130) of the selectable list (98), in a manner depending on the transform coefficient data (126) or a portion of the data transform coefficient data (126).
61. Encoder for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, the encoder supporting a set (94) of transforms for the block-based residual coding and configured to
determine (130) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms;
signal (128) the selected transform in the data stream (14),
encode (140) transform coefficients (134), which represent a prediction re sidual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms, in a manner dependent on the selected trans form (102) or the selectable list (98) of transforms.
62. Encoder of claim 61 ,
wherein the selectable list (98) of transforms comprises transforms of differ ing number of transform coefficients (134),
and wherein the encoder is configured to perform the encoding of the trans form coefficients ( 34) in a manner so that a code rate spent in the data stream (14) for the encoding of the transform coefficients (134) is the lower the lower the number of transform coefficients (134) of the selected transform (102) is.
63. Encoder of claim 61 or 62,
wherein the selectable list (98) of transforms comprises transforms of differ ing number of transform coefficients (134),
wherein the encoding of the transform coefficients (134) comprises encoding an indication of a significant transform coefficient position (132) of the selected trans form (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient posi tions of the selected transform (102);
wherein the encoder is configured to encode the transform coefficients (134) in a manner so that
a code rate spent in the data stream (14) for the encoding of the indi- cation is the lower the lower the number of transform coefficients (134) of the selected transform (102) is.
64. Encoder of claim 61 or 62,
wherein the selectable list (98) of transforms comprises transforms of a first number of transform coefficients (134) and transforms of a second number of trans form coefficients (134) larger than the first number,
wherein the encoding of the transform coefficients (134) comprises
in case of the number of transform coefficients (134) of the selected transform (102) being the second number,
encoding an indication of a significant transform coefficient position (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coeffi- cient positions of the selected transform (102);
in case of the number of transform coefficients (134) of the selected transform (102) being the first number,
encoding values of all of the first number of transform coeffi- cients (134) of the selected transform (102).
65. Encoder of any of claims 61 to 64,
wherein the selectable list (98) of transforms comprises at least one multi- stage transform, each involving a primary transform applied onto the current residual block (84) and a secondary transform applied onto a sub-group (138) of primary transform coefficients (134) of the primary transform, wherein the sub-group (138) differs for different ones of the at least one multi-stage transforms,
wherein the encoder is configured to encode the transform coefficients (134)
by encoding an indication of a significant transform coefficient position (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected trans form, wherein the indication comprises, if the selected transform is a multistage transform, a flag whether the significant transform coefficient position (132) is within the sub-group (138) of transform coefficients (134), and if the transform coefficient position is within the sub-group (138) of transform co efficients (134), the indication indicates the significant transform coefficient position (132) relative to a position traversed last among all transform coefficients (134) of the selected transform (102) in the predetermined scan order (136) and if the transform coefficient position is not within the sub-group (138) of transform coefficients (134), relative to a position traversed last among all transform coefficients (134) not within the sub-group (138) in the predetermined scan order (136), wherein the predetermined scan order (136) traverses all transform coefficients (134) within the sub-group (138) after having traversed all transform coefficients (134) not within the sub- group (138), and/or
by encoding, if the selected transform is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on whether the transform coefficient (134) is within the sub-group (138) of transform coefficients (134) of the selected transform (102), and/or
by encoding, if the selected transform (102) is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on one or more neighboring transform coefficients in a manner dependent on whether the transform coefficient (134) is within the sub-group (138) of transform coeffi cients (134) of the selected transform (102).
66. Encoder of any of claims 61 to 65,
wherein the selectable list (98) of transforms comprises at least one multi-stage transform, each involving a primary transform applied onto the current residual block (84) and a secondary transform applied onto a sub-group (138) of primary transform coefficients (134) of the primary transform, wherein the selectable list (98) comprises at least one transform of a primary transform only type,
wherein the encoder is configured to encode the transform coefficients (134)
by encoding an indication of a significant transform coefficient posi- tion (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform which are traversed from the significant trans- form coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected transform (102), wherein the indication is relative to a position traversed last among all transform coefficients (134) of the selected transform (102) in the predetermined scan order (136) in case of the selected transform being of the primary transform only type, or relative to a position traversed last among all trans- form coefficients (134) not within the sub-group (138) in the predetermined scan order (136) in case of the selected transform being a multi-stage trans form (106), and/or
by encoding an indication of a significant transform coefficient position (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected transform (102), wherein the indication comprises, if the selected transform (102) is a multi-stage transform, a flag whether the significant transform coefficient position (132) is within the sub-group (138) of transform coefficients (134), and if the transform coefficient position (132) is within the sub-group (138) of transform coefficients (134), the indication indicates the significant transform coefficient position (132) relative to a position traversed last among all transform coefficients (134) of the selected transform (102) in the predetermined scan order (136) and if the transform coefficient position (132) is not within the sub-group (138) of transform coefficients (134), relative to a position trav ersed last among all transform coefficients not within the sub-group (138) in the predetermined scan order (136), wherein the predetermined scan order (136) traverses all transform coefficients (134) within the sub-group (138)
after having traversed all transform coefficients (134) not within the subgroup (138), and/or
by encoding, if the selected transform (102) is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on whether the transform coefficient (134) is within the sub-group (138) of transform coeffi cients (134) of the selected transform (102), and/or
by encoding, if the selected transform (102) is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on one or more neighboring transform coefficients in a manner dependent on whether the transform coefficient (134) is within the sub-group (138) of transform coeffi- cients (134) of the selected transform (102).
67. Encoder of any of claims 61 to 66,
configured to encode the transform coefficients (134) by encoding a value of a transform coefficient (134) of the selected transform (102) using binarization and binary entropy coding wherein
a probability estimation used in binary entropy coding depends on the selected transform (102), and/or
wherein the binarization depends on the selected transform (102).
68. Encoder of claim 66 or 67, wherein the dependency on the selected transform (102) is a dependency on whether the selected transform (102) is a multi-stage transform or not.
69. Encoder of any of claims 61 to 68, configured to
signal the selected transform (102) using an index,
encode the transform coefficients (134) by encoding a value of a transform coefficient (134) of the selected transform (102) using binarization and binary en tropy coding, wherein
a probability estimation used in binary entropy coding depends on the index, and/or
wherein the binarization depends on the index.
70. Encoder of claim 69, wherein the index is a variable length code - VLC - index.
71. Encoder of any of claims 61 to 70,
configured to encode the transform coefficients (134) by encoding a value of a transform coefficient (134) of the selected transform using entropy coding, wherein
the entropy coding depends on one or more neighboring transform coefficients in a manner dependent on the selected transform (102).
72. Encoder of claim 71 ,
configured to encode the transform coefficients (134) by encoding a value of a transform coefficient (134) of the selected transform (102) using entropy coding by
selecting a local template of one or more neighboring transform co efficients (134) in a manner dependent the transform coefficient’s position in the selected transform (102) ,
determine, using a mapping of a domain of possible values of the one or neighboring transform coefficient to a set of one or more contexts for the transform coefficient, a selected context for the transform coefficient (134),
using a probability estimation associated with the selected context for entropy coding the value of the transform coefficient (134),
wherein at least one of the selection of the local template and the mapping is dependent on the selected transform (102).
73. Encoder of claim 72, configured to
perform the encoding of the value of the transform coefficient (134) of the selected transform (102) using binary entropy coding a binarization of the value, wherein the probability estimation associated with the selected context is used for a bin of the binarization indicative of the value being zero or not.
74. Encoder according to any of claims 61 to 73, configured to
perform the signaling of the selected transform (134) in the data stream (14) in a manner so that
a relative positioning of a signaling of the selected transform (102) with respect to the transform coefficient data (126), and/or a decomposition of the signaling into syntax elements,
depends on the selectable list (98) of transforms.
75. Decoder for decoding a picture (12) from a data stream (14) using block-based pre- diction and block-based residual decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
determine (130) a selectable list (98) of transforms for a current residual block (84) out of the set of transforms;
derive (128) the selected transform from the data stream (14),
decode (140) from the data stream (14) transform coefficients (134), which represent a prediction residual (100) within the residual block (84) using one se lected transform (102) out of the selectable list (98) of transforms, in a manner de- pendent on the selected transform (102) or on the selectable list (98) of transforms.
76. Decoder of claim 75,
wherein the selectable list (98) of transforms comprises transforms of differing number of transform coefficients (134),
perform the decoding of the transform coefficients (134) in a manner so that a code rate spent in the data stream (14) for the transform coefficients (134) is the lower the lower the number of transform coefficients (134) of the selected transform (102) is.
77. Decoder of claim 75 or 76,
wherein the selectable list (98) of transforms comprises transforms of differing number of transform coefficients (134),
wherein the decoding the transform coefficients comprises decoding an indi cation of a significant transform coefficient position (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected transform (102);
wherein the decoder is configured to decode the transform coefficients (134) in a manner so that
a code rate spent in the data stream (14) for the indication is the lower the lower the number of transform coefficients (134) of the selected trans form (102) is.
78. Decoder of claim 75 or 76,
wherein the selectable list (98) of transforms comprises transforms of a first number of transform coefficients (134) and transforms of a second number of trans form coefficients (134) larger than the first number,
wherein the decoding of the transform coefficients (134) comprises
in case the number of transform coefficients (134) of the selected transform (102) being the second number,
decoding an indication of a significant transform coefficient position (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coeffi- cient positions of the selected transform (102); or
in case the number of transform coefficients (134) of the selected transform (102) being the first number,
decoding values of all of the first number of transform coeffi- cients (134) of the selected transform (102).
79. Decoder of any of claims 75 to 78,
wherein the selectable list (98) of transforms comprises at least one multi stage transform, each involving a primary transform applied onto the current residual block (84) and a secondary transform applied onto a sub-group (138) of primary transform coefficients (134) of the primary transform, wherein the sub-group (138) differs for different ones of the at least one multi-stage transforms,
wherein the decoder is configured to decode the transform coefficients (134)
by decoding an indication of a significant transform coefficient posi- tion (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected transform (102), wherein the indication comprises, if the selected transform is a multi-stage transform, a flag whether the significant transform coefficient po- sition (132) is within the sub-group (138) of transform coefficients (134), and if the significant transform coefficient position (132) is within the sub-group (138) of transform coefficients (134), the indication indicates the significant transform coefficient position (132) relative to a position traversed last among all transform coefficients (134) of the selected transform (102) in the predetermined scan order (136) and if the transform coefficient position (132) is not within the sub-group (138) of transform coefficients (134), relative to a position traversed last among all transform coefficients (134) not within the sub-group (138) in the predetermined scan order (136), wherein the predetermined scan order (136) traverses all transform coefficients (134) within the sub-group (138) after having traversed all transform coefficients (134) not within the sub-group (138), and/or
by decoding, if the selected transform (102) is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on whether the transform coefficient (134) is within the sub-group (138) of transform coeffi cients (134) of the selected transform (102), and/or
by decoding, if the selected transform (102) is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on one or more neighboring transform coefficients in a manner dependent on whether the transform coefficient (134) is within the sub-group (138) of transform coeffi- cients (134) of the selected transform (102).
80. Decoder of any of claims 75 to 79,
wherein the selectable list (98) of transforms comprises at least one multistage transform, each involving a primary transform applied onto the current residual block (84) and a secondary transform applied onto a sub-group (138) of primary transform coefficients (134) of the primary transform, wherein the selectable list (98) comprises at least one transform of a primary transform only type,
wherein the decoder is configured to decode the transform coefficients (134)
by decoding an indication of a significant transform coefficient posi tion (132) of the selected transform (102) and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant transform coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected transform (102), wherein the indication is relative to a position traversed last among all transform coefficients (134) of the selected transform (102) in the predetermined scan order (136) in case of the selected transform (102) being of the primary transform only type, or relative to a position traversed last among all transform coefficients (134) not within the sub-group (138) in the predetermined scan order (136) in case of the selected transform (102) being a multi-stage transform (106), and/or
by decoding an indication of a significant transform coefficient posi tion (132) of the selected transform and values of transform coefficients (134) of the selected transform (102) which are traversed from the significant trans- form coefficient position (132) onwards by a predetermined scan order (136) which sequentially traverses coefficient positions of the selected transform (102), wherein the indication comprises, if the selected transform (102) is a multi-stage transform, a flag whether the significant transform coefficient position (132) is within the sub-group (138) of transform coefficients, and if the significant transform coefficient position (132) is within the sub-group (138) of transform coefficients (134), the indication indicates the significant transform coefficient position (132) relative to a position traversed last among all transform coefficients (134) of the selected transform (102) in the predeter mined scan order (136) and if the significant transform coefficient position (132) is not within the sub-group (138) of transform coefficients (134), relative to a position traversed last among all transform coefficients (134) not within the sub-group (138) in the predetermined scan order (136), wherein the predetermined scan order (136) traverses all transform coefficients (134) within the sub-group (138) after having traversed all transform coefficients (134) not within the sub-group (138), and/or
by decoding, if the selected transform (102) is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on whether the transform coefficient (134) is within the sub-group (138) of transform coeffi cients (134) of the selected transform (102), and/or
by decoding, if the selected transform (102) is of the multi-stage type, a value of a transform coefficient (134) of the selected transform (102) using entropy coding using a probability estimation which depends on one or neighboring transform coefficients in a manner dependent on whether the transform coefficient (134) is within the sub-group (138) of transform coefficients (134) of the selected transform (102).
81. Decoder of any of claims 75 to 80,
configured to decode the transform coefficients (134) by decoding a value of a transform coefficient (134) of the selected transform (102) using binarization and binary entropy coding wherein
a probability estimation used in binary entropy coding depends on the selected transform (102), and/or
wherein the binarization depends on the selected transform (102).
82. Decoder of claim 81 , wherein the dependency on the selected transform (102) is a dependency on whether the selected transform (102) is a multi-stage transform or not.
83. Decoder of any of claims 75 to 82, configured to
derive the selected transform (102) using an index,
decode the transform coefficients (134) by decoding a value of a transform coefficient (134) of the selected transform (102) using binarization and binary en- tropy decoding, wherein
a probability estimation used in binary entropy coding depends on the index, and/or
wherein the binarization depends on the index.
84. Decoder of claim 83, wherein the index is a variable length code - VLC - index.
85. Decoder of any of claims 75 to 84,
configured to decode the transform coefficients (134) by decoding a value of a transform coefficient (134) of the selected transform (102) using entropy decoding, wherein
the entropy decoding depends on one or more neighboring transform coefficients in a manner dependent on the selected transform (102).
86 Decoder of claim 85,
configured to decode the transform coefficients (134) by decoding a value of a transform coefficient (134) of the selected transform (102) using entropy decoding by
selecting a local template of one or neighboring transform coefficients in a manner dependent the transform coefficient’s position in the selected transform (102),
determining, using a mapping of a domain of possible values of the one or neighboring transform coefficient to a set of one or more contexts for the transform coefficient (134), a selected context for the transform coeffi cient (134),
using a probability estimation associated with the selected context for entropy decoding the value of the transform coefficient (134),
wherein at least one of the selection of the local template and the mapping is dependent on the selected transform (102).
87. Decoder of claim 86,
configured to perform the decoding of the value of the transform coefficient (134) of the selected transform (102) using binary entropy decoding a binarization of the value, wherein the probability estimation associated with the selected context is used for a bin of the binarization indicative of the value being zero or not.
88. Decoder according to any of claims 75 to 87, configured to
perform the signaling of the selected transform (102) in the data stream (14) in a manner so that
a relative positioning of a signaling of the selected transform (102) with respect to the transform coefficient data (134), and/or a decomposition of the signaling into syntax elements,
depends on the selectable list (98) of transforms.
89. A method for encoding a picture into a data stream using block-based prediction and block-based residual coding, supporting a set of transforms for the block-based residual coding, wherein the method comprises steps of
determining (130) a selectable list (98) of transforms for a current residual block out of the set of transforms;
signaling (128) the selected transform in the data stream,
encoding (140) transform coefficients, which represent a prediction residual within the residual block using one selected transform out of the selectable list of transforms, in a manner dependent on the selected transform (102) or the selectable list (98) of transforms.
90. A method for decoding a picture from a data stream using block-based prediction and block-based residual decoding, supporting a set of transforms for the block- based residual decoding, wherein the method comprises steps of
determining (130) a selectable list (98) of transforms for a current residual block out of the set of transforms;
deriving (128) the selected transform from the data stream,
decoding (140) from the data stream transform coefficients, which represent a prediction residual within the residual block using one selected transform out of the selectable list of transforms, in a manner dependent on the selected transform (102) or on the selectable list (98) of transforms.
91 . Encoder for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, the encoder supporting a set (94) of transforms for the block-based residual coding and configured to
determine a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms,
encode a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms;
signal (128) the selected transform (102) in the data stream (14) using a transform indicator (124),
wherein the transform indicator (124) is signaled in the data stream (14) us ing a code with one or more digits, wherein each of a set of the one or more digits is uniquely associated with a respective transform property.
92. Encoder of claim 91 , wherein each transform property is one of
whether the selected transform (102) is a multi-stage transform, and
whether the selected transform (102) is a transform having less transform coefficients (134) than a predetermined number of transform coefficients (134).
93. Encoder of claim 91 or 92, configured to
encode at least one of the set of at least one digit using entropy coding using a probability estimation which depends on a transform indicator (124) of a neighboring residual block (84').
94. Decoder for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
determine a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms,
decode from the data stream (14) a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms;
derive (128) the selected transform (102) from the data stream (14) using a transform indicator (124),
wherein the transform indicator (124) is derived from the data stream (14) using a code with one or more digits, wherein each of a set of the one or more digits is uniquely associated with a respective transform property.
95. Decoder of claim 94, wherein each transform property is one of
whether the selected transform (102) is a multi-stage transform, and
whether the selected transform (102) is a transform having less transform coefficients (134) than a predetermined number of transform coeffi cients (134).
96. Decoder of claim 94 or 95, configured to
decode at least one of the set of at least one digit using entropy decoding using a probability estimation which depends on a transform indicator (124) of a neighboring residual block (84').
97. A method for encoding a picture (12) into a data stream (14) using block-based pre diction and block-based residual coding, supporting a set (94) of transforms for the block-based residual coding, wherein the method comprises steps of
determining a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms,
encoding a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms;
signaling (128) the selected transform (102) in the data stream (14) using a transform indicator (124),
wherein the transform indicator (124) is signaled in the data stream (14) using a code with one or more digits, wherein each of a set of the one or more digits is uniquely associated with a respective transform property.
98. A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, supporting a set (94) of transforms for the block-based residual decoding, wherein the method comprises steps of
determining a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms,
decoding from the data stream (14) a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms;
deriving (128) the selected transform from the data stream (14) using a trans- form indicator (124),
wherein the transform indicator (124) is derived from the data stream (14) using a code with one or more digits, wherein each of a set of the one or more digits is uniquely associated with a respective transform property.
99. Encoder for encoding a picture (12) into a data stream (14) using biock-based pre- diction and block-based residual coding, the encoder supporting a set (94) of transforms for the block-based residual coding and configured to
predict an intra-predicted block (80) by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a selected neural network out of a plurality (92) of neural networks to obtain a prediction (104) of the intra-predicted block (80), and
determine a selectable set (98) of transforms for a residual block (84) covering the intra-predicted block (80) out of the set (94) of transforms based on the selected neural network and a block size (96) of the residual block (84),
encode a prediction residual (100) associated with the prediction of the intra- predicted block (80) within the residual block (84) using one selected transform (102) out of the selectable set (98) of transforms and signal the selected transform in the data stream (14).
100. Encoder of claim 99, configured to
perform the determination so that
for block sizes above a predetermined threshold,
the selectable set (98) of transforms is populated by a first number of one or more multi-stage transforms (106), each involving a primary transform (108) applied onto the prediction residual (100) and a secondary transform (110) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108), the secondary transform (1 10) being non-separable and depending on the selected neural network.
101. Encoder of claim 100, configured to
perform the determination so that the primary transform (108) depends on the selected neural network (102) and is a separable two-dimensional transform
(116).
102. Encoder of claim 101 , wherein the sub-group (1 12) represents a low-frequency portion of the primary transform (108).
103. Encoder of any of claims 100 to 102, wherein the first number is between 2 and 6, both inclusively.
104. Encoder of any of claims 100 to 103, configured to
perform the determination so that
for block sizes below the predetermined threshold,
the selectable set (98) of transforms is populated by a second number of one or more non-separable transforms (118).
105. Encoder of claim 104, when referring back to claim 102, wherein the first and second number are equal.
106. Encoder of any of claims 100 to 105, configured to
perform the determination so that the selectable set (98) of transforms is fur ther populated by a third number of one or more separable two-dimensional transforms (116).
107. Encoder of claim 106, wherein the third number is 1 or 5.
108. Encoder of any of claims 99 to 107, configured to
perform the prediction so that the prediction of the intra predicted block (80) is obtained in a domain (1 18) of a primary transform (108),
perform the determination so that
the selectable set (98) of transforms is populated by a fourth number of one or more multi-stage transforms (106), each involving the primary transform (108) and a secondary transform (110) applied onto a sub-group (112) of the primary transform coefficients (1 14) of the primary transform (108), the secondary transform (110) being non-separable and depending on the selected neural network.
109. Encoder of claim 108, configured to
perform the determination so that the primary transform (108) is a separable two-dimensional transform (1 16).
110. Encoder of claim 108 or 109, wherein the sub-group (112) represents a low-fre- quency portion of the primary transform (108).
11 1 . Encoder of any of claims 108 to 1 10, wherein the fourth number is between 2 and 6, both inclusively.
112. Encoder of any of claims 1 10 to 1 1 1 , configured to
perform the determination so that the selectable set (98) of transforms is fur ther populated by the primary transform (108).
1 13. Encoder of any of claims 99 to 112 configured to
check whether a quantization parameter of the residual block (84) is included in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set (98) of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
114. Decoder for decoding a picture (12) from a data stream (14) using block-based pre- diction and block-based residual decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
predict an intra-predicted block by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a selected neural network out of a plurality (92) of neural networks to obtain a prediction (104) of the intra-predicted block (80), and
determine a selectable set (98) of transforms for a residual block (84) covering the intra-predicted block (80) out of the set (94) of transforms based on the se lected neural network and a block size (96) of the residual block (84),
decode a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within the residual block (84) from the data stream in a domain of one selected transform (102) out of the selectable set (98) of transforms with deriving the selected transform from the data stream (14).
115. Decoder of claim 114, configured to
perform the determination so that
for block sizes above a predetermined threshold,
the selectable set (98) of transforms is populated by a first number of one or more multi-stage transforms (106), each involving a primary transform (108) applied onto the prediction residual (100) and a secondary transform (110) applied onto a sub-group (112) of primary transform coefficients (1 14) of the primary transform (108), the secondary transform (110) being non-separable and depending on the selected neural network.
116. Decoder of claim 1 15, configured to
perform the determination so that the primary transform (108) depends on the selected neural network (102) and is a separable two-dimensional transform
(1 16).
117. Decoder of claim 116, wherein the sub-group (1 12) represents a low-frequency portion of the primary transform (108).
118. Decoder of any of claims 115 to 117, wherein the first number is between 2 and 6, both inclusively.
119. Decoder of any of claims 115 to 118, configured to
perform the determination so that
for block sizes below the predetermined threshold,
the selectable set (98) of transforms is populated by a second number of one or more non-separable transforms (118).
120. Decoder of claim 119, when referring back to claim 117, wherein the first and second number are equal.
121. Decoder of any of claims 1 15 to 120, configured to
perform the determination so that the selectable set (98) of transforms is further populated by a third number of one or more separable two-dimensional trans- forms (116).
122. Decoder of claim 121 , wherein the third number is 1 or 5.
123. Decoder of any of claims 114 to 122, configured to
perform the prediction so that the prediction (104) of the intra predicted block (80) is obtained in a domain (1 18) a primary transform (108),
perform the determination so that
the selectable set (98) of transforms is populated by a fourth number of one or more multi-stage transforms (106), each involving the primary transform (108) and a secondary transform (110) applied onto a sub-group (112) of the primary transform coefficients (114) of the primary transform
(108), the secondary transform (110) being non-separable and depending on the selected neural network.
124. Decoder of claim 123, configured to
perform the determination so that the primary transform (108) is a separable two-dimensional transform (1 16).
125, Decoder of claim 123 or 124, wherein the sub-group (1 12) represents a low-frequency portion of the primary transform (108).
126. Decoder of any of claims 123 to 125, wherein the fourth number is between 2 and 6, both inclusively.
127 Decoder of any of claims 123 to 126, configured to
perform the determination so that the selectable set (98) of transforms is fur- ther populated by the primary transform (108).
128. Decoder of any of claims 114 to 127 configured to
check whether a quantization parameter of the residual block (84) is included in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set (98) of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
129. A method for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, supporting a set (94) of transforms for the block-based residual coding wherein the method comprises steps of
predicting an intra-predicted block by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a selected neural network out of a plurality (92) of neural networks to obtain a prediction (104) of the intra-predicted block (80),
determining a selectable set (98) of transforms for a residual block (84) cov- ering the intra-predicted block (80) out of the set (94) of transforms based on the selected neural network and a block size (96) of the residual block (84),
encoding a prediction residual (100) associated with the prediction of the intra-predicted block (80) within the residual block (84) using one selected transform (102) out of the selectable set (98) of transforms and signal the selected transform in the data stream (14).
130. A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, supporting a set (94) of transforms for the block-based residual decoding, wherein the method comprises steps of
predicting an intra-predicted block by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a selected neural network out of a plurality (92) of neural networks to obtain a prediction (104) of the intra-predicted block (80),
determining a selectable set (98) of transforms for a residual block (84) covering the intra-predicted block (80) out of the set (94) of transforms based on the selected neural network and a block size (96) of the residual block (84),
decoding a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within the residual block (84) from the data stream in a domain of one selected transform (102) out of the selectable set (98) of transforms with deriving the selected transform from the data stream (14).
131. Encoder for encoding a picture (12) into a data stream (14) using block-based pre- diction and block-based residual coding, the encoder configured to
predict an intra-predicted block (80) by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a neural network (NN#) to obtain a prediction (104) of the intra-predicted block (80) in a domain (118) of a primary transform (108), and
encode a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within a residual block (84) using one selected transform (102) out of a selectable set (98) of transforms and signal the selected transform (102) in the data stream (14),
wherein the selectable set (98) of transforms is populated by at least one multi-stage transform (106) involving the primary transform (108) and a secondary transform (110) applied onto a sub-group (1 12) of primary transform coefficients (114) of the primary transform (108).
132. Encoder of claim 131 , wherein
the selectable set (98) of transforms is populated by a number of multi-stage transforms (106), each involving the primary transform (108) and a secondary trans form (110) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108), the secondary transforms (1 10) being non-separable.
133. Encoder of any of claims 132, wherein the number is between 2 and 6, both inclu- sively.
134. Encoder of any of claims 131 or 133, wherein the primary transform (108) is a sep- arable two-dimensional transform.
135. Encoder of any of claims 131 to 134, wherein the sub-group (112) represents a low- frequency portion of the primary transform.
136. Encoder of any of claims 131 to 135, configured to
perform the determination so that the selectable set (98) of transforms is further populated by the primary transform.
137. Encoder of any of claims 131 to 136, configured to
check whether a quantization parameter of the intra-predicted block is included in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
138. Decoder for decoding a picture (12) from a data stream (14) using block-based pre- diction and block-based residual coding, the decoder configured to
predict an intra-predicted block (80) by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a neural network (NN#) to obtain a prediction (104) of the intra-predicted block (80) in a domain (118) of a primary transform (108), and
decode from the data stream (14) a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within a residual block (84) in a further domain (119) of one selected transform (102) out of a selectable set (98) of transforms with deriving the selected transform (102) from the data stream (14),
wherein the selectable set (98) of transforms is populated by at least one multi-stage transform (106) involving the primary transform (108) and a secondary transform (1 10) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108).
139. Decoder of claim 138, wherein
the selectable set (98) of transforms is populated by a number of multi-stage transforms (106), each involving the primary transform (108) and a secondary transform (1 10) applied onto a sub-group (1 12) of primary transform coefficients (114) of the primary transform (108), the secondary transforms (1 10) being non-separable.
140. Decoder of any of claims 139, wherein the number is between 2 and 6, both inclusively.
141. Decoder of any of claims 138 or 140, wherein the primary transform (108) is a sep- arable two-dimensional transform.
142. Decoder of any of claims 138 to 141 , wherein the sub-group ( 12) represents a low- frequency portion of the primary transform.
143. Decoder of any of claims 138 to 142, configured to
perform the determination so that the selectable set (98) of transforms is fur- ther populated by the primary transform.
144. Decoder of any of claims 138 to 143, configured to
check whether a quantization parameter of the intra-predicted block is in cluded in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
145. A method for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, wherein the method comprises steps of
predicting an intra-predicted block (80) by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a neural network (NN#) to obtain a predic- tion (104) of the intra-predicted block (80) in a domain (1 18) of a primary transform (108), and
encoding a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within a residual block (84) using one selected transform (102) out of a selectable set (98) of transforms and signal the selected transform (102) in the data stream (14),
wherein the selectable set (98) of transforms is populated by at least one multi-stage transform (106) involving the primary transform (108) and a secondary transform (110) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108).
146. A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual coding, the method comprises steps of
predicting an intra-predicted block (80) by applying a spatial neighborhood (90) of the intra-predicted block (80) onto a neural network (NN#) to obtain a predic- tion (104) of the intra-predicted block (80) in a domain (1 18) of a primary transform (108), and
decoding from the data stream (14) a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within a residual block (84) in a further domain (119) of one selected transform (102) out of a selectable set (98) of transforms with deriving the selected transform (102) from the data stream (14),
wherein the selectable set (98) of transforms is populated by at least one multi-stage transform (106) involving the primary transform (108) and a secondary transform (110) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108).
147. Encoder for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, the encoder supporting a set (94) of transforms for the block-based residual coding and configured to
predict an intra-predicted block (80) based on a spatial neighborhood (90) of the intra-predicted block (80) using a selected one of out of a set (120) of intra pre- diction modes to obtain a prediction (104) of the intra-predicted block (80), and
determine a selectable set (98) of transforms for a residual block (84) covering the intra-predicted block (80) out of the set (94) of transforms based on the selected intra prediction mode and a block size (96) of the residual block (84),
encode a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within the residual block (84) using one selected transform (102) out of the selectable set (98) of transforms and signal the selected transform (102) in the data stream (14).
148. Encoder of claim 147, configured to
perform the determination so that
for block sizes of a first predetermined set of predetermined block sizes,
the selectable set (98) of transforms is populated by a number of one or more multi-stage transforms (106), each involving a primary transform (108) applied onto the prediction residual (100) and a sec- ondary transform (110) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108), the secondary transform (1 10) being non-separable and depending on the selected intra prediction mode.
149. Encoder of claim 148, configured to
perform the determination so that the primary transform (108) depends on the selected intra-prediction mode and is a separable two-dimensional transform
(1 16).
150. Encoder of claim 148 or 149, wherein the sub-group (112) depends on the selected intra-prediction mode.
151. Encoder of any of claims 148 to 150, configured to
perform the determination so that
for block sizes of a second predetermined set of predetermined block sizes smaller than the first predetermined set of predetermined block sizes,
the selectable set (98) of transforms is populated by a second number of one or more non-separable transforms (118).
152. Encoder of any of claims 148 to 151 , configured so that a manner at which the sec ondary transform (110) depends on the selected intra prediction mode involves an intra prediction mode aggregation.
153. Encoder of any of claims 148 to 152, configured so that a manner at which the primary transform (108) depends on the selected intra prediction mode involves an intra prediction mode aggregation.
154. Encoder of any of claims 147 to 153, configured to
check whether a quantization parameter of the residual block (84) is included in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set (98) of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
155. Decoder for decoding a picture (12) from a data stream (14) using block-based pre diction and block-based residua! decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
predict an intra-predicted block (80) based on a spatial neighborhood (90) of the intra-predicted block (80) using a selected one of out of a set (120) of intra prediction modes to obtain a prediction (104) of the intra-predicted block (80), and
determine a selectable set (98) of transforms for a residual block (84) covering the intra-predicted block (80) out of the set (94) of transforms based on the se lected intra prediction mode and a block size (96) of the residual block (84),
decode from the data stream (14) a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within the residual block (84) in a domain of one selected transform (102) out of the selectable set (98) of transforms with deriving the selected transform (102) from the data stream (14).
156. Decoder of claim 155, configured to
perform the determination so that
for block sizes of a first predetermined set of predetermined block sizes,
the selectable set (98) of transforms is populated by a number of one or more multi-stage transforms (106), each involving a primary transform (108) applied onto the prediction residual (100) and a secondary transform (110) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform (108), the secondary transform (1 10) being non-separable and depending on the selected intra prediction mode.
157. Decoder of claim 156, configured to
perform the determination so that the primary transform (108) depends on the selected intra-prediction mode and is a separable two-dimensional transform
(1 16).
158. Decoder of claim 156 or 157, wherein the sub-group (112) depends on the selected intra-prediction mode.
159. Decoder of any of claims 156 to 158, configured to
perform the determination so that
for block sizes of a second predetermined set of predetermined block sizes smaller than the first predetermined set of predetermined block sizes,
the selectable set (98) of transforms is populated by a second number of one or more non-separable transforms (116).
160. Decoder of any of claims 156 to 159, configured so that a manner at which the sec ondary transform (1 10) depends on the selected intra prediction mode involves an intra prediction mode aggregation.
161. Decoder of any of claims 155 to 160 configured to
check whether a quantization parameter of the residual block (84) is included in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set (98) of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
162. A method for encoding a picture (12) into a data stream (14) using block-based pre- diction and block-based residual coding, supporting a set (94) of transforms for the block-based residual coding, wherein the method comprises steps of
predicting an intra-predicted block (80) based on a spatial neighborhood (90) of the intra-predicted block (80) using a selected one of out of a set (120) of intra prediction modes to obtain a prediction (104) of the intra-predicted block (80),
determining a selectable set (98) of transforms for a residual block (84) covering the intra-predicted block (80) out of the set (94) of transforms based on the selected intra prediction mode and a block size (96) of the residual block (84), encoding a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within the residual block (84) using one selected trans-form (102) out of the selectable set (98) of transforms and signal the selected transform (102) in the data stream (14).
A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, supporting a set (94) of transforms for the block-based residual decoding, wherein the method comprises steps of
predicting an intra-predicted block (80) based on a spatial neighborhood (90) of the intra-predicted block (80) using a selected one of out of a set (120) of intra prediction modes to obtain a prediction (104) of the intra-predicted block (80),
determining a selectable set (98) of transforms for a residual block (84) cov-ering the intra-predicted block (80) out of the set (94) of transforms based on the selected intra prediction mode and a block size (96) of the residual block (84),
decoding from the data stream (14) a prediction residual (100) associated with the prediction (104) of the intra-predicted block (80) within the residual block (84) in a domain of one selected transform (102) out of the selectable set (98) of transforms with deriving the selected transform (102) from the data stream (14).
164. Encoder for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, the encoder supporting a set (94) of trans forms for the block-based residual coding and configured to
determine (122) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a reference transform selected for a neighboring residual block (84’, 84”),
encode a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms and signal the selected transform (102) in the data stream (14).
165. Encoder of embodiment 164, configured to order (122) the selectable list (98) using the reference transform.
166. Encoder of embodiment 164 or 165, configured to
order (122) the selectable list (98) by positioning the reference transform or a transform corresponding to the reference transform at a rank (# in“n#”) associated with
a most probable selection, or
a second most probable selection.
167. Encoder of any of claims 164 to 166, configured to
determine (122) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on reference transforms selected for a set of neighboring residual blocks (84', 84").
168. Encoder of claim 167, configured to
order (122) the selectable list (98) by positioning the reference transforms mutually at an order corresponding to a frequency at which the reference transforms are selected for the set of neighboring residual blocks (84’, 84”).
169. Encoder of any of claims 164 to 168, configured to populate (122) the selectable list (98) with the reference transform.
170. Encoder of any of claim 169, wherein the reference transform is an analytically de- finable separable spectrally decomposing transform and the encoder is configured to
populate (122) the selectable list (98) with a further transform derived by adapting the reference transform to a block size (96) of the current residual block
(84).
171. Encoder of any of claim 169 or 170, configured to
perform the populating provided that
one or more certain characteristics associated with the neighboring block (84’, 84”) and the current residual block (84) are sufficiently similar, and/or
the reference transform is a separable spectrally decomposing transform.
172. Encoder of claim 171 , wherein the one or more characteristics comprise one or more of an intra prediction mode.
173. Encoder of any of claims 164 to 172, configured to
order (122) the selectable list (98) by ranking transforms in the selectable set (98) of transforms according to a similarity to the reference transform in one or more certain characteristics and/or
determine the selectable list (98) of transforms in a manner excluding transforms from the selectable list (98) which exceed a certain dissimilarity to the reference transform in one or more certain characteristics.
174. Encoder of claim 173, wherein the one or more characteristics comprise one or more of a primary transform.
175. Encoder of any of claims 164 to 174, configured to
order (122) the selectable list (98) by ranking transforms in the selectable set (98) of transforms depending on one or more certain characteristics of the neighbor- ing block (84’) and/or
determine the selectable list (98) of transforms in a manner excluding trans- forms from the selectable list (98) depending on one or more certain characteristics of the neighboring block (84’) .
176. Encoder of claim 175, wherein the one or more characteristics comprise one or more of a number of significant transform coefficients.
176. Encoder of claim 175 or 176, wherein the one or more characteristics comprise one or more of
a number of significant transform coefficients with ranking transforms less probable or excluding same which are of a multi-stage type with a sub-group (1 12) of primary transform coefficients subject to a secondary transform if the number of significant transform coefficients is below a certain threshold.
178. Encoder of any of claims 164 to 177 configured to
check whether a quantization parameter of the current block is included in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set (98) of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
179. Decoder for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
determine (122) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a reference transform selected for a neighboring residual block (84’, 84”),
decode a prediction residual (100) within the residual block (84) in a domain of one selected transform (102) out of the selectable list (98) of transforms with deriving the selected transform (102) from the data stream (14).
180. Decoder of embodiment 179, configured to order (122) the selectable list (98) using the reference transform.
181. Decoder of embodiment 179 or 180, configured to
order (122) the selectable list (98) by positioning the reference transform or a transform corresponding to the reference transform at a rank (# in“n#”) associated with
a most probable selection, or
a second most probable selection.
182. Decoder of any of claims 179 to 181 , configured to
determine (122) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on reference transforms selected for a set of neighboring residual blocks (84’, 84”).
183. Decoder of claim 182, configured to
order (122) the selectable list (98) by positioning the reference transforms mutually at an order corresponding to a frequency at which the reference transforms are selected for the set of neighboring residual blocks (84’, 84”).
184. Decoder of any of claims 179 to 183, configured to populate (122) the selectable list (98) with the reference transform.
185. Decoder of claim 184 wherein the reference transform is an analytically definable separable spectrally decomposing transform and the decoder is configured to
populate (122) the selectable list (98) with a further transform derived by adapting the reference transform to a block size (96) of the current residual block
(84).
186. Decoder of claim 184 or 185, configured to
perform the populating provided that
one or more certain characteristics associated with the neighboring block (84’, 84”) and the current residual block (84) are sufficiently similar, and/or
the reference transform is a separable spectrally decomposing transform.
187. Decoder of claim 186, wherein the one or more characteristics comprise one or more of an intra prediction mode.
188. Decoder of any of claims 179 to 187, configured to
order (122) the selectable list (98) by ranking transforms in the selectable set (98) of transforms according to a similarity to the reference transform in one or more certain characteristics, and/or
determine the selectable list (98) of transforms in a manner excluding transforms from the selectable list (98) which exceed a certain dissimilarity to the reference transform in one or more certain characteristics.
189. Decoder of claim 188, wherein the one or more certain characteristics comprise one or more of a primary transform.
190. Decoder of any of claims 179 to 189, configured to
order (122) the selectable list (98) by ranking transforms in the selectable set (98) of transforms depending on one or more certain characteristics of the neighbor ing block (84'), and/or
determine the selectable list (98) of transforms in a manner excluding trans- forms from the selectable list (98) depending on one or more certain characteristics of the neighboring block (84’).
191. Decoder of claim 190, wherein the one or more characteristics comprise one or more of a number of significant transform coefficients.
192. Decoder of claim 190 or 191 , wherein the one or more characteristics comprise one or more of
a number of significant transform coefficients with ranking transforms less probable or excluding same which are of a multi-stage type with a sub-group (112) of primary transform coefficients subject to a secondary transform if the number of significant transform coefficients is below a certain threshold.
193. Decoder of any of claims 179 to 192 configured to
check whether a quantization parameter of the current block is included in a set of one or more predetermined quantization parameters, and
if yes, perform the determination so that
the selectable set (98) of transforms is further populated by a set of one or more predetermined transforms associated with the set of one or more predetermined quantization parameters.
194. A method for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, supporting a set (94) of transforms for the block-based residual coding, wherein the method comprises steps of
determining (122) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a reference transform selected for a neighboring residual block (84’, 84”),
encoding a prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms and signal the selected transform (102) in the data stream (14).
A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, supporting a set (94) of transforms for the block-based residual decoding, wherein the method comprises steps of
determining (122) a selectable list (98) of transforms for a current residual block (84) out of the set (94) of transforms based on a reference transform selected for a neighboring residual block (84’, 84”),
decoding a prediction residual (100) within the residual block (84) in a do-main of one selected transform (102) out of the selectable list (98) of transforms with deriving the selected transform (102) from the data stream (14).
196 Encoder for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, the encoder supporting a set (94) of trans- forms for the block-based residual coding and configured to
determine a selectable list (98) of transforms for a current residual block (84) out of the set of transforms, in a manner dependent on a quantization parameter of the current block so that
if the quantization parameter corresponds to a quantization finer than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform (106) involving a primary transform (108) applied onto a prediction residual (100) within the current residual block and a secondary transform (110) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform, and
if the quantization parameter corresponds to a quantization coarser than a certain threshold,
the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform (106), with a modification of the at least one multi-stage transform wherein the primary transform coefficients (114) beyond the sub-group (112) are zeroed, and
encode the prediction residual (100) within the residua! block (84) using one selected transform (102) out of the selectable list (98) of transforms and signal the selected transform in the data stream (14).
197. Decoder for decoding a picture (12) from a data stream (14) using block-based pre- diction and block-based residual decoding, the decoder supporting a set (94) of transforms for the block-based residual decoding and configured to
determine a selectable list (98) of transforms for a current residual block (84) out of the set of transforms, in manner dependent on a quantization parameter of the current block so that
if the quantization parameter corresponds to a quantization finer than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform (106) involving a primary transform (108) applied onto a prediction residual (100) within the current residual block and a secondary transform (1 10) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform, and
if the quantization parameter corresponds to a quantization coarser than a certain threshold,
the selectable list of transforms for a current residual block populated, in addition to or in place of the at least one multi-stage transform (106), with a modification of the at least one multi-stage transform wherein the primary transform coefficients (114) beyond the sub-group (112) are zeroed, and
decode the prediction residual (100) within the residual block (84) in a do main of one selected transform (102) out of the selectable list (98) of transforms with deriving the selected transform from the data stream (14).
198. A method for encoding a picture (12) into a data stream (14) using block-based prediction and block-based residual coding, supporting a set (94) of transforms for the block-based residual coding, wherein the method comprises steps of
determining a selectable list (98) of transforms for a current residual block (84) out of the set of transforms, in a manner dependent on a quantization parameter of the current block so that
if the quantization parameter corresponds to a quantization finer than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform (106) involving a primary transform (108) applied onto a prediction residual
(100) within the current residual block and a secondary transform (1 10) applied onto a sub-group (112) of primary transform coefficients (114) of the primary transform, and
if the quantization parameter corresponds to a quantization coarser than a certain threshold,
the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform (106), with a modification of the at least one multi-stage transform wherein the primary transform coefficients (1 14) beyond the sub-group (112) are zeroed, and
encoding the prediction residual (100) within the residual block (84) using one selected transform (102) out of the selectable list (98) of transforms and signal the selected transform in the data stream (14).
199. A method for decoding a picture (12) from a data stream (14) using block-based prediction and block-based residual decoding, supporting a set (94) of transforms for the block-based residual decoding, wherein the method comprises steps of
determining a selectable list (98) of transforms for a current residual block (84) out of the set of transforms, in manner dependent on a quantization parameter of the current block so that
if the quantization parameter corresponds to a quantization finer than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform (106) in- volving a primary transform (108) applied onto a prediction residual (100) within the current residual block and a secondary transform (1 10) applied onto a sub-group (1 12) of primary transform coeffi cients (114) of the primary transform, and
if the quantization parameter corresponds to a quantization coarser than a certain threshold,
the selectable list of transforms for a current residual block populated, in addition to or in place of the at least one multi-stage transform (106), with a modification of the at least one multi-stage transform wherein the primary transform coefficients (1 14) beyond the sub-group (112) are zeroed, and
decoding the prediction residua! (100) within the residual block (84) in a domain of one selected transform (102) out of the selectable list (98) of transforms with deriving the selected transform from the data stream (14).
200. Encoder for encoding a picture into a data stream using block-based prediction and block-based residual coding, the encoder supporting a set of transforms for the block-based residual coding and configured to
determine (122) a selectable list (98) of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, in a manner dependent on a number of, or a sum over, significant transform coefficients in one or more neighboring residual blocks (84’, 84”) so that
if the number or sum is larger than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform involving a primary transform applied onto a prediction residual (100) of the cur- rent residual block and a secondary transform applied onto a sub- group of primary transform coefficients of the primary transform, and
if the number or sum is smaller than the certain threshold,
the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage transform wherein primary transform coefficients beyond the sub-group are zeroed, and
encode a prediction residual within the residual block using one selected transform out of the selectable list of transforms and signal the selected transform in the data stream.
201. Decoder for decoding a picture from a data stream using block-based prediction and block-based residual decoding, the decoder supporting a set of transforms for the block-based residual decoding and configured to
determine (122) a selectable list (98) of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, in manner dependent on a number of, or a sum over, significant transform coefficients in one or more neighboring residual blocks (84’, 84”) so that
if the number or sum is larger than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform involving a primary transform applied onto a prediction residual (100) of the cur rent residual block and a secondary transform applied onto a subgroup of primary transform coefficients of the primary transform, and
if the number or sum is smaller than the certain threshold,
the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage transform wherein primary transform coefficients beyond the sub-group are zeroed, and
decode a prediction residual within the residual block in a domain of one selected transform out of the selectable list of transforms with deriving the selected transform from the data stream.
202. A method for encoding a picture into a data stream using block-based prediction and block-based residual coding, supporting a set of transforms for the block-based residual coding, wherein the method comprises steps of
determining (122) a selectable list (98) of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, in a manner dependent on a number of, or a sum over, significant transform coefficients in one or more neighboring residual blocks (84’, 84”) so that
if the number or sum is larger than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform involving a primary transform applied onto a prediction residual (100) of the cur rent residual block and a secondary transform applied onto a sub- group of primary transform coefficients of the primary transform, and
if the number or sum is smaller than the certain threshold,
the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage transform wherein primary transform coefficients beyond the sub-group are zeroed, and
encoding a prediction residual within the residual block using one selected transform out of the selectable list of transforms and signal the selected transform in the data stream.
203. A method for decoding a picture from a data stream using block-based prediction and block-based residual decoding, supporting a set of transforms for the block- based residual decoding, wherein the method comprises steps of
determining (122) a selectable list (98) of transforms for a current residual block out of the set of transforms based on a reference transform selected for a neighboring residual block, in manner dependent on a number of, or a sum over, significant transform coefficients in one or more neighboring residual blocks (84’, 84”) so that
if the number or sum is larger than a certain threshold,
the selectable list (98) of transforms for a current residual block is populated with at least one multi-stage transform involving a primary transform applied onto a prediction residual (100) of the cur- rent residual block and a secondary transform applied onto a subgroup of primary transform coefficients of the primary transform, and
if the number or sum is smaller than the certain threshold,
the selectable list of transforms for a current residual block is populated, in addition to or in place of the at least one multi-stage transform, with a modification of the at least one multi-stage trans- form wherein primary transform coefficients beyond the sub-group are zeroed, and
decoding a prediction residual within the residual block in a domain of one selected transform out of the selectable list of transforms with deriving the selected transform from the data stream.
204. A computer program for implementing the method of at least one of claims 19, 20, 59, 60, 89, 90, 97, 98, 129, 130, 145, 146, 162, 163, 194, 195, 198, 199, 202 or 203 when being executed on a computer or signal processor.
205. A data stream obtainable by the method of at least one of claims 19, 20, 59, 60, 89, 90, 97, 98, 129, 130, 145, 146, 162, 163, 194, 195, 198, 199, 202 or 203.
| # | Name | Date |
|---|---|---|
| 1 | 202037042035-FORM 18 [10-10-2020(online)].pdf | 2020-10-10 |
| 2 | 202037042035-MARKED COPIES OF AMENDEMENTS [10-11-2020(online)].pdf | 2020-11-10 |
| 3 | 202037042035-FORM 13 [10-11-2020(online)].pdf | 2020-11-10 |
| 4 | 202037042035-Annexure [10-11-2020(online)].pdf | 2020-11-10 |
| 5 | 202037042035-AMMENDED DOCUMENTS [10-11-2020(online)].pdf | 2020-11-10 |
| 6 | 202037042035-Proof of Right [26-11-2020(online)].pdf | 2020-11-26 |
| 7 | 202037042035-FORM-26 [28-11-2020(online)].pdf | 2020-11-28 |
| 8 | 202037042035-PA ORIGINAL-(07-12-2020).pdf | 2020-12-07 |
| 9 | 202037042035-ORIGINAL FORM-1-(07-12-2020).pdf | 2020-12-07 |
| 10 | 202037042035-Information under section 8(2) [24-02-2021(online)].pdf | 2021-02-24 |
| 11 | 202037042035.pdf | 2021-10-18 |
| 12 | 202037042035-FER.pdf | 2021-10-18 |
| 13 | 202037042035-Verified English translation [13-11-2021(online)].pdf | 2021-11-13 |
| 14 | 202037042035-FORM 3 [13-11-2021(online)].pdf | 2021-11-13 |
| 15 | 202037042035-FORM 4(ii) [01-02-2022(online)].pdf | 2022-02-01 |
| 16 | 202037042035-POA [16-03-2022(online)].pdf | 2022-03-16 |
| 17 | 202037042035-FORM 13 [16-03-2022(online)].pdf | 2022-03-16 |
| 18 | 202037042035-AMENDED DOCUMENTS [16-03-2022(online)].pdf | 2022-03-16 |
| 19 | 202037042035-OTHERS [09-05-2022(online)].pdf | 2022-05-09 |
| 20 | 202037042035-FER_SER_REPLY [09-05-2022(online)].pdf | 2022-05-09 |
| 21 | 202037042035-CLAIMS [09-05-2022(online)].pdf | 2022-05-09 |
| 22 | 202037042035-ABSTRACT [09-05-2022(online)].pdf | 2022-05-09 |
| 23 | 202037042035-Information under section 8(2) [13-05-2022(online)].pdf | 2022-05-13 |
| 24 | 202037042035-FORM 3 [13-05-2022(online)].pdf | 2022-05-13 |
| 25 | 202037042035-FORM 3 [16-12-2022(online)].pdf | 2022-12-16 |
| 26 | 202037042035-FORM 3 [31-05-2023(online)].pdf | 2023-05-31 |
| 27 | 202037042035-PatentCertificate25-01-2024.pdf | 2024-01-25 |
| 28 | 202037042035-IntimationOfGrant25-01-2024.pdf | 2024-01-25 |
| 1 | SEARCHSTRATEGY-E_06-06-2021.pdf |