A more efficient way of addressing different bit-depths, or different bit-depths and chroma sampling format requirements is achieved by using a low bit-depth and/or low-chroma resolution representation for providing a respective base layer data stream representing this low bit-depth and/or low-chroma resolution representation as well as for providing a higher bit-depth and/or higher chroma resolution representation so that a respective prediction residual may be encoded in order to obtain a higher bit-depth and/or higher chroma resolution representation. By this measure, an encoder is enabled to store a base-quality representation of a picture or a video sequence, which can be decoded by any legacy decoder or video decoder, together with an enhancement signal for higher bit-depth and/or reduced chroma sub-sampling, which may be ignored by legacy decoders or video decoders.

Patent
   8774269
Priority
Oct 25 2006
Filed
Oct 25 2006
Issued
Jul 08 2014
Expiry
Jan 29 2028
Extension
461 days
Assg.orig
Entity
Large
6
12
currently ok
31. A method for encoding a picture into a quality-scalable data stream, comprising:
encoding the picture into a base encoded data stream representing a representation of the picture with a first picture sample bit depth;
providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture comprising a second picture sample bit depth being higher than the first picture sample bit depth, the provision comprising performing, on the representation of the picture with the first picture sample bit depth, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture and using
a first mathematical mapping formula from the first dynamic range to the second dynamic range for a first region of the picture, and a second mathematical mapping formula from the first dynamic range to the second dynamic range, different from the first mathematical mapping formula for the first region of the picture, for a second region of the picture; and
encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and
forming the quality-scalable data stream based on the base encoded data stream, the bit-depth enhancement layer data stream and mapping information specifying the first and second mathematical mapping formulae used in providing the prediction; wherein
the providing step is performed such that a domain of the first and second mathematical mapping functions coincides with the first dynamic range and a codomain of the first and second mathematical mapping functions lies within the second dynamic range.
1. An encoder for encoding a picture into a quality-scalable data stream, comprising:
a base encoder for encoding the picture into a base encoded data stream representing a representation of the picture with a first picture sample bit depth;
a predictor for providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture comprising a second picture sample bit depth being higher than the first picture sample bit depth, the predictor comprising a mapper for performing, on the representation of the picture with the first picture sample bit depth, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, the mapper using, for the mapping,
a first mathematical mapping formula from the first dynamic range to the second dynamic range for a first region of the picture, and a second mathematical mapping formula from the first dynamic range to the second dynamic range, different from the first mathematical mapping formula for the first region of the picture, for a second region of the picture;
a residual encoder for encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and a combiner for forming the quality-scalable data stream based on the base encoded data stream, the bit-depth enhancement layer data stream and mapping information specifying the first and second mathematical mapping formulae used by the mapper; wherein
the predictor is configured such that a domain of the first and second mathematical mapping functions coincides with the first dynamic range and a codomain of the first and second mathematical mapping functions lies within the second dynamic range.
32. A method for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream comprising a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth as well as mapping information, the method comprising:
decoding the base layer data stream into a lower bit-depth reconstructed picture;
decoding the bit-depth enhancement data stream into the prediction residual;
providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture comprising the second picture sample bit depth, wherein the provision comprises performing, on the lower bit-depth reconstructed picture, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, and using, depending on the mapping information,
a first mathematical mapping formula from the first dynamic range to the second dynamic range for a first region of the picture, and a second mathematical mapping formula from the first dynamic range to the second dynamic range, different from the first mathematical mapping formula for the first region of the picture, for a second region of the picture; and
reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual; wherein
the providing step is performed such that a domain of the first and second mathematical mapping functions coincides with the first dynamic range and a codomain of the first and second mathematical mapping functions lies within the second dynamic range.
33. A non-transitory computer readable medium having a computer program comprising a program code for performing, when the computer program runs on a computer, a method for encoding a picture into a quality-scalable data stream, the method comprising:
encoding the picture into a base encoded data stream representing a representation of the picture with a first picture sample bit depth;
providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture comprising a second picture sample bit depth being higher than the first picture sample bit depth, the provision comprising performing, on the representation of the picture with the first picture sample bit depth, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, and using
a first mathematical mapping formula from the first dynamic range to the second dynamic range for a first region of the picture, and a second mathematical mapping formula from the first dynamic range to the second dynamic range, different from the first mathematical mapping formula for the first region of the picture, for a second region of the picture; and
encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and
forming the quality-scalable data stream based on the base encoded data stream, the bit-depth enhancement layer data stream and mapping information specifying the first and second mathematical mapping formulae used in providing the prediction; wherein
the providing step is performed such that a domain of the first and second mathematical mapping functions coincides with the first dynamic range and a codomain of the first and second mathematical mapping functions lies within the second dynamic range.
18. A decoder for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream comprising a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth as well as mapping information, the decoder comprising:
a first sub-decoder for decoding the base layer data stream into a lower bit-depth reconstructed picture;
a second sub-decoder for decoding the bit-depth enhancement data stream into the prediction residual;
a provider for providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture comprising the second picture sample bit depth, wherein the provider is adapted to perform, on the lower bit-depth reconstructed picture, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, and the provider uses, depending on the mapping information,
a first mathematical mapping formula from the first dynamic range to the second dynamic range for a first region of the picture, and a second mathematical mapping formula from the first dynamic range to the second dynamic range, different from the first mathematical mapping formula for the first region of the picture, for a second region of the picture; and
a reconstructor for reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual; wherein
the provider is configured such that a domain of the first and second mathematical mapping functions coincides with the first dynamic range and a codomain of the first and second mathematical mapping functions lies within the second dynamic range.
34. A non-transitory computer readable medium having a computer program comprising a program code for performing, when the computer program runs on a computer, a method for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream comprising a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth as well as mapping information, the method comprising:
decoding the base layer data stream into a lower bit-depth reconstructed picture;
decoding the bit-depth enhancement data stream into the prediction residual;
providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture comprising the second picture sample bit depth, wherein the provision comprises performing, on the lower bit-depth reconstructed picture, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, and using, depending on the mapping information, a first mathematical mapping formula from the first dynamic range to the second dynamic range for a first region of the picture, and a second mathematical mapping formula from the first dynamic range to the second dynamic range, different from the first mathematical mapping formula for the first region of the picture, for a second region of the picture; and
reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual; wherein
the providing step is performed such that a domain of the first and second mathematical mapping functions coincides with the first dynamic range and a codomain of the first and second mathematical mapping functions lies within the second dynamic range.
4. An encoder for encoding a picture into a quality-scalable data stream, comprising:
a base encoder for encoding the picture into a base encoded data stream representing a representation of the picture with a first picture sample bit depth;
a predictor for providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture comprising a second picture sample bit depth being higher than the first picture sample bit depth, the predictor comprising a mapper for performing, on the representation of the picture with the first picture sample bit depth, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, the mapper using
a first mapping mechanism for a luma component of the samples and a second mapping mechanism, different from the first mapping mechanism, for achroma component of the samples or
a first mapping mechanism for a first region of the picture, and a second mapping mechanism, different from the first mapping mechanism for the first region of the picture, for a second region of the picture; and
a residual encoder for encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and
a combiner for forming the quality-scalable data stream based on the base encoded data stream, the bit-depth enhancement layer data stream and mapping information specifying the first and second mapping mechanisms used by the mapper; wherein
the mapper is adapted to map the samples x from the first dynamic range to the second dynamic range by computing 2M−N−KX+2M−I−2M−1−K, where N is the first picture sample bit depth, M is the second picture sample bit depth, and K is a mapping parameter, and wherein the mapper is adapted to forward the mapping parameter Kto the combiner for formation of the quality-scalable data stream also based on the mapping parameter.
5. An encoder for encoding a picture into a quality-scalable data stream, comprising:
a base encoder for encoding the picture into a base encoded data stream representing a representation of the picture with a first picture sample bit depth;
a predictor for providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture comprising a second picture sample bit depth being higher than the first picture sample bit depth, the predictor comprising a mapper for performing, on the representation of the picture with the first picture sample bit depth, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, the mapper using
a first mapping mechanism for a luma component of the samples and a second mapping mechanism, different from the first mapping mechanism, for a chroma component of the samples or
a first mapping mechanism for a first region of the picture, and a second mapping mechanism, different from the first mapping mechanism for the first region of the picture, for a second region of the picture; and
a residual encoder for encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and
a combiner for forming the quality-scalable data stream based on the base encoded data stream, the bit-depth enhancement layer data stream and mapping information specifying the first and second mapping mechanisms used by the mapper; wherein
the mapper is adapted to map the samples x from the first dynamic range to the second dynamic range by computing 2M−N−KX+D, where N is the first picture sample bit depth, M is the second picture sample bit depth, and K and D are mapping parameters, and wherein the mapper is adapted to forward the mapping parameters K and D to the combiner for formation of the quality-scalable data stream also based on the mapping parameter.
20. A decoder for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream comprising a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth as well as mapping information, the decoder comprising:
a first sub-decoder for decoding the base layer data stream into a lower bit-depth reconstructed picture;
a second sub-decoder for decoding the bit-depth enhancement data stream into the prediction residual;
a provider for providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture comprising the second picture sample bit depth, wherein the provider is adapted to perform, on the lower bit-depth reconstructed picture, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, and the provider uses, depending on the mapping information,
a first mapping mechanism for a luma component of the samples and a second mapping mechanism, different from the first mapping mechanism, for a chroma component of the samples or
a first mapping mechanism for a first region of the picture, and a second mapping mechanism, different from the first mapping mechanism for the first region of the picture, for a second region of the picture; and
a reconstructor for reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual; wherein
the provider is adapted to, according to the first or second mapping mechanism, map the samples x from the first dynamic range to the second dynamic range by computing 2M−N−KX+2M−1−2M−1−K, where N is the first picture sample bit depth, M is the second picture sample bit depth, and K is a mapping parameter retrieved from the quality-scalable data stream.
6. An encoder for encoding a picture into a quality-scalable data stream, comprising:
a base encoder for encoding the picture into a base encoded data stream representing a representation of the picture with a first picture sample bit depth;
a predictor for providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture comprising a second picture sample bit depth being higher than the first picture sample bit depth, the predictor comprising a mapper for performing, on the representation of the picture with the first picture sample bit depth, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, the mapper using
a first mapping mechanism for a luma component of the samples and a second mapping mechanism, different from the first mapping mechanism, for a chroma component of the samples or
a first mapping mechanism for a first region of the picture, and a second mapping mechanism, different from the first mapping mechanism for the first region of the picture, for a second region of the picture; and
a residual encoder for encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and
a combiner for forming the quality-scalable data stream based on the base encoded data stream, the bit-depth enhancement layer data stream and mapping information specifying the first and second mapping mechanisms used by the mapper; wherein
the mapper is adapted to map the samples x from the first dynamic range to the second dynamic range by computing floor (2M−N−KX+2M−2N−KX+D), where floor(a) rounds a down to the nearest integer, N is the first picture sample bit depth, M is the second picture sample bit depth, and K and D are mapping parameters, and wherein the mapper is adapted to forward the mapping parameters K and D to combiner for formation of the quality-scalable data stream also based on the mapping parameter.
21. A decoder for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream comprising a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth as well as mapping information, the decoder comprising:
a first sub-decoder for decoding the base layer data stream into a lower bit-depth reconstructed picture;
a second sub-decoder for decoding the bit-depth enhancement data stream into the prediction residual;
a provider for providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture comprising the second picture sample bit depth, wherein the provider is adapted to perform, on the lower bit-depth reconstructed picture, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, and the provider uses, depending on the mapping information,
a first mapping mechanism for a luma component of the samples and a second mapping mechanism, different from the first mapping mechanism, for a chroma component of the samples or
a first mapping mechanism for a first region of the picture, and a second mapping mechanism, different from the first mapping mechanism for the first region of the picture, for a second region of the picture; and
a reconstructor for reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual; wherein
a mapper is adapted to, according to the first or second mapping mechanism, map the samples x from the first dynamic range to the second dynamic range by computing 2M−N−KX+D, where N is the first picture sample bit depth, M is the second picture sample bit depth, and K and D are mapping parameters, and wherein the mapper is adapted to forward the mapping parameters K and D retrieved from the quality-scalable data stream.
22. A decoder for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream comprising a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth as well as mapping information, the decoder comprising:
a first sub-decoder for decoding the base layer data stream into a lower bit-depth reconstructed picture;
a second sub-decoder for decoding the bit-depth enhancement data stream into the prediction residual;
a provider for providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture comprising the second picture sample bit depth, wherein the provider is adapted to perform, on the lower bit-depth reconstructed picture, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to obtain the prediction of the picture, and the provider uses, depending on the mapping information,
a first mapping mechanism for a luma component of the samples and a second mapping mechanism, different from the first mapping mechanism, for a chroma component of the samples or
a first mapping mechanism for a first region of the picture, and a second mapping mechanism, different from the first mapping mechanism for the first region of the picture, for a second region of the picture; and
a reconstructor for reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual; wherein
the mapper is adapted to, according to the first or second mapping mechanism, map the samples x from the first dynamic range to the second dynamic range by computing floor (2M−N−KX+2M−2N−KX+D), where floor(a) rounds a down to the nearest integer, N is the first picture sample bit depth, M is the second picture sample bit depth, and K and D are mapping parameters, and wherein the mapper is adapted to forward the mapping parameters K and D retrieved from the quality-scalable data stream.
2. The encoder according to claim 1, wherein the predictor comprises
a reconstructor for reconstructing a low bit-depth reconstruction picture as the representation of the picture with the first picture sample bit depth based on the base encoded data stream, the low bit-depth reconstruction picture comprising the first picture sample bit depth.
3. The encoder according to claim 1, wherein the mapper is adapted to linearly map the samples from the first dynamic range to the second dynamic range.
7. The encoder according to claim 1, wherein the mapper is adapted to piece-wise linearly map the samples from the first dynamic range to the second dynamic range and forward interpolation point information defining the piece-wise linear mapping to the combiner for formation of the quality-scalable data stream also based on the interpolation point information.
8. The encoder according to claim 1, wherein the mapper is adapted to perform the mapping by using the samples as an index to a look-up table.
9. The encoder according to claim 1, wherein the base encoder comprises
a mapper for mapping samples representing the picture with the second picture sample bit depth from the second dynamic range to the first dynamic range corresponding to the first picture sample bit depth to acquire a quality-reduced picture; and
an encoder for encoding the quality-reduced picture to acquire the base encoded data stream.
10. The encoder according to claim 1, wherein the picture is part of a video signal.
11. The encoder according to claim 10, wherein the base encoder comprises a predictor for performing a temporal prediction based on pictures reconstructed from the base encoded data stream, the predictor for performing a temporal prediction concurrently forming a reconstructor for reconstructing a low bit-depth reconstruction picture based on the base encoded data stream for the predictor, the low bit- depth reconstruction picture comprising the first picture sample bit depth, wherein the predictor further comprises a mapper for performing, on the low bit-depth reconstruction picture, a mapping of samples from a first dynamic range corresponding to the first picture sample bit depth to a second dynamic range greater than the first dynamic range and corresponding to the second picture sample bit depth to acquire the prediction of the picture.
12. The encoder according to claim 1, wherein the representation of the picture comprises a luma resolution and a first chroma resolution, and the predictor further comprises
an applicator for applying a spatial interpolation filter to acquire the prediction of the picture from the representation of the picture with the luma resolution and the first chroma resolution, the prediction of the picture comprising the luma resolution and a second chroma resolution being higher than the first chroma resolution.
13. The encoder according to claim 12, wherein the spatial interpolation filter is selected among a group comprising a linear interpolation filter, a bilinear interpolation filter, and a FIR interpolation filter.
14. The encoder according to claim 12, wherein the base encoder is adapted such that the base encoded data stream represents the picture in a first color space domain, and wherein the applicator is adapted to apply the spatial interpolation filter, and then perform a color space transformation from the first color space domain to a second color space domain to acquire the prediction of the picture.
15. The encoder according to claim 12, wherein the applicator is adapted to forward filter information relating to the spatial interpolation filter to the combiner for formation of the quality-scalable data stream also based on the filter information.
16. The encoder according to claim 9 wherein the base encoder comprises
a receiver for receiving the picture with the luma resolution and the second chroma resolution and reducing the second chroma resolution to the first chroma resolution to acquire a quality-reduced picture; and
a sub-encoder for encoding the quality-reduced picture to acquire the base encoded data stream.
17. The encoder according to claim 1, wherein the predictor is adapted to perform a dithering in order to acquire the prediction of the picture.
19. The decoder according to claim 18, wherein the provider is adapted to, according to the first or second mathematical mapping formula, linearly map the samples from the first dynamic range to the second dynamic range.
23. The decoder according to claim 18, wherein the provider is adapted to, according to the first or second mathematical mapping formula, piece- wise linearly map the samples from the first dynamic range to the second dynamic range by use of interpolation point information retrieved from the quality-scalable data stream.
24. The decoder according to claim 18, wherein the provider is adapted to, according to the first or second mathematical mapping formula, perform the mapping by use of the samples as an index to a look-up table.
25. The decoder according to claim 18, wherein the picture is part of a video signal.
26. The decoder according to claim 18, wherein the lower bit-depth reconstructed picture comprises a luma resolution and a first chroma resolution, and the provider is adapted to apply a spatial interpolation filter to acquire the prediction of the picture from the lower bit-depth reconstructed picture, the prediction of the picture comprising the luma resolution and a second chroma resolution being higher than the first chroma resolution.
27. The decoder according to claim 26, wherein the spatial interpolation filter is selected among the group comprising a linear interpolation filter, a bilinear interpolation filter, and a FIR interpolation filter.
28. The decoder according to claim 26, wherein the provider is adapted to apply the spatial interpolation filter and then perform a color space transformation from a first color space domain to a second color space domain to acquire the prediction of the picture.
29. The decoder according to claim 26, wherein the provider is adapted to perform the application based on filter information retrieved from the quality-scalable data stream.
30. The decoder according to claim 18, wherein the predictor is adapted to perform a dithering in order to acquire the prediction of the picture.

