专利摘要:
transformation coefficient encoding. an idea applied here is to use the same function for context dependence and symbolization parameter dependence on previously encoded/decoded transformation coefficients. the application of the same function with variable function parameters - can even be used with respect to different sizes of transformation blocks and/or frequency portions of the transformation blocks in case the transformation coefficients are spatially arranged in transformation blocks. another variant of this idea is to use the same function for the dependence of a symbolization parameter on previously coded/decoded transformation coefficients for different sizes of the current transformation coefficient transformation block, different types of information components of the current transformation block. current transform coefficient and/or different frequency portions of the current transform coefficient are located within the transform block.
公开号:BR112014017916B1
申请号:R112014017916-6
申请日:2013-01-21
公开日:2021-07-27
发明作者:Tung Nguyen;Heiner Kirchhoffer;Detlev Marpe
申请人:Ge Video Compression, Llc;
IPC主号:
专利说明:

[001] The present invention relates to transform coefficient encoding, as the transform coefficients of a block of transform coefficients of an image.
[002] In block-based image and/or video codecs, an image is encoded in block units. Among them, transform-based codecs subject blocks of the image to a transform to obtain blocks of transform coefficients. For example, the picture can be predictively encoded with a prediction residual being transformed encoded into block units and then encoding the resulting transform coefficient levels from the transform coefficients of these transform blocks using entropy coding.
[003] To increase the efficiency of entropy encoding, contexts are used to accurately estimate the probability of the symbols of the transformation coefficient levels to be encoded. However, in recent years, the demands placed on image codecs have increased. In addition to the luminance and chrominance components, codecs sometimes have to carry maps of depth, transparency values, and so on. Furthermore, the sizes of the transform blocks are variable within a range more and more. Due to these varieties, codecs have an increasing number of different contexts with different functions to determine the context of the already encoded transformation coefficients.
[004] A different possibility to obtain high compression rates at a more moderate complexity, is to adjust a symbolization scheme for coefficient statistics, as accurate as possible. However, to implement this adaptation close to current statistics, it is mandatory to take into account several factors, requiring for this a huge amount of different symbolization schemes.
[005] Correspondingly, there is a need to keep the complexity of coding transformation coefficients low, while maintaining the possibility of obtaining a high coding efficiency.
[006] The present invention intends to provide such a transformation coefficient coding scheme.
[007] This objective is achieved by the subject matter of the appended independent claims.
[008] According to an aspect of the present invention, an apparatus for encoding a series of transformation coefficients with levels of transformation coefficients in a stream comprises a symbolizer configured to map a current transformation coefficient to a first set of one or more symbols according to a first symbolization scheme, with the transform coefficient level of the current transform coefficient within a first level interval, and if the transform coefficient level of the current transform coefficient is within a second level range, for a combination of a second symbol set, to which a maximum level of the first level range is mapped according to the first symbolization scheme, and a third symbol set dependent on a position of the level of transformation coefficient of the current transformation coefficient within the second level interval, according to a second symbolization scheme which is parameterizable according to a symbolization parameter. Furthermore, the apparatus comprises a context adaptive entropy coder configured to, if the transform coefficient level of the current transform coefficient is within the first level range, entropy encode the first set of one or more symbols for a stream of data, and, if the transform coefficient level of the current transform coefficient is within the second level range, entropy encode the second set of one or more symbols for the data stream, in which the context adaptive entropy encoder is configured to, in the entropy coding of at least one predetermined symbol of the second set of one or more symbols for the data stream, use a dependent context, via a parameterizable function via a function parameter, with a function parameter defined for a first definition, of the previously coded transformation coefficient. In addition, the apparatus comprises a symbolization parameter determiner configured to, if the transformation coefficient level of the current transformation coefficient is within the second level range, determine the symbolization parameter for mapping to the third symbol set. dependent, through the function with the function parameter defined for a second definition, on the previously coded transformation coefficients. An inserter configured to, if the transform coefficient level of the current transform coefficient is within the second level range, insert the third symbol set for the data stream.
[009] According to another aspect of the present invention, an apparatus for encoding a series of transformation coefficients of different transformation blocks, each having a transformation coefficient level, in a data stream, comprises a configured symbolizer to map a transformation coefficient level to a current transformation coefficient according to a symbolization scheme that is parameterizable according to a symbolization parameter, in a symbol set; an inserter configured to insert the symbol set for the current transform coefficient into the data stream; and a symbolization parameter determiner configured to determine the symbolization parameter for the dependent current transformation coefficient, through a parameterizable function through a function parameter, of previously processed transformation coefficients, wherein the inserter, the desymbolizer and the symbolization parameter determiner are configured to sequentially process the transformation coefficients of the different transformation blocks, where the function parameter varies as a function of a transformation block size of the current transformation coefficient, a type of information block of the transform block of the current transform coefficient and/or a frequency portion of the current transform coefficient are located within the transform block.
[010] An idea of the present invention is to use the same function for context dependence and symbolization parameter dependence on previously encoded/decoded transformation coefficients. The application of the same function - with variable function parameters - can even be used with respect to different sizes of transformation blocks and/or frequency portions of the transformation blocks in case the transformation coefficients are spatially arranged in transformation blocks. Another variant of this idea is to use the same function for the dependence of a symbolization parameter on previously coded/decoded transformation coefficients for different sizes of the current transformation coefficient transformation block, different types of information components of the current transformation block. current transform coefficient and/or different frequency portions of the current transform coefficient are located within the transform block.
[011] The detailed and advantageous aspects of the present invention are the subject of the dependent claims. Furthermore, the preferred versions of the present invention are described below with respect to the figures, among which:
[012] Fig. 1 shows a schematic diagram of a transformation coefficient block comprising transformation coefficients to be coded and illustrates the co-use of a parameterizable function for context selection and symbolization parameter determination according to a version of the present invention;
[013] Fig. 2 shows a schematic diagram of the symbolization concept for levels of transformation coefficients, using two different schemes within two level intervals;
[014] Fig. 3 shows a schematic graph of two appearance probability curves defined on possible levels of transformation coefficients for two different contexts;
[015] Fig. 4 shows a block diagram of an apparatus for coding a series of transformation coefficients according to a version;
[016] Figs. 5a and 5b show schematic diagrams of a structure for the resulting data flow according to different versions;
[017] Fig. 6 shows a block diagram of an image encoder according to a version;
[018] Fig. 7 shows a block diagram of an apparatus for decoding a series of transformation coefficients according to a version;
[019] Fig. 8 shows a block diagram of an image encoder according to a version;
[020] Fig. 9 shows a schematic diagram of a block of transformation coefficients, in order to illustrate a scan and a template according to a version.
[021] Fig. 10 shows a block diagram of an apparatus for decoding a series of transformation coefficients according to another version;
[022] Figs. 11 a and 11 b show schematic diagrams of symbolization concepts for levels of transformation coefficients that combine two or three different schemes within partial intervals of the entire range of the interval;
[023] Fig. 12 shows a block diagram of an apparatus for encoding a series of transformation coefficients according to another version; and
[024] Fig. 13 shows a schematic diagram of a block of transformation coefficients, in order to illustrate, according to another version, a scan order among the blocks of transformation coefficients that follow a sub-block order defined from among sub-blocks, in which the transform coefficient block is subdivided, to illustrate another version for designing the parameterizable function for context selection and symbolization parameter determination. With reference to the description below, note that the same reference numerals are used in these figures for elements appearing in more than one of these figures. Correspondingly, the description of such an element in relation to a figure must equally apply to the description of another figure where this element appears.
[025] Furthermore, the description brought below preliminarily assumes that the transformation coefficients are coded as being two-dimensionally arranged, so as to form a transformation block, like a transformation block of an image. However, the present application is not restricted to image and/or video encoding. Instead, the uncoded transform coefficients could alternatively be transform coefficients of a one-dimensional transform, as used, for example, in audio coding or the like.
[026] To explain the problems that the versions described below face, and how the versions described below overcome these problems, preliminary reference is made to Figs. 1 through 3, which show an example of transform coefficients of a transform block and its general mode for entropy coding, which is then improved by the versions explained subsequently.
[027] Fig. 1 shows, as an example, a block 10 of transformation coefficients 12. In this version, the transformation coefficients are arranged bi-dimensionally. In particular, they are shown, by way of example, as being regularly arranged in columns and rows, although another two-dimensional arrangement is also possible. The transform leading to transform coefficients 12 or transform block 10 can be a DCT or other transform that decomposes a (transform) block of an image, for example, or another block of spatially arranged values into components of different spatial frequency. In the present example of Fig. 1, the transformation coefficients 12 are two-dimensionally arranged in columns i and rows j, so as to correspond to frequency pairs (fx(i), fy(j)) of frequencies fx(i), fy(j) measured along different spatial directions x,y, as mutually perpendicular directions, where fx/y(i) < fx/y(i + 1) and (i,j) is the position of the respective coefficient in the block of transformation 10.
[028] Often, transformation coefficients 12 corresponding to lower frequencies have higher levels of transformation coefficients compared to transformation coefficients corresponding to higher frequencies. Correspondingly, many times many of the transform coefficients near the highest frequency component of transform block 10 are quantized to zero and may not have to be encoded. Instead, a scan order 14 can be defined from among the transformation coefficients 12 which one-dimensionally arrange the two-dimensionally arranged (i,j) transformation coefficients 12 into a sequence of coefficients in one order, ie (i ,j) -> k, so that it is likely that the levels of transformation coefficients have a tendency to decrease monotonically along this order, that is, it is likely that the coefficient level of the coefficient k is greater than the level of coefficient of coefficient k+1.
[029] For example, a zigzag or a scanning analysis can be defined among the transformation coefficients 12. According to the scan, the block 10 can be analyzed in diagonals from, for example, the component transformation coefficient. DC (upper left coefficient) to the highest frequency transformation coefficient (lower right coefficient) or vice versa. Alternatively, a row-oriented or column-oriented scan of the transformation coefficients between the transformation coefficients of the extreme component just mentioned can be used.
[030] As described below, in transform block encoding, the position of the last non-zero transform coefficient L by scan order 14 can be encoded first for the data stream, then with mere encoding of the transform coefficients from the DC transform coefficient along scan path 14 to the last non-zero transform coefficient L - optionally in that direction or in the opposite direction.
[031] Transformation coefficients 12 have transformation coefficient levels that can be signed or unsigned. For example, the transformation coefficients 12 may have obtained, through the aforementioned transformation, with subsequent quantization to a set of possible quantization values, each being associated with a respective level of transformation coefficients. The quantization function used to quantize the transformation coefficients, that is, mapping the transformation coefficients to the transformation coefficient levels, can be linear or non-linear. In other words, each transformation coefficient 12 has a level of transformation coefficients outside a range of possible levels. Fig. 2, for example, shows an example where the levels of transformation coefficients x are defined within a range of levels [0, 2N-1]. According to an alternate version, there may not be an upper limit on the range range. Furthermore, Fig. 2 illustrates only positive levels of transformation coefficients, although they can also be signed. With respect to the signals of the transform coefficients 12 and their coding, note that there are different possibilities with respect to all the versions outlined below in order to encode these signals, and all these possibilities must be within the scope of these versions. Referring to Fig. 2, this means that there may also be no lower bound on the range of the transformation coefficient levels.
[032] In any case, to encode the transformation coefficient levels of the transformation coefficients 12, different symbolization schemes are used to cover different portions or intervals 16, 18 of the interval range 20. To be more precise, the levels of transformation coefficients within a first level 16 interval, except for those that are equal to a maximum level of the first level 16 interval, can simply be symbolized for a set of one or more symbols according to a first symbolization scheme. However, the levels of transformation coefficients that fall within the second interval of level 18 are mapped to a combination of symbol sets from the first and the second symbolizing scheme. As will be seen later, the third and more intervals can follow the second interval correspondingly.
[033] As you can see in Fig. 2, the second interval of level 18 is above the first interval of level 16, but overlaps with the last one at the maximum level of the first interval of level 16, which is the 2 in the example of Fig. 2. For transformation coefficient levels within the second level range 18, the respective level is mapped to a combination of the first symbol set corresponding to the maximum level of the first level range according to the first symbolization scheme, and a second symbol set dependent on a position of the transform coefficients level within the second level interval 18 according to the second symbolization scheme.
[034] In other words, the first symbol scheme 16 maps the levels covered by the first level 16 range to a set of first symbol sequences. Please note that the length of the symbol strings within the symbol string set of the first symbolization scheme may even be merely a binary symbol, in the case of a binary alphabet and in the case of the first level 16 range merely covering two levels of transformation coefficients, such as 0 and 1. According to one version of the present application, the first symbolization scheme is a truncated unary binarization of levels in the interval 16. In the case of a binary alphabet, the symbols can be called bins .
[035] As will be described in more detail below, the second symbolization scheme maps the levels within the second 18 level interval to a set of variable length second symbol sequences, wherein the second symbolization scheme is parameterizable according to a symbolization parameter. The second symbolization scheme can map the levels within range 18, i.e. x - the maximum level of the first range, to a Rice code with a Rice parameter.
[036] In particular, the second symbolization scheme 18 can be configured so that the symbolization parameter varies a rate at which the length of the symbol sequences of the second scheme increases from the lower limit of the second level interval 18 to an upper limit of it. Obviously, a longer length of the symbol sequences consumes a higher transmission rate within the data stream, for which the transformation coefficients must be encoded. Generally, it is preferable if the length of the symbol sequence, to which a certain level is mapped, correlates with the actual probability, at which the level of transformation coefficients to be encoded currently assumes the respective level. Of course, the last statement is also valid for levels outside the second level 18 interval within the first level 16 interval or for the first symbolization scheme in general.
[037] In particular, as can be seen in Fig. 3, the transformation coefficients typically show a certain statistic or probability of occurrence of certain levels of transformation coefficients. Fig. 3 shows a graph that associates each possible level of transformation coefficients x with a probability, in which the respective level of transformation coefficients is currently assumed by a transformation coefficient in question. To be more precise, Fig. 3 shows two such associations or probability curves, namely for two coefficients from different contexts. That is, Fig. 3 assumes that the transformation coefficients are differentiated according to their context, as determined by the transformation coefficient values of the neighboring transformation coefficients. Depending on the context, Fig. 3 shows that the probability curve, which assigns a probability value to each level of transformation coefficients, may depend on the context of the transformation coefficient in question.
[038] According to the versions described below, the symbols of the symbol sequences of the first symbolization scheme 16 are entropically encoded in a context adaptive mode. That is, a context is associated with the symbols, and the alphabet probability distribution associated with the selected context is used to entropy encode the respective symbol. Symbols from the symbol sequences of the second symbolization scheme are inserted into the data stream either directly or using a fixed alphabet probability distribution, as an equal probability distribution, according to which all members of the alphabet are equally probable.
[039] The contexts used in the entropic symbol encoding of the first symbolization scheme have to be selected appropriately, so as to allow a good adaptation of the estimated alphabet probability distribution to the current alphabet statistics. That is, the entropy coding scheme can be configured to update the current estimate of the probability distribution of the context alphabet whenever a symbol with this context is encoded/decoded, thus approximating the current alphabet statistics. The approximation is faster if the contexts are chosen properly, with the necessary precision, but not with too many different contexts to avoid too infrequent association of symbols with certain contexts.
[040] Likewise, the symbolization parameter for a coefficient must be chosen in function of the previously coded/decoded coefficients, in order to approximate as much as possible the current alphabetic statistics. Over-precise diversification is not a critical issue here because the symbolization parameter is directly determined from the previously coded/decoded coefficients, but the determination must closely match the correlation of the probability curve dependence within the second interval 18 on the coefficients previously encoded/decoded.
[041] As will be described in more detail below, the versions to encode transformation coefficients more described below are advantageous in that a common function is used to obtain the context adaptivity and the symbolization parameter determination. Choosing the correct context is, as outlined above, important to obtain a high encoding efficiency or compression rate, and the same applies for the symbolization parameter. The versions described below allow to achieve this goal, keeping the overall costs low to produce the dependence on the previously coded/decoded coefficients. In particular, the inventors of the present application have found a way for a good compromise between realizing an efficient dependency on previously encoded/decoded coefficients, on the one hand, and reducing the number of owner logic to produce the individual context dependencies, on the other hand. .
[042] Fig. 4 shows an apparatus for encoding a series of transformation coefficients with levels of transformation coefficients in a data stream according to a version of the present invention. Note that, in the following description, the alphabet of symbols is often assumed to be a binary alphabet, although this assumption is, as outlined above, not critical to the present invention and, correspondingly, all these explanations are to be interpreted as being also illustrative for an extension to other symbol alphabets.
[043] The apparatus of Fig. 4 is for encoding a series of transformation coefficients that input an input 30 to the data stream 32. The apparatus comprises a symbolizer 34, a context adaptive entropy encoder 36, a parameter determiner symbol 38 and an inserter 40.
[044] Symbol 34 has its inputs connected to input 30 and is configured to map the transformation coefficient that currently inputs its inputs to symbols in the manner described above with respect to Fig. 2. That is, symbol 34 is configured to mapping a current transform coefficient to a first set of one or more symbols according to a first symbolization scheme, if the transform coefficient level of the current transform coefficient x is within the first level interval 16, and if the transform coefficient level of the current transform coefficient is within the second level 18 interval, for a combination of a second symbol set, to which a maximum level of the first level 16 interval is mapped according to the first symbolization scheme, and a third symbol set dependent on a position of the coefficient transformation coefficient level of current transformation within the second interval of level 18, according to a second symbolization scheme. In other words, the symbolizer 34 is configured to map a current transform coefficient to a first sequence of symbols of the first symbolizing scheme, in case the transform coefficient level of the current transform coefficients is within the first range of level 16 but outside the second level range, and for a combination of the symbol sequence of the first symbol scheme for the maximum level of the first level 16 range and a symbol sequence of the second symbol scheme, in the case of the level of transformation coefficient of the current transformation coefficient is within the second level interval.
The symbolizer 34 has two outputs, namely one for symbol sequences of the first symbolization scheme, and one for symbol sequences of the second symbolization scheme. Inserter 40 has an input for receiving the symbol sequences of the second symbolizing scheme 42 and the context adaptive entropy encoder 36 has an input for receiving the symbol sequences of the first symbolizing scheme 44. In addition, the symbol 34 has a parameter input for receiving symbol parameter 46 from an output of symbol parameter determiner 38.
[046] Context adaptive entropy encoder 36 is configured to entropy encode the symbol of the first symbol sequences 44 into data stream 32. Inserter 40 is configured to insert symbol sequences 42 into data stream 32.
[047] In general, both the entropy coder 36 and the inserter 40 sequentially analyze the transformation coefficients. Obviously, inserter 40 merely operates for transformation coefficients whose level of transformation coefficients is within the second interval of level 18. However, as will be described in more detail below, there are different possibilities to define the order between the operation of the entropy encoder 36 and inserter 40. According to a first version, the encoding apparatus of Fig. 4 is configured to analyze the transformation coefficients in a single scan so that inserter 40 inserts the symbol sequence 42 of a transform coefficient in the data stream 32 subsequent to the entropy coder entropy coding of the first related symbol sequence 44 with the same transform coefficient into the data stream 32 and before the entropy coder entropy coding of the related symbol sequence 44 with the next in-line transformation coefficient into the data stream 32.
[048] According to an alternative version, the apparatus uses two scans, wherein, within the first scan, the context adaptive entropy encoder 36 sequentially encodes the symbol sequences 44 into the data stream 32 for each transformation coefficient. with inserter 40, then inserting symbol sequences 42 for those transform coefficients, whose level of transform coefficients is within the second interval of level 18. There could even be more sophisticated schemes, according to which, for example, the encoder Context adaptive entropy 36 uses multiple scans to encode the individual symbols of the first symbol sequences 44 into data stream 32, as the first symbol or bin in a first scan, followed by a second symbol or bin of sequences 44 in a second scan and so on.
[049] As already indicated above, the context adaptive entropy encoder 36 is configured to entropy encode at least one predetermined symbol of the symbol sequences 44 into the data stream 32 in a context adaptive mode. For example, context adaptivity could be used for all symbols of symbol sequences 44. Alternatively, context adaptive entropy encoder 36 may restrict context adaptivity to symbols in the first position and to symbol sequences of the first scheme. symbolization only, or the first and the second, or the first for third positions and so on.
[050] As described above, for context adaptivity, encoder 36 manages contexts by storing and updating an alphabet probability distribution estimate for each context. Whenever a certain context is encoded, the current alphabet probability distribution estimate is updated using the current value of this symbol, thus approximating the current alphabet statistics of the symbol for that context.
[051] Likewise, the symbolization parameter determiner 38 is configured to determine the symbolization parameter 46 for the second symbolization scheme and its symbol sequences 42 depending on the previously encoded transformation coefficients.
[052] To be more precise, the context adaptive entropy encoder 36 is configured so that it uses or selects for the current transformation coefficients a context depending, through a parameterizable function through a function parameter, and with the function parameter defined for the first definition, of the previously coded transformation coefficients, while the symbol parameter determiner 38 is configured to determine the symbolization parameter 46 depending, through the same function, and with the function parameter defined for a second definition, of the previously coded transformation coefficients. The definitions may differ, but as the symbolization parameter determiner 38 and the context adaptive entropy coder 36 use the same function, the overall logical costs can be reduced. Merely the function parameter may differ between the context selection of the entropy coder 36, on the one hand, and the symbolization parameter determination of the symbolization parameter determiner 38, on the other hand.
[053] With regard to the dependence of the previously coded transformation coefficients, note that this dependence is restricted insofar as these previously coded transformation coefficients have already been coded for the 32 data stream. Imagine, for example, that such type of previously encoded transform coefficients fall within the second level interval 18, but the symbol sequence 42 of this has not yet been inserted into the data stream 32. In this case, the symbolization parameter determiner 38 and the adaptive entropy coder of context 36 merely know from the first sequence of symbols 44 of that previously encoded transform coefficient that it lies within the second level interval 18. In that case, the maximum level of the first level interval 16 can serve as a representative for this transform coefficient previously encoded. For the time being, the dependence “on the previously encoded transformation coefficients” must be understood broadly, in order to encompass a dependence on “information or other transformation coefficients previously encoded/inserted in the data stream 32”. Furthermore, transformation coefficients that lie “beyond” the last position L of the non-zero coefficient can be considered zero.
[054] To complete the description of Fig. 4, the outputs of the entropy encoder 36 and inserter 40 are shown as being connected to a common output 48 of the apparatus through a switch 50, with the same connectivity that exists between inputs for information previously inserted/encoded of symbolization parameter determiner 38 and context adaptive entropy coder 36 on the one hand, and the outputs of entropy coder 36 and inserter 40 on the other hand. Switch 50 connects output 48 to one of the outputs of entropy coder 36 and inserter 40 in the order mentioned above with regard to the various possibilities of using one, two or more scans to encode the transformation coefficients.
[055] To explain the common use of the parameterizable function with respect to the context adaptive entropy coder 36 and symbolization parameter determiner 38 in more specific terms, reference is made to Fig. 1. The function can be co-used by the entropy coder 36 and symbolization parameter determiner 38 is indicated by 52 in Fig. 1, namely g(f(x)).
[056] The function is applied to a set of previously coded transformation coefficients, which can, as explained above, be defined to encompass those previously coded transformation coefficients with a certain spatial relationship relative to the current coefficient. Specific versions for this function will be outlined below in more detail. Generally speaking, f is the function that combines the set of previously encoded levels of coefficients into a scale, where g is the function that checks what interval the scale is in. In other words, the function g(f(x)) is applied to an x set of previously coded transformation coefficients. In Fig. 1, the transformation coefficient 12 indicated by a small cross denotes, for example, the current transformation coefficient, and the planned transformation coefficients 12 indicate the x set of transformation coefficients to which function 52 is applied. to obtain a symbolization parameter 46 and an entropy context index 54 that indexes the context for the current transform coefficient x. As illustrated in Fig. 1, a local template, which defines a spatial relative arrangement around the current transform coefficient, can be used to determine the x set of relevant previously encoded transform coefficients among all previously encoded transform coefficients. . As can be seen in Fig. 1, template 56 can span the transformation coefficient immediately below and to the right of the current transformation coefficient. When choosing a template like this, the symbol sequences 42 and 44 of the transform coefficients on one diagonal of scan 140 can be coded in parallel since none of the transform coefficients on one diagonal fall to template 56 of another transform coefficient. on the same diagonal. Of course, similar templates can be found for row and column scans.
[057] To provide more specific examples for the commonly used function g(f(x)) and the corresponding function parameters, below these examples are provided using a respective formula. In particular, the apparatus of Fig. 4 can be configured so that the function 52 which defines the relationship between a set x of previously encoded transformation coefficients, on the one hand, and a context index number 54 which indexes the context and symbolization parameter 46, on the other hand, is
on what:
optionally Wj, form the function parameter,
epresenting a previously decoded transformation coefficient i, Wi are correction values, each one being equal to one or unequal to e, and h is a constant or function of x,-.
[058] It follows that g(/(x)) is within [O,df]. If g(/(x)) is used to set an offset number from the context index ctxOffSet that is also summed with at least one offset number from the base context index ctXbase, then the value range of the resulting context index ctx = ctxbaSe + ctXoffset θ [ctXbase ctxbase + df]. Whenever it is mentioned that different sets of contexts are used for entropy code symbols of symbol sequences 44, then ctxbaSe is chosen differently so that [ctxbase,i; ctxbaSe + df] do not overlap [ctXbase,2; ctXbase + df]. This is, for example, true for: transform coefficients that belong to transform blocks of different size; transformation coefficients that belong to transformation blocks of different type of information component, such as depth, luminance, chrominance, and so on; transform coefficients belonging to different frequency portions of the same transform block;
[059] As mentioned above, the symbolization parameter can be a Rice k parameter. That is, the (absolute) levels within the range 16, ie X, with X + M = x (where M is the maximum level of the range 16 and x is the level of transformation coefficients (absolute)), would be mapped to a series of bins with a prefix and a suffix, the prefix being a unary code of -2“*J , and the suffix a binary code of the remainder of X-2~k.
[060] df can also be part of function parameter, d can also be part of function parameter.
[061] A difference in function parameter, such as between context selection and symbolization parameter determination, merely needs a difference in
(if part of the function parameter), or d (if part of the function parameter).
[062] As explained above, the index /' can index the 12 transformation coefficients inside template 56. x, can be set to zero in case the respective template position is outside the transformation block. In addition, the context adaptive entropy coder 36 can be configured so that the context dependence of the transformation coefficients previously coded through the function is such that x is equal to the transformation coefficient level of the previously coded transformation coefficient i in case it is within the first level interval 16, and is equal to the maximum level of the first level interval 16, in case the transformation coefficient level of the previously coded transformation coefficient / is within the second level interval 18, or is such that x/ is equal to the level of transform coefficients of the previously coded transform coefficient i, regardless of whether the level of transform coefficients of the previously coded transform coefficient i is within the first or second level range.
[063] With regard to the symbolization parameter determiner, it can be configured so that, in determining the symbolization parameter, x is equal to the transformation coefficient level of the previously coded transformation coefficient /, independently the transformation coefficient level of the previously encoded transformation coefficient / is within the first or second level range.
[064] The device may still be configured so that
applies in any case.
[065] The device can also be configured so that h =

