Multi-level residual coding in modern hybrid image and video coding schemes
By decoding and encoding the quantized prediction residual and quantized error compensation signals, the problem of limited improvement in CABAC encoding efficiency in the prior art is solved, and more efficient image and video encoding is achieved.
Patent Information
- Application Number
- CN202080081486.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-09-24
- Filing Date
- 2020-09-23
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2040-09-23
AI Technical Summary
In the prior art, in image and video encoding, it is difficult to effectively improve the encoding efficiency when context adaptive binary arithmetic coding (CABAC) is used in image and video encoding, especially when applied to more binary binary bits, the encoding efficiency improvement is limited.
By decoding and encoding the quantized predicted residual and quantized error compensation signals, different binarization methods and context modeling are used to improve coding efficiency.
It realizes more efficient coding efficiency and reduces bitstream and signal transmission costs.
Smart Images

Figure CN114731421B_ABST
Abstract
Description
Technical Field
[0001] Embodiments according to the present invention relate to multi-level residual coding in modern hybrid image and video coding schemes. Background Art
[0002] Introduction
[0003] In the following description, various inventive embodiments and aspects will be described. Furthermore, further embodiments will be defined by the appended claims.
[0004] It should be noted that any embodiment defined according to the claims may be supplemented by any of the details (features and functions) described in the following description.
[0005] Furthermore, the embodiments described in the following description may be used alone or supplemented by any features in another aspect or embodiment or any features included in the claims.
[0006] In addition, it should be noted that the various aspects described herein can be used alone or in combination. Therefore, details can be added to each of the various aspects without adding details to another aspect of the aspects.
[0007] It should also be noted that the present disclosure explicitly or implicitly describes methods that can be used in video / image encoders (devices for providing an encoded representation of an input video / image signal) and video / image decoders (devices for providing a decoded representation of a video / image signal based on the encoded representation). Therefore, any feature described herein can be used in the context of a video / image encoder as well as in the context of a video / image decoder.
[0008] Furthermore, the features and functions disclosed herein in relation to the methods may also be used in a device (configured to perform such functions). Furthermore, any features and functions disclosed herein with respect to the devices may also be used in the corresponding methods. In other words, the methods disclosed herein may be supplemented by any features and functions described with respect to the devices.
[0009] Furthermore, any features and functions described herein may be implemented in hardware or software, or using a combination of hardware and software, as will be described in the "Alternative Implementations" section. Background of the Invention
[0011] Modern image and video coding schemes, such as High Efficiency Video Coding (HEVC, H.265, ISO / IEC 23008-3) and the currently developed Versatile Video Coding (VVC, H.266), allow for efficient compression of still or moving image content, even at very low bit rates. A typical use case for these codec (encoder-decoder) solutions is the lossy compression of high-resolution video material for broadcast (e.g., television) and streaming (e.g., video over IP) applications. Nevertheless, the codecs also support lossless compression, allowing a mathematically perfect reconstruction of the encoded input signal upon decoding. More specifically, HEVC provides several Pulse Code Modulation (PCM) related coding tools with limited coding efficiency as well as the so-called cross-quantization bypass coding mode, which facilitates more efficient lossless coding by simplifying the entropy coding process and disabling the quantization, transform (DCT or DST) and deblocking steps. Detailed information can be found in the publicly available HEVC syntax and decoding specifications [1].
[0012] Recently, a contribution to the VVC standardization activity in JVET has been published [2], which corrects a specific lossless coding related shortcoming of the transform skip coding functionality in the current VVC draft, which is also present in HEVC, and specifies that: for a given coded sub-block (CU or TU), the inverse residual coefficient transform operation (inverse DCT or DST) is bypassed. More specifically, the contribution proposes to limit the quantization step size controlled by the quantization parameter (QP) to values greater than or equal to 1 (represented by a QP of 4) in case transform skip is activated in a sub-block. As a result, lossless coding can be achieved when transform skip is activated in case QP is 4 and loop filtering is disabled in the spatial region covered by the sub-block in question. However, this behavior is the same as using the transform quantization bypass coding mode, since quantization with QP = 4 (i.e., uniform step size) effectively represents a bypass of the quantization algorithm.
[0013] Figure 1b A typical hybrid video encoder is depicted, which also includes a decoder. For simplicity, possible loop filtering blocks such as deblocking, adaptive loop filtering, which are applied to the reconstructed video before adding it to the decoded picture buffer for motion compensation, are omitted. Note that for transform skip, the corresponding transform block is skipped, and for lossless coding, quantization is performed using parameters that bypass quantization, such as the aforementioned QP=4. In addition, as described in [3], the residual coding can be adapted to take into account the different signal characteristics of the spatial residual signal for transform skip. Figure 1c The encoder in illustrates this scheme, showing transform residual coding and transform skip residual coding. The corresponding decoder will apply transform skip residual decoding to the input bitstream and then scale it or scale it by a factor of 1 to achieve losslessness.
[0014] In both lossless and lossy coding cases, entropy coding of the residual signal is done using residual coding, which typically involves scanning the residual samples in smaller blocks or coefficient groups and encoding each sample using context-adaptive binary arithmetic coding (CABAC). For lossy coding, the input to the residual coding will be the quantized transform coefficient levels, or in the case of transform skipping, the quantized residual signal. For lossless, the input will be the unmodified residual signal. In residual coding, the input sample values are converted into a sequence of "0"s and "1"s, a so-called binarization. Each binary bit is then entropy coded using CABAC to generate the bitstream. In CABAC, context modeling is used to determine and adapt to the probability of a binary bit being 0 or 1 in the arithmetic coding part, which improves coding efficiency. The result is usually an input binary bit to output bit ratio of less than 1.
[0015] Because context derivation introduces computational complexity and dependencies on previously processed bins, context modeling is typically used to encode only a limited number of bins. When this limit is reached, the bins are encoded in so-called bypass mode, which results in one bit in the bitstream for every bin, i.e., a bin-to-bit ratio of 1. One way to improve efficiency is to use context modeling for more binarized bins. However, due to bin statistics, applying context modeling to more bins may have limited effect and, at some point, no longer improve coding efficiency.
[0016] Hence, it would be desirable to provide concepts for more efficient rendering of image coding and / or video coding. Additionally or alternatively, it would be desirable to reduce the bitstream and thus reduce signal transmission costs.
[0017] This is achieved by the subject matter of the independent claims of the present invention.
[0018] Further embodiments according to the invention are defined by the subject matter of the dependent claims of the present application. Summary of the Invention
[0019] According to a first aspect of the present invention, the inventors of the present application have recognized a problem encountered when attempting to improve coding efficiency using context-adaptive binary arithmetic coding (CABAC). Applying context modeling to a larger number of binarized bits than would normally be the case may only have a limited effect and, in some cases, may not further improve coding efficiency. According to the first aspect of the present application, this difficulty is overcome by not only decoding / encoding a quantized prediction residual from / into a data stream, but also encoding a quantized error compensation signal for the quantized prediction residual. Both the quantized prediction residual and the quantization error compensation signal can be encoded using CABAC. The inventors discovered that this approach results in at least two different binarizations of the residual signal: one for the quantized version and one for the quantization error compensation signal. This results in different bit distributions in the residual coding stage for the quantized prediction residual and the residual coding stage for the quantization error compensation signal. This different bit distribution can be exploited in the context modeling. This is based on the idea that, given the same number of context-coded bits, CABAC can better exploit statistical correlations than encoding only the prediction residual signal, thereby improving coding efficiency.
[0020] Therefore, according to a first aspect of the present application, a decoder for decoding, for example, a losslessly encoded residual signal from a data stream is configured to decode, from the data stream, a quantized prediction residual and at least one quantization error compensation signal, the quantization error compensation signal being optionally quantized. The quantization error compensation signal may compensate for quantization error, for example, caused by quantization of the prediction residual by an encoder and / or caused by quantization of a previous quantization error by the encoder, where the previous quantization error may be caused by quantization of the prediction residual. The quantization error may be caused, for example, by a quantization step size used and set by the encoder. The decoder is configured to scale the quantized prediction residual to determine a scaled prediction residual. Optionally, the decoder is configured to scale a quantized quantization error compensation signal of the at least one quantization error compensation signal to determine a scaled quantization error compensation signal. For example, the decoder is configured to scale the at least one quantized quantization error compensation signal to determine the at least one scaled quantization error compensation signal. Furthermore, the decoder is configured to determine a reconstructed prediction residual based on the scaled prediction residual and the at least one (e.g., scaled) quantization error compensation signal. The decoder is for example configured to add the scaled prediction residual and at least one scaled quantization error compensation signal to obtain a reconstructed prediction residual. Optionally, the decoder is configured to perform a transform on the scaled prediction residual to obtain a reconstructed prediction residual.
[0021] According to the first aspect of the present application, an encoder for losslessly encoding a residual signal into a data stream is configured to quantize a prediction residual using a quantization error to determine a quantized prediction residual, and, for example, quantize at least one quantization error compensation signal to determine at least one quantized quantization error compensation signal. The encoder is configured to determine at least one quantization error compensation signal for compensating for a quantization error, wherein the quantization error is caused, for example, by a quantization step size used and set by the encoder. The quantization error is caused, for example, by quantization of the prediction residual by the encoder and / or by quantization of a previous quantization error by the encoder, wherein the previous quantization error may be caused by quantization of the prediction residual. In addition, the encoder is configured to encode the quantized prediction residual and the at least one optionally quantized quantization error compensation signal into the data stream.
[0022] According to an embodiment, the decoder / encoder is configured to decode / encode the quantized prediction residual and the at least one optional quantized quantization error compensation signal from the data stream into the data stream by using context-adaptive binary entropy decoding / encoding, such as context-adaptive binary arithmetic decoding / encoding of the binarization of the prediction residual and the binarization of the at least one quantization error compensation signal. For example, the decoder / encoder can be configured to use the same binarization or different binarization for the prediction residual and the at least one quantization error compensation signal, that is, it can be configured to use different binarizations for the prediction residual and the at least one quantization error compensation signal.
[0023] According to an embodiment, the decoder / encoder is configured to context-adaptively decode / encode the leading bins of the binarized prediction residual using context-adaptive binary entropy decoding / encoding, and to decode / encode the remaining binarized prediction residual bits (i.e., the bins following the leading bins) using an equal probability bypass mode. Additionally or alternatively, the decoder / encoder is configured to decode / encode the leading bins of at least one binarized quantization error compensation signal using context-adaptive binary entropy decoding / encoding, and to decode / encode the remaining binarized bins of at least one binarized quantization error compensation signal using an equal probability bypass mode. Both the prediction residual and the quantization error compensation signal can be decoded / encoded in the same manner, wherein an equal number of leading bins or a different number of leading bins can be selected for decoding / encoding. The decoder / encoder, for example, decodes / encodes n leading bins, where n is an integer greater than one, greater than two, less than five, less than four, in the range from two to ten, in the range from two to five, or in the range from two to four.
[0024] According to an embodiment, the decoder / encoder is configured to use the same binarization for the prediction residual and the at least one quantization error compensation signal, and to decode / encode the leading bins of the binarization of the prediction residual using a first probability model, and to decode / encode the leading bins of the at least one quantization error compensation signal using a second probability model. It has been found that encoding the leading bins of the binarization of the prediction residual using a different context than encoding the leading bins of the quantization error compensation signal can improve coding efficiency.
[0025] According to an embodiment, the decoder / encoder is configured to use the same binarization for the prediction residual and at least one quantization error compensation signal, select a first probability model from a first set of probability models based on a function of previously decoded / encoded bins applied to the binarization of the prediction residual to decode / encode a predetermined bin, such as the first bin, such as a significant bin among the leading bins of the binarization of the prediction residual, and select a second probability model from a second set of probability models based on a function of previously decoded / encoded bins applied to the binarization of the at least one quantization error compensation signal to decode / encode a predetermined bin, such as the first bin, such as a significant bin among the leading bins of the binarization of the at least one quantization error compensation signal. For example, the same number of contexts may be used, but different contexts may be used. In other words, the first set of probability models and the second set of probability models may have the same number of probability models but may include different probability models. Furthermore, the same function may be selected for the binarization of the prediction residual and for the binarization of the quantization error compensation signal to select, for example, one of different contexts for a particular bin based on previously decoded / encoded bins of the signal.
[0026] According to an embodiment, a decoder / encoder is configured to decode / encode two or more quantization error compensation signals from a data stream into a data stream. At least a first quantization error compensation signal represents a first quantized quantization error compensation signal, and the first quantization error compensation signal is associated with a quantization error caused by quantization of a prediction residual. The first quantization error compensation signal can be used to compensate for the quantization error caused by quantization of the prediction residual. The second quantization error compensation signal is associated with a quantization error caused by quantization of the first quantization error compensation signal. The second quantization error compensation signal can be used to compensate for the quantization error caused by quantization of the first quantization error compensation signal. It should be noted that the decoder / encoder can be configured to directly decode / encode the second quantization error compensation signal without scaling / quantizing the second quantization error compensation signal. This enables lossless coding. Alternatively, the second quantization error compensation signal can represent a second quantized quantization error compensation signal. Lossless coding is only possible if the quantization error caused by quantization of the second quantization error compensation signal is losslessly compensated; otherwise, this represents lossy coding. The nth (e.g., for n≥2) quantization error compensation signal is associated with a quantization error resulting from quantization of the (n-1)th quantization error compensation signal. The first quantization error compensation signal may represent a quantized prediction residual subtracted from an original prediction residual, optionally from a transformed prediction residual, and one or more subsequent quantization error compensation signals, e.g., the nth (e.g., for n≥2) quantization error compensation signal may represent a previous quantization error compensation signal subtracted from a corresponding previous quantization error compensation signal prior to quantization, where the previous quantization error compensation signal may represent the (n-1)th quantization error compensation signal.
[0027] According to an embodiment, a decoder is configured to scale a first quantized quantization error compensation signal to obtain a first scaled quantization error compensation signal, and to determine a reconstructed prediction residual based on the scaled prediction residual, the first scaled quantization error compensation signal, and a second quantization error compensation signal. In parallel with the decoder, an encoder is configured to quantize the first quantization error compensation signal to obtain a first quantized quantization error compensation signal, such that the reconstructed prediction residual is determinable by the decoder based on the quantized prediction residual, the first quantized quantization error compensation signal, and the second quantization error compensation signal. If two quantization error compensation signals are decoded / encoded from / into a data stream, the second quantization error compensation signal, for example, is not quantized, i.e., does not represent a quantized quantization error compensation signal, for lossless decoding / encoding. If more than two quantization error compensation signals are decoded / encoded from / into a data stream, only the last quantization error compensation signal is not quantized, i.e., does not represent a quantized quantization error compensation signal, while the previous quantization error compensation signals are quantized, i.e., represent quantized quantization error compensation signals. Thus, lossless decoding / encoding can be achieved. For example, the quantization error compensation signals are ordered in the order in which they are determined by the encoder or signaled in the data stream.According to an embodiment, for lossy decoding / encoding, all decoded / encoded quantization error compensation signals represent quantized quantization error compensation signals.
[0028] For multiple quantization error compensation signals, e.g., for m quantization error compensation signals with m≥3, the decoder is configured to determine a reconstructed quantization error compensation signal by combining the last two quantization error compensation signals into an intermediate reconstructed quantization error compensation signal, wherein at least one of the two quantization error compensation signals is scaled, e.g., the last quantization error compensation signal may not be scaled. Furthermore, the decoder is configured to determine a reconstructed quantization error compensation signal by combining the intermediate reconstructed quantization error compensation signal with a previously scaled quantization error compensation signal to obtain a new intermediate reconstructed quantization error compensation signal and to perform this last type of combining in a cascaded manner from the (m-2)th scaled quantization error compensation signal to the first scaled quantization error compensation signal. In other words, the decoder can be configured to determine the (m-1)th intermediate reconstructed quantization error compensation signal based on the mth (e.g., scaled) quantization error compensation signal and the (m-1)th scaled quantization error compensation signal, and to determine subsequent intermediate reconstructed quantization error compensation signals based on the corresponding previous intermediate reconstructed quantization error compensation signal and the current quantization error compensation signal. For example, the (m-2)th intermediate reconstructed quantization error compensation signal is based on the (m-2)th scaled quantization error compensation signal and the (m-1)th intermediate reconstructed quantization error compensation signal.
[0029] According to an embodiment, a decoder is configured to decode from a data stream a first scaling parameter for scaling a quantized prediction residual and further scaling parameters for scaling a quantized quantization error compensation signal, such as, for example, a first quantized quantization error compensation signal. The scaling of the quantized prediction residual and the scaling of the quantized quantization error compensation signal are performed at the decoder, and the encoder encodes the corresponding first and further scaling parameters into the data stream. Each of the further scaling parameters is associated with a quantization level, for example, at which a quantization error is caused. The quantization levels are sorted, for example, according to the order in which the quantization error is caused by the encoder or signaled in the data stream. The first scaling parameter is associated with the first quantization level.
[0030] According to an embodiment, the decoder / encoder is configured to decode / encode each additional scaling parameter from / to the data stream, or to decode / encode each offset of the additional scaling parameter relative to the scaling parameter associated with the previous quantization level from / to the data stream, at a video, image sequence, image, or sub-image granularity, such as per slice, per tile, or per coding block. By encoding in this way, the bit rate can be reduced, thereby reducing the signal cost.
[0031] According to an embodiment, the decoder / encoder is configured to decode / encode into the data stream a first scaling parameter for scaling the quantized prediction residual and a second scaling parameter for scaling the at least one quantization error compensation signal, wherein the second scaling parameter may be used to scale each quantization error compensation signal of the at least one quantization error compensation signal.
[0032] According to an embodiment, the decoder / encoder is configured to decode / encode the second scaling parameter as an offset relative to the first scaling parameter, thereby improving coding efficiency and reducing bitstream, thereby reducing signaling cost.
[0033] According to an embodiment, the decoder / encoder is configured to decode / encode the second scaling parameter, or the offset of the second scaling parameter relative to the first scaling parameter, at a video, image sequence, image or sub-image granularity, e.g. per slice or per tile or per coding block.
[0034] According to an embodiment, the decoder / encoder is configured to cause a predetermined quantization error compensation signal of at least one quantization error compensation signal to be unscaled, thereby forming a lossless reconstruction of the losslessly coded prediction residual. The predetermined quantization error compensation signal is, for example, the last quantization error compensation signal, wherein the first quantization error compensation signal is associated with the quantization error caused by the quantization of the prediction residual. If the prediction residual and one quantization error or quantization error compensation signal are decoded / encoded from / into the data stream, the decoded / encoded quantization error or quantization error compensation signal is an unquantized version and is not scaled by the decoder. If the prediction residual and three quantization errors or three quantization error compensation signals are decoded / encoded from / into the data stream, the first and second decoded quantization errors or quantization error compensation signals are quantized versions and must be scaled by the decoder, and the third decoded / encoded quantization error is an unquantized version (no scaling required by the decoder).
[0035] According to an embodiment, a residual signal, i.e., a prediction residual, corresponds to a prediction of an image or video. The decoder / encoder is configured to detect / determine a lossless coding mode for a first portion of the image or video and a lossy coding mode for a second portion of the image or video. For the first portion, the encoder is, for example, configured to quantize the prediction residual using a predetermined quantization factor to determine a quantized prediction residual and to leave at least one quantization error compensation signal unquantized. The quantization factor may correspond to an inverse scaling factor. The encoder may be configured to encode the quantization factor or scaling factor. The encoder may be configured to encode the quantized prediction residual and at least one quantization error compensation signal (e.g., a quantization error compensation signal) into a data stream. The decoder may be configured to decode the quantized prediction residual and at least one quantization error compensation signal (e.g., a quantization error compensation signal) from the data stream, scale the quantized prediction residual using a predetermined scaling factor to determine a scaled prediction residual, and leave at least one quantization error compensation signal unscaled. The decoder may be configured to determine a reconstructed prediction residual based on the scaled prediction residual and the at least one quantization error compensation signal. For the second part, the encoder may be configured to quantize the prediction residual using a first quantization factor for the second part to be signaled in the data stream, for example, as a first scaling factor, to determine a quantized prediction residual, and encode the quantized prediction residual into the data stream without at least one quantization error compensation signal. For the second part, the decoder may be configured to decode the quantized prediction residual from the data stream without at least one quantization error compensation signal, and scale the quantized prediction residual using the first scaling factor for the second part signaled in the data stream to determine a scaled prediction residual to obtain a reconstructed prediction residual. If a transform skip mode is detected by the decoder, the scaled prediction residual may represent a reconstructed prediction residual, and if a transform mode is detected by the decoder, the decoder may transform the scaled prediction residual to determine the reconstructed prediction residual.
[0036] According to an embodiment, the decoder / encoder is configured to decode / encode the lossless / lossy coding mode flag of a portion of an image or video from / to a data stream. The decoder is configured to identify the portion where the lossless / lossy coding mode flag indicates a lossless coding mode as a first portion, and identify the portion where the lossless / lossy coding mode flag indicates a lossy coding mode as a second portion.
[0037] According to an embodiment, the decoder / encoder is configured to decode / encode a first scaling factor, i.e., a first quantization factor, for a portion of an image or video from a data stream into a data stream. The first scaling factor may be associated with the inverse of the first quantization factor. If only the first quantization factor is present in the data stream, the first scaling factor is also decoded because the two factors are directly related to each other and the decoder can derive the scaling factor from the first quantization factor. The decoder may identify the portion for which the first scaling factor corresponds to no scaling as a first portion, and identify the portion for which the first scaling factor does not correspond to no scaling as a second portion.
[0038] According to an embodiment, the decoder / encoder is configured to use a fixed (e.g., default) predetermined scaling factor / quantization factor, or to obtain the predetermined scaling factor / quantization factor by applying an offset to the first scaling factor / quantization factor. Alternatively, the decoder can be configured to decode the predetermined scaling factor / quantization factor from the data stream, and the encoder can be configured to determine the predetermined scaling factor / quantization factor separately. For example, the offset is set by the decoder / encoder or is set by default or is decoded by the decoder from the data stream.
[0039] According to an embodiment, the decoder / encoder is configured to decode / encode into the data stream, for a portion, for example, a first portion and a second portion, a first scaling factor and an indication of whether the residual signal is encoded into the data stream in the transform domain or the non-transform domain. The decoder is configured to identify, as the first portion, a portion in which the first scaling factor corresponds to no scaling and the residual signal is encoded into the data stream in the non-transform domain, and to identify, as the second portion, a portion in which the first scaling factor does not correspond to no scaling and the residual signal is encoded into the data stream in the transform domain. The first case, i.e., the residual signal is not scaled and is encoded in the non-transform domain, may correspond to a transform skip mode or a transform quantization bypass coding mode.
[0040] According to an embodiment, the decoder / encoder is configured to predict an image using intra prediction and / or inter prediction to obtain a prediction signal. The encoder may be configured to determine a prediction residual for a predetermined block of the image based on the prediction signal and an original signal associated with the predetermined block of the image, for example by subtracting the prediction signal from the original signal. At the decoder side, the reconstructed prediction residual is associated with the prediction signal for the image within the predetermined block of the image, and the decoder is configured to reconstruct the predetermined block of the image using the reconstructed prediction residual and the prediction signal, for example by adding the prediction signal to the reconstructed prediction residual.
[0041] According to an embodiment, the decoder / encoder is configured to decode / encode at least one (optionally quantized) quantization error compensated signal using spatial and / or temporal prediction.
[0042] According to an embodiment, the decoder / encoder is configured to decode / encode at least one (optionally quantized) quantization error compensated signal using spatial and / or temporal prediction from adjacent and / or previously decoded / encoded parts of the at least one (optionally quantized) quantization error compensated signal.
[0043] According to an embodiment, an encoder is configured to obtain at least one prediction error for a quantization error using at least one error prediction signal using a prediction type. The at least one prediction error may be determined based on the at least one error prediction signal and the at least one quantization error. The encoder may be configured to encode the at least one prediction error for the quantization error into a data stream and assign the at least one prediction error for the quantization error to a set of prediction types such that each prediction error for the quantization error is assigned to an associated prediction type in the set of prediction types. The decoder may be configured to decode the at least one prediction error for the quantization error from the data stream and derive from the data stream the assignment of the at least one prediction error for the quantization error to a set of prediction types such that each prediction error for the quantization error is assigned to an associated prediction type in the set of prediction types. In addition, the decoder may be configured to obtain, for the at least one prediction error for the quantization error, at least one error prediction signal using the prediction type assigned to the corresponding prediction error for the quantization error, and to determine at least one quantization error compensation prediction signal based on the at least one prediction error for the quantization error and the at least one error prediction signal.
[0044] According to an embodiment, the decoder / encoder is configured to decode / encode the quantized prediction residual from a lossy base layer of a data stream into a lossy base layer, and to decode / encode at least one quantization error compensation signal from an enhancement layer of the data stream into the enhancement layer of the data stream.
[0045] An embodiment relates to a method for decoding a residual signal from a data stream, comprising decoding a quantized prediction residual and at least one quantization error compensation signal from the data stream; scaling the quantized prediction residual to determine a scaled prediction residual; and determining a reconstructed prediction residual based on the scaled prediction residual and the at least one quantization error compensation signal.
[0046] An embodiment relates to a method for encoding a residual signal into a data stream, comprising quantizing a prediction residual using a quantization error to determine a quantized prediction residual; determining at least one quantization error compensation signal for compensating for the quantization error; and encoding the quantized prediction residual and the at least one quantization error compensation signal into the data stream.
[0047] The above method is based on the same considerations as the above encoder or decoder. Similarly, the method can be implemented by all the features and functions that have also been described with respect to the encoder or decoder.
[0048] Embodiments relate to a data stream having images or video encoded therein using the methods for encoding described herein.
[0049] An embodiment relates to a computer program having a program code for performing the methods described herein when the program code runs on a computer. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] The accompanying drawings are not necessarily drawn to scale, emphasis instead generally being placed upon illustrating the principles of the invention. In the following description, various embodiments of the invention are described with reference to the following drawings, in which:
[0051] Figure 1a shows a schematic diagram of an encoder;
[0052] Figure 1b A schematic diagram showing an alternative encoder;
[0053] Figure 1c shows a schematic diagram of residual coding;
[0054] Figure 2 shows a schematic diagram of a decoder;
[0055] Figure 3 A schematic diagram of block-based encoding is shown;
[0056] Figure 4a shows a schematic diagram of an encoder according to an embodiment;
[0057] Figure 4b shows a schematic diagram of a decoder according to an embodiment;
[0058] Figure 5 A schematic diagram showing binarized encoding according to an embodiment is shown;
[0059] Figure 6a shows a schematic diagram of an encoder with multi-level residual coding according to an embodiment;
[0060] Figure 6b shows a schematic diagram of a decoder with multi-level residual coding according to an embodiment;
[0061] Figure 7a shows a schematic diagram of an encoder with two-stage residual coding according to an embodiment;
[0062] Figure 7b A schematic diagram showing a decoder with two-stage residual coding according to an embodiment; and
[0063] Figure 8 A schematic diagram illustrating identifying lossless-encoded portions and lossy-encoded portions of an image or video according to an embodiment is shown. DETAILED DESCRIPTION
[0064] The same or equivalent elements or elements having the same or equivalent functions are denoted by the same or equivalent reference numerals in the following description even though they appear in different drawings.
[0065] In the following description, a number of details are set forth to provide a more comprehensive explanation of the embodiments of the present invention. However, it will be apparent to those skilled in the art that embodiments of the present invention may be practiced without these specific details. In other cases, well-known structures and devices are shown in block diagram form rather than in detail to avoid obscuring the embodiments of the present invention. In addition, unless otherwise specifically stated, the features of the different embodiments described below may be combined with each other.
[0066] The following description of the drawings begins with the presentation of a description of an encoder and a decoder of a block-based prediction codec for encoding images of a video, in order to form an example of a coding framework in which embodiments of the present invention may be built. The corresponding encoder and decoder are referenced Figures 1a to 3 The aforementioned embodiments of the inventive concept can be built into Figure 1a , 1b and 2 encoder and decoder, although the use of Figures 4a to 8 The described embodiments can also be used to form Figure 1a , 1b and 2 encoders and decoders The underlying coding framework does not operate the encoder and decoder.
[0067] Figure 1a An apparatus (eg, a video encoder and / or an image encoder) is shown for predictively encoding an image 12 into a data stream 14, exemplarily using transform-based residual coding. The apparatus or encoder is indicated using reference numeral 10. Figure 1b Also shown is an arrangement for predictive coding of the image 12 into the data stream 14, wherein a possible prediction module 44 is shown in more detail. Figure 2 A corresponding decoder 20 is shown, i.e. an apparatus 20 configured to predictively decode an image 12′ from the data stream 14 also using transform-based residual decoding, wherein a prime has been used to indicate that the image 12′ as reconstructed by the decoder 20 deviates from the image 12 originally encoded by the apparatus 10 with respect to coding losses introduced by quantization of the prediction residual signal. Figure 1a , 1b and Figure 2 Transform-based prediction residual coding is used illustratively, although the embodiments of the present application are not limited to such prediction residual coding. Figure 1a 、 1b The same applies to the other details described in 2, as will be outlined below.
[0068] The encoder 10 is configured to perform a spatial-spectral transform on the prediction residual signal and encode the prediction residual signal obtained thereby into the data stream 14. Likewise, the decoder 20 is configured to decode the prediction residual signal from the data stream 14 and perform a spatial-spectral transform on the prediction residual signal obtained thereby.
[0069] Internally, the encoder 10 may comprise a prediction residual signal former 22, which generates a prediction residual 24 in order to measure the deviation of a prediction signal 26 from the original signal, i.e. from the image 12, wherein, according to an embodiment of the invention, the prediction signal 26 may be interpreted as a linear combination of a set of one or more prediction blocks. The prediction residual signal former 22 may, for example, be a subtractor which subtracts the prediction signal from the original signal, i.e. from the image 12. The encoder 10 then further comprises a transformer 28, which subjects the prediction residual signal 24 to a spatial-spectral transformation in order to obtain a spectral-domain prediction residual signal 24', which is then quantized by a quantizer 32, also included in the encoder 10. The prediction residual signal 24" thus quantized is encoded into the bitstream 14. To this end, the encoder 10 may optionally comprise an entropy encoder 34, which entropy encodes the prediction residual signal into a transformed and quantized form into the data stream 14.
[0070] The prediction signal 26 is generated by a prediction stage 36 of the encoder 10 based on a prediction residual signal 24″ encoded into the data stream 14 and decodable from the data stream 14. To this end, the prediction stage 36 may internally, for example, Figure 1a As shown in , it comprises a dequantizer 38, which dequantizes the prediction residual signal 24" to obtain a spectral domain prediction residual signal 24'", which corresponds to the signal 24' except for the quantization losses, followed by an inverse transformer 40, which performs an inverse transformation, i.e. a spectral-to-spatial transformation, on the latter prediction residual signal 24'" to obtain a prediction residual signal 24", which corresponds to the original prediction residual signal 24 except for the quantization losses. The combiner 42 of the prediction stage 36 then recombines the prediction signal 26 and the prediction residual signal 24", such as by addition, to obtain a reconstructed signal 46, i.e. a reconstruction of the original signal 12. The reconstructed signal 46 may correspond to the signal 12'. The prediction module 44 of the prediction stage 36 then generates the prediction signal 26 based on the signal 46 by using, for example, spatial prediction, i.e. intra-image prediction, and / or temporal prediction, i.e. motion compensated prediction, i.e. inter-image prediction, as shown in FIG. Figure 1b Shown in detail.
[0071] Similarly, if Figure 2As shown, the decoder 20 may internally be composed of components corresponding to the prediction stage 36 and interconnected in a manner corresponding to the prediction stage 36. In particular, the entropy decoder 50 of the decoder 20 may entropy decode the spectral domain prediction residual signal 24″ from the quantization of the data stream and then recover the reconstructed signal based on the prediction residual signal 24″ by a dequantizer 52, an inverse transformer 54, a combiner 56 and a prediction module 58 interconnected and cooperating in the manner described above with respect to the modules of the prediction stage 36, such that Figure 2 As shown, the output of combiner 56 produces the reconstructed signal, image 12'.
[0072] Although not specifically described above, it is readily apparent that the encoder 10 can set certain encoding parameters, including, for example, prediction modes, motion parameters, etc., according to some optimization scheme, such as in a manner that optimizes a criterion related to rate and distortion, i.e., encoding cost. For example, the encoder 10 and decoder 20, and corresponding modules 44 and 58, can each support different prediction modes, such as intra-coding mode and inter-coding mode. The granularity at which the encoder and decoder switch between these prediction mode types can correspond to the subdivision of the images 12 and 12' into coding segments or coding blocks, respectively. For example, based on these coding segments, the images can be subdivided into intra-coded blocks and inter-coded blocks.
[0073] As outlined in more detail below, an intra-coded block is predicted based on a spatial, already encoded / decoded neighborhood (e.g., a current template) of a corresponding block (e.g., a current block). Several intra-coding modes may exist and be selected for a corresponding intra-coded segment, including directional or angular intra-coding modes, according to which for a corresponding directional intra-coding mode, the corresponding segment is filled by extrapolating sample values of a neighborhood along a particular direction to the corresponding intra-coded segment. For example, the intra-coding modes may also include one or more other modes, such as a DC coding mode, according to which the prediction for the corresponding intra-coded block assigns a DC value to all samples within the corresponding intra-coded segment, and / or such as a planar intra-coding mode, according to which the prediction for the corresponding block is approximated or determined as a spatial distribution of sample values, the spatial distribution of sample values being described by a two-dimensional linear function over the sample positions of the corresponding intra-coded block, with a driving tilt and offset of a plane defined by the two-dimensional linear function based on neighboring samples.
[0074] In contrast, inter-coded blocks can be temporally predicted, for example. For inter-coded blocks, a motion vector can be signaled within the data stream 14, indicating the spatial displacement of a portion of a previously coded image (e.g., a reference image) of the video to which the image 12 belongs, in which the previously coded / decoded image is sampled to obtain a prediction signal for the corresponding inter-coded block. This means that, in addition to the residual signal encoding included by the data stream 14, such as the entropy-coded transform coefficient levels representing the quantized spectral domain prediction residual signal 24″, the data stream 14 may also have encoded therein coding mode parameters for assigning coding modes to various blocks, prediction parameters for some blocks, such as motion parameters for inter-coded segments, and optionally other parameters, such as parameters for controlling and signaling the subdivision of the images 12 and 12′ into segments, respectively. The decoder 20 uses these parameters to subdivide the images in the same way as the encoder, assign the same prediction modes to the segments, and perform the same prediction to produce the same prediction signals.
[0075] Figure 3 The relationship between the reconstructed signal, i.e. the reconstructed image 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, is shown. As mentioned above, the combination can be additive. The prediction signal 26 is Figure 3 The image area is shown as being subdivided into intra-coded blocks schematically indicated by shading and inter-coded blocks schematically indicated by shading. The subdivision may be any subdivision, such as a regular subdivision of the image area into rows and columns of square or non-square blocks, or a multi-tree subdivision of the image 12 from a root block into a plurality of leaf blocks of different sizes, such as a quadtree subdivision, etc., wherein a mixture of these is shown. Figure 3 As shown, the image region is first subdivided into rows and columns of tree root blocks and then further subdivided into one or more leaf blocks according to a recursive multi-tree subdivision.
[0076] Similarly, the data stream 14 may have an intra-coding mode encoded therein for an intra-coded block 80, which assigns one of several supported intra-coding modes to the corresponding intra-coded block 80. For an inter-coded block 82, the data stream 14 may have one or more motion parameters encoded therein. In general, the inter-coded block 82 is not limited to being temporally coded. Alternatively, the inter-coded block 82 may be any block predicted from a previously coded portion other than the current picture 12 itself, such as a previously coded picture of the video to which the picture 12 belongs, or a picture of another view or hierarchically lower layer in the case where the encoder and decoder are scalable encoders and decoders, respectively.
[0077] Figure 3The prediction residual signal 24"" in is also shown to subdivide the image area into blocks 84. These blocks may be referred to as transform blocks in order to distinguish them from the coding blocks 80 and 82. In practice, Figure 3 It is shown that the encoder 10 and the decoder 20 can use two different subdivisions of the image 12 and the image 12', respectively, into blocks, i.e. one subdivision into coding blocks 80 and 82, respectively, and another subdivision into transform blocks 84. The two subdivisions may be identical, i.e. each coding block 80 and 82 may simultaneously form a transform block 84, but Figure 3 This is illustrated, for example, by the subdivision into transform blocks 84 forming an extension of the subdivision of coding blocks 80, 82, such that any block boundary between blocks 80 and 82 overlaps a boundary between two blocks 84, or in other words, each block 80, 82 coincides with either one of transform blocks 84 or a cluster of transform blocks 84. However, the subdivision can also be determined or selected independently of one another, such that transform blocks 84 alternately span block boundaries between blocks 80, 82. With respect to the subdivision into transform blocks 84, it is contemplated that statements similar to those regarding the subdivision into blocks 80, 82 are valid, i.e., blocks 84 can be the result of a regular subdivision of an image region into blocks (with or without arrangement into rows and columns), the result of a recursive multi-tree subdivision of an image region, or a combination thereof or any other type of block. Note, in passing, that blocks 80, 82, and 84 are not limited to being square, rectangular, or any other shape.
[0078] Figure 3 It is further shown 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 according to alternative embodiments more than one prediction signal 26 may be combined with the prediction residual signal 24"" to produce the image 12'.
[0079] exist Figure 3 In the embodiment described below, the transform blocks 84 should have the following meanings. The transformer 28 and the inverter 54 perform their transforms in units of these transform blocks 84. For example, many codecs use some kind of DST (discrete sine transform) or DCT (discrete cosine transform) for all transform blocks 84. Some codecs allow skipping of transforms so that for some transform blocks 84, the prediction residual signal is encoded directly in the spatial domain. However, according to the embodiments described below, the encoder 10 and the decoder 20 are configured in such a way that they support several transforms. For example, the transforms supported by the encoder 10 and the decoder 20 may include:
[0080] DCT-II (or DCT-III), where DCT stands for discrete cosine transform
[0081] DST-IV, where DST stands for discrete sine transform
[0082] DCT-IV
[0083] DST-VII
[0084] Identity Transformation (IT)
[0085] Naturally, while the transformer 28 will support all forward transformed versions of these transforms, the decoder 20 or inverse transformer 54 will support their corresponding inverse or reverse versions:
[0086] Inverse DCT-II (or inverse DCT-III)
[0087] ·Inverse DST-IV
[0088] Inverse DCT-IV
[0089] ·Inverse DST-VII
[0090] Identity Transformation (IT)
[0091] The subsequent description provides more details about which transforms may be supported by the encoder 10 and decoder 20. In any case, it should be noted that the set of supported transforms may include only one transform, such as a spectral-to-spatial or spatial-to-spectral transform, but it is also possible that the encoder or decoder does not use a transform at all, or does not apply a transform to a single block 80, 82, 84.
[0092] As already outlined above, Figures 1a to 3
[0046] The foregoing has been presented as examples in which the inventive concepts described above may be implemented to form specific examples of encoders and decoders according to the present application. Figure 1a , the encoder and decoder of 1b and 2, respectively, may represent possible implementations of the encoder and decoder described previously. However, Figure 1a , 1b and 2 are just examples. However, the encoder according to the embodiment of the present application may be different from Figure 1a or 1b encoder, for example, this is due to the different Figure 3 The subdivision into blocks 80 is performed in the manner exemplified in FIG. 8 and / or because no transform is used at all (e.g. transform skip / identical transform) or no transform is used for a single block. Likewise, a decoder according to an embodiment of the present application is different from, for example, Figure 2 The difference in the decoder 20 is due to the fact that the same situation converts the image 12' into a different image than that of Figure 3 The described approach is subdivided into blocks and / or for the same case the prediction residual is not derived from the data stream 14 in the transform domain, but in the spatial domain, for example and / or for the same case no transform is used at all or for individual blocks.
[0093] The values |q| of the prediction residual and at least one (optionally quantized) quantization error compensation signal mentioned here, for example, the binarization of samples / coefficients can be as shown in Table 1:
[0094]
[0095]
[0096] Table 1: Possible binarizations
[0097] The residual value rem is also binarized, ie, divided into a sequence of 0s and 1s, for example, by using a Golomb Rice code or the like.
[0098] According to an embodiment, the inventive concept described below may be implemented in a quantizer 32 of an encoder or a dequantizer 38, 52 of a decoder. Thus, according to an embodiment, the quantizer 32 and / or the dequantizer 38, 52 may comprise a plurality of quantization levels or scaling levels.
[0099] According to a first aspect of the present invention, Figure 4a shows the decoder and Figure 4b An encoder is shown.
[0100] The decoder 20 for decoding a residual signal from a data stream 14 is configured to decode 50 a quantized prediction residual 24″ and at least one quantization error compensation signal 33 from the data stream 14. Furthermore, the decoder 20 is configured to scale 52, i.e. dequantize, the quantized prediction residual 24″ to determine a scaled prediction residual 24″. The decoder is configured to determine a reconstructed prediction residual 24″″ based on the scaled prediction residual 24′″ and the at least one quantization error compensation signal 33.
[0101] and Figure 4a The decoder 20 shown in FIG. 1 is used in parallel to encode the residual signal into the data stream 14. Figure 4b The encoder 10 shown in the figure is configured to quantize 32 the prediction residual 24′ to determine a quantized prediction residual 24″ using a quantization error 31. Furthermore, the encoder 10 is configured to determine 60 at least one quantization error compensation signal 33 for compensating for the quantization error 31. The encoder 10 is configured to encode 34 the quantized prediction residual 24″ and the at least one quantization error compensation signal 33 into the data stream 14.
[0102] The at least one quantization error compensation signal 33 may represent a quantization error, e.g. Figure 7a and Figure 7b , or quantization error from quantization / scaling, see for example Figure 6a and Figure 6b .
[0103] According to an embodiment, the present invention uses a multi-stage residual coding, for example two stages, the first stage corresponding to the coding of the quantized prediction residual 24″ and the second stage corresponding to the coding of the quantization error compensation signal 33. In addition to the conventional residual coding of the quantized residual 24″, the quantization error, i.e. the quantization error compensation signal 33, can be fed into another residual coding, or the quantization error can be quantized again and fed into another residual coding. The quantization error of this quantized residual 24″ can be quantized again and fed into another residual coding, such as the quantization error of the quantized residual 24″. Figure 6a and Figure 6b In the two-stage implementation, only the first quantization error is re-encoded. For lossy coding, quantization is applied to the quantization error, while for lossless coding, the final quantization error is directly encoded without lossy quantization. Figure 4a and 4b The lossless encoding case is shown.
[0104] The decoder 20 and the encoder 10 may be configured to decode / encode the quantized prediction residual 24 ″ and the at least one quantization error compensation signal 33 from / to the data stream 14 using context-adaptive binary entropy decoding / encoding 100 of the binarization of the quantized prediction residual 24 ″ and the at least one quantization error compensation signal 33, as Figure 5 shown.
[0105] For both the quantized prediction residual 24 ″ and the at least one quantization error compensation signal 33 , the same binarization may be used.
[0106] Figure 5 A possible encoding of a possible binarization 25 of a value / sample / coefficient 294 of a quantized prediction residual 24 ″ or of at least one quantization error compensation signal 33 is shown.
[0107] The (optionally quantized) transform coefficient block 27 of the prediction residual or at least one quantization error compensation signal may be resolved in one or more passes from the top left coefficient 290 to the last significant coefficient 29 x to obtain a quantized prediction residual 24″ and a binarization of at least one quantization error compensation signal 33. In each pass, a certain number of binary bits is obtained. For example, in a first pass, for the resolved value of the (optionally quantized) transform coefficient block 27, only the significant binary bits (sig) are determined, in a second pass, for example, the binary bits greater than 1 (gt1), the parity binary bits (par) and the binary bits greater than 3 (gt3) are determined, and in a third pass, for example, the remaining binary bits are determined. Obviously, the (optionally quantized) transform coefficient block 27 can also be binarized differently.
[0108] According to an embodiment, having more than one residual coding stage corresponds to having at least two different binarizations of the residual signal, one for the quantized version, i.e., the quantized prediction residual, and another for the (optionally quantized) quantization error, i.e., the quantization error compensation signal 33. This results in a different distribution of bins in each residual coding stage, which can be exploited in context modeling. Thus, using the same number of context-coded bins, CABAC (Context-Adaptive Binary Arithmetic Coding) 100 can better exploit statistical correlations than a single-stage approach.
[0109] The context-adaptive binary entropy decoding / encoding 100 may be used to decode / encode the leading binary bits of the binarization of the quantized prediction residual 24″ and / or the binarization of at least one quantization error compensation signal 33, such as the first four binary bits, such as the sig binary bit, the gt1 binary bit, the par binary bit, and the gt3 binary bit. The remaining binary bits, i.e., the remaining portion of the binarization of the quantized prediction residual 24″ and / or the binarization of at least one quantization error compensation signal 33, may be decoded / encoded using an equal probability bypass mode 110.
[0110] Different probability models 102 may be used for decoding / encoding the binarization of the quantized prediction residual 24″ and / or the leading binary bits of the binarization of at least one quantization error compensation signal 33. According to an embodiment, the decoder 20 / encoder 10 may be configured to use a first probability model for decoding / encoding the leading binary bits of the binarization of the quantized prediction residual 24″, and to use a second probability model for decoding / encoding the leading binary bits of the at least one quantization error compensation signal 33.
[0111] Alternatively, the decoder 20 / encoder 10 may be configured to select a first probability model from the first set of probability models to decode 50 / encode 34 a predetermined bin, for example a first bin, such as a significant bin (sig bin), of the leading bins 25 of the binarization 25 of the quantized prediction residual 24″ based on a function applied to previously decoded / encoded bins of the binarization of the quantized prediction residual 24″, and to select a second probability model from the second set of probability models to decode 50 / encode 34 a predetermined bin of the leading bins of the binarization of the at least one quantization error compensation signal 33 based on a function applied to previously decoded / encoded bins of the binarization of the at least one quantization error compensation signal 33. For example, the probability model 102 may be selected to decode / encode the significant bin associated with the currently decoded / encoded coefficient 294 based on a function applied to previously decoded / encoded bins associated with the coefficients 291 to 293 adjacent to the currently decoded / encoded coefficient 294.
[0112] The solution can be divided into four areas, as described below.
[0113] Aspect 1: Residual Coding of Quantization Error
[0114] The general concept of the first aspect is shown in FIG. 1 , which is a multi-level residual coding method for the encoder 10. Figure 6a and multi-stage residual decoding for decoder 20. Figure 6b Here is the quantized input, i.e. the quantized prediction residual 24″, from which the residual code 34, i.e. the transformed prediction residual 24′ in the case of no transform skipping and the prediction residual 24 in the case of transform skipping, is subtracted to obtain the quantized error 120. In the case of transform skipping, the transform block 28 is skipped and, for losslessness, the last quantized block 32 is also skipped.
[0115] The decoder 20 / encoder 10 may be configured to convert the quantized prediction residual 24″ and the two or more quantization error compensation signals 331-33 N-1 The two or more quantization error compensation signals 331-33 are decoded 50 / encoded 34 from / into the data stream 14. N-1 The first quantized quantization error compensation signal 331′ and the second quantization error compensation signal 332 are included. Therefore, the second quantization error compensation signal 332 may not be decoded / encoded in a quantized form that results in lossless encoding. Alternatively, as Figure 6a and Figure 6b As shown in FIG, two or more quantization error compensation signals 331-33 N-1 comprising two or more quantized quantization error compensation signals 331'-33 N-1 If all quantization error compensation signals 331-33 N-1 is decoded / encoded as a quantized version, which may result in lossy encoding.
[0116] The first quantized quantization error compensation signal 331′ is associated with the quantization error 1201 caused by the quantization 320 of the prediction residual, and the second quantization error compensation signal 332 is associated with the quantization error 1202 caused by the quantization 321 of the first quantization error compensation signal 331, i.e., the quantization 321 of the quantization error 1201 caused by the quantization 320 of the prediction residual. The encoder 10 is configured to quantize 321 the first quantization error compensation signal 331 to obtain a first quantized quantization error compensation signal 331′.
[0117] The decoder 20 is configured to scale 520 (i.e., dequantize) the quantized prediction residual 24″ to determine a scaled prediction residual 24′″. In addition, the decoder 20 is configured to scale 521 the first quantized quantization error compensation signal 331′ to obtain a first scaled quantization error compensation signal 331″, and to determine a reconstructed prediction residual 24′″ based on the scaled prediction residual 24′″, the first scaled quantization error compensation signal 331″, and the second quantization error compensation signal 332.
[0118] The second quantization error compensation signal 332 can be used to correct the first scaled quantization error compensation signal 331″ to obtain a first quantization error compensation signal 331. On the decoder side, the first quantization error compensation signal 331 can represent a first reconstructed quantization error. The decoder 20 can be configured to use the first quantization error compensation signal 331 to correct the scaled prediction residual 24″ to obtain a corrected scaled prediction residual. In the case of skipping the transform block 54, this corrected scaled prediction residual can represent the reconstructed prediction residual 24". Alternatively, the corrected scaled prediction residual can be subjected to the transform block 54 to obtain the reconstructed prediction residual 24".
[0119] In one embodiment, the present invention is applied to lossless coding, such as Figure 7a and 7b shown. Figure 7a and 7b shows a two-stage lossless residual coding, where Figure 7a An encoder embodiment is shown and Figure 7b A decoder embodiment is shown.
[0120] In contrast to known lossless coding, at the encoder 10 side, the residual signal, i.e. the prediction residual 14', is quantized 32 and the quantization error, i.e. the first quantization error compensation signal 33, is encoded again, for example, with a residual coding 342. The quantization 32 may be performed using a predetermined quantization factor. The residual coding 341 of the quantized residual, i.e. the quantized prediction residual 24", may be the specific residual coding of the transform skipped residual mentioned above [3]. The residual coding 342 of the quantized error 33 may be the same as the quantized residual 24", to achieve a simpler design, or to adapt to different signal characteristics to achieve higher efficiency. For the quantized block 32, the quantization parameter may be determined based on a higher level parameter such as a slice QP, or an offset of this parameter such as an incremental QP for a subblock or subblock region.
[0121] At the decoder 20 side, the quantized prediction residual 24" is decoded 501 and scaled 52 to obtain a scaled prediction residual 24a'". Additionally, the decoder 20 is configured to decode 502 the quantization error compensation signal 33 to correct the scaled prediction residual 24a'" and determine a reconstructed prediction residual 24b'".
[0122] In another embodiment, the present invention is applied to a lossy coding with transform skipping and two quantization stages 320 / 321 on the encoder 10 side, including quantization 321 of the quantization error 33. In parallel on the decoder 20 side, in two scaling stages 520 / 521, the quantized quantization error compensation signal 331' including scaling 521 is used to obtain a first scaled quantization error compensation signal 331". Again, the residual coding 342 of the quantization error 33 can be the same as the quantized residual 24", in order to achieve a simpler design or to adapt to different signal characteristics to achieve higher efficiency.
[0123] According to the embodiment, Figures 4a to 7b The decoder 20 / encoder 10 described in one embodiment is configured to convert a first scaling parameter, such as a first quantization parameter, for scaling 520 of the quantized prediction residual 24″ and a first quantization parameter for the quantized quantization error compensation signal 331′ to 33 N-1 'Scaling 521 to 52 N-1 Further scaling parameters, for example further quantization parameters, are decoded / encoded from / into the data stream 14, wherein each of the further scaling parameters is associated with the quantized quantization error compensation signals 331 ′ to 33 N-1 'Quantization / scaling level 321-32 N-1 / 521-52 N-1 associated.
[0124] Furthermore, the quantization parameter for the first block, i.e., the first scaling level 520, may be determined based on a higher-level parameter such as a slice QP, or an offset of that parameter such as a delta QP for a sub-block or sub-block region. The quantization parameter for the second quantized block, i.e., the second scaling level 521, may be the same as the parameter of the first or previous quantization level, or the same offset of the parameter of the first quantization level, for example:
[0125] Fixed, and / or
[0126] Signaled at the video, sequence, picture or sub-picture level (e.g. slice or tile), and / or
[0127] Signaled for each sub-block or sub-block region, and / or
[0128] Signaled as an index to a set of offset values for each sub-block or sub-block region at the video, sequence, picture or sub-picture level (e.g. slice or tile), and / or
[0129] Derived from neighboring sub-blocks or previously coded parameters
[0130] In other words, the decoder 20 / encoder 10 may be configured to decode / encode each of the further scaling parameters from / to the data stream 14, or to decode / encode an offset of each of the further scaling parameters relative to the scaling parameter associated with the previous quantization level from / to the data stream 14, or to decode / encode an offset of each of the further scaling parameters relative to the first scaling parameter associated with the first quantization level 520 from / to the data stream 14. The decoding / encoding of the first scaling parameter and, optionally, the decoding / encoding of the further scaling parameters may be performed at a video, image sequence, image or sub-image granularity.
[0131] Instead of additional scaling parameters, the decoder 20 / encoder 10 may be configured to decode / encode the data at all scaling levels 521-52. N-1 For converting the quantized quantization error compensation signal 331′ to 33 N-1 'The second zoom parameter of the zoom. Therefore, at all further zoom levels 521-52 N-1 , using the same scaling parameter, i.e. the second scaling parameter. The second scaling parameter is different from the first scaling parameter used for the scaling 520 of the quantized prediction residual 24". Depending on the embodiment, the second scaling parameter is decoded / encoded directly or as an offset relative to the first scaling parameter. This decoding / encoding of the second scaling parameter can also be performed at a video, image sequence, image or sub-image granularity.
[0132] Decoder 20 / encoder 10, according to Figure 7b / Figure 7a As shown, it can be configured to decode / encode only the first scaling parameter, since there are no further quantization / scaling stages. The quantization error compensation signal 33 is not scaled.
[0133] Optionally, at the decoder 20 / encoder 10, according to Figure 6b / Figure 6b As shown, the predetermined quantization error compensation signal, such as the last quantization error compensation signal 33 N-1 , may not be scaled / quantized. This may be the case at the decoder 20 if this predetermined quantization error compensation signal is not a quantized quantization error compensation signal, i.e. the predetermined quantization error compensation signal has not been quantized by the encoder 10. Therefore, the predetermined scaling / quantization level, e.g. the last scaling level 52 associated with the predetermined quantization error compensation signal N-1and the final quantization level 32 N-1 is omitted.
[0134] According to an embodiment, the at least one (optionally quantized) quantization error compensation signal described herein is decoded / encoded using spatial and / or temporal prediction. For temporal prediction, a previously decoded / encoded portion of the at least one (optionally quantized) quantization error compensation signal may be used, and for spatial prediction of a previously decoded / encoded adjacent portion, the at least one (optionally quantized) quantization error compensation signal may be used.
[0135] According to an embodiment, the residual signal described herein corresponds to a prediction of an image 12 or video 11. Figure 8 As shown, the aforementioned encoder 10 can be configured to determine a lossless coding mode 200 for a first part 210 of an image 12 or video 11 and a lossy coding mode 220 for a second part 230 of the image 12 or video 11, and the aforementioned decoder 20 can be configured to detect the lossless coding mode 200 for the first part 210 of the image 12 or video 11 and the lossy coding mode 220 for the second part 230 of the image 12 or video 11.
[0136] A lossless coding mode 200 may be performed, as described with respect to Figure 7a and 7b Alternatively, the lossless coding mode 200 may comprise two or more scaling / quantization levels 52 / 32, as described with respect to 6a and 6b, wherein the last scaling / quantization level 52 N-1 / 32 N-1 is omitted, so that the last quantization error compensation signal 33 N-1 Unscaled / unquantized.
[0137] The lossy coding mode 220 may be performed like one of the lossy coding modes 220 described above. Alternatively, in the lossy coding mode 220, the prediction residual 24" is quantized 32 and encoded into the data stream 14 and no quantization error compensation signal is encoded. In parallel, the decoder may be configured to decode the quantized prediction residual and the no quantization error compensation signal from the data stream 14 and scale the quantized prediction residual to determine a scaled prediction residual to obtain a reconstructed prediction residual.
[0138] The lossless / lossy coding mode flag 240 encoded into the data stream 14 can indicate, for portions of the image 12 or video 11, whether these portions are to be decoded / encoded using the lossless coding mode 200 or the lossy coding mode 220. Based on the lossless / lossy coding mode flag 240, the decoder is configured to recognize the portion where the lossless / lossy coding mode flag 240 indicates the lossless coding mode 200 as the first portion 210, and recognize the portion where the lossless / lossy coding mode flag 240 indicates the lossless coding mode 220 as the second portion 230.
[0139] According to an embodiment, a quantization / scaling factor 250 (e.g., a first quantization factor, i.e., a first scaling factor) or a predetermined quantization factor (i.e., a predetermined scaling factor) for a portion of the image 12 or video 11 is encoded into the data stream 14. The quantization / scaling factor 250 corresponding to the portion without quantization forms the first portion 210, and the quantization / scaling factor 250 not corresponding to the portion without quantization forms the second portion 230. The decoder can be configured to identify the first portion 200 and the second portion 230 based on the quantization / scaling factor 250.
[0140] Optionally, the decoder / encoder is configured to decode / encode an indication 260 from the data stream 14 as to whether the residual signal is to be encoded into the data stream 14 in the transform domain or the non-transform domain. According to an embodiment, the portion of the data stream 14 in which the quantization / scaling factor 250 corresponds to no quantization and the residual signal is encoded in the non-transform domain forms the first portion 210, and the portion of the data stream in which the quantization / scaling factor 250 does not correspond to no quantization and the residual signal is encoded in the transform domain forms the second portion 230. In other words, the prediction residual of the first portion 210 does not undergo the transform 28 / 54 and quantization 32 / scaling 52, but the prediction residual of the second portion 230 does undergo the transform 28 / 54 and quantization 32 / scaling 52.
[0141] Aspect 2: Prediction of quantization error
[0142] The second aspect extends the first aspect by adding a prediction to the quantization error, i.e., the quantization error compensation signal 33. The prediction can also be calculated at the decoder. Thus, for example, only the prediction error of the quantization error is encoded and decoded. For each quantization error, a prediction error can be calculated. The prediction error can be obtained using at least one error prediction signal predicted using a prediction type, and the prediction error can be determined based on the error prediction signal and the at least one quantization error. Because the prediction is lossless, it can be applied to lossy transforms and transform skipping as well as lossless coding.
[0143] According to an embodiment, the decoder 20 / encoder 10 is configured to, for example, for each quantization error, derive from / encode into the data stream 14 an assignment of the prediction error of the respective quantization error to a set of prediction types such that the prediction error of the respective quantization error is assigned to the associated prediction type of the set of prediction types.
[0144] The at least one quantization error compensation signal may be determined based on the prediction errors and a corresponding error prediction signal for each prediction error.
[0145] Aspect 3: Signaling
[0146] Multi-level mode can be signaled in different ways:
[0147] Explicitly signaled at the video, sequence, picture or sub-picture level (e.g. slice or tile), and / or
[0148] If enabled, explicitly signaled at the sub-block or sub-block level region, and / or
[0149] Implicitly enabled for lossless coding or transform skip coding.
[0150] In one embodiment, lossless coding is signaled at the sub-block level by explicitly signaling the skipping of transforms and by signaling the quantization parameter that causes the skipping of quantization. In the case of signaling lossless coding, the two-stage residual coding for losslessness as described in one embodiment of the first aspect is applied.
[0151] Aspect 4: Separate encoding of quantization error
[0152] This fourth aspect consists in coding the quantization error separately for the video, sequence, picture or sub-picture level (e.g. slice or tile), i.e. outside the coding loop. In this way, by coding the quantized quantization error in a separate enhancement layer for lossy coding, quality scalability can be achieved. For lossless coding, a separate layer with coded quantization error can be used as an enhancement layer to the lossy base layer.
[0153] According to an embodiment, the decoder 20 / encoder 10 is configured to decode 50 / encode 34 the quantized prediction residual from the lossy base layer of the data stream 14 into the lossy base layer of the data stream 14, and to decode 50 / encode 34 at least one quantization error compensation signal 33 from the enhancement layer of the data stream 14 into the enhancement layer of the data stream 14.
[0154] Alternative implementation:
[0155] Although some aspects have been described in the context of an apparatus, it is clear that these aspects also represent descriptions of corresponding methods, where blocks or devices correspond to method steps or features of method steps. Similarly, aspects described in the context of method steps also represent descriptions of corresponding blocks, items, or features of corresponding apparatus. Some or all of the method steps can be performed by (or using) hardware devices, such as microprocessors, programmable computers, or electronic circuits. In some embodiments, one or more of the most important method steps can be performed by such an apparatus.
[0156] Depending on certain implementation requirements, embodiments of the present invention can be implemented in hardware or software. This implementation can be performed using a digital storage medium having electronically readable control signals stored thereon, such as a floppy disk, DVD, Blu-ray, CD, ROM, PROM, EPROM, EEPROM, or flash memory, which cooperates (or is capable of cooperating) with a programmable computer system to perform the corresponding method. Thus, the digital storage medium can be computer-readable.
[0157] Some embodiments according to the invention comprise a data carrier having electronically readable control signals, which are capable of cooperating with a programmable computer system, such that one of the methods described herein is performed.
[0158] Generally, embodiments of the present invention can be implemented as a computer program product with a program code, the program code being operative for performing one of the methods when the computer program product runs on a computer.The program code may, for example, be stored on a machine-readable carrier.
[0159] Other embodiments comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier.
[0160] In other words, an embodiment of the inventive method is, therefore, a computer program having a program code for performing one of the methods described herein, when the computer program runs on a computer.
[0161] A further embodiment of the inventive method is, therefore, a data carrier (or a digital storage medium, or a computer-readable medium) on which is recorded the computer program for performing one of the methods described herein. The data carrier, the digital storage medium or the recorded medium is typically tangible and / or non-transitory.
[0162] A further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein.The data stream or the sequence of signals may, for example, be configured to be transferred via a data communication connection, for example via the Internet.
[0163] A further embodiment comprises a processing means, for example a computer or a programmable logic device, configured to or adapted to perform one of the methods described herein.
[0164] A further embodiment comprises a computer having installed thereon the computer program for performing one of the methods described herein.
[0165] According to a further embodiment of the present invention, an apparatus or system is provided for transmitting (for example, electronically or optically) a computer program for performing one of the methods described herein to a receiver. For example, the receiver may be a computer, a mobile device, a storage device, etc. For example, the apparatus or system may comprise a file server for transmitting the computer program to the receiver.
[0166] In some embodiments, a programmable logic device (e.g., a field programmable gate array) can be used to perform some or all of the functions of the methods described herein. In some embodiments, the field programmable gate array can collaborate with a microprocessor to perform one of the methods described herein. Typically, these methods are preferably performed by any hardware device.
[0167] The apparatus described herein may be implemented using hardware devices, computers, or a combination of hardware devices and computers.
[0168] The apparatus described herein or any component of an apparatus described herein may be implemented at least partially in hardware and / or software.
[0169] The methods described herein may be performed using a hardware device, or using a computer, or using a combination of a hardware device and a computer.
[0170] Any component of a method described herein or an apparatus described herein may be performed at least in part by hardware and / or software.
[0171] The above embodiments are intended to illustrate the principles of the present invention only. It should be understood that modifications and variations of the arrangements and details described herein will be readily apparent to those skilled in the art. Accordingly, it is intended that the present invention be limited only by the scope of the appended patent claims and not by the specific details presented through the description and explanation of the embodiments herein.
[0172] References
[0173] [1]ITU-T,Recommendation H.265and I1 / IEC,Int.Standard 23008-2,“Highefficiency video coding,”Geneva,Switzerland,Feb.2018.Online:http: / / www.itu.int / rec / T-REC-H.265.
[0174] [2]T.Nguyen,B.Bross,H.Schwarz,D.Marpe,and T.Wiegand,"Minimum AllowedQP for Transform Skip Mode,"Joint Video Experts Group,document JVET-O0405,Gothenburg,July 2019.Online:
[0175] http: / / phenix.it-sudparis.eu / jvet / doc_end_user / documents / 15_Gothenburg / wg11 / JVET-O0405-v1.zip
[0176] [3]B.Bross,T.Nguyen,P.Keydel,H.Schwarz,D.Marpe,and T.Wiegand,"Non-CE8:Unified Transform Type Signalling and Residual Coding for TransformSkip,"Joint Video Experts Group,document JVET-M0464,Marrakech,January2019.Online:
[0177] http: / / phenix.it-sudparis.eu / jvet / doc_end_user / documents / 13_Marrakech / wg11 / JVET-M0464-v4.zip
Claims
1. A decoder (20) for decoding (50) a residual signal from a data stream (14), configured to decoding a quantized prediction residual (24") and at least one quantization error compensation signal (33) from the data stream (14); scaling (52) the quantized prediction residual (24") to determine a scaled prediction residual (24'", 24a'"); A reconstructed prediction residual (24b'", 24"") is determined based on the scaled prediction residual (24'", 24a'") and the at least one quantization error compensation signal (33).
2. The decoder (20) according to claim 1, wherein the decoder (20) is configured to decode (50) the quantized prediction residual (24") and the at least one quantization error compensation signal (33) from the data stream (14) by using context-adaptive binary entropy decoding (100) of the binarization of the prediction residual (24") and the at least one quantization error compensation signal (33).
3. The decoder (20) according to claim 2, wherein the decoder (20) is configured to decode the leading binarized bits of the prediction residual (24") in a context-adaptive manner using the context-adaptive binary entropy decoding (100) and to decode the remaining binarized bits of the prediction residual (24") using an equiprobable bypass mode (110); and / or The decoder (20) is configured to decode the binarized leading binary bits of the at least one quantization error compensation signal (33) using the context-adaptive binary entropy decoding (100) and to decode the binarized remaining binary bits of the at least one quantization error compensation signal (33) using an equal probability bypass mode (110).
4. The decoder (20) according to claim 3, wherein the decoder (20) is configured to use the same binarization for the prediction residual (24") and the at least one quantization error compensation signal (33), and to use a first probability model (102) to decode the leading bins of the binarization of the prediction residual (24") and to use a second probability model (102) to decode the leading bins of the at least one quantization error compensation signal (33).
5. The decoder (20) according to claim 3, wherein The decoder (20) is configured to using the same binarization for the prediction residual (24") and the at least one quantization error compensation signal (33), and A first probability model (102) of the first set of probability models (102) is selected to decode (50) predetermined bins of the leading binarized bins of the prediction residual (24") based on a function of previously decoded bins applied to the binarization of the prediction residual (24"), and a second probability model (102) of the second set of probability models (102) is selected to decode predetermined bins of the leading binarized bins of the at least one quantization error compensation signal (33) based on a function of previously decoded bins applied to the binarization of the at least one quantization error compensation signal (33).
6. The decoder (20) of claim 1, wherein the decoder (20) is configured to decode (50) two or more quantization error compensation signals (33) from the data stream (14), The two or more quantization error compensation signals (33) include at least a first quantized quantization error compensation signal (331') associated with a quantization error (1201) caused by quantization (320) of the prediction residual (24"), and A second quantization error compensation signal (332) is associated with a quantization error (1202) resulting from quantization (321) of the first quantization error compensation signal (331).
7. The decoder (20) according to claim 6, wherein the decoder (20) is configured to scale (52) the first quantized quantization error compensation signal (331') to obtain a first scaled quantization error compensation signal (331"), and to determine the reconstructed prediction residual (24b', 24"") based on the scaled prediction residual (24'", 24a'), the first scaled quantization error compensation signal (331") and the second quantization error compensation signal (332).
8. The decoder (20) according to claim 6, wherein the decoder (20) is configured to decode (50) from the data stream (14) a first scaling parameter for scaling (52, 520) of the quantized prediction residual (24") and a scaling parameter (521-522) of the quantized quantization error compensation signal (33'). N-1 ), wherein each of the further scaling parameters is associated with a quantization level (32).
9. The decoder (20) of claim 8, wherein the decoder (20) is configured to decode each of the further scaling parameters from the data stream (14) at a video, picture sequence, picture or sub-picture granularity, or to decode an offset of each of the further scaling parameters relative to a scaling parameter associated with a previous quantization level (32).
10. The decoder (20) of claim 1, wherein The decoder (20) is configured to decode from the data stream (14) first scaling parameters for scaling (52, 520) of the quantized prediction residual (24") and scaling (521-2520) of the at least one quantization error compensation signal (33). N-1 )’s second scaling parameter.
11. The decoder (20) of claim 10, configured to decode the second scaling parameter as an offset relative to the first scaling parameter.
12. The decoder (20) of claim 10, configured to decode the second scaling parameter, or an offset of the second scaling parameter relative to the first scaling parameter, at a video, picture sequence, picture or sub-picture granularity.
13. The decoder (20) according to claim 1, configured to cause a predetermined quantization error compensation signal (33) of the at least one quantization error compensation signal (33) to be N-1 ) are not scaled.
14. The decoder (20) of claim 1, wherein The residual signal corresponds to a prediction of the image (12) or video (11), and The decoder (20) is configured to detecting a lossless coding mode (200) for a first portion (210) of the image (12) or video (11) and a lossy coding mode (220) for a second portion (230) of the image (12) or video (11), and For the first part (210), decoding the quantized prediction residual (24") and the at least one quantization error compensation signal (33) from the data stream (14); scaling (52) the quantized prediction residual (24") using a predetermined scaling factor to determine the scaled prediction residual (24'", 24a'") and leaving the at least one quantization error compensation signal (33) unscaled; determining the reconstructed prediction residual (24b'", 24"") based on the scaled prediction residual (24'", 24a') and the at least one quantization error compensation signal (33), and For the second part (230), decoding the quantized prediction residual (24") from the data stream (14) without the at least one quantization error compensation signal (33); as well as scaling (52) the quantized prediction residual (24") using a first scaling factor for the second portion (230) signaled in the data stream (14) to determine the scaled prediction residual (24'"), 24a"') to obtain the reconstructed prediction residual (24b"', 24"").
15. The decoder (20) according to claim 14, configured to decoding a lossless / lossy coding mode flag (240) for a portion of the image (12) or video (11) from the data stream (14), A portion of the lossless / lossy coding mode flag (240) indicating the lossless coding mode (200) is identified as the first portion (210), and a portion of the lossless / lossy coding mode flag (240) indicating the lossy coding mode (220) is identified as the second portion (230).
16. The decoder (20) according to claim 14, configured to decoding a first scaling factor (250) for a portion of the image (12) or video (11) from the data stream (14), A portion to which the first scaling factor (250) corresponds to no scaling is identified as the first portion (210), and a portion to which the first scaling factor (250) does not correspond to no scaling is identified as the second portion (230).
17. The decoder (20) of claim 14, wherein the decoder (20) is configured to use a fixed predetermined scaling factor, or to obtain the predetermined scaling factor by applying an offset to the first scaling factor, or to decode the predetermined scaling factor from the data stream (14).
18. The decoder (20) according to claim 14, configured to decoding, for a portion of the data stream, from the data stream (14) the first scaling factor (250) and an indication (260) of whether the residual signal was encoded into the data stream (14) in a transformed domain or a non-transformed domain, The portion of the data stream (14) in which the first scaling factor (250) corresponds to no scaling and the residual signal is encoded in the non-transform domain is identified as the first portion (210), and the portion of the data stream (14) in which the first scaling factor (250) does not correspond to no scaling and the residual signal is encoded in the transform domain is identified as the second portion (230).
19. The decoder (20) of claim 1 for decoding an image (12) from a data stream (14), the decoder (20) being configured to predicting (44) the image (12) using intra prediction and / or inter prediction to obtain a prediction signal (26); in, The reconstructed prediction residual (24b'", 24"") is correlated with the prediction signal (26) of the image (12) within a predetermined block of the image (12); and The predetermined block of the image (12) is reconstructed using the reconstructed prediction residual (24b'", 24"") and the prediction signal (26).
20. The decoder (20) of claim 1, configured to decode (50) the at least one quantization error compensation signal (33) using spatial and / or temporal prediction.
21. The decoder (20) according to claim 1, being configured to decode (50) the at least one quantization error compensation signal (33) using spatial and / or temporal predictions made from adjacent and / or previously decoded parts of the at least one quantization error compensation signal (33).
22. The decoder (20) according to claim 1, configured to decoding (50) at least one prediction error of a quantization error (120) from the data stream (14), wherein the decoder (20) is configured to derive from the data stream (14) an assignment of the at least one prediction error of the quantization error to a set of prediction types such that each prediction error of the quantization error (120) is assigned to an associated prediction type of the set of prediction types; obtaining, for the at least one prediction error of the quantization error (120), at least one error prediction signal using a prediction type assigned to the corresponding prediction error of the quantization error (120); and determining the at least one quantization error compensation signal (33) based on the at least one prediction error of the quantization error (120) and the at least one error prediction signal.
23. The decoder (20) of claim 1, wherein the decoder (20) is configured to decode (500) the quantized prediction residual (24") from a lossy base layer of the data stream (14) and to decode (501-502) the quantized prediction residual (24") from an enhancement layer of the data stream (14). N-1 ) said at least one quantization error compensation signal (33).
24. An encoder (10) for encoding a residual signal (24) into a data stream (14), configured to quantizing the prediction residual (24, 24') using the quantization error (120) to determine a quantized prediction residual (24"); determining at least one quantization error compensation signal (33) for compensating for the quantization error (120); The quantized prediction residual (24") and the at least one quantization error compensation signal (33) are encoded into the data stream (14).
25. Encoder (10) according to claim 24, wherein the encoder (10) is configured to encode (34) the quantized prediction residual (24") and the at least one quantization error compensation signal (33) into the data stream (14) by using context-adaptive binary entropy coding (100) of the binarization of the prediction residual (24, 24') and the at least one quantization error compensation signal (33).
26. The encoder (10) according to claim 25, wherein the encoder (10) is configured to encode the leading binarized bits of the prediction residual (24, 24') in a context-adaptive manner using the context-adaptive binary entropy coding (100) and to encode the remaining binarized bits of the prediction residual (24, 24') using an equiprobable bypass mode (110); and / or The encoder (10) is configured to encode the leading binary bits of the binarization of the at least one quantization error compensation signal (33) using the context-adaptive binary entropy coding (100), and to encode the remaining binary bits of the binarization of the at least one quantization error compensation signal (33) using an equal probability bypass mode (110).
27. Encoder (10) according to claim 26, wherein the encoder (10) is configured to use the same binarization for the prediction residual (24, 24') and the at least one quantization error compensation signal (33), and to encode the leading binary bits of the binarization of the prediction residual (24, 24') using a first probability model (102) and to encode the leading binary bits of the at least one quantization error compensation signal (33) using a second probability model (102).
28. The encoder (10) of claim 26, wherein The encoder (10) is configured to using the same binarization for the prediction residual (24, 24') and the at least one quantization error compensation signal (33), and A first probability model (102) of a first set of probability models (102) is selected to encode predetermined bins of the leading binarized bits of the prediction residual (24, 24') based on a function applied to previously encoded bins of the binarization of the prediction residual (24, 24'), and a second probability model (102) of a second set of probability models (102) is selected to encode predetermined bins of the leading binarized bits of the at least one quantization error compensation signal (33) based on a function applied to previously encoded bins of the binarization of the at least one quantization error compensation signal (33).
29. The encoder (10) of claim 24, wherein the encoder (10) is configured to encode two or more quantization error compensation signals (33) into the data stream (14), The two or more quantization error compensation signals (33) include at least a first quantized quantization error compensation signal (331') associated with a quantization error (1201) caused by quantization (320) of the prediction residual (24, 24'), and A second quantization error compensation signal (332) is associated with a quantization error (1202) resulting from quantization (321) of the first quantization error compensation signal (331).
30. Encoder (10) according to claim 29, wherein the encoder (10) is configured to quantize the first quantization error compensation signal (331) to obtain a first quantized quantization error compensation signal (331'), so that a reconstructed prediction residual (24b'", 24"") is determinable by a decoder (20) based on the quantized prediction residual (24"), the first quantized quantization error compensation signal (331') and the second quantization error compensation signal (332).
31. The encoder (10) of claim 29, wherein The encoder (10) is configured to convert a first scaling parameter for scaling (52, 520) of the quantized prediction residual (24") and a first scaling parameter for scaling (521-522) of the quantized quantization error compensation signal (33') into N-1 ) are encoded into the data stream (14), wherein each of the further scaling parameters is associated with a quantization level (32).
32. An encoder (10) according to claim 31, wherein the encoder (10) is configured to encode each of the additional scaling parameters into the data stream (14) at a video, image sequence, image or sub-image granularity, or to encode each of the additional scaling parameters into the data stream (14) as an offset relative to a scaling parameter associated with a previous quantization level (32).
33. The encoder (10) according to claim 24, wherein the encoder (10) is configured to use a first scaling parameter for scaling (52, 520) of the quantized prediction residual (24") and a scaling parameter (521-522) for the at least one quantization error compensation signal (33) n-1 ) is encoded into the data stream (14).
34. The encoder (10) of claim 33, configured to encode the second scaling parameter as an offset relative to the first scaling parameter.
35. The encoder (10) according to claim 33, configured to encode the second scaling parameter, or an offset of the second scaling parameter relative to the first scaling parameter, at a video, picture sequence, picture or sub-picture granularity.
36. The encoder (10) according to claim 24, configured to make a predetermined quantization error compensation signal (33) of the at least one quantization error compensation signal (33) N-1 ) are not quantized.
37. The encoder (10) of claim 24, wherein The residual signal (24) corresponds to a prediction (44) of the image (12) or video (11), and The encoder (10) is configured to determining a lossless coding mode (200) for a first portion (210) of the image (12) or video (11) and a lossy coding mode (220) for a second portion (230) of the image (12) or video (11), and For the first part (210), quantizing (32, 320) the prediction residual (24, 24') using a predetermined quantization factor to determine the quantized prediction residual (24"), and leaving the at least one quantization error compensation signal (33) unquantized; encoding (34) the quantized prediction residual (24") and the at least one quantization error compensation signal (33) into the data stream (14); For the second part (230), quantizing (32) the prediction residual (24, 24') using a first quantization factor for the second portion (230) to be signaled in the data stream (14) to determine the quantized prediction residual (24"); and The quantized prediction residual (24") is encoded (34) into the data stream (14) without the at least one quantization error compensation signal (33).
38. The encoder (10) according to claim 37, configured to encoding (34) a lossless / lossy coding mode flag (240) for a portion of the image (12) or video (11) into the data stream (14), in, The lossless / lossy coding mode flag (240) indicates that a portion of the lossless coding mode (200) forms the first portion (210), and the lossless / lossy coding mode flag (240) indicates that a portion of the lossy coding mode (220) forms the second portion (230).
39. The encoder (10) according to claim 37, configured to encoding a first quantization factor (250) for a portion of the image (12) or video (11) into the data stream (14), in, The first quantization factor (250) corresponds to a non-quantized portion to form the first portion (210), and the first quantization factor (250) does not correspond to a non-quantized portion to form the second portion (230).
40. The encoder (10) of claim 37, wherein the encoder (10) is configured to use a fixed predetermined quantization factor, or to obtain the predetermined quantization factor by applying an offset to the first quantization factor (250), or to determine a predetermined scaling factor separately.
41. The encoder (10) according to claim 37, configured to encoding, for a portion of the data stream, into the data stream (14) the first quantization factor (250) and an indication (260) of whether the residual signal is to be encoded into the data stream (14) in a transformed domain or a non-transformed domain, The first portion (210) is formed by a portion of the residual signal encoded in the non-transform domain into the data stream (14) in which the first quantization factor (250) corresponds to no quantization, and the second portion (230) is formed by a portion of the residual signal encoded in the transform domain into the data stream (14) in which the first quantization factor (250) does not correspond to no quantization.
42. The encoder (10) of claim 24 for encoding an image (12) into a data stream (14), the encoder (10) being configured to predicting (44) the image (12) using intra prediction and / or inter prediction to obtain a prediction signal (26); The prediction residual (24, 24') for a predetermined block of the image (12) is determined based on the prediction signal (26) and an original signal associated with the predetermined block of the image (12).
43. The encoder (10) according to claim 24, configured to encode (34) the at least one quantization error compensation signal (33) using spatial and / or temporal prediction.
44. The encoder (10) according to claim 24, being configured to encode (34) the at least one quantization error compensation signal (33) using spatial and / or temporal predictions from adjacent and / or previously encoded parts of the at least one quantization error compensation signal (33).
45. The encoder (10) according to claim 24, configured to obtaining at least one prediction error of a quantization error (120) using at least one error prediction signal utilizing a prediction type; and determining the at least one prediction error based on the at least one error prediction signal and the at least one quantization error (120); and The at least one prediction error of the quantization error (120) is encoded into the data stream (14), wherein the encoder (10) is configured to encode into the data stream (14) an assignment of the at least one prediction error of the quantization error (120) to a set of prediction types such that each prediction error of the quantization error (120) is assigned to an associated prediction type of the set of prediction types.
46. The encoder (10) according to claim 24, wherein the encoder (10) is configured to encode the quantized prediction residual (24") into a lossy base layer of the data stream (14) and to encode the at least one quantization error compensation signal (33) into an enhancement layer of the data stream (14).
47. A method for decoding a residual signal from a data stream, comprising: decoding a quantized prediction residual and at least one quantization error compensation signal from the data stream; scaling the quantized prediction residual to determine a scaled prediction residual; as well as A reconstructed prediction residual is determined based on the scaled prediction residual and the at least one quantization error compensation signal.
48. A method for encoding a residual signal into a data stream, comprising quantizing the prediction residual using the quantization error to determine a quantized prediction residual; determining at least one quantization error compensation signal for compensating for the quantization error; as well as The quantized prediction residual and the at least one quantization error compensation signal are encoded into the data stream.
49. A computer-readable storage medium having stored thereon electronically readable control signals, cooperating with a programmable computer system to perform the method of claim 47 or 48.
50. A computer program product having a program code for performing the method according to claim 47 or 48 when the computer program product is run on a computer.
Citation Information
Patent Citations
Method and apparatus for encoding and decoding image
US20090225833A1