The present invention is concerned with picture and/or video coding, and in particular, quality-scalable coding using quality-scalable data streams.

A current project of the Joint Video Team (JVT) of the ISO/IEC Moving Pictures Experts Group (MPEG) and the ITU-T Video Coding Experts Group (VCEG) is the development of a scalable extension of the state-of-the-art video coding standard H.264/MPEG4-AVC defined in T. Wiegand, G. J. Sullivan, J. Reichel, H. Schwarz and M. Wien, eds., “Scalable Video Coding—Joint Draft 7, “Joint Video Team, Doc. JVT-T201, Klagenfurt, Germany, July 2006 and J. Reichel, H. Schwarz, and M. Wien, eds., “Joint Scalable Video Model JSVM-7,” Joint Video Team, Doc. JVT-T202, Klagenfurt, Germany, July 2006, supports temporal, spatial and SNR scalable coding of video sequences or any combination thereof.

H.264/MPEG4-AVC as described in ITU-T Rec. & ISO/IEC 14496-10 AVC, “Advanced Video Coding for Generic Audiovisual Services,” version 3, 2005, specifies a hybrid video codec in which macroblock prediction signals are either generated in the temporal domain by motion-compensated prediction, or in the spatial domain by intra prediction, and both predictions are followed by residual coding. H.264/MPEG4-AVC coding without the scalability extension is referred to as single-layer H.264/MPEG4-AVC coding. Rate-distortion performance comparable to single-layer H.264/MPEG4-AVC means that the same visual reproduction quality is typically achieved at 10% bit-rate. Given the above, scalability is considered as a functionality for removal of parts of the bit-stream while achieving an R-D performance at any supported spatial, temporal or SNR resolution that is comparable to single-layer H.264/MPEG4-AVC coding at that particular resolution.