[066] In another version, the apparatus can be configured to spatially determine the previously encoded transformation coefficients depending on a spatial relative arrangement of the transformation coefficients relative to the current transformation coefficient, that is, based on the template around the position of the current transformation coefficient.
[067] The apparatus may further be configured to determine a position of a last non-zero transform coefficient L from among transform coefficients of a block of transform coefficients 10 along a predetermined scan order 14, and to inserting position information within the data stream 32, wherein the various transformation coefficients comprise the transformation coefficients from the last non-zero transformation coefficient L to the beginning of a predetermined scan order, i.e. a DC component transformation coefficient.
[068] In another version, the symbolizer 34 may be configured to use a first modified symbolization scheme for symbolizing the last transformation coefficient L. According to the first modified symbolization scheme, only the transformation coefficient levels or non-zero within the first interval of level 16 can be mapped, whereas it is assumed that a level zero does not apply to the last transformation coefficient L. For example, the first bin of the truncated unary binarization can be suppressed for the coefficient L.
[069] The context adaptive entropy coder can be configured to use a separate set of contexts for entropic encoding the first set of one or more symbols for the last non-zero transform coefficient, separate from the contexts used in the entropy encoding of the first set of one or more symbols other than the last non-zero transformation coefficient.
[070] The context adaptive entropy coder can traverse the series of transform coefficients in an opposite scan order from the non-zero transform coefficient to the DC transform coefficient of the transform coefficient block. This may or may not apply to the second symbol sequences 42 as well.
[071] The apparatus may also be configured to encode the various transformation coefficients for the data stream 32 in two scans, wherein the context adaptive entropy encoder 36 may be configured to entropy encode the first symbol sequences 44 to the coefficients of transforms for the data stream 32 in an order corresponding to a first scan of the transform coefficients, wherein inserter 40 is configured to subsequently insert symbol sequences 42 for transform coefficients that have a transform coefficient level within from the second level interval 18 to the data stream 32 in an order corresponding to an occurrence of the transform coefficients having a transform coefficient level within the second level 18 interval within a second scan of the transform coefficients. An example for the resulting data stream 32 is shown in Fig. 5a: it may optionally comprise an information 57 about the position of L, followed by the symbol sequences 42 in entropy coded form (at least some in the adaptive entropy coded form of context) and then followed by the symbol sequences 44 entered directly or using, for example, bypass mode (alphabet likely equal).
[072] In another version, the apparatus may accordingly be configured to encode several transformation coefficients for the data stream 23 sequentially in one scan, wherein the context adaptive entropy encoder 36 and the inserter 40 are configured to insert, for each transform coefficient in a scan order of (a) scanner, the symbol sequences 42 of respective transform coefficients having a transform coefficient level within the second level interval 18 into the data stream 32 immediately subsequent to encoding entropy of the context adaptive entropy coder of the symbol sequence 44 in the data stream 32, together with which it forms the combination to which the same transform coefficients are mapped, so that the symbol sequences 42 are spread out to the data flow 32 between symbol sequences 44 of the transform coefficients. The result is illustrated in Fig. 5b.
[073] Inserter 40 may be configured to insert symbol sequences 42 into the data stream directly or using entropy coding using a fixed probability distribution. The first symbolization scheme may be a truncated unary binarization scheme. The second symbolization scheme can be such that the symbol sequences 42 are of a Rice code.
[074] As already mentioned above, the versions of Fig. 4 can be implemented inside an image/video encoder. An example of such a picture/video encoder is shown in Fig. 6. The picture encoder is generally indicated with reference numeral 60 and comprises an apparatus 62 corresponding to that shown in Fig. 4, for example. Encoder 60 is configured to, in encoding a picture 64, transform blocks 66 of picture 64 into blocks of transform coefficients 10, which are then processed by apparatus 62, so as to encode, per transform block 10, a series of its transformation coefficient. In particular, apparatus 62 processes transform blocks 10, transform block by transform block. In so doing, apparatus 62 can use function 52 for blocks 10 of different sizes. For example, a hierarchical subdivision of multiple trees can be used to decompose image 64 or blocks of its tree roots into blocks 66 of different sizes. The transformation blocks 10 resulting from applying a transformation to these blocks 66 are correspondingly also of different size and, although the function 52 can be correspondingly optimized for the different block sizes by using different function parameters, the overhead costs of providing these different dependencies for the symbolization parameter, on the one hand, and the context index, on the other hand, are kept low.
[075] Fig. 7 shows an apparatus for decoding a series of transform coefficients with transform coefficient levels from a data stream 32, which adapts to the apparatus outlined above with respect to Fig. 4. In particular, the The apparatus of Fig. 7 comprises a context adaptive entropy decoder 80, a desymbolizer 82 and an extractor 84, as well as a symbolization parameter determiner 86. The context adaptive entropy decoder 80 is configured to, for a transform coefficient of current, entropy decode a first set of one or more symbols, i.e., a sequence of symbols 44, from the data stream 32. The desymbolizer 82 is configured to map the first set of one or more symbols, i.e., the symbol sequence 44, for a transformation coefficient level within the first level interval 16 according to a first symbolization scheme. To be more precise, the context adaptive entropy decoder 80 and desymbolizer 82 operate in an iterative fashion. The desymbolizer 82 informs the context adaptive entropy decoder 80 via a signal 88, in which the symbol sequentially decoded by the decoder 80 from the data stream 32 has completed a valid symbol sequence of the first symbolization scheme.
[076] An extractor 84 is configured for, if the transformation coefficient level for which the first set of one or more symbols, i.e. the symbol sequence 44, is mapped according to the first symbolization scheme is the maximum level of the first level interval 16, extracting a second symbol set, i.e., symbol sequence 42, from data stream 32. Again, desymbolizer 82 and extractor 84 can operate in concert. That is, de-symbolizer 82 can inform extractor 84 by a signal 90 when a valid symbol sequence of the second symbolization scheme has been completed, and extractor 84 can then finish extracting symbol sequence 42.
[077] The desymbolizer 82 is configured to map the second symbol set, i.e. the symbol sequence 42, to a position within a second level 18 interval according to a second symbolization scheme, as already mentioned above, which is parameterizable according to symbolization parameter 46,
[078] The context adaptive entropy decoder 80 is configured to, in the entropy decoding of at least one predetermined symbol of the first symbol sequence 44, use a context dependent, through the function 52, of the previously decoded transformation coefficients. The symbolization parameter determiner 86 set to, if the transformation coefficient level to which the first symbol sequence 44 is mapped according to the first symbolization scheme is the maximum level of the first level interval 16, to determine the parameter symbol 46 dependent, through function 52, on the previously decoded transformation coefficients. To this end, the inputs of the entropy decoder 80 and symbolizing parameter determiner 86 are connected, via a switch 92, to an output of the desymbolizer 82, at which the desymbolizer 82 outputs values Xi of the coefficients and transformation.
[079] As described above, for context adaptivity, decoder 80 manages contexts by storing and updating an alphabet probability distribution estimate for each context. Whenever a symbol encodes a certain context, the current alphabet probability distribution estimate is updated using the current/decoded value of that symbol, thus approximating the current alphabet statistics of the symbol for that context.
[080] Likewise, the symbolization parameter determiner 86 is configured to determine the symbolization parameter 46 for the second symbolization scheme and its symbol sequences 42 depending on the previously decoded transformation coefficients.
[081] Generally, all possible possibilities and other details described above regarding encoding are also transferable to the apparatus for decoding of Fig. 7.
[082] Fig. 8 shows in annex to Fig. 6. That is, the apparatus of Fig. 7 can be implemented within the picture decoder 100. The picture decoder 100 of Fig. 7 comprises an apparatus according to Fig. 7, namely the apparatus 102. The image decoder 100 is configured to, in decoding or reconstructing an image 104, retransform image blocks 106 from the transform coefficient blocks 10, whose series of transform coefficients is the apparatus 102. decodes from data stream 32 which in turn introduces a picture decoder 100. In particular, apparatus 102 processes transform blocks 10, block by block, and can, as already mentioned above, use function 52 commonly for blocks 106 of different sizes.
[083] Note that picture encoder and decoder 60 and 100, respectively, may be configured to use predictive coding with application of transform/retransform to the prediction residual. Furthermore, the data stream 32 may have subdivision information encoded therein, which signals to the picture decoder 100 the subdivision for the blocks individually subjected to transformation.
[084] Below, the above versions are again described by a few other words, and providing more details on the specific aspects, the details of which can be individually transferred to the above models. That is, the above versions relate to a specific mode of context modeling for encoding syntax elements related to transformation coefficients, as in block-based image and video encoders, and their aspects are described and highlighted further below.
[085] The versions may refer to the field of digital signal processing and, in particular, to a method and apparatus for image and video decoders and encoders. In particular, the encoding of transform coefficients and their associated syntax elements in block-based image and video codecs can be performed according to the described versions. In this sense, some versions represented an improved context modeling for encoding syntax elements related to transformation coefficients with an entropy coder that employs probability modelling. Furthermore, the derivation of a Rice parameter, which is used for the adaptive binarization of the remaining absolute transformation coefficients, can be done as described above with respect to the symbolization parameter. Unification, simplification, parallel processing, moderate and easy use of memory in terms of context memory are the benefits of the versions compared to straight context modeling.
[086] In other words yet, the versions of the present invention may reveal a new approach for selecting the context model of syntax elements related to encoding transformation coefficients in block-based image and video coders. The derivation rules for a symbolization parameter, such as a Rice parameter, which controls the binarization of a remaining value of an absolute transformation coefficient, were also described. Essentially, the above versions used a simple and customary set of rules for selecting the context model for all, or a part, of the syntax elements related to the encoding of the transformation coefficients.
[087] The first symbolization scheme mentioned above can be a truncated unary binarization. In this case, coef_significant_flag, coef__major_dis_1, and coef_major_dis_2 can be the names given to binary syntax elements or symbols that form the first, second and third bin resulting from the truncated unary binarization of a transformation coefficient. As described above, the truncated unary binarization can merely represent a prefix, which can be followed by the suffix, itself being a Rice code in case the transformation coefficient level falls within the second interval of level 18. Another suffix can be of an Exp-Golomb code, such as order 0, forming another level interval that follows the first and second intervals 16 and 18 in Fig. 2 (not shown in Fig. 2).
[088] The derivation of the Rice parameter for the adaptive binarization of the remaining absolute transformation coefficient can be done, as described above, based on the same set of rules 52 as used for the context model selection.
[089] Regarding the scan order, note that it can be varied compared to the description above. Furthermore, the different sizes and shapes of blocks can be supported by the apparatus of Fig. 4 and 6, but using the same set of rules, i.e., using the same function 52. Correspondingly, a unified scheme can be achieved and simplified for context model selection of syntax elements related to encoding of transformation coefficients combined with a matching for symbolization parameter derivation. Therefore, context model selection and symbolization parameter derivation can use the same logic, which can be wired, programmed hardware or a software subroutine, for example.
[090] To get a simple and common scheme for selecting the context model and deriving the symbolization parameter, such as the Rice parameter, the already encoded transformation coefficients of a block or a shape can be evaluated as described above. To evaluate the already encoded transformation coefficients, the separation in the coding of the significant_flag_coef, which is the first bin resulting from the binarization (which can be referred to as the significance map coding), and the remaining absolute value of the transformation coefficient level is performed using a common function 52.
[091] The encoding of the signal information can be done in an interleaved way, that is, encoding the signal directly after encoding the absolute transformation coefficient. Therefore, all transformation coefficients could be encoded in the scan pass only. Alternatively, signal information can be encoded in a separate scan path, while f(x) evaluation values are based on absolute level information only.
[092] As denoted above, transformation coefficients can be encoded in a single scan pass or in multiple scan passes. This can be achieved by, or described by, a cut-off set c, whose coefficients c, indicate the number of symbols of the symbolization of the transformation coefficient (first and second) processed in scan /. In case of an empty cutset, a scan can be used. To improve the results for context model selection and symbolization parameter derivation, the first CQ cut parameter of the cut set c should be greater than one.
[093] Note that the set of cuts c can be chosen to be c={c0; Ci} with c0=1 and Ci=3 and |c|=2, where c0 indicates the number of bins/symbols of the first binarization, included in the first scan, and c7=3 indicates the position of the symbol within the first binarization, up to which the symbols of the first binarization are covered to be a second scan. Another example is given when the scheme encodes the first bin resulting from binarization to an integer block or shape in a first scan pass, then the second bin to the entire block or shape in a second scan pass, with c0 equal to one, ci equals two, and so on.
[094] The local template 56 for encoding the coef_significant_flag, that is, the first bin of the binarization process, can be conceived as shown in Fig. 1 or Fig. 9. As a unification and simplification, the local template 56 can be used for all sizes and shapes of blocks. Instead of evaluating the number of neighbors with non-zero transformation coefficients only, all transformation coefficients are introduced in function 52 in the form of xh. Note that local template 56 can be fixed, that is, regardless of the position of the coefficient of current transformation or scan index and independently of the previously coded transformation coefficients, or adaptive, i.e. dependent on the position of the current transformation coefficient or scan index and/or the previously coded transformation coefficients, and the size it can be fixed or adaptive. Furthermore, when the size and shape of the template is adjusted, allowing coverage of all scan positions of a block or a shape, all transformation coefficients already coded or all transformation coefficients already coded up to a limit are used. specific to the evaluation process.
[095] As an example, Fig. 9 shows another example for local template 56, which can be used for an 8x8 10 transform block with diagonal scan 14. L denotes the last significant scan position and the marked scan positions with an x denotes the current scan position. Note that for other scan orders, the local template can be modified to adapt to scan order 14. For example, in the case of a right diagonal scan, the local template 56 can be shifted along the diagonals.
[096] The selection of the context model and the derivation of the symbolization parameter can be based on different evaluation values f(x) resulting from the evaluation of already coded neighbors x,-. This evaluation is done for all scan positions with already encoded neighbors covered by local template 56. Local template 56 has a variable or fixed size and may depend on scan order. However, the shape and size of the template is an adaptation to the scan order only and therefore the derivation of the f(x) values is independent of the scan order 140 and the shape and size of the template 56. Note that the definition of the size and shape of template 56, so that it can cover all scan positions of a block 10 for each scan position, managing to use all the transformation coefficients already encoded in the current block or shape.
[097] As stated before, the selection of the context model indices and the derivation of the symbolization parameter use evaluation values f(x). Generally speaking, a generic set of mapping functions maps the resulting evaluation values f(x) to an index of the context model on a specific symbolization parameter. In addition to this, additional information such as the current spatial position of the current transform coefficient within the transform block or form 10 or the last significant scan position L can be used for selecting context models related to the encoding of transformation coefficients and for the derivation of the symbolization parameter. Note that the information resulting from the assessment and spatial location or the latest information can be combined and, therefore, specific weighting is possible. After the evaluation and derivation process, all parameters (context model indices, symbolization parameter) are available for encoding an entire transformation coefficient level or a transformation coefficient up to a specific limit.
[098] As an exemplary configuration of the presented invention, the size of the cutting set is empty. This means that each transform coefficient is transmitted completely before processing the next transform coefficients along the scan order.
[099] The evaluation values f(x) can result from the evaluation of already coded neighbors x, covered by local template 56. A specific mapping function ft(x) maps the input vector to an evaluation value used to select the context model and the Rice parameter. The input vector x can consist of transformation coefficient values x, from neighbors covered by local template 56 and depends on the interleaving scheme. For example, if the cutset c is empty and the signal is encoded in a separate scan pass, the vector x consists of absolute transformation coefficients x only. Generally speaking, the x input vector values can be signed or unsigned. The mapping function can be formulated as follows with an input vector x of the dimension of d (giving t as a constant input).