The basic design of the scalable video coding (SVC) can be classified as a layered video codec. In each layer, the basic concepts of motion-compensated prediction and intra prediction are employed as in H.264/MPEG4-AVC. However, additional inter-layer prediction mechanisms have been integrated in order to exploit the redundancy between several spatial or SNR layers. SNR scalability is basically achieved by residual quantization, while for spatial scalability, a combination of motion-compensated prediction and oversampled pyramid decomposition is employed. The temporal scalability approach of H.264/MPEG4-AVC is maintained.

In general, the coder structure depends on the scalability space that may be used in an application. For illustration, FIG. 3 shows a typical coder structure 900 with two spatial layers 902a, 902b. In each layer, an independent hierarchical motion-compensated prediction structure 904a,b with layer-specific motion parameters 906a, b is employed. The redundancy between consecutive layers 902a,b is exploited by inter-layer prediction concepts 908 that include prediction mechanisms for motion parameters 906a,b as well as texture data 910a,b. A base representation 912a,b of the input pictures 914a,b of each layer 902a,b is obtained by transform coding 916a,b similar to that of H.264/MPEG4-AVC, the corresponding NAL units (NAL—Network Abstraction Layer) contain motion information and texture data; the NAL units of the base representation of the lowest layer, i.e. 912a, are compatible with single-layer H.264/MPEG4-AVC. The reconstruction quality of the base representations can be improved by an additional coding 918a,b of so-called progressive refinement slices; the corresponding NAL units can be arbitrarily truncated in order to support fine granular quality scalability (FGS) or flexible bit-rate adaptation.

The resulting bit-streams output by the base layer coding 916a,b and the progressive SNR refinement texture coding 918a,b of the respective layers 902a,b, respectively, are multiplexed by a multiplexer 920 in order to result in the scalable bit-stream 922. This bit-stream 922 is scalable in time, space and SNR quality.

Summarizing, in accordance with the above scalable extension of the Video Coding Standard H.264/MPEG4-AVC, the temporal scalability is provided by using a hierarchical prediction structure. For this hierarchical prediction structure, the one of single-layer H.264/MPEG4-AVC standards may be used without any changes. For spatial and SNR scalability, additional tools have to be added to the single-layer H.264/MPEG4.AVC. All three scalability types can be combined in order to generate a bit-stream that supports a large degree on combined scalability.

For SNR scalability, coarse-grain scalability (CGS) and fine-granular scalability (FGS) are distinguished. With CGS, only selected SNR scalability layers are supported and the coding efficiency is optimized for coarse rate graduations as factor 1.5-2 from one layer to the next. FGS enables the truncation of NAL units at any arbitrary and eventually byte-aligned point. NAL units represent bit packets, which are serially aligned in order to represent the scalable bit-stream 922 output by multiplexer 920.

In order to support fine-granular SNR scalability, so-called progressive refinement (PR) slices have been introduced. Progressive refinement slices contain refinement information for refining the reconstruction quality available for that slice from the base layer bit-stream 912a,b, respectively. Even more precise, each NAL unit for a PR slice represents a refinement signal that corresponds to a bisection of a quantization step size (QP decrease of 6). These signals are represented in a way that only a single inverse transform has to be performed for each transform block at the decoder side. In other words, the refinement signal represented by a PR NAL unit refines the transformation coefficients of transform blocks into which a current picture of the video has been separated. At the decoder side, this refinement signal may be used to refine the transformation coefficients within the base layer bit-stream before performing the inverse transform in order to reconstruct the texture of prediction residual used for reconstructing the actual picture by use of a spatial and/or temporal prediction, such as by means of motion compensation.

The progressive refinement NAL units can be truncated at any arbitrary point, so that the quality of the SNR base layer can be improved in a fine granular way. Therefore, the coding order of transform coefficient levels has been modified. Instead of scanning the transform coefficients macroblock-by-macroblock, as it is done in (normal) slices, the transform coefficient blocks are scanned in separate paths and in each path, only a few coding symbols for a transform coefficient block are coded. With the exception of the modified coding order, the CABAC entropy coding as specified in H.264/MPEG4-AVC is re-used.

The single-layer H.264/MPEG4-AVC coding standard has been developed for the use of a fixed sampling structure among possible chroma sampling structures, such as, for example, 4:2:0 and 4:2:2, respectively. The different chroma sampling capabilities are included in different profiles of the standard. In this regard, reference is made to Marpe, Wiegand, Sullivan: “The H.264/MPEG4 Advanced Video Coding Standard and its applications”, IEEE Communication Magazine, August 2006, p. 134-143. In 4:2:0, for example, the chroma or coloring sampling content indicating the extent to which the color deviates from gray and being defined by two chroma components amounts to, regarding the sampling points, merely one fourth of the number of samples of the luma content representing brightness and being defined by one luma component. In other words, the number of luma component samples in both the horizontal and vertical dimensions is half the number of luma samples. The coding precision used per sample is fixed to be 8 bits or 10 bits, depending on the profile of the standard used. Again, reference is made to the just mentioned article. For sake of completeness, it is noted that the term luma, according to the standard, actually means a weighted sum of non-linear or gamma-corrected RGB contributions. However, according to another view, luma may be viewed as luminance which refers to the linear relationship of the RGB contributions. According to the present application, both views shall equally apply.

In general, the term chroma sampling format refers to the number and position of the chroma samples relative to the number and position of the corresponding luma samples. Three examples of possible sampling formats are described now. As has already been described, according to the 4:2:0 sampling, the chroma signal has half the horizontal and half the vertical resolution as compared to the luma signal. The format is illustrated in FIG. 4, where the crosses indicate the locations of the luma samples, whereas the circles represent the locations of the chroma samples, where each chroma sample may consist of two chroma components, such as Cb and Cr. Another sampling format is 4:2:2, where the chroma signal has half the horizontal and the same vertical resolution as the luma signal. This is shown in FIG. 5. According to a 4:4:4 chroma sampling format, the chroma signal has the same horizontal and vertical resolution as the luma signal or content, respectively. This is illustrated in FIG. 6.

Problems arise when a color video source signal has a different dynamic range and/or a different chroma sampling format than may be used by the decoder or player, respectively. In the above current SVC working draft, the scalability tools are only specified for the case that both the base layer and enhancement layer represent a given video source with the same bit depth of the corresponding arrays of luma and chroma samples, and in addition with the assumption that the chroma sampling relative to the luma sampling, i.e., the chroma sampling format, is fixed for base and enhancement layer(s). Hence, considering different decoders and players, respectively, requiring different bit depths and chroma sampling formats, several coding streams dedicated for each of the bit depths and chroma sampling format requirements would have to be provided separately. However, in rate/distortion sense, this means an increased overhead and reduced efficiency, respectively.

Thus, it would be desirable to provide a coding scheme that overcomes this deficiency.

According to an embodiment, an encoder for encoding a picture into a quality-scalable data stream may have: a base encoder for encoding the picture into a base encoding data stream representing a representation of the picture with a first picture sample bit depth; a predictor for providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture including a second picture sample bit depth being higher than the first picture sample bit depth; and a residual encoder for encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and a combiner for forming the quality-scalable data stream based on the base encoding data stream and the bit-depth enhancement layer data stream.

According to another embodiment, a decoder for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream including a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth, may have: a first sub-decoder for decoding the base layer data stream into a lower bit-depth reconstructed picture; a second sub-decoder for decoding the bit-depth enhancement data stream into the prediction residual; a provider for providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture including the second picture sample bit depth; and a reconstructor for reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual.

According to another embodiment, a method for encoding a picture into a quality-scalable data stream may have the steps of: encoding the picture into a base encoding data stream representing a representation of the picture with a first picture sample bit depth; providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture including a second picture sample bit depth being higher than the first picture sample bit depth; and encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and forming the quality-scalable data stream based on the base encoding data stream and the bit-depth enhancement layer data stream.

According to another embodiment, a method for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream including a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth, may have the steps of: decoding the base layer data stream into a lower bit-depth reconstructed picture; decoding the bit-depth enhancement data stream into the prediction residual; providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture including the second picture sample bit depth; and reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual.

According to another embodiment, a computer program may have a program code for performing, when running on a computer, a method for encoding a picture into a quality-scalable data stream, wherein the method may have the steps of: encoding the picture into a base encoding data stream representing a representation of the picture with a first picture sample bit depth; providing a prediction of the picture based on the representation of the picture with the first picture sample bit depth, the prediction of the picture including a second picture sample bit depth being higher than the first picture sample bit depth; and encoding a prediction residual of the prediction into a bit-depth enhancement layer data stream; and forming the quality-scalable data stream based on the base encoding data stream and the bit-depth enhancement layer data stream.

According to another embodiment, a computer program may have a program code for performing, when running on a computer, a method for decoding a quality-scalable data stream into which a picture is encoded, the quality-scalable data stream including a base layer data stream representing the picture with a first picture sample bit depth and a bit-depth enhancement layer data stream representing a prediction residual with a second picture sample bit depth being higher than the first picture sample bit depth, wherein the method may have the steps of: decoding the base layer data stream into a lower bit-depth reconstructed picture; decoding the bit-depth enhancement data stream into the prediction residual; providing a prediction of the picture based on the lower bit-depth reconstructed picture, the prediction of the picture including the second picture sample bit depth; and reconstructing the picture with the second picture sample bit depth based on the prediction and the prediction residual.

The present invention is based on the finding that a more efficient way of addressing different bit-depths or different bit-depths and chroma sampling format requirements may be achieved when using a low bit-depth or low bit-depth and low-chroma resolution representation—in the following shortly called low bit-depth and/or low-chroma resolution representation—for providing a respective base layer data stream representing this low bit-depth and/or low-chroma resolution representation as well as for providing a higher bit-depth and/or higher chroma resolution representation so that a respective prediction residual may be encoded in order to obtain a higher bit-depth and/or higher chroma resolution representation. By this measure, an encoder is enabled to store a base-quality representation of a picture or a video sequence, which can be decoded by any legacy decoder or video decoder, together with an enhancement signal for higher bit-depth and/or reduced chroma sub-sampling, which may be ignored by legacy decoders or video decoders. For example, the base quality representation could contain an 8-bit version of the picture or the video sequence, while the high quality enhancement signal contains a “refinement” to a 10-bit version of the same, and the base quality representation could represent a 4:2:0 version of the picture or the video sequence, while the high quality enhancement signal contains a “refinement” to a 4:2:2 or 4:4:4 version of the same.

Embodiments of the present invention will be detailed subsequently referring to the appended drawings, in which:

FIG. 1 is a block diagram of a video encoder according to an embodiment of the present invention;

FIG. 2 is a block diagram of a video decoder according to an embodiment of the present invention;

FIG. 3 is a block diagram of a conventional coder structure for scalable video coding;

FIG. 4 is a schematic illustrating a 4:2:0 chroma sampling format;

FIG. 5 is a schematic illustrating a 4:2:2 chroma sampling format; and

FIG. 6 is a schematic illustrating a 4:4:4 chroma sampling format.

FIG. 1 shows an encoder 100 comprising a base encoding means 102, a prediction means 104, a residual encoding means 106 and a combining means 108 as well as an input 110 and an output 112. The encoder 100 of FIG. 1 is a video encoder receiving a high quality video signal at input 110 and outputting a quality-scalable bit stream at output 112. The base encoding means 102 encodes the data at input 110 into a base encoding data stream representing the content of this video signal at input 110 with a reduced picture sample bit-depth or a chroma-sampling format having same luma resolution, but reduced chroma resolution compared to the input signal at input 110. The prediction means 104 is adapted to, based on the base encoding data stream output by base encoding means 102, provide a prediction signal with full or increased picture sample bit-depth and/or full or increased chroma resolution for the video signal at input 110. A subtractor 114 also comprised by the encoder 100 forms a prediction residual of the prediction signal provided by means 104 relative to the high quality input signal at input 110, the residual signal being encoded by the residual encoding means 106 into a quality enhancement layer data stream. The combining means 108 combines the base encoding data stream from the base encoding means 102 and the quality enhancement layer data stream output by residual encoding means 106 to form a quality scalable data stream 112 at the output 112. The quality-scalability means that the data stream at the output 112 is composed of a part that is self-contained in that it enables reconstruction of the video signal 110 with the reduced bit-depth and/or the chroma sampling format having the reduced chroma resolution without any further information and with neglecting the remainder of the data stream 112, on the one hand and a further part which enables, in combination with the first part, a reconstruction of the video signal at input 110 in the original bit-depth and original chroma sampling format being higher than the bit depth and/or chroma resolution of the first part.

After having rather generally described the structure and the functionality of encoder 100, its internal structure is described in more detail below. In particular, the base encoding means 102 comprises a down conversion module 116, a subtractor 118, a transform module 120 and a quantization module 122 serially connected, in the order mentioned, between the input 110, and the combining means 108 and the prediction means 104, respectively. The down conversion module 116 is for reducing the bit-depth of the picture samples of and/or the chroma resolution of the pictures of the video signal at input 110, with maintaining the luma resolution of the video signal received from the input 110. In other words, the down conversion module 116 irreversibly down-converts the high quality input video signal at input 110 to a base quality video signal. As will be described in more detail below, this down-conversion may include reducing the bit-depth of the signal samples, i.e. pixel values, in the video signal at input 110 using any tone-mapping scheme, such as rounding of the sample values, sub-sampling of the chroma components in case the video signal is given in the form of luma plus chroma components, filtering of the input signal at input 110, such as by a RGB to YCbCr conversion, or any combination thereof. More details on possible prediction mechanisms are presented in the following. In particular, it is possible that the down-conversion module 116 uses different down-conversion schemes for each picture of the video signal or picture sequence input at input 110 or uses the same scheme for all pictures.

The subtractor 118, the transform module 120 and the quantization module 122 co-operate to encode the base quality signal output by down-conversion module 116 by the use of, for example, a non-scalable video coding scheme, such as H.264/MPEG4-AVC. According to the example of FIG. 1, the subtractor 118, the transform module 120 and the quantization module 122 co-operate with an optional prediction loop filter 124, a predictor module 126, an inverse transform module 128, and an adder 130 commonly comprised by the base encoding means 102 and the prediction means 104 to form the irrelevance reduction part of a hybrid encoder which encodes the base quality video signal output by down-conversion module 116 by motion-compensation based prediction and following compression of the prediction residual. In particular, the subtractor 118 subtracts from a current picture or macroblock of the base quality video signal a predicted picture or predicted macroblock portion reconstructed from previously encoded pictures of the base quality video signal by, for example, use of motion compensation. The transform module 120 applies a transform on the prediction residual, such as a DCT, FFT or wavelet transform. The transformed residual signal may represent a spectral representation and its transform coefficients are irreversibly quantized in the quantization module 122. The resulting quantized residual signal represents the residual of the base-encoding data stream output by the base-encoding means 102.