[0100] To be more specific, the mapping function ft(x) can be defined as follows with an input vector x of the dimension of d (giving t as a constant input).

[0101] That is, gt(xi) can be (|xj -1). In the last formula, the function δ is defined as follows (giving t as a constant input):

[0102] Another type of evaluation value is the number of levels of neighboring absolute transformation coefficients greater or less than a specific value t defined as follows:

[0103] Note that for both types of evaluation values, it is possible that an additional weighting factor controls the importance of a specific neighbor. For example, the weighting factor w, is higher for neighbors with less spatial distance than for neighbors with greater spatial distance. Also, weighting is neglected when setting all w to one.
[0104] As an exemplary configuration of the presented invention, f0, fi, f2 and f3 are evaluation values with respective t of {0, 1, 2, 3} and δ(x,) as defined in (1). For this example, f0 is used for the derivation of the context index of the first bin, f1t for the second bin, f∑ for the third bin and f3 for the Rice parameter. In another exemplary configuration, f0 is used for the context model selection of the first in, while it is considered for the context model selection of the second, third bin, and Rice parameter. Here, the Rice parameter serves as a proxy for other symbolization parameters as well.
[0105] Context template selection for all syntax elements or bin indices in the entropy coding and symbolization parameter uses the same logic when employing the evaluation values f(x). Generally speaking, a specific evaluation value f(x) is mapped by another mapping function g(x,n) to a context model index or symbolization parameter. A specific mapping function is defined as follows with d as the dimension of the input vector n.