Apart from the optional prediction loop filter 124 and the predictor module 126, the inverse transform module 128, and the adder 130, the prediction means 104 comprises an optional filter for reducing coding artifacts 132 and a prediction module 134. The inverse transform module 128, the adder 130, the optional prediction loop filter 124 and the predictor module 126 co-operate to reconstruct the video signal with a reduced bit-depth and/or the chroma sampling format having reduced chroma resolution, as defined by the down-conversion module 116. In other words, they create a low bit-depth and/or low chroma resolution video signal to the optional filter 132 which represents a low quality representation of the source signal at input 110 also being reconstructable at decoder side. In particular, the inverse transform module 128 and the adder 130 are serially connected between the quantization module 122 and the optional filter 132, whereas the optional prediction loop filter 124 and the prediction module 126 are serially connected, in the order mentioned, between an output of the adder 130 as well as a further input of the adder 130. The output of the predictor module 126 is also connected to an inverting input of the subtractor 118. The optional filter 132 is connected between the output of adder 130 and the prediction module 134, which, in turn, is connected between the output of optional filter 132 and the inverting input of subtractor 114.

The inverse transform module 128 inversely transforms the base-encoded residual pictures output by base-encoding means 102 to achieve low bit-depth and/or low chroma resolution residual pictures. Accordingly, inverse transform module 128 performs an inverse transform being an inversion of the transformation and quantization performed by modules 120 and 122. Alternatively, a de-quantization module may be separately provided at the input side of the inverse transform module 128. The adder 130 adds a prediction to the reconstructed residual pictures, with the prediction being based on previously reconstructed pictures of the video signal. In particular, the adder 130 outputs a reconstructed video signal with a reduced bit-depth and/or reduced chroma resolution chroma-sampling format. These reconstructed pictures are filtered by the loop filer 124 for reducing artifacts, for example, and used thereafter by the predictor module 126 to predict the picture currently to be reconstructed by means of, for example, motion compensation, from previously reconstructed pictures. The base quality signal thus obtained at the output of adder 130 is used by the serial connection of the optional filter 132 and prediction module 134 to get a prediction of the high quality input signal at input 110, the latter prediction to be used for forming the high quality enhancement signal at the output of the residual encoding means 106. This is described in more detail below.

In particular, the low quality signal obtained from adder 130 is optionally filtered by optional filter 132 for reducing coding artifacts. Thereafter, the low quality video signal is used by prediction module 134 to form a prediction signal for the high quality video signal received at the non-inverting input of adder 114 being connected to the input 110. This process of forming the high quality prediction may include multiplying the decoded base quality signal picture samples by a constant factor, i.e. linear scaling, using the respective value of the base quality signal samples for indexing a look-up table which contains the corresponding high quality sample values, using the value of the base quality signal sample for an interpolation process to obtain the corresponding high quality sample value, up-sampling of the chroma components, filtering of the base quality signal by use of, for example, YCbCr to RGB conversion, or any combination thereof. Other examples are described in the following.

In general, for example, the prediction module 134 may map the samples of the base quality video signal from a first dynamic range to a second dynamic range being higher than the first dynamic range and/or, by use of a special interpolation filter, interpolate the chroma samples of the base quality video signal to increase the chroma resolution to correspond with the chroma resolution of the video signal at the input 110. In a way similar to the above description of the down-conversion module 116, it is possible to use a different prediction process for different pictures of the base quality video signal sequence as well as using the same prediction process for all the pictures.

The subtractor 114 subtracts the high quality prediction received from the prediction module 134 from the high quality video signal received from input 110 to output a prediction residual signal of high quality, i.e. with the original bit-depth and/or chroma sampling format to the residual encoding means 106. At the residual encoding means 106, the difference between the original high quality input signal and the prediction derived from the decoded base quality signal is encoded exemplarily using a compression coding scheme such as, for example, specified in H.264/MPEG4-AVC. To this end, the residual encoding means 106 of FIG. 1 comprises exemplarily a transform module 136, a quantization module 138 and an entropy coding module 140 connected in series between an output of the subtractor 114 and the combining means 108 in the mentioned order. The transform module 136 transforms the residual signal or the pictures thereof, respectively, into a transformation domain or spectral domain, respectively, where the spectral components are quantized by the quantization module 138 and with the quantized transform values being entropy coded by the entropy-coding module 140. The result of the entropy coding represents the high quality enhancement layer data stream output by the residual encoding means 106. If modules 136 to 140 implement an H.264/MPEG4-AVC coding, which supports transforms with a size of 4×4 or 8×8 samples for coding the luma content, the transform size for transforming the luma component of the residual signal from the subtractor 114 in the transform module 136 may arbitrarily be chosen for each macroblock and does not necessarily have to be the same as used for coding the base quality signal in the transform module 120. For coding the chroma components, the H.264/MPEG4-AVC standard, as currently specified, provides no choice. When quantizing the transform coefficients in the quantization module 138, the same quantization scheme as in the H.264/MPEG4-AVC may be used, which means that the quantizer step-size may be controlled by a quantization parameter QP, which can take values from −6*(bit depth of high quality video signal component−8) to 51. The QP used for coding the base quality representation macroblock in the quantization module 122 and the QP used for coding the high quality enhancement macroblock in the quantization module 138 do not have to be the same.

Combining means 108 comprises an entropy coding module 142 and the multiplexer 144. The entropy-coding module 142 is connected between an output of the quantization module 122 and a first input of the multiplexer 144, whereas a second input of the multiplexer 144 is connected to an output of entropy coding module 140. The output of the multiplexer 144 represents output 112 of encoder 100.

The entropy encoding module 142 entropy encodes the quantized transform values output by quantization module 122 to form a base quality layer data stream from the base encoding data stream output by quantization module 122. Therefore, as mentioned above, modules 118, 120, 122, 124, 126, 128, 130 and 142 may be designed to co-operate in accordance with the H.264/MPEG4-AVC, and represent together a hybrid coder with the entropy coder 142 performing a lossless compression of the quantized prediction residual.

The multiplexer 144 receives both the base quality layer data stream and the high quality layer data stream and puts them together to form the quality-scalable data stream.

The way, in which the prediction module 134 forms the prediction signal from the decoded base representation, i.e. the prediction scheme, may be known to the decoder. However, it is also possible to signal prediction scheme information indicating the prediction used by the prediction module 134 as side information, i.e. to introduce such side information into the bit stream at output 112. In other words, in order to allow using different schemes for prediction from the decoded base representation, the used prediction scheme may be signaled as side information, e.g., in an extension of the picture parameter set PPS of H.264/MPEG4-AVC. Further, there may be provisions in case there is no explicit prediction rule specified in the quality scalable bit stream. For example, for scalability in terms of bit-depth, the base quality samples at the input of the prediction module 134 are simply multiplied by 2M−N, where M is the bit-depth of the high quality signal and N is the bit-depth of the base quality signal, which corresponds to a linear mapping. Alternatively, this may be viewed as a performance of a scaling and clipping of the base quality sample values at the input of the prediction module 134 according to min(2M−N x, 2M−1).

Alternatively, one of the following mapping mechanisms may be used for the prediction process. For example, piece-wise linear mapping may be used where an arbitrary number of interpolation points can be specified. For example, for a base quality sample with value x and two given interpolation points (xn, yn) and (xn+1, yn+1) the corresponding prediction sample y is obtained by the module 134 according to the following formula

y = y n + x - x n x n + 1 - x n ( y n + 1 - y n )

This linear interpolation can be performed with little computational complexity by using only bit shift instead of division operations if xn+1−xn is restricted to be a power of two.

A further possible mapping mechanism represents a look-up table mapping in which, by means of the base quality sample values, a table look-up is performed in a look-up table in which for each possible base quality sample value the corresponding prediction sample value is specified. The look-up table may be provided to the decoder side as side information or may be known to the decoder side by default.

Further, scaling with a constant offset may used. According to this alternative, in order to achieve the corresponding high quality prediction sample y having higher bit-depth, module 134 multiplies the base quality samples x by a constant factor 2M−N−K, and afterwards a constant offset 2M−1−2M−1−K is added, according to, for example, one of the following formulae:
y=2M−N−Kx+2M−1−2M−1−K or
y=min(2M−N−Kx+2M−1−2M−1−K, 2M−1), respectively.