[0106] For this mapping, the function δ(x,n) can be defined as follows.

[0107] The d dimension of the input vector n and the values of the vector n can be variable and depend on the syntax element or index of bin. In addition, the spatial location within the transform block or shape can be used to add or subtract (or to move) the index of the selected context model.
[0108] The first scan position when analyzing the transform coefficients when encoding/decoding them, can be the last scan position L when applying the scan direction of Fig. 1 to point from DC to the highest frequency. That is, at least the first scan of the scans to traverse the coefficients to encode/decode them, can point from coefficient L to DC. For this scan position L, the first bin index can be neglected as the last information ever signaled on how this scan position consists of a transformation coefficient unequal to zero. For this scan position, the separate context model index can be used to encode the second and third bin resulting from the binarization of the transformation coefficient.
[0109] As an exemplary configuration of the presented invention, the resulting evaluation value f0 is used as input together with the input vector n={1,2,3,4,5}, and the resulting value is the model index of context for the first bin. Note that in case the evaluation value is equal to zero, the context index is zero. The same scheme is applied with the evaluation value fi and the input vector n={1,2,3,4} and the resulting value is the context model index for the second and third binarization bins. For the Rice parameter, f3 and en={0,5,19} are used. Note that the maximum Rice parameter is three and therefore the present invention makes no change to the maximum Rice parameter compared to the technological state. Alternatively, it can be used to derive the Rice parameter. For this configuration, the input vector must be changed to n={3,9,21}. Note that the underlying set of rules is the same for all syntax elements or indices of bin and for the Rice parameter, only the parameters or bounding sets (input vector n) are different. Also, depending on the diagonal of the current scan position, the context model index can be modified as stated before by adding or subtracting a specific amount. An equivalent description for this is the selection of another set of non-contiguous context template. In an example implementation, the resulting context model index for the first bin is shifted by 2*|cfx0| if the current scan position is on the first of the two diagonals. If the current scan position is on the third and fourth diagonals, the context model index for the first bin is shifted into |cfxO|, where |cfxO| is the maximum number of context models resulting from the derivation based on the valuation values resulting in non-contiguous context model sets. This concept is used for luminance planes only for an exemplary implementation, no more deviation being added in the case of chrominance, avoiding context dilution (that is, not enough bins are coded with an adaptive context model and the statistic cannot be followed by the context model). The same technique can be applied to the context model index of the second and third bin. Here, in an exemplary configuration of the presented invention, the boundary diagonals are three and ten. Again, this technique is applied to the luminance signal only. Note that it is also possible to extend this technique to chrominance signals. Also, note that the bias-dependent additional index deviation can be formulated as follows.