By this measure, the low quality dynamic range [0;2N−1] is mapped to the second dynamic range [0;2M−1] in a manner according which the mapped values of x are distributed in a centralised manner with respect to the possible dynamic range [0;2M−1] of y within a extension which is determined by K. The value of K could be an integer value or real value, and could be transmitted as side information to the decoder within, for example, the quality-scalable data stream so that at the decoder some predicting means may act the same way as the prediction module 134 as will be described in the following. With respect to the definition of M and N reference is made to the above description. A round operation may be used to get integer valued y values.

Another possibility is scaling with variable offset: the base quality samples x are multiplied by a constant factor, and afterwards a variable offset is added, according to, for example, one of the following formulae:
y=2M−N−Kx+D or
y=min(2M−N−Kx+D,2M−1)

By this measure, the low quality dynamic range is mapped to the second dynamic range in a manner according to which the mapped values of x are distributed within a portion of the possible dynamic range of y, the extension of which is determined by K, and the offset of which with respect to the lower boundary is determined by D. D may be integer or real. The result y represents a picture sample value of the high bit-depth prediction signal. The values of K and D could be transmitted as side information to the decoder within, for example, the quality-scalable data stream. Again, a round operation may be used to get integer valued y values, the latter being true also for the other examples given in the present application for the bit-depth mappings without explicitly stating it repeatedly.

An even further possibility is scaling with superposition: the high bit depth prediction samples y are obtained from the respective base quality sample x according to, for example, one of the following formulae, where floor (a) rounds a down to the nearest integer:
y=floor(2M−Nx+2M−2Nx) or
y=min(floor(2M−Nx+2M−2Nx), 2M−1)

The just mentioned possibilities may be combined. For example, scaling with superposition and constant offset may be used: the high bit depth prediction samples y are obtained according to, for example, one of the following formulae, where floor (a) rounds a down to the nearest integer:
y=floor(2M−N−Kx+2M−2N−Kx+2M−1−2M−1−K)
y=min(floor(2M−N−Kx+2M−2N−Kx+2M−1−2M−1−K), 2M−1)

The value of K may be specified as side information to the decoder.

Similarly, scaling with superposition and variable offset may be used: the high bit depth prediction samples y are obtained according to the following formula, where floor (a) rounds a down to the nearest integer:
y=floor(2M−N−Kx+2M−2N−Kx+D)
y=min(floor(2M−N−Kx+2M−2N−Kx+D), 2M−1)

The values of D and K may be specified as side information to the decoder.

Further, it is possible to specify different mapping mechanisms for the luma and the chroma components of the base quality signal to take into account that the statistics, such as their probability density function, may be different. It is also possible to specify different mapping mechanisms for different regions of a picture, where a region not necessarily has to be contiguous. Furthermore, it is possible to specify that, after employing one of the above described mapping mechanisms, a pseudo-random noise signal (“dithering signal”) is to be added to the high bit depth prediction signal within the prediction process preformed by prediction module at the encoder and at the decoder, respectively. Since this signal has to be exactly known at the decoder to be able to decode the high bit depth representation, certain parameters as initialization value of the pseudo-random generator, variance and shape (e.g., normal or uniform distribution) of the pseudo-random process may have to be transmitted as side information. In case no such side information is transmitted in the scalable bit stream, default values, as for example a uniform distribution of pseudo-random values in the range [0, 2M−N−1] or [0, 2M−N−K−1] respectively, depending on the selected mapping mechanism, could be used.

The above-mentioned possibilities of using prediction scheme side information or not also applies for the scalability in terms of chroma sampling format. For scalability in terms of chroma sampling format, the scheme of interpolation filtering used by the prediction module 134 for generating the upsampled chroma signal can be transmitted as side information, e.g., in the PPS of H.264/MPEG4-AVC. In the simplest case, if there is no upsampling rule specified, the decoder may assume that the up-sampled signal is generated by linear interpolation between base quality chroma sample points for conversion from 4:2:0 to 4:2:2 and from 4:2:2 to 4:4:4 chroma subsampling and by bilinear interpolation for conversion from 4:2:0 to 4:4:4 chroma subsampling. With regard to the just-mentioned chroma-sampling format, reference is made to the above description with respect to FIGS. 4 to 6. Otherwise, it is possible that the prediction module 134 selects either, for example, an 8-tap half-pel interpolation filter specified by MPEG4 Advanced Simple Profile in ISO/IEC 14496-2:2004, “Information technology—Coding of audio-visual objects—Part 2: Visual”, or the 6-tap half-pel interpolation filter specified by H.264/MPEG4-AVC for generating interpolated chroma sample values. However, the prediction scheme with respect to chroma sampling format scalability is not restricted to the aforementioned filters. It is also possible to specify a generic interpolation filter by transmitting the used filter taps or FIR filter coefficients, respectively, as side information in the quality-scalable bit stream, e.g., in the PPS of H.264/MPEG4-AVC.

Regarding the scalability in terms of chroma sampling format, it shall be expressively noted that the encoder 100 may support the following variants when considering the chroma sampling formats shown in FIGS. 4 to 6. Firstly, the down-conversion module 116 may down sample from 4:2:2 to 4:2:0, in which case the prediction module 134 upsamples from 4:2:0 to 4:2:2 and the quality-scalable bit stream at the output 112 enables chroma sampling format scalability from 4:2:0 to 4:2:2. Similarly, down-conversion module 116 may downsample from 4:4:4 to 4:2:0 with the prediction module 134 performing the upsampling in the reverse direction. Accordingly, the down-conversion module 116 may downsample from 4:4:4 to 4:2:2 and the prediction module 134 may, in turn, perform an upsampling from 4:2:2 to 4:4:4.

Within the coded high quality enhancement signal output by entropy coding module 140, the following information could be transmitted for each macroblock in case modules 136, 138 and 140 implement an H.264/MPEG4-AVC conforming encoding. A coded block pattern (CBP) information could be included indicating as to which of the four 8×8 luma transformation blocks within the macroblock and which of the associated chroma transformation blocks of the macroblock may contain non-zero transform coefficients. If there are no non-zero transform coefficients, no further information is transmitted for the particular macroblock. Further information could relate to the transform size used for coding the luma component, i.e. the size of the transformation blocks in which the macroblock consisting of 16×16 luma samples is transformed in the transform module 136, i.e. in 4×4 or 8×8 transform blocks. Further, the high quality enhancement layer data stream could include the quantization parameter QP used in the quantization module 138 for controlling the quantizer step-size. Further, the quantized transform coefficients, i.e. the transform coefficient levels, could be included for each macroblock in the high quality enhancement layer data stream output by entropy coding module 140.

After having described an embodiment for an encoder, with respect to FIG. 2, an embodiment of a decoder is described. The decoder of FIG. 2 is indicated by reference sign 200 and comprises a de-multiplexing means 202, a base decoding means 204, a prediction means 206, a residual decoding means 208 and a reconstruction means 210 as well as an input 212, a first output 214 and a second output 216. The decoder 200 receives, at its input 212, the quality-scalable data stream, which has, for example, been output by encoder 100 of FIG. 1. As described above, the quality scalability may relate to the bit-depth and/or the chroma-sampling format. In other words, the data stream at the input 212 may have a self-contained part which is isolatedly usable to reconstruct the video signal with a reduced bit-depth and/or reduced chroma resolution and maintained luma resolution, as well as an additional part which, in combination with the first part, enables reconstructing the video signal with a higher bit-depth and/or higher chroma resolution. The lower quality reconstruction video signal is output at output 216, whereas the higher quality reconstruction video signal is output at output 214.

The demultiplexing means 202 divides up the incoming quality-scalable data stream at input 212 into the base encoding data stream and the high quality enhancement layer data stream, both of which have been mentioned with respect to FIG. 1. The base decoding means 204 is for decoding the base encoding data stream into the base quality representation of the video signal, which is directly, as it is the case in the example of FIG. 2, or indirectly via an artifact reduction filter (not shown), optionally outputable at output 216. Based on the base quality representation video signal, the prediction means 206 forms a prediction signal having the increased picture sample bit depth and/or the increased chroma sampling resolution. The decoding means 208 decodes the enhancement layer data stream to obtain the prediction residual having the increased bit-depth and/or increased chroma resolution. The reconstruction means 210 obtains the high quality video signal from the prediction and the prediction residual and outputs same at output 214 via an optional artifact reducing filter.

Internally, the demultiplexing means 202 comprises a demultiplexer 218 and an entropy decoding module 220. An input of the demultiplexer 218 is connected to input 212 and a first output of the demultiplexer 218 is connected to the residual decoding means 208. The entropy-decoding module 220 is connected between another output of the demultiplexer 218 and the base decoding means 204. The demultiplexer 218 divides the quality-scalable data stream into the base layer data stream and the enhancement layer data stream as having been separately input into the multiplexer 144, as described above. The entropy decoding module 220 performs, for example, a Huffman decoding or arithmetic decoding algorithm in order to obtain the transform coefficient levels, motion vectors, transform size information and other syntax elements that may be used in order to derive the base representation of the video signal therefrom. At the output of the entropy-decoding module 220, the base encoding data stream results.