[0110] In this formula, dj denotes the weight for the diagonal of the current scan position and idxinc denotes the step size. Also note that the deviation index can be reversed for practical implementations. For the stated example implementation, an inversion would be to set the additional index to zero if the current scan position is on the first and second diagonals, is shifted in ctxO to the third and fourth diagonals and is 2*ctx0 case contrary. By using the given formula, the same behavior as for the example setting is achieved when setting d0 and d-i to 2, d3 and d4 to 1 and all remaining diagonal factors to 0.
[0111] Even if the context model index is the same for different block sizes or plane types (eg luminance and chrominance), the context base model index may be different resulting in different sets of context models . For example, the same base index can be used for block sizes larger than 8x8 in luminance, while the base index can be different for 4x4 and 8x8 in luminance. In order to have a significant number of context models, the base index can, however, be grouped in a different way.
[0112] As an exemplary configuration, the context models for 4x4 blocks and the remaining blocks can be different in luminance, while the same base index can be used for the chrominance signal. In another example, the same base index can be used for both luminance and chrominance signals, while context models for luminance and chrominance are different. Also, the context templates for the second and third bin can be grouped together, resulting in a smaller number of context memory. If the context template index derivation for the second and third bin is the same, the same context template can be used to pass the second and third bin. Through a correct combination of clustering and base index weighting, a significant number of context models can be achieved, resulting in context memory savings.
[0113] In a privileged version of the invention presented, the set of cuts c is empty. That is, only one scan can be used. For this privileged version, the signal information can be interleaved using the same scan pass, or it can be encoded in a separate scan pass. In another privileged version, the size of the set c is equal to one and c0, the first and only value of the set of cuts c is equal to three. This corresponds to the example illustrated above, using two scans. In this privileged version, context model selection can be done for all three bins resulting from truncated unary binarization, while symbolization parameter derivation, like Rice parameter selection, can be done using the same function 52.
[0114] In a privileged version, the local template size is five. The size of the local template can be four. For this privileged version, the neighbor with the spatial distance of two in the vertical direction can be removed compared to Fig. 8. In another privileged version, the template size is adaptive and is adjusted to the scan order. For this privileged version, the neighbor, which is encoded in a processing step before, is not included in the template, as is the case in Figs. 1 and 8. By doing so, the dependency or latency is shortened, resulting in a higher processing order. In another privileged version, the size and shape of the template is adjusted sufficiently broadly (eg the same size or block shape as the current block or shape). In another privileged version, two local templates can be used, which can be combined by a weighting factor. For this privileged version, local templates may differ in size and shape.
[0115] In a privileged version, f0 can be used to select the context model index for the first bin and fi for the second bin, third bin and the Rice parameter. In this privileged version, the input vector n={0,1,2,3,4,5} results in 6 context models. The input vector n for the second and third index of bin can be the same as n={0,1,2,3,4}, while the input vector n for the Rice parameter can be n={3,9, 21}. Furthermore, in a privileged version, the aforementioned frequency portions of the transform block, within which separate context sets are used, can be formed by non-contiguous sets of diagonals (or lines) of the diagonal scan (analysis) . For example, there may be different context base offset numbers for the first and second diagonal, second and third diagonal, and fourth and fifth diagonal when viewed from the DC component, so that context selection stops coefficients on these diagonals take place within non-contiguous sets of contexts. Note that the first diagonal is one. For the second and third bin index, diagonals in the range [0.2] have a weighting factor of two and diagonals in the range [3.9] have a weighting factor of one. These additional deviations are used in the case of a luminance signal, while the weighting factors for chrominance are all equal to zero. Also for this privileged version, the context model for the second and third bin index of the first scan position, which is the last significant scan position, is separate from the remaining context models. This means that the evaluation process can never select this model from a separate context.
[0116] In a privileged version, the 4x4 luminance blocks or shapes use a single context set for the first bin, while the context models for the remaining block sizes or shapes are the same. In this privileged version, there is no separation between block size or shape for the chrominance signal. In another preferred version of the invention, there is no separation between block sizes or shapes results in the same base index or context model sets for all block sizes and shapes. Note that for both privileged versions, different sets of context models are used for luminance and chrominance signals.
[0117] Below is a version that uses a Rice parameter binarization modified according to the above versions, but without context adaptive entropy coding. According to this alternative coding scheme, only the Rice binarization scheme is used (with, optionally, the addition of an Exp-Golomb suffix). Therefore, no context adaptive model is required to encode a transformation coefficient. For this alternative encoding scheme, the Rice parameter derivation uses the same rule as the versions above.
[0118] In other words, to reduce complexity and context memory and to improve latency in the encoding chain, an alternative encoding scheme based on the same set of rules or logic is described. For this alternative coding scheme, the context model selection for the first three bins resulting from binarization is disabled and the first three bins resulting from Truncated Unary binarization, ie, the first symbolization scheme, can be encoded with equal probability fixed (that is, with a probability of 0.5). Alternatively, the Truncated Unary binarization scheme is omitted and the binarization scheme range limits are adjusted. In this practice, the left boundary of the Rice range, ie, range 18, is 0 instead of 3 (with range 16 disappearing). The right/upper limit for this practice can be unchanged or can be subtracted by 3. The derivation of the Rice parameter can be modified in terms of evaluation values and in terms of the input vector n.
[0119] Therefore, according to the modified versions outlined above, an apparatus for decoding a series of transformation coefficients from different transformation blocks, each having a transformation coefficient level, from data stream 32, can be constructed and operated as illustrated and described with respect to Fig. 10.
[0120] The apparatus of Fig. 10 comprises an extractor 120 configured to extract a symbol set or symbol sequence 122 from the data stream 32 to a current transform coefficient. Extraction is performed as described above with respect to extractor 84 of Fig. 7.
[0121] A desymbolizer 124 configured to map the symbol set 122 to a transformation coefficient level to the current transformation coefficient according to a symbolization scheme that is parameterizable according to a symbolization parameter. The mapping can only use the parameterizable symbolization scheme, as a Rice binarization, or it can use this parameterizable symbolization scheme merely as a prefix or suffix of a general symbolization of the current transformation coefficient. In the case of Fig. 2, for example, the parameterizable symbolization scheme, i.e. the second, has formed the suffix with respect to the sequence of symbols of the first symbolization scheme.
[0122] To present more examples, reference is made to Fig. 11a and b. According to Fig. 11a, the range range 20 of the transformation coefficients is subdivided into three ranges 16, 18 and 126, together covering the range range 20 and reciprocally overlapping at a respective maximum level of the respective lower range . If the level of coefficient x is within the highest range 126, the overall symbolization is a combination of symbol sequence 44 from the first symbol scheme 128 which symbolize levels within the range 16, the symbol sequence forming a prefix, followed by a first suffix, namely a sequence of symbols 42 of the second symbolizing scheme 130 symbolizing levels within the range 18, and further followed by a second suffix, namely a sequence of symbols 132 of a third symbolizing scheme 134 symbolizing levels within the range 126. The latter can be an Exp-Golomb code, such as a 0-order. If the level of coefficient x is within the middle range 18 (but not within the range 126), the general symbolization is merely a combination of prefix 44 followed by the first suffix 42. If the level of coefficient x is within the lowest range 16 (but not within range 18), the general symbolization is merely composed of the prefix 44. The general symbolization is composed in such a way that it is free from prefixes. Without the third symbolization, the symbolization according to Fig. 11a may correspond to one in Fig. 2. The third symbolization scheme 134 may be a Golomb-Rice binarization. The second symbol scheme 130 can form a parameterizable one, although it can also be the first 128.
[0123] An alternative general symbolization is presented in Fig. 1. Here two symbolization schemes are merely combined. Compared to Fig. 11a, the first symbolization scheme has been left out. Depending on the x within range 136 of scheme 134, or range 138 of scheme 130 (outside of range 136), the symbolization of x comprises prefix 140 and suffix 142, or merely prefix 140.
[0124] In addition, the apparatus of Fig. 10 comprises a symbolization parameter determiner 144 connected between the desymbolizer output and a desymbolizer parameter input 124. The determinator 144 is configured to determine the symbolization parameter 46 for the coefficient of current transformation dependent, through function 52, of the previously processed transformation coefficients (since they are derivable from the desymbolized fragments or desymbolized/processed/decoded portions so far).
[0125] The extractor 120, the desymbolizer 124 and the symbol parameter determiner 144 are configured to sequentially process the transform coefficients of the different transform blocks as described above. That is, scan 140 can be traversed in the opposite direction within a transform block 10. Various scans can be used, eg for different symbolization fragments, ie prefix and suffix(s).
[0126] The function parameter varies depending on a size of the current transformation coefficient transformation block, a type of information component of the current transformation coefficient transformation block and/or a frequency portion of the transformation coefficient are located within the transformation block.
[0127] The device can be configured so that the function that defines the relationship between the previously decoded transformation coefficients, on the one hand, and the symbolization parameter, on the other hand, is g(/(x)), whose function has already been described above.
[0128] As already discussed above, the spatial determination of the previously processed transformation coefficients can be used depending on the spatial relative disposition relative to the transformation coefficient.
[0129] The apparatus can operate very easily and quickly, since the extractor 120 can be configured to extract the symbol set from the data stream directly or using entropy decoding which uses a fixed probability distribution. The parameterizable symbolization scheme can be such that the symbol set is a Rice code, and the symbolization parameter is a RICE parameter.
[0130] In other words, the desymbolizer 124 can be configured to restrict the symbolization scheme to a level range such as 18 or 138 outside the range of the range 20 of the transformation coefficients, so that the symbol set represents a prefix or suffix with respect to other portions of a general symbolization of the current transform coefficient such as 44 and 132 or 142. As for the other symbols, it can also be extracted from the data stream directly or using entropy decoding using a distribution of fixed probability, but Figs. 1 through 9 showed that entropic coding using context adaptivity can also be used.
[0131] The apparatus of Fig. 10 can be used as apparatus 102 in the picture decoder 102 of Fig. 8.
[0132] For completeness, Fig. 12 shows an apparatus for encoding a series of transformation coefficients from different transformation blocks, each having a transformation coefficient level, for a data stream 32, adapted to the apparatus. of Fig. 10.
[0133] The apparatus of Fig. 12 comprises a symbolizer 150 configured to map a transformation coefficient level to the current transformation coefficient according to a symbolization scheme that is parameterizable according to a symbolization parameter, for a set of symbols or sequence of symbols.
[0134] An inserter 154 configured to insert the symbol set for the current transform coefficient into data stream 32.
[0135] A symbolization parameter determiner 156 is configured to determine the symbolization parameter 46 for the current transformation coefficient depending, through a function 52 parameterizable through a function parameter, on the previously processed transformation coefficients, and can for this purpose being connected between an output of inserter 152 and parameter input of symbol 150, or alternatively between output and input of symbol 150.
[0136] Inserter 154, symbolizer 150 and symbolization parameter determiner 156 may be configured to sequentially process the transformation coefficients of the different transformation blocks, wherein the function parameter varies depending on a size of the transformation coefficient transformation block of current, a type of information component of the current transformation coefficient transformation block and/or a frequency portion of the current transformation coefficient are located within the transformation block.
[0137] As stated above with respect to the decoding apparatus of Fig. 10, the apparatus of Fig. 12 can be configured so that the function defining the relationship between the previously decoded transformation coefficients, on the one hand, and the symbolization parameter, on the other hand, is g(/(x)), and the previously processed transformation coefficients can be spatially determined depending on a spatial relative arrangement with respect to the current transformation coefficient.
[0138] The inserter can be configured to insert the symbol set into the data stream directly or using entropy coding that uses a fixed probability distribution, and the symbolization scheme can be such that the symbol set is a Rice code, and the symbolization parameter is a RICE parameter. The symbolizer may be configured to constrain the symbolization scheme to a level range outside a range 20 of the transformation coefficients so that the symbol set represents a prefix or suffix relative to other portions of a general symbolization of the current transformation coefficient.
[0139] As mentioned above, in a privileged implementation of the versions of Fig. 1 to 12, the context model selection for the first three bins is disabled compared to the versions of Fig. 1 to 9. For this privileged version, bins resulting from Unary Truncated 128 binarization are encoded with a fixed probability of 0.5. In another privileged version, the Truncated Unary 128 binarization is omitted, as seen in Fig. 11b, and the limits for the Rice interval are adjusted, resulting in the same interval range as in the previous technological state (ie, left and right limits minus 3). For this privileged version, the Rice parameter derivation rule is modified compared to the version in Fig. 1 to 9. Instead of using it as an evaluation value, you can use f0 , for example. Also, the input vector must be set to n={4,10,22}.
[0140] Another version described here illustrates the possibility of virtually having different templates for context selection/dependence, on the one hand, and the determination of the symbolization parameter, on the other hand. That is, the x coefficients template remains the same, both for context selection/dependence and for the determination of the symbolization parameter, but the x coefficients, which participate in the f(x) influence, are effectively different between the selection/ context dependence and the determination of the symbolization parameter through the appropriate definition iv,: all coefficients x„ for which the weights w, are zero, do not influence f(x) correspondingly, conceiving the portions of the template, where w, is zero, differently between selection/context dependence, on the one hand, and symbolization parameter determination, on the other hand, effectively resulting in different "effective templates" for context selection/dependence and symbolization parameter determination. symbolization. In other words, by setting some w, to zero for certain template positions / for one of the selections/context dependencies and determining the symbolization parameter, while setting w, at these certain template positions i to non-zero values for the other selection /context-dependent and symbolization parameter determination, the template of the first mentioned selection/context-dependency and symbolization parameter determination is effectively smaller than the template of the last selection/context-dependency and symbolization parameter determination. Again, as already denoted above, the template can encompass all the transform coefficients in the block, irrespective of the position of the currently encoded transform coefficient, for example.
[0141] See, for example, Fig. 13 which shows a block of transformation coefficient 10, which consists, by way of example, of a network of transformation coefficients of 16x16 12. The block of transformation coefficient 10 is subdivided into sub- 200 blocks of transformation coefficients of 4x4 12 each. The 200 sub-blocks are therefore regularly arranged in a 4x4 network. According to the present version, to encode the transform coefficient block 10, a significance map is encoded within the data stream 32, wherein the significance map indicates positions of significant levels of transform coefficients 12, i.e., levels of transformation coefficients other than 0. Then the levels of transformation coefficients minus one of these significant transformation coefficients can be encoded into the data stream. The encoding of the last levels of coefficients can be done as described above, namely by a context-adaptive entropy encoding combined with a variable-length encoding scheme, which uses the common parameterizable function to select the context and determine the symbolization parameter. A certain scan order can be used to serialize or order the significant transformation coefficients. An example of such a scan order is illustrated in Fig. 13: the subblocks 200 are analyzed from the highest frequency (lower right) to DC (upper left), and within each subblock 200 the transform coefficients 12 before the transform coefficients of the next subblock are visited in subblock order. This is illustrated by arrows 202 which indicate the sub-block scan 204 and illustrate a portion of the current coefficient scan. A scan index can be transmitted within the data stream 32, so as to allow to select from several scan paths to analyze the sub-blocks 200 and/or transformation coefficients 12 within the sub-blocks, respectively. In Fig. 13 a diagonal scan is illustrated for both the sub-block scan 202 and the scan of the transform coefficients 12 within each sub-block. Accordingly, the significance map would be decoded in the decoder, and the transform coefficient levels of the significant transform coefficients would be decoded using the just mentioned scan order and using the above versions that exploit the parameterizable function. In the description outlined in more detail below, xS and yS denote the sub-block column and sub-block row measured from position DC onwards, i.e. the upper left corner of block 10, within which it is positioned a currently encoded/decoded transformation coefficient. xP and yP denote the position of the currently encoded/decoded transformation coefficient measured from the upper left corner (DC coefficient position) of the current subblock (xS, yS). This is illustrated in Fig. 13 for the upper right sub-block 200. xC and yC denote the position of the currently decoded/encoded transform coefficient measured in the transform coefficients from the DC position onwards. Furthermore, as the block size for block 10 in Fig. 13, namely 16x16, was chosen merely for illustration purposes, the version further outlined below uses log2TransfSize as a parameter denoting the size of block 10, which is assumed to be squared. log2TransfSize indicates the logarithm which is double the number of transform coefficients within each row of the transform coefficients of block 10, ie, log2 of the length of the corners of block 10 measured in transform coefficients. Ctxldxlnc finally selects the context. Furthermore, in the specific version outlined below, it is assumed that the aforementioned map signals encoded_sub_block_flag, i.e. a binary syntax element or flag, to sub-blocks 200 of block 10 to signal, sub-block by sub-block , whether within the respective sub-block 200 there is or not any significant transformation coefficient, that is, if merely insignificant transformation coefficients are located within the respective sub-block 200. If the flag is zero, the merely insignificant transformation coefficients find within the respective sub-block.
[0142] Therefore, according to this version, the following is performed by the context adaptive entropic decoder/encoder to select the context of signifier_coef_flag, that is, a flag that is part of the significance map and signals for a certain coefficient of transformation of a subblock, for which flag_sub_block_coded signals that the respective subblock 200 contains transformation coefficients other than zero, if the respective coefficient is significant, i.e., non-zero, or not.
[0143] The inputs to this process are the cldx color component index, the current coefficient scan position (xC, yC ), the scanldx scan order index, the log2TransfSize transform block size.
[0144] The output of this process is ctxldxlnc.
[0145] The sigCtx variable depends on the current position (xC, yC), the cldx color component index, the size of the transform block and the previously decoded bins of the coded_sub_flag_block syntax element. For the derivation of sigCtx, the following applies:
[0146] - If log2TransfSize is equal to 2, sigCtx is derived using ctxldxMap[ ] specified in table 1 as follows:

[0147] - Otherwise, if xC + yC equals 0, sigCtx is derived as follows:

[0148] - Otherwise, sigCtx is derived using previous values of the flag_sub_block_coded as follows:


[0149] The context index increment ctxldxlnc is derived using the color component index cldx and sigCtx as follows: - If cldx is equal to 0, ctxldxlnc is derived as follows, ctxldxlnc = sigCtx - Otherwise (cldx is greater than 0), ctxldxlnc is derived as follows:

[0150] Table 1 - ctxldxMap specification[ i ]


[0151] As described above, for each significant transformation coefficient, other syntax elements or symbol sets can be carried within the data stream to signal their levels. According to the version outlined below, for a significant transformation coefficient the following syntax elements or sets of transformation coefficients are transmitted: coef_dis_large_level1_flag, coef_dis_large_level_flag2_flag (optional), and coef_dis_level_remaining, so that the level of the transformation coefficient level significant currently encoded/decoded TransCoefLevel is:
[0152] TransCoefLevel = (coef_dis_level_remaining + baseLevel) * ( 1 - 2 * coef_sin_flag])

[0153] Please note that significant_coef_flag is, by definition, 1 for significant transform coefficients, and correspondingly, can be considered as part of the encoding of the transform coefficient, namely part of its entropic encoded symbols.
[0154] The context adaptive entropy encoder/decoder would, for example, perform context selection for coef_dis_high_level1_flag as follows. For example, the current sub-block scan index would increase along the scan path 202 in the DC direction, and the current coefficient scan index n would increase within the respective sub-block, within which finds the position of the currently encoded/decoded transform coefficient along scan path 204 where, as outlined above, there are different possibilities for scan paths 202 and 204, and it may actually be variable according to a scanldx index.
[0155] The inputs to this process of selecting the coef_dis_highest_level1_flag context are the color component index cldx, the scan index of the current subblock i and the scan index of the current coefficient n within the current subblock.
[0156] The output of this process is ctxldxlnc.
[0157] The variable ctxDefined specifies the current context set and the following applies to its derivation.
[0158] - If the process is invoked for the first time for current subblock scan index i, the following applies: - The variable ctxDefined is initialized as follows. - If the current sub-block scan index i is equal to 0 or cldx is greater than 0, the following applies: ctxSet = 0 - Otherwise (i is greater than 0 and cldx is equal to 0), the following applies: ctxSet = 2 - The variable lastSuperiorl Ctx is derived as follows. - If the current subblock with scan index i is the first to be processed in this subclause for the current transformation block, the variable lastSuperiorl Ctx is set to equal to 1. - Otherwise, the variable lastSuperiorl Ctx is set to equal the value of superioeICtx that was derived during the last invocation of the process specified in this subclause for the syntax element coef_dis_upper_level1_flag for the previous subblock with scan index i + 1. - When lastSuperiorl Ctx is equal to 0, ctxSet is incremented in one as follows. ctxDefinido = ctxDefinido + 1 - The superior variable Ctx is set to equal to 1.
[0159] - Otherwise (this process is not invoked for the first time for current sub-block scan index i), the following applies. - The variable ctxDefinido is set equal to the variable ctxDefinido that was derived during the last invocation of the process specified in this subclause. - The variable superiorICtx is set equal to the variable superiorICtx that was derived during the last invocation of the process specified in this subclause. - When superiorICtx is greater than 0, the variable lastSuperiorl Flag is set equal to the syntax element coef_dis_superior_level1_flag that was used during the last invocation of the process specified in this subclause and superiorICtx is modified as follows. - If lastSuperiorlFlag is equal to 1, superiorICtx is set equal to 0. - Otherwise (lastSuperiorlFlag is equal to 0), superiorl Ctx is incremented by 1.
[0160] The context index increment ctxldxlnc is derived using the current context set ctxSet and the superior current context Ctx as follows.

[0161] When cldx is greater than 0, ctxldxlnc is modified as follows.

[0162] The process of selecting the context of coef_dis_top_level2_flag could be made equal to coef_dis_level_top2_flag with the following difference:
[0163] The ctxldxlnc context index increment is set equal to the ctxSet variable as follows.

[0164] When cldx is greater than 0, ctxldxlnc is modified as follows.

[0165] For the symbolization parameter selection, the following would be performed by the symbolization parameter determiner to determine the symbolization parameter which, here, comprises lastDisLevel and lastRiceParam.
[0166] The input to the process is a request for a binarization for the syntax element coef_dis_remaining_level[ n ], and baseLevel.
[0167] The output of this process is the binarization of the syntax element.
[0168] The variables lastDisLevel and lastRiceParam are derived as follows: - If n is equal to 15, lastDisLevel and lastRiceParam are set equal to 0. - Otherwise (n is less than 15), lastDisLevel is set equal to baseLevel + coef_discent_level_remains [ n + 1 ] and cRiceParam is set equal to the value of cRiceParam that was derived during invocation of the binarization process as specified in this subclause for the remaining_level_dis_level[ n + 1 ] syntax element of the same transformation block.
[0169] Variable cRiceParam is derived from lastDisLevel and lastRiceParam as:

[0170] The variable cTRMax is derived from cRiceParam as:

[0171] Remaining_level_dis_coef binarization may consist of a prefix part and (when present) a suffix part.
[0172] The prefix part of the binarization is derived by invoking, for example, the Rice binarization process for the prefix part Min( cTRMax, coef_dis_remaining_level[ n ]).
[0173] When the prefix bin string is equal to the byte string of length 4, for example, with all bits equal to 1, the bin string can consist of a prefix bin string and a bin string of suffix. The suffix bin string can be derived using a binarization of order k Exp Golomb for the suffix part (coef_dis_remaining_level [ n ] - cTRMax) with order k Exp-Golomb set equal to cRiceParam + 1, for example.
[0174] Note that the aforementioned versions may be varied. For example, the cldx color component index dependency can be left out. It would be considered, for example, merely a component of color. Furthermore, all explicit values could be varied. In this sense, the examples outlined must be interpreted comprehensively to incorporate variations as well.
[0175] In the above example, the versions outlined above can advantageously be used as follows. In particular, the determination of Ctxldxlnc for coef_dis_upper_level1_flag, on the one hand, and the determination of the symbolization parameter for coef_dis_remaining_level is harmonized by exploring the above functions f and g, defining the function parameters as follows.
[0176] For this purpose, Fig. 16 shows, as an example, a "current transformation coefficient" illustrated with a cross 206. It is representative for any transformation coefficient, with which any of the elements of syntax mentioned subsequently is associated. It is positioned at (xP,yP)=(1,1) and (xC,yC)=(1,5) within the current sub-block (xS,yS)=(0,1). The right neighboring subblock is at (xS,yS)=(1,1), the lower neighbor subblock is at (xS,yS)=(0,2) and the coded subblock immediately before depends on the path of scan 202. Here, by way of example, a diagonal scan 202 is presented and the encoded/decoded subblock immediately before the current subblock is at (xS,yS)=(1.0).
[0177] Let's, again, rewrite the formulas for the common parameterizable function