The base decoding means 204 comprises an inverse transform module 222, an adder 224, an optional loop filter 226 and a predictor module 228. The modules 222 to 228 of the base decoding means 204 correspond, with respect to functionality and inter-connection, to the elements 124 to 130 of FIG. 1. To be more precise, the inverse transform module 222 and the adder 224 are connected in series in the order mentioned between the de-multiplexing means 202 on the one hand and the prediction means 206 and the base quality output, respectively, on the other hand, and the optional loop filter 226 and the predictor module 228 are connected in series in the order mentioned between the output of the adder 224 and another input of the adder 224. By this measure, the adder 224 outputs the base representation video signal with the reduced bit-depth and/or the reduced chroma resolution which is receivable from the outside at output 216.

The prediction means 206 comprises an optional artifact reduction filter 230 and a prediction information module 232, both modules functioning in a synchronous manner relative to the elements 132 and 134 of FIG. 1. In other words, the optional artifact reduction filter 230 optionally filters the base quality video signal in order to reduce artifacts therein and the prediction information module 232 retrieves predicted pictures with increased bit depths and/or increased chroma resolution in a manner already described above with respect to the prediction module 134. That is, the prediction information module 232 may, by means of side information contained in the quality-scalable data stream or not, map the incoming picture samples to a higher dynamic range and/or apply a spatial interpolation filter to the chroma content of the pictures in order to increase the chroma resolution.

The residual decoding means 208 comprises an entropy decoding module 234 and an inverse transform module 236, which are serially connected between the demultiplexer 218 and the reconstruction means 210 in the order just mentioned. The entropy decoding module 234 and the inverse transform module 236 cooperate to reverse the encoding performed by modules 136, 138, and 140 of FIG. 1. In particular, the entropy-decoding module 234 performs, for example, a Huffman decoding or arithmetic decoding algorithms to obtain syntax elements comprising, among others, transform coefficient levels, which are, by the inverse transform module 236, inversely transformed to obtain a prediction residual signal or a sequence of residual pictures.

The reconstruction means 210 comprises an adder 238 the inputs of which are connected to the output of the prediction information module 232, and the output of the inverse transform module 236, respectively. The adder 238 adds the prediction residual and the prediction signal in order to obtain the high quality video signal having the increased bit depth and/or increased chroma resolution which is fed via an optional artifact reducing filter 240 to output 214.

Thus, as is derivable from FIG. 2, a base quality decoder may reconstruct a base quality video signal from the quality-scalable data stream at the input 212 and may, in order to do so, not include elements 230, 232, 238, 234, 236, and 240. On the other hand, a high quality decoder may not include the output 216.

In other words, in the decoding process, the decoding of the base quality representation is straightforward. For the decoding of the high quality signal, first the base quality signal has to be decoded, which is performed by modules 218 to 228. Thereafter, the prediction process described above with respect to module 232 and optional module 230 is employed using the decoded base representation. The quantized transform coefficients of the high quality enhancement signal are scaled and inversely transformed by the inverse transform module 236, for example, as specified in H.264/MPEG4-AVC in order to obtain the residual or difference signal samples, which are added to the prediction derived from the decoded base representation samples by the prediction module 232. As a final step in the decoding process of the high quality video signal to be output at output 214, optional a filter can be employed in order to remove or reduce visually disturbing coding artifacts. It is to be noted that the motion-compensated prediction loop involving modules 226 and 228 is fully self-contained using only the base quality representation. Therefore, the decoding complexity is moderate and there is no need for an interpolation filter, which operates on the high bit depth or high chroma resolution image data in the motion-compensated prediction process of predictor module 228.

Regarding the above embodiments, it should be mentioned that the artifact reduction filters 132 and 230 are optional and could be removed. The same applies for the loop filters 124 and 226, respectively, and filter 240. Further, the present invention is not restricted to video coding. Rather, the above description is also applicable to still image coding. Accordingly, the motion-compensated prediction loop involving elements 118, 128, 130, 126, and 124 and the elements 224, 228, and 226, respectively, may be removed also. Similarly, the entropy coding mentioned needs not necessarily to be performed.

Even more precise, in the above embodiments, the base layer encoding 118-130, 142 was based on motion-compensated prediction based on a reconstruction of already lossy coded pictures. In this case, the reconstruction of the base encoding process may also be viewed as a part of the high-quality prediction forming process as has been done in the above description. However, in case of a lossless encoding of the base representation, a reconstruction would not be necessary and the down-converted signal could be directly forwarded to means 132, 134, respectively. In the case of no motion-compensation based prediction in a lossy base layer encoding, the reconstruction for reconstructing the base quality signal at the encoder side would be especially dedicated for the high-quality prediction formation in 104. In other words, the above association of the elements 116-134 and 142 to means 102, 104 and 108, respectively, could be performed in another way. In particular, the entropy coding module 142 could be viewed as a part of base encoding means 102, with the prediction means merely comprising modules 132 and 134 and the combining means 108 merely comprising the multiplexer 144. This view correlates with the module/means association used in FIG. 2 in that the prediction means 206 does not comprise the motion compensation based prediction. Additionally, however, demultiplexing means 202 could be viewed as not including entropy module 220 so that base decoding means also comprises entropy decoding module 220. However, both views lead to the same result in that the prediction in 104 is performed based on a representation of the source material with the reduced bit-depth and/or the reduced chroma resolution which is losslessly coded into and losslessly derivable from the quality-scalable bit stream and base layer data stream, respectively. According to the view underlying FIG. 1, the prediction 134 is based on a reconstruction of the base encoding data stream, whereas in case of the alternative view, the reconstruction would start from an intermediate encoded version or halfway encoded version of the base quality signal which misses the lossless encoding according to module 142 for being completely coded into the base layer data stream. In this regard, it should be further noted that the down-conversion in module 116 does not have to be performed by the encoder 100. Rather, encoder 100 may have two inputs, one for receiving the high-quality signal and the other for receiving the down-converted version, from the outside.

In the above-described embodiments, the quality-scalability did merely relate to the bit depth and/or the chroma resolution. However, the above embodiments may easily be extended to include temporal scalability, spatial scalability, and fine granular quality scalability. For example, at the encoder side, several of the encoders of FIG. 1 may be provided with inputting a spatially non-decimated and increasingly spatially decimated versions of an input signal into these spatial layer encoders. A redundancy among those layers could be exploited by using a reconstructed representation of a lower spatial resolution layer as a prediction for the next higher spatial resolution layer. The fine granular quality scalability could be implemented, for example, in the residual encoding means 106 and the residual decoding means 208, respectively, by accordingly encoding the transform coefficient levels in layers of increasing quantization resolution, or layers corresponding to a decreasing quantization step size so that the transformation coefficient levels are derivable from a summation of the contributions of the individual FGS layers.

Thus, the above embodiments enable an extension of scalable video coding toward scalability in terms of sample bit depth and/or chroma sampling format, thereby enabling an encoder to store a base-quality representation of a video sequence, which can be decoded by any legacy video decoder, together with an enhancement signal for higher bit depth and/or reduced chroma subsampling, which is ignored by legacy video decoders. For example, the base quality representation could contain an 8-bit version of the video sequence, while the high quality enhancement signal contains a “refinement” to a 10-bit version of the same sequence.