[0178] To select the context of signifier_coef_flag for the current coefficient 206, the following could be computed by the entropic encoding/decoding apparatus That is, it would use the function (1) with (2) having the function parameters t, hew defined as follows:
[0179] For function (2), w( = 1 for all xt within the right and down neighboring subblocks of, the current subblock, and Wi=0 elsewhere in block 10; hÇxi' ) - 1 for all xt within the right-neighboring subblock of the current subblock; if present, it was previously analyzed in the scan of sub-block 202; in case more than one scan 202 is available, all can be such that, regardless of scanldx, the right neighboring subblock has its coded/decoded coefficients before the current subblock; h(xt) = 24 + 1 for all xt within the neighboring subblock below the current subblock previously analyzed in the subblock scan (regardless of scanldx);

[0180] If the value of f is equal to 0, this signals the case that none of the subblocks neighboring to the right and down of the current subblock Nachbarn comprises any significant transformation coefficients;
[0181] If the value of f is between 1 and 16, both inclusive, this corresponds to the fact that coded_sub_flag_block is equal to 1 in the right neighboring sub-block
[0182] If the value of f is a multiple of 24 + 1 (no reminder), This corresponds to the fact that coded_sub_flag_block is equal to 1 in the lower neighboring sub-block
[0183] If the value of f is a multiple of 24 + 1 , but with a reminder, this means that coded_sub_block_flag is equal to 1 for both neighboring sub-blocks, namely the one to the right of, and the one below the, sub- current block;
[0184] For function (1), n is defined as follows with df being 3:

[0185] Through this measure, the component variable of the context index is determined using g(f) with the above function parameters based on already coded/decoded coefficients.
[0186] To select the context of coef_dis_superior1_flag, the following could be computed by the entropic encoding/decoding apparatus. That is, it would use function (1) with (2) having the function parameters defined as follows:
[0187] For function (2), the parameters are defined as follows: W1 - 1 is defined for all x£ in the immediately preceding subblock and the current subblock, and zero for all others.

[0188] For function (1), n is defined as follows with df being 8:

[0189] To select the context of coef_dis_superior2_flag, the following could be computed by the entropic encoding/decoding apparatus. In particular, it would use function (1) with (2) having the function parameter defined as described above with respect to coef_dis_superior2_flag, but with df being 1: n = (216)
[0190] To determine the symbolization parameter for coef_dis_level_remaining, the symbolization parameter determiner could use the common function (1) with the function parameters defined as follows:
[0191] For function (2), the parameters are defined as follows: Wi = 1 for all xt in the current subblock, but zero elsewhere h(xi) = 1 for most recently - according to internal scan of coefficient 204 - visited coefficient xit for which coef_dis_remaining_level has been coded, i.e. whose level falls into the interval corresponding to the symbolization scheme;

[0192] For function (1) n the following is defined:
where k is the symbolization parameter, p. ex. the Rice Parameter, for the above mentioned and more recently - according to the internal scan of coefficient204 - visited coefficient. Using the resultant g(f), the symbolization parameter for the current coefficient 206 is determined.
[0193] The following syntax could be used to transfer the newly delineated syntax elements:





[0194] The syntax indicates that the transformation coefficient level is composed of remaining_level_dis_coef and baseLevel, where baseLevel is composed of 1 + upper_level_dis_coef1_flag[ n ] + upper_level_dis_coef2_flag[ n ]. 1 is used, since at this location (or at the time when the levels are reconstructed in the decoder) the syntax element is significant_coef_flag=1. “First set” would be the TU code (Rice code with parameterization equal to 0) - from this the first 3 syntax elements are formed. “Second set” forms the syntax element coef_d/s_n/ve/_remnant.
[0195] Since the threshold shifts between “first” and “second set” the maximum value is defined by coef_dis_superior1_bandeíra, coef_dis_superior2_bandeira or by signifier_coef_bandeira, depending on the sectors of the syntax elements in the table.
[0196] The above definitions of the function parameters are still somewhat motivated in the following.
[0197] g(f) forms the sum of the neighboring coefficients and, using the result, a context and a desymbolization parameter are derived, in which the last modification can be performed depending on the spatial position.
[0198] g(x) acquires a single value. This value corresponds to the result of the function f(x). Knowing this, context selection and also parameterization of the Rice parameter can be derived.
[0199] sign_coef_flag: Since h can itself be a function of x, f(x) or any other function it can be chained repeatedly. The function f(x) with w/=1 for all positions of the right subblock 4x4, t=1 and h a function that is set to f(x) but inverted, so that in the end it results in the value 0 or 1, that is, h(x)=min(1, f(x)).
[0200] Equivalently, for the second input, this applies to the lower 4x4 sub-block. Then prevCsbf=h0+2xh1, where prefCsbf can be a function h inside f(x).
[0201] If t=°° is defined, the values of the flag_sub_block_sub_block element can be derived. Therefore, a value between 0 and including 3 is acquired as a result for the farthest f(x). The parameter n for g(x) would then be (xP+yP), xP, yP, or (0,0). If f(x)=O results, then n=(xP+yP,xP+yP+3), for f(x)=1 n=(yP,yP+1) results, for f(x)=2 n =(xP,xP+1) results, and for f(x)=3 n=(0,0) results. So to speak, f(x) can be evaluated directly to determine n. The remaining formula above merely describes an adaptation depending on luminance/chrominance and other dependence on global position and scan. In the case of a pure 4x4 block, f(x) can be set so that the value for prevCsbf=4 (may also be different) and thus the mapping table can be reproduced.
[0202] coef_dis_upper_level1_flag: Here, the evaluation of the sub-blocks is similar, in that only the preceding sub-block is evaluated. The result is, p. ex. 1 or 2 (it only has to be two different values), where t=2. This corresponds to selecting a base index depending on the levels already decoded in the preceding sub-block. Direct dependence on levels located within the sub-block can thus be acquired. Effectively, an index makes the link when a 0 has been decoded (limited to 3 starting with 1) and, as soon as a 1 has been decoded, it is set to 0. If the arrangement is not considered, parameterization can be performed as follows , starting from 0. w;=1 for all levels in the same subblock and t=3, that is, f(x) provides the number of levels with cçef_dis_superior1_flag=1. For another function f(x) t=2, that is, the number of positions with an encoded syntax element coef_dis_superior1_flag. The first function is bounded, that is, h0=f(x)=min(f0(x),2) and the second function is bounded with h1=f(x)=max(f1(x),1). All this linked with a delta function (0 if hi=1, h0 otherwise). For coef_dis_superior2_flag, only the set derivation is used (w, is set to 0 for the nested inner function).
[0203] coef_dis_remaining_level: The selection is only limited to the current sub-block and n is derived as described above.
[0204] Regarding the version outlined above, the following should be noted. In particular, in accordance with the above description, there are different possibilities regarding the template definition: the template could be a moving template, whose position is determined depending on the position of the current coefficient 206. Fig. 13 presents a moving template of this type with a dashed line 208. The template is composed of the current sub-block, inside which the current coefficient 206 is found, the neighboring sub-blocks to the right and below the current sub-block, as well as the one or more subblocks immediately preceding the current subblock in the scan of subblock 202 or any of the scans of subblock 202 if there are several of them, of which one can be selected using an index of scan as explained above. Alternatively, template 208 can simply span all 12 transform coefficients from block 10.
[0205] In the example above, there are other different possibilities to select the values of h and n. These values can correspondingly be defined differently. This is also, to some extent, true of w, with respect to these importances, which are defined for one. It can be set to a value other than zero. Nor do they have to be like each other. Since w,- is multiplied by h(x,), the same product value can be achieved by defining w- differently from non-zero. Furthermore, the symbolization parameter does not have to be a Rice parameter or, to put it another way, the symbolization scheme is not limited to being a Rice symbolization scheme. Regarding the selection of the context index, reference is made to the description above, where it has already been noted that a final context index can be obtained by adding the context index as obtained, using the g(f) function for some deviation indices which is, for example, specific to the respective type of syntax element, that is, specific to significant_coef_flag, coef_dis_upper_level1_flag, and coef_dis_upper_level2_flag.
[0206] Although some aspects have been described in the context of an apparatus, it is clear that these aspects also represent a description of the corresponding method, in which a block or device corresponds to a method step or a characteristic of a method step . Similarly, aspects described in the context of a method step also represent a description of a corresponding block or item or feature of a corresponding apparatus. Some or all of the method steps can be performed (or used) by a hardware device, such as a microprocessor, a programmable computer, or an electronic circuit. In some versions, one or more of the most important steps of the method can be performed by such a device.
[0207] Depending on certain implementation requirements, versions of the invention can be implemented in hardware or in software. The implementation can be carried out using a digital storage medium, for example a floppy disk, a DVD, a Blu-Ray, a CD, a ROM, a PROM, an EPROM, an EEPROM or a FLASH memory, with read control signals electronics stored there that cooperate (or are able to cooperate) with a programmable computer system so that the respective method is executed. Therefore, the digital storage medium is computer readable. Some versions according to the invention comprise a data carrier with electronically readable control signals, which are capable of cooperating with a programmable computer system, so that one of the methods described herein is executed.
[0208] Generally speaking, versions of the present invention can be implemented as a computer program product with a program code, the program code being operative to execute one of the methods when the computer program product runs in a computer. Program code can, for example, be stored in a machine-readable medium.
[0209] Other versions comprise the computer program to execute one of the methods described here, stored in a machine-readable support.
[0210] In other words, a version of the method of the invention is therefore a computer program with a program code for executing one of the methods described herein, when the computer program runs on a computer.
[0211] Another version of the methods of the invention is, therefore, a data carrier (or a digital storage medium or a computer-readable medium) comprising, recorded therein, the computer program for executing one of the methods described herein. Data media, digital storage media or recorded media are typically tangible and/or non-transitionary.
[0212] Another version of the method of the invention is therefore a data stream or a sequence of signals representing the computer program to execute one of the methods described herein. The data stream or signal sequence can, for example, be configured to be transferred via a data communication link, for example via the Internet.
[0213] Another version comprises a processing means, for example, a computer, or a programmable logic device, configured or adapted to perform one of the methods described herein.
[0214] Another version comprises a computer with the computer program installed to perform one of the methods described herein.
[0215] Another version according to the invention comprises an apparatus or a system configured to transfer (for example, electronically or optically) a computer program to perform one of the methods described herein to a receiver. The receiver can, for example, be a computer, a mobile device, a memory device or the like. The apparatus or system may, for example, comprise a file server to transfer the computer program to the receiver.
[0216] In some versions, a programmable logic device (for example a network of programmable logic gates) can be used to perform some or all of the functionality of the methods described here. In some versions, a network of programmable logic gates can cooperate with a microprocessor to perform one of the methods described here. Generally speaking, the methods are preferably performed by any hardware device.
[0217] The versions described above are merely illustrative for the principles of the present invention. It is understood that modifications and variations to the arrangements and details described will be apparent to those skilled in the art. It is therefore intended to be limited only by the scope of the pending patent claims and not by the specific details of the description and explanation of the versions contained herein.
权利要求:
Claims (24)
[0001]
1. Apparatus for decoding a plurality of transformation coefficients from different transformation blocks, each with a transformation coefficient level, from a continuous data stream, characterized in that it comprises an extractor configured to extract a set of symbols from the stream. continuous data for a current transformation coefficient; a desymbolizer configured to map the symbol set onto a level of the transformation coefficient to the current transformation coefficient according to a symbolization scheme that is parameterizable according to a symbolization parameter, and a symbolization parameter determinator configured to determine the symbolization parameter for the current transformation coefficient depending, by means of a parameterizable function by means of a function parameter, on the previously processed transformation coefficients, in which the extractor, the desymbolizer and the symbolization parameter determiner are configured to sequentially process the transformation coefficients of the different transformation blocks, where the function parameter varies depending on a size of the current transformation coefficient transformation block, and/or a type of the transformation coefficient transformation block information component current.
[0002]
2. Apparatus according to claim 1, characterized in that the apparatus is configured in such a way that the function defining the relationship between the previously processed transformation coefficients, on the one hand, and the symbolization parameter, on the other hand, is
[0003]
3. Apparatus according to claim 2, characterized in that the apparatus is configured in such a way that
[0004]
Apparatus according to claims 2 or 3, characterized in that the apparatus is configured in such a way that h is
[0005]
Apparatus according to any one of claims 1 to 4, characterized in that the apparatus is configured to spatially determine the previously processed transformation coefficients depending on a spatial arrangement relative to the current transformation coefficient.
[0006]
Apparatus according to any one of claims 1 to 5, characterized in that the extractor is configured to extract the symbol set from the data stream directly or using entropy decoding using a fixed probability distribution.
[0007]
Apparatus according to any one of claims 1 to 6, characterized in that the symbolization scheme is such that the symbol set is a Rice code, and the symbolization parameter consists of a Rice parameter.
[0008]
Apparatus according to any one of claims 1 to 7, characterized in that the desymbolizer is configured to restrict the symbolization scheme to a level interval within a range interval of the transformation coefficients so that the symbol set represents a prefix or a suffix with respect to other parts of a general symbolization of the current transformation coefficient.
[0009]
Apparatus according to any one of claims 1 to 8, characterized in that the stream of data has a depth map encoded therein.
[0010]
10. Apparatus for encoding a plurality of transformation coefficients from different transformation blocks, each with a transformation coefficient level, into a continuous data stream, characterized by comprising a symbolizer configured to map a transformation coefficient level to a actual transformation coefficient according to a symbolization scheme that is parameterizable according to a symbolization parameter, over a set of symbols; an inserter configured to insert the symbol set for the current transformation coefficient into the data stream; and a symbolization parameter determiner configured to determine the symbolization parameter for the current transformation coefficient depending, by means of a parameterizable function by means of a function parameter, on the previously processed transformation coefficients, where the inserter, the symbolizer and the symbolization parameter determiner are configured to sequentially process the transform coefficients of the different transform blocks, wherein the function parameter varies depending on a transform block size of the current transform coefficient, and/or a component type. of the transformation block information of the current transformation coefficient.
[0011]
11. Apparatus according to claim 10, characterized in that the apparatus is configured in such a way that the function defining the relationship between the previously processed transformation coefficients, on the one hand, and the symbolization parameter, on the other hand, is
[0012]
Apparatus according to claim 11, characterized in that the apparatus is configured in such a way that
[0013]
Apparatus according to claim 11 or 12, characterized in that the apparatus is configured in such a way that
[0014]
Apparatus according to any one of claims 11 to 13, characterized in that the apparatus is configured to spatially determine the previously processed transformation coefficients depending on a spatial arrangement relative to the current transformation coefficient.
[0015]
Apparatus as claimed in any one of claims 11 to 14, characterized in that the inserter is configured to insert the symbol set into the data stream directly or using entropy encoding using a fixed probability distribution.
[0016]
Apparatus according to any one of claims 11 to 15, characterized in that the symbolization scheme is such that the symbol set is a Rice code, and the symbolization parameter consists of a Rice parameter.
[0017]
Apparatus according to any one of claims 11 to 16, characterized in that the symbolizer is configured to restrict the symbolization scheme to a level interval within a range interval of the transformation coefficients so that the symbol set represents a prefix or a suffix with respect to other parts of a general symbolization of the current transformation coefficient.
[0018]
Apparatus as claimed in any one of claims 10 to 17, characterized in that the stream of data has a depth map encoded therein.
[0019]
19. Method for decoding a plurality of transformation coefficients from different transformation blocks, each with a transformation coefficient level, from a stream of data, characterized by comprising: extracting a set of symbols from the stream of data for an actual transformation coefficient; map the symbol set desymbolization on a level of the transformation coefficient to the current transformation coefficient according to a symbolization scheme that is parameterizable according to a symbolization parameter, and determine the symbolization parameter to the current transformation coefficient depending, by means of a parameterizable function by means of a function parameter, on the previously processed transformation coefficients, in which the extraction, desymbolization mapping and determination are sequentially performed on the transformation coefficients of the different transformation blocks, in which the function parameter varies depending on a size of the transformation block of the current transformation coefficient, and/or a type of the information component of the transformation block of the current transformation coefficient.
[0020]
20. Method for encoding a plurality of transformation coefficients from different transformation blocks, each with a transformation coefficient level, into a continuous data stream, characterized by mapping the symbolization of a transformation coefficient level to a coefficient actual transformation according to a symbolization scheme that is parameterizable according to a symbolization parameter, on a set of symbols; insert the symbol set for the current transformation coefficient into the data stream; and determining the symbolization parameter for the current transformation coefficient depending, by means of a parameterizable function by means of a function parameter, on the previously processed transformation coefficients, in which the insertion, symbolization mapping and determination are sequentially performed in the transformation coefficients of the different transformation blocks, where the function parameter varies depending on a size of the transformation block of the current transformation coefficient, and/or a type of the information component of the transformation block of the current transformation coefficient.
[0021]
21. Apparatus according to claim 1, characterized in that the function parameter varies depending on a size of the transformation block of the current transformation coefficient, and/or a type of the information component of the transformation block of the current transformation coefficient.
[0022]
22. Apparatus according to claim 10, characterized in that the function parameter varies depending on a size of the transformation block of the current transformation coefficient, and/or a type of the information component of the transformation block of the current transformation coefficient .
[0023]
Method according to claim 19, characterized in that the function parameter varies depending on a size of the transformation block of the current transformation coefficient, and/or a type of the information component of the transformation block of the current transformation coefficient.
[0024]
The method according to claim 20, characterized in that the function parameter varies depending on a size of the transformation block of the current transformation coefficient, and/or a type of the information component of the transformation block of the current transformation coefficient.
类似技术:
公开号 | 公开日 | 专利标题
BR112014017916B1|2021-07-27|TRANSFORMATION COEFFICIENT CODING
BR122020004415B1|2021-09-08|CODING OF SIGNIFICANCE MAPS AND TRANSFORMATION COEFFICIENT BLOCKS
WO2019185818A1|2019-10-03|Transform coefficient block coding
BR122020007580B1|2021-10-26|DECODER, ENCODER AND METHOD FOR DECODING A CONTINUOUS DATA STREAM
TW202027505A|2020-07-16|Unified transform type signaling and transform type dependent transform coefficient level coding
BR112021013117A2|2021-09-21|APPARATUS TO DECODE AND ENCODE AN IMAGE USING PREDICTIVE ENCODING AND BLOCK-BASED TRANSFORMED RESIDUAL ENCODING, METHODS AND DATA FLOW
同族专利:
公开号 | 公开日
US20140362925A1|2014-12-11|
BR112014017916A2|2019-10-08|
KR20210020177A|2021-02-23|
US10045049B2|2018-08-07|
CN107302705A|2017-10-27|
CN107302365B|2020-06-16|
MX2014008696A|2015-03-05|
RU2708967C2|2019-12-12|
KR101952360B1|2019-02-27|
CN104205646A|2014-12-10|
HK1246015A1|2018-08-31|
HK1246019A1|2018-08-31|
AU2013211004A1|2014-09-11|
AU2016204082A1|2016-07-07|
MY170555A|2019-08-19|
IL277277A|2021-07-29|
KR20150004930A|2015-01-13|
RU2014134039A|2016-03-20|
IL284378D0|2021-07-29|
RU2017145307A|2019-02-18|
HK1246016A1|2018-08-31|
CN107302369B|2020-06-09|
US20190349604A1|2019-11-14|
ZA201406039B|2015-04-29|
CN107302705B|2020-09-18|
JP6542831B2|2019-07-10|
PL2805419T3|2017-10-31|
KR20210107147A|2021-08-31|
MX346550B|2017-03-24|
US20210120271A1|2021-04-22|
IL233700D0|2014-09-30|
DK2805419T3|2017-09-04|
ES2638093T3|2017-10-18|
RU2641235C2|2018-01-16|
KR101771656B1|2017-09-05|
AU2018217277B2|2020-07-02|
PH12018500139A1|2018-07-09|
HK1246018A1|2018-08-31|
CA2861953A1|2013-07-25|
US10582219B2|2020-03-03|
CN107302367B|2020-07-14|
PH12019501221A1|2019-11-11|
CN107302369A|2017-10-27|
UA114311C2|2017-05-25|
AU2018217277A1|2018-09-06|
IL270665A|2020-09-30|
HK1246051A1|2018-08-31|
CL2014001887A1|2014-11-21|
RU2761510C1|2021-12-09|
US10757447B2|2020-08-25|
KR102293126B1|2021-08-25|
US20200154141A1|2020-05-14|
KR20170100049A|2017-09-01|
EP2999123A1|2016-03-23|
PH12018500138A1|2018-07-09|
CN107302368A|2017-10-27|
KR101951887B1|2019-02-26|
JP2019176504A|2019-10-10|
WO2013107908A1|2013-07-25|
SG10201811840RA|2019-02-27|
HK1204163A1|2015-11-06|
SG10201609263YA|2016-12-29|
KR101951886B1|2019-02-26|
HK1246053A1|2018-08-31|
HK1246017A1|2018-08-31|
US10271068B2|2019-04-23|
PH12014501659B1|2014-10-13|
PH12014501659A1|2014-10-13|
IL233700A|2017-10-31|
MX370956B|2020-01-10|
CN107302365A|2017-10-27|
SG11201404240PA|2014-08-28|
IL254922D0|2017-12-31|
CA2861953C|2020-10-27|
KR102097668B1|2020-04-06|
CN107302363A|2017-10-27|
PH12018500137A1|2018-07-09|
IL265447A|2019-11-28|
CN104205646B|2017-09-22|
RU2745248C1|2021-03-22|
US9712844B2|2017-07-18|
CN107302366A|2017-10-27|
IL265447D0|2019-05-30|
US10462487B2|2019-10-29|
AU2016204082B2|2018-05-24|
RU2017145307A3|2019-02-18|
US20190191183A1|2019-06-20|
KR20170100050A|2017-09-01|
PH12018500138B1|2018-07-09|
HUE035958T2|2018-05-28|
KR20170100048A|2017-09-01|
CN107302368B|2020-07-28|
CN107302364A|2017-10-27|
KR20200037450A|2020-04-08|
PH12018500136A1|2018-07-09|
AU2013211004B2|2016-03-17|
KR20140133526A|2014-11-19|
CN107302702B|2020-06-23|
PT2805419T|2017-09-01|
PH12018500139B1|2018-07-09|
IN2014KN01712A|2015-10-23|
JP2017175629A|2017-09-28|
AU2020244522A1|2020-10-29|
US20200366936A1|2020-11-19|
CN107302704B|2020-07-14|
HK1246020A1|2018-08-31|
JP6133899B2|2017-05-24|
US20180227597A1|2018-08-09|
KR101760438B1|2017-07-31|
UA124087C2|2021-07-21|
PH12018500137B1|2018-07-09|
IL277277D0|2020-10-29|
KR20170087525A|2017-07-28|
CN107302363B|2020-07-14|
KR101951888B1|2019-02-26|
CN107302367A|2017-10-27|
CN107302364B|2021-01-19|
KR20190020196A|2019-02-27|
JP2015510319A|2015-04-02|
JP2021064974A|2021-04-22|
KR102217956B1|2021-02-19|
JP6826157B2|2021-02-03|
CN107302702A|2017-10-27|
CN107302704A|2017-10-27|
UA120434C2|2019-12-10|
HK1246052A1|2018-08-31|
EP2805419A1|2014-11-26|
CN107302366B|2020-07-14|
PH12018500136B1|2018-07-09|
US20170289574A1|2017-10-05|
EP2805419B1|2017-05-24|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题

JP4480119B2|2000-03-30|2010-06-16|キヤノン株式会社|Image processing apparatus and image processing method|
US7099387B2|2002-03-22|2006-08-29|Realnetorks, Inc.|Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses|
DE10218812A1|2002-04-26|2003-11-20|Siemens Ag|Generic stream description|
US6900748B2|2003-07-17|2005-05-31|Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V.|Method and apparatus for binarization and arithmetic coding of a data value|
US7599435B2|2004-01-30|2009-10-06|Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V.|Video frame encoding and decoding|
KR100648258B1|2004-08-02|2006-11-23|삼성전자주식회사|Context-based adaptive binary arithmetic decoder of pipeline structure for high speed decoding operation|
CN100403801C|2005-09-23|2008-07-16|联合信源数字音视频技术(北京)有限公司|Adaptive entropy coding/decoding method based on context|
US8848789B2|2006-03-27|2014-09-30|Qualcomm Incorporated|Method and system for coding and decoding information associated with video compression|
US20080162432A1|2006-12-29|2008-07-03|Wen-Shan Wang|Search table for unary k-th order exp-golomb decoder|
US8428133B2|2007-06-15|2013-04-23|Qualcomm Incorporated|Adaptive coding of video block prediction mode|
CN100562114C|2007-08-30|2009-11-18|上海交通大学|Video encoding/decoding method and decoding device|
US7777654B2|2007-10-16|2010-08-17|Industrial Technology Research Institute|System and method for context-based adaptive binary arithematic encoding and decoding|
EP2245596B1|2008-01-21|2017-07-12|Telefonaktiebolaget LM Ericsson |Prediction-based image processing|
US8179974B2|2008-05-02|2012-05-15|Microsoft Corporation|Multi-level representation of reordered transform coefficients|
SG171883A1|2008-12-03|2011-07-28|Nokia Corp|Switching between dct coefficient coding modes|
TWI387314B|2009-03-10|2013-02-21|Univ Nat Central|Image processing apparatus and method thereof|
CN101883280B|2009-05-07|2014-08-27|香港科技大学|Video encoding/decoding method and system capable of recovering noise|
JP5369973B2|2009-08-03|2013-12-18|日本電気株式会社|Data encoding / decoding method and apparatus|
JP2011114369A|2009-11-24|2011-06-09|Mitsubishi Electric Corp|Image encoding and decoding apparatus|
CN103119849B|2010-04-13|2017-06-16|弗劳恩霍夫应用研究促进协会|Probability interval partition encoding device and decoder|
KR101605163B1|2010-04-13|2016-03-22|지이 비디오 컴프레션, 엘엘씨|Coding of significance maps and transform coefficient blocks|
RS56577B1|2010-07-09|2018-02-28|Samsung Electronics Co Ltd|Method for entropy decoding transform coefficients|
US9591320B2|2010-07-15|2017-03-07|Texas Instruments Incorporated|Context and bypass encoding video|
US9106913B2|2011-03-08|2015-08-11|Qualcomm Incorporated|Coding of transform coefficients for video coding|
US20120230418A1|2011-03-08|2012-09-13|Qualcomm Incorporated|Coding of transform coefficients for video coding|
PL2805419T3|2012-01-20|2017-10-31|Ge Video Compression Llc|Transform coefficient coding and decoding|
WO2013145709A1|2012-03-26|2013-10-03|株式会社Jvcケンウッド|Image encoding device, image encoding method, image encoding program, transmission device, transmission method, transmission program, image decoding device, image decoding method, image decoding program, receiving device, receiving method, and receiving program|
JP2013223051A|2012-04-13|2013-10-28|Sharp Corp|Arithmetic decoding device, image decoding device, arithmetic coding device, and image coding device|US10091529B2|2010-07-09|2018-10-02|Samsung Electronics Co., Ltd.|Method and apparatus for entropy encoding/decoding a transform coefficient|
US9042440B2|2010-12-03|2015-05-26|Qualcomm Incorporated|Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding|
US20120230418A1|2011-03-08|2012-09-13|Qualcomm Incorporated|Coding of transform coefficients for video coding|
US9106913B2|2011-03-08|2015-08-11|Qualcomm Incorporated|Coding of transform coefficients for video coding|
US9491469B2|2011-06-28|2016-11-08|Qualcomm Incorporated|Coding of last significant transform coefficient|
KR20160034424A|2012-01-20|2016-03-29|소니 주식회사|Complexity reduction of significance map coding|
PL2805419T3|2012-01-20|2017-10-31|Ge Video Compression Llc|Transform coefficient coding and decoding|
US9936200B2|2013-04-12|2018-04-03|Qualcomm Incorporated|Rice parameter update for coefficient level coding in video coding process|
US10021419B2|2013-07-12|2018-07-10|Qualcomm Incorported|Rice parameter initialization for coefficient level coding in video coding process|
US8879858B1|2013-10-01|2014-11-04|Gopro, Inc.|Multi-channel bit packing engine|
FR3023112A1|2014-06-27|2016-01-01|Bcom|METHOD FOR ENCODING A DIGITAL IMAGE, DECODING METHOD, DEVICES AND COMPUTER PROGRAMS|
US9781424B2|2015-01-19|2017-10-03|Google Inc.|Efficient context handling in arithmetic coding|
US10616604B2|2015-09-01|2020-04-07|Qualcomm Incorporated|Coefficient level coding in video coding|
US10194147B2|2017-01-19|2019-01-29|Google Llc|DC coefficient sign coding scheme|
CN110622510A|2017-04-13|2019-12-27|Lg 电子株式会社|Method and apparatus for entropy encoding and decoding video signal|
US10523968B2|2017-09-18|2019-12-31|Google Llc|Coding of last significant coefficient flags|
EP3780607A4|2018-04-13|2021-02-17|Zhejiang University|Information maintaining encoding and decoding method and device|
US20200077117A1|2018-09-05|2020-03-05|Qualcomm Incorporated|Regular coded bin reduction for coefficient coding|
WO2020076028A1|2018-10-11|2020-04-16|엘지전자 주식회사|Transform coefficient coding method and device|
US10827192B2|2018-11-02|2020-11-03|Fungible, Inc.|Work allocation for JPEG accelerator|
US10827191B2|2018-11-02|2020-11-03|Fungible, Inc.|Parallel coding of syntax elements for JPEG accelerator|
US10931958B2|2018-11-02|2021-02-23|Fungible, Inc.|JPEG accelerator using last-non-zerosyntax element|
US10848775B2|2018-11-02|2020-11-24|Fungible, Inc.|Memory layout for JPEG accelerator|
KR20220008381A|2018-11-12|2022-01-20|삼성전자주식회사|Method and device for entropy encoding coefficient level, and method and device for entropy decoding coefficient level|
CN111436231A|2018-11-12|2020-07-21|Lg电子株式会社|Method and apparatus for coding transform coefficients based on high frequency zeroing|
US10904548B2|2018-12-06|2021-01-26|Qualcomm Incorporated|Coefficient processing for video encoding and decoding|
US11134273B2|2019-02-14|2021-09-28|Qualcomm Incorporated|Regular coded bin reduction for coefficient coding|
US20200329257A1|2019-04-15|2020-10-15|Tencent America LLC|Method and apparatus for video coding|
WO2021067278A1|2019-10-01|2021-04-08|Beijing Dajia Internet Informationtechnology Co., Ltd.|Methods and apparatus of residual and coefficient coding|
WO2021130071A1|2019-12-23|2021-07-01|Interdigital Vc Holdings France|Residual processing for video encoding and decoding|
法律状态:
2019-10-22| B06F| Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]|
2020-02-27| B25A| Requested transfer of rights approved|Owner name: GE VIDEO COMPRESSION, LLC (US) |
2020-04-07| B06U| Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]|
2021-05-25| B09A| Decision: intention to grant [chapter 9.1 patent gazette]|
2021-07-27| B16A| Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]|Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 21/01/2013, OBSERVADAS AS CONDICOES LEGAIS. |
优先权:
申请号 | 申请日 | 专利标题
US201261588846P| true| 2012-01-20|2012-01-20|
US61/588,846|2012-01-20|
PCT/EP2013/051053|WO2013107908A1|2012-01-20|2013-01-21|Transform coefficient coding|
[返回顶部]