Thus, in other words, the above embodiments describe a video coder (encoder/decoder) for coding (encoding/decoding) a layered representation of a video signal comprising, for example, a standardized video coding method for coding a base-quality layer, a prediction method for performing a prediction of the high-quality enhancement layer signal by using the reconstructed base-quality signal, and a residual coding method for coding of the prediction residual of the high-quality enhancement layer signal. In this video coder, the prediction may be performed by using a mapping function from the dynamic range associated with the base-quality layer to the dynamic range associated with the high-quality enhancement layer. In particular, the prediction may be performed by scaling and clipping the sample values x of the base-quality layer according to the formula min(2M−N x, 2M−1), where the sample values x of the base-quality layer are represented with a bit depth of N and the sample values of the high-quality enhancement layer are represented with a bit depth of M with M>N. Other alternatives have been indicated above. Alternatively, the prediction may be performed by using a piece-wise linear mapping with a given number of interpolation points transmitted as a side information. Even alternatively, the prediction may be performed by using a value of the base-quality signal sample for indexing a look-up table, which contains the corresponding high-quality sample values and which may also be transmitted as side information. The residual coding may be performed along the H.264/MPEG4-AVC. The color-space representation of the video signal may be given in the form of one luma and two chroma components with a chroma sampling format of the base-quality layer and high-quality enhancement layer being 4:2:0 and 4:2:2, respectively, and the prediction of the chroma sample values of the high-quality enhancement layer signal may be performed by using a spatial interpolation filter applied to the chroma sample values of the base quality layer. Similarly, the color-space representation of the video signal may be given in the form of one luma and two chroma components with a chroma sampling format of the base-quality layer and high-quality enhancement layer being 4:2:2 and 4:4:4, respectively, and the prediction of the chroma sample values of the high-quality enhancement layer signal may be performed by using a spatial interpolation filter applied to the chroma sample values of the base-quality layer. Accordingly, the color-spatial representation of the video signal may be given in the form of one luma and two chroma components with a chroma sampling format of the base-quality layer and high-quality enhancement layer being 4:2:0 and 4:4:4, respectively, and the prediction of the chroma sample values of the high-quality enhancement layer signal may be performed by using a spatial interpolation filter applied to the chroma sample values of the base-quality layer. In case of the base-quality layer and high-quality enhancement layer being 4:2:0 and 4:2:2, respectively, the spatial interpolation filter used may be a linear interpolation filter vertically applied to the chroma sample values of the base-quality layer. Similarly, if the base-quality layer and the high-quality enhancement layer are 4:2:2 and 4:4:4, respectively, a linear interpolation filter may horizontally applied to the chroma sample values of the base-quality layer, and, if the base-quality layer and the high-quality enhancement layer are 4:2:0 and 4:4:4, respectively, the spatial interpolation filter may be a bilinear interpolation applied to the chroma sample values of the base-quality layer. Further, if the base-quality layer and the high-quality enhancement layer are 4:2:0 and 4:2:2, respectively, the spatial interpolation filter may be a 6-tap half-pel interpolation filter as specified by H.264/MPEG4-AVC vertically applied to the chroma sample values of the base-quality layer. Similarly, if the base-quality layer and the high-quality enhancement layer are 4:2:2 and 4:4:4, respectively, the spatial interpolation filter may be the 6-tap half-pel interpolation filter specified by H.264/MPEG4-AVC horizontally applied to the chroma sample values of the base-quality layer. If the base-quality layer and the high-quality enhancement layer are 4:2:0 and 4:4:4, respectively, the spatial interpolation filter may be realized by a 6-tap half-pel interpolation filter specified by H.264/MPEG4-AVC separably applied to the chroma sample values of the base-quality layer. Similarly, in case of base-quality layer and high-quality enhancement layer being 4:2:0 and 4:2:2, respectively, an 8-tap half-pel interpolation filter specified by MPEG4-Part2 visual, advanced simple profile, may be vertically applied to the chroma sample values of the base-quality layer in the prediction modules 134, and 232, respectively. Similarly, if the base-quality layer and the high-quality enhancement layer are 4:2:2 and 4:4:4, respectively, the 8-tap half-pel interpolation filter specified by MPEG4 Part2 visual, Advanced Simple Profile, may be horizontally applied to the chroma sample values of the base-quality layer. If the base-quality layer and the high-quality enhancement layer are 4:2:0 and 4:4:4, respectively, an 8-tap half-pel interpolation filter specified by MPEG4 Part2 visual, advanced simple profile, may be separably applied to the chroma sample values of the base-quality layer. A FIR interpolation filter as the spatial interpolation filter is also possible. For example, if the base-quality layer and the high-quality enhancement layer are 4:2:0 and 4:2:2, respectively, a FIR interpolation filter may be vertically applied to the chroma sample values of the base-quality layer, where the filter taps of the FIR filter may be transmitted as side information. Similarly, if the base-quality layer and the high-quality enhancement layer are 4:2:2 and 4:4:4, respectively, a FIR interpolation filter may be horizontally applied to the chroma sample values of the base-quality layer, where the filter taps of the FIR filter are transmitted as side information. If the base-quality layer and the high-quality enhancement layer are 4:2:0 and 4:4:4, respectively, a FIR interpolation filter may be separably applied to the chroma sample values of the base-quality layer, where the filter taps of the FIR filter may be transmitted as side information. It is also possible that the color-space representation of the base-quality video signal is given in the form of one luma and two chroma components with a chroma sub-sampling format of 4:2:0 or 4:2:2 and wherein the high-quality video signal has a chroma sampling format of 4:4:4, but a color-space representation that is different from that of the base-quality representation. In that case, the prediction of the chroma sample values of the high-quality enhancement layer signal within modules 134 and 232, respectively, may be performed by first applying a spatial interpolation filter to the chroma sample values of the base-quality layer as described above, and subsequently color-transforming the resulting upsampled base-quality signal to the color-space of the high-quality enhancement layer.

Depending on an actual implementation, the inventive coding scheme can be implemented in hardware or in software. Therefore, the present invention also relates to a computer program, which can be stored on a computer-readable medium such as a CD, a disc or any other data carrier. The present invention is, therefore, also a computer program having a program code which, when executed on a computer, performs the inventive method described in connection with the above figures. In particular, the implementations of the means and modules in FIG. 1 and may comprise sub-routines running on a CPU, circuit parts of an ASIC or the like, for example.

While this invention has been described in terms of several embodiments, there are alterations, permutations, and equivalents which fall within the scope of this invention. It should also be noted that there are many alternative ways of implementing the methods and compositions of the present invention. It is therefore intended that the following appended claims be interpreted as including all such alterations, permutations and equivalents as fall within the true spirit and scope of the present invention.

Wiegand, Thomas, Marpe, Detlev, Schwarz, Heiko, Winken, Martin

Patent Priority Assignee Title
10283032, Oct 07 2015 Samsung Display Co., Ltd. Integrated circuit for nonlinear data encoding
10872553, Oct 07 2015 Samsung Display Co., Ltd. Integrated circuit for nonlinear data encoding
11082470, Mar 16 2011 HELIOS STREAMING, LLC Apparatus and method for providing streaming content using representations
11355050, Oct 07 2015 Samsung Display Co., Ltd. Integrated circuit for nonlinear data encoding
9549194, Jan 09 2012 Dolby Laboratories Licensing Corporation Context based inverse mapping method for layered codec
9756353, Jan 09 2012 Dolby Laboratories Licensing Corporation Hybrid reference picture reconstruction method for single and multiple layered video coding systems
Patent Priority Assignee Title
5963665, Mar 09 1996 SAMSUNG ELECTRONICS CO , LTD Image enhancing method using mean-separate histogram equalization and a circuit therefor
6201898, Feb 05 1996 Matsushita Electric Industrial Co., Ltd. Video signal recording apparatus, video signal regenerating apparatus, image coding apparatus and image decoding apparatus
6829301, Jan 16 1998 DIGIMEDIA TECH, LLC Enhanced MPEG information distribution apparatus and method
6925120, Sep 24 2001 Mitsubishi Electric Research Labs, Inc. Transcoder for scalable multi-layer constant quality video bitstreams
7773694, Jul 02 2003 Panasonic Intellectual Property Corporation of America Communication apparatus and communication method
20050063471,
20050105623,
20050259729,
20060197777,
EP1617679,
JP10056639,
WO2004045217,
//////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Oct 25 2006Franuhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V.(assignment on the face of the patent)
Apr 29 2009MARPE, DETLEVFraunhofer-Gesellschaft zur Foerderung der Angewandten Forschung E VASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0226510423 pdf
Apr 29 2009WINKEN, MARTINFraunhofer-Gesellschaft zur Foerderung der Angewandten Forschung E VASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0226510423 pdf
Apr 29 2009SCHWARZ, HEIKOFraunhofer-Gesellschaft zur Foerderung der Angewandten Forschung E VASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0226510423 pdf
Apr 29 2009WIEGAND, THOMASFraunhofer-Gesellschaft zur Foerderung der Angewandten Forschung E VASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0226510423 pdf
May 28 2015Fraunhofer-Gesellschaft zur Foerderung der Angewandten Forschung E VGE VIDEO COMPRESSION, LLCASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0358060937 pdf
Date Maintenance Fee Events
Jan 08 2018M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Dec 16 2021M1552: Payment of Maintenance Fee, 8th Year, Large Entity.


Date Maintenance Schedule
Jul 08 20174 years fee payment window open
Jan 08 20186 months grace period start (w surcharge)
Jul 08 2018patent expiry (for year 4)
Jul 08 20202 years to revive unintentionally abandoned end. (for year 4)
Jul 08 20218 years fee payment window open
Jan 08 20226 months grace period start (w surcharge)
Jul 08 2022patent expiry (for year 8)
Jul 08 20242 years to revive unintentionally abandoned end. (for year 8)
Jul 08 202512 years fee payment window open
Jan 08 20266 months grace period start (w surcharge)
Jul 08 2026patent expiry (for year 12)
Jul 08 20282 years to revive unintentionally abandoned end. (for year 12)