+

HK1246017B - Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream - Google Patents

Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream Download PDF

Info

Publication number
HK1246017B
HK1246017B HK18105191.6A HK18105191A HK1246017B HK 1246017 B HK1246017 B HK 1246017B HK 18105191 A HK18105191 A HK 18105191A HK 1246017 B HK1246017 B HK 1246017B
Authority
HK
Hong Kong
Prior art keywords
transform coefficient
transform
level
symbols
data stream
Prior art date
Application number
HK18105191.6A
Other languages
Chinese (zh)
Other versions
HK1246017A1 (en
Inventor
Tung Nguyen
Heiner Kirchhoffer
Detlev Marpe
Original Assignee
Ge Video Compression, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ge Video Compression, Llc filed Critical Ge Video Compression, Llc
Publication of HK1246017A1 publication Critical patent/HK1246017A1/en
Publication of HK1246017B publication Critical patent/HK1246017B/en

Links

Description

从数据流解码具有变换系数级别的多个变换系数的装置Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream

本申请是申请号为201380015410.7的中国专利申请的分案申请。This application is a divisional application of the Chinese patent application with application number 201380015410.7.

技术领域Technical Field

本发明涉及变换系数(比如图片的变换系数区块的变换系数)编码。The present invention relates to encoding of transform coefficients, such as transform coefficients of a transform coefficient block of a picture.

背景技术Background Art

在基于区块的图像和/或视频编解码器中,图片或帧以区块为单位进行编码。其中,基于变换的编解码器使图片或帧的区块进行变换以便获得变换系数区块。例如,图片或帧可以预测地进行编码,其中预测残差以区块为单位进行变换编码,然后使用熵编码对由此产生的这些变换区块的变换系数的变换系数级别进行编码。In block-based image and/or video codecs, pictures or frames are encoded in units of blocks. Transform-based codecs, on the other hand, transform blocks of pictures or frames to obtain blocks of transform coefficients. For example, pictures or frames can be coded predictively, where the prediction residuals are transform coded in units of blocks, and the resulting transform coefficients of these transform blocks are then encoded at the transform coefficient level using entropy coding.

为了提高熵编码效率,使用上下文以便精确估计要编码的变换系数级别的符号的概率。然而,近年来,强加到图片和/或图像编解码器上的需求日益增长。除了亮度和色度分量之外,编解码器有时必须传递深度图、透明(transparity)值等。而且,变换系数尺寸在越来越大的区间内是可变的。由于这些多样性,编解码器具有越来越多的具有不同函数的不同上下文,以便根据已经编码的变换系数确定上下文。To improve entropy coding efficiency, context is used to accurately estimate the probability of the sign at the level of the transform coefficient to be encoded. However, in recent years, the requirements imposed on picture and/or image codecs have been increasing. In addition to the luma and chroma components, codecs sometimes have to transmit depth maps, transparency values, etc. Moreover, the transform coefficient sizes are variable over an increasingly large range. Due to this diversity, codecs have an increasing number of different contexts with different functions to determine the context based on the already encoded transform coefficients.

以更适度的复杂度实现高压缩率的不同可能性是尽可能精确地将符号化方案调整为系数的统计数字。然而,为了执行紧密适应实际统计数字,还强制考虑各种因素,由此需要大量不同的符号化方案。A different possibility to achieve high compression rates with more modest complexity is to adapt the symbolization scheme as accurately as possible to the statistics of the coefficients. However, in order to perform a close adaptation to the actual statistics, various factors must also be taken into account, thereby requiring a large number of different symbolization schemes.

因此,需要保持变换系数编码的复杂度低,然而同时保持实现高编码效率的可能性。Therefore, there is a need to keep the complexity of transform coefficient coding low, while at the same time maintaining the possibility to achieve high coding efficiency.

发明内容Summary of the Invention

本发明的目的是提供此变换系数编码方案。The object of the present invention is to provide such a transform coefficient coding scheme.

该目的通过待决独立权利要求的主题实现。This object is achieved by the subject matter of the pending independent claims.

根据本发明的一个方面,一种用于将具有变换系数级别的多个变换系数编码成流的装置包括:符号化器,被配置为:如果当前变换系数的变换系数级别在第一级别区间内,则根据第一符号化方案将当前变换系数映射到一个或多个符号的第一集合上,并且如果当前变换系数的变换系数级别在第二级别区间内,则根据第二符号化方案将当前变换系数映射到第一级别区间的最大级别根据第一符号化方案映射到其上的符号的第二集合以及依据第二级别区间内的当前变换系数的变换系数级别的位置的符号的第三集合的组合上,所述第二符号化方案是根据符号化参数可参数化的。进一步地,所述装置包括上下文自适应熵编码器,被配置为如果当前变换系数的变换系数级别在第一级别区间内,则将一个或多个符号的第一集合熵编码成数据流,并且如果当前变换系数的变换系数级别在第二级别区间内,则将一个或多个符号的第二集合熵编码成数据流,其中上下文自适应熵编码器被配置为,在将一个或多个符号的第二集合的至少一个预定符号熵编码成数据流的过程中,经由通过函数参数可参数化的函数依据先前编码的变换系数使用上下文,其中函数参数被设置为第一设定。进一步地,所述装置包括符号化参数确定器,被配置为如果当前变换系数的变换系数级别在第二级别区间内,则经由函数依据先前编码的变换系数确定用于映射到符号的第三集合上的符号化参数,其中函数参数被设置为第二设定。插入器被配置为如果当前变换系数的变换系数级别在第二级别区间内,则将符号的第三集合插入到数据流中。According to one aspect of the present invention, an apparatus for encoding a plurality of transform coefficients having transform coefficient levels into a stream includes: a symbolizer configured to: map the 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 is within a first level interval, and map the current transform coefficient to a maximum level of the first level interval according to a second symbolization scheme if the transform coefficient level of the current transform coefficient is within a second level interval, to a combination of a second set of symbols mapped thereto according to the first symbolization scheme and a third set of symbols according to the position of the transform coefficient level of the current transform coefficient within the second level interval, wherein the second symbolization scheme is parameterizable according to a symbolization parameter. Furthermore, the apparatus includes a context-adaptive entropy encoder configured to entropy encode a first set of one or more symbols into a data stream if a transform coefficient level of a current transform coefficient is within a first level interval, and to entropy encode a second set of one or more symbols into the data stream if a transform coefficient level of the current transform coefficient is within a second level interval, wherein the context-adaptive entropy encoder is configured to, during entropy encoding of at least one predetermined symbol of the second set of one or more symbols into the data stream, use a context based on previously encoded transform coefficients via a function parameterizable by a function parameter, wherein the function parameter is set to a first setting. Furthermore, the apparatus includes a symbolization parameter determiner configured to determine a symbolization parameter for mapping to a third set of symbols based on previously encoded transform coefficients via a function, wherein the function parameter is set to a second setting, if the transform coefficient level of the current transform coefficient is within the second level interval. An inserter is configured to insert the third set of symbols into the data stream if the transform coefficient level of the current transform coefficient is within the second level interval.

根据本发明的另一个方面,一种用于将不同变换区块的各自具有变换系数级别的多个变换系数编码成数据流的装置包括:符号化器,被配置为根据符号化方案针对当前变换系数将变换系数级别映射到符号的集合上,所述符号化方案是根据符号化参数可参数化的;插入器,被配置为将当前变换系数的符号的集合插入到数据流中;以及符号化参数确定器,被配置为,经由通过函数参数可参数化的函数依据先前处理的变换系数为当前变换系数确定符号化参数,其中插入器、符号化器和符号化参数确定器被配置为依次处理不同变换区块的变换系数,其中函数参数依据当前变换系数的变换区块的尺寸、当前变换系数的变换区块的信息分量类型和/或当前变换系数位于变换区块内的频率部分而改变。According to another aspect of the present invention, an apparatus for encoding a plurality of transform coefficients, each having a transform coefficient level, of different transform blocks into a data stream comprises: a symbolizer configured to map the transform coefficient level to a set of symbols for a current transform coefficient according to a symbolization scheme, wherein the symbolization scheme is parameterizable according to a symbolization parameter; an inserter configured to insert the set of symbols for the current transform coefficient into the data stream; and a symbolization parameter determiner configured to determine a symbolization parameter for the current transform coefficient according to previously processed transform coefficients via a function parameterizable by a function parameter, wherein the inserter, the symbolizer, and the symbolization parameter determiner are configured to process the transform coefficients of the different transform blocks in sequence, wherein the function parameter varies according to the size of the transform block of the current transform coefficient, the type of information component of the transform block of the current transform coefficient, and/or the frequency portion in which the current transform coefficient is located within the transform block.

本发明的思想是将相同函数用于上下文对先前编码/解码的变换系数的依赖性和符号化参数对先前编码/解码的变换系数的依赖性。在变换系数从空间上排列在变换区块中的情况下,甚至可以相对于变换区块的不同变换区块尺寸和/或频率部分使用利用具有不同函数参数的相同函数。该思想的另一个变型是,针对当前变换系数的变换区块的不同尺寸、当前变换系数的变换区块的不同信息分量类型和/或当前变换系数位于变换区块内的不同频率部分,将相同函数用于符号化参数对先前编码/解码的变换系数的依赖性。The idea of the present invention is to use the same function for both the dependency of the context on previously coded/decoded transform coefficients and the dependency of the symbolization parameters on previously coded/decoded transform coefficients. In the case where the transform coefficients are spatially arranged in a transform block, the same function with different function parameters can even be used for different transform block sizes and/or frequency fractions of the transform block. Another variation of this idea is to use the same function for the dependency of the symbolization parameters on previously coded/decoded transform coefficients for different transform block sizes of the current transform coefficient, different information component types of the transform block of the current transform coefficient, and/or different frequency fractions within the transform block where the current transform coefficient is located.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

本发明的详细且有利方面是独立权利要求的主题。而且,下面参照图描述本发明的优选实施例,其中:Detailed and advantageous aspects of the invention are the subject of the independent claims. Furthermore, preferred embodiments of the invention are described below with reference to the accompanying drawings, in which:

图1示出了根据本发明实施例的包括要编码的变换系数的变换系数区块的示意图并图示了可参数化函数共同用于上下文选择和符号化参数确定;1 shows a schematic diagram of a transform coefficient block including transform coefficients to be encoded according to an embodiment of the present invention and illustrates that a parameterizable function is commonly used for context selection and symbolization parameter determination;

图2示出了使用两个级别区间内的两个不同方案的变换系数级别的符号化概念的示意图;FIG2 is a schematic diagram showing the concept of symbolization of transform coefficient levels using two different schemes within two level intervals;

图3示出了在两个不同上下文的可能变换系数级别上限定的两条出现概率曲线的示意图;FIG3 is a schematic diagram showing two occurrence probability curves defined at possible transform coefficient levels for two different contexts;

图4示出了根据实施例的用于编码多个变换系数的装置的框图;FIG4 shows a block diagram of an apparatus for encoding a plurality of transform coefficients according to an embodiment;

图5A和图5B示出了根据不同实施例的产生的数据流结构的示意图;5A and 5B are schematic diagrams showing data stream structures generated according to different embodiments;

图6示出了根据实施例的图片编码器的框图;FIG6 shows a block diagram of a picture encoder according to an embodiment;

图7示出了根据实施例的用于解码多个变换系数的装置的框图;FIG7 shows a block diagram of an apparatus for decoding a plurality of transform coefficients according to an embodiment;

图8示出了根据实施例的图片解码器的框图;FIG8 shows a block diagram of a picture decoder according to an embodiment;

图9示出了根据实施例的变换系数区块的示意图以便图示扫描和模板;FIG9 shows a schematic diagram of a transform coefficient block according to an embodiment to illustrate scanning and templates;

图10示出了根据进一步实施例的用于解码多个变换系数的装置的框图;FIG10 shows a block diagram of an apparatus for decoding a plurality of transform coefficients according to a further embodiment;

图11A和图11B示出了组合整个区间范围的局部区间内的两个或三个不同方案的变换系数级别的符号化概念的示意图;11A and 11B are schematic diagrams showing a concept of symbolization of transform coefficient levels of two or three different schemes within a local interval of a combined entire interval range;

图12示出了根据进一步实施例的用于编码多个变换系数的装置的框图;以及FIG12 shows a block diagram of an apparatus for encoding a plurality of transform coefficients according to a further embodiment; and

图13示出了变换系数区块的示意图以便根据进一步实施例图示在子区块之间限定的子区块顺序之后的变换系数区块之间的扫描顺序,变换系数区块被划分为子区块,以便图示设计上下文选择和符号化参数确定的可参数化函数的另一个实施例。Figure 13 shows a schematic diagram of a transform coefficient block in order to illustrate the scanning order between the transform coefficient blocks after the sub-block order defined between the sub-blocks according to a further embodiment, and the transform coefficient block is divided into sub-blocks in order to illustrate another embodiment of the design of a parameterizable function for context selection and symbolization parameter determination.

具体实施方式DETAILED DESCRIPTION

针对下面的描述,注意,相同参考符号用于不止一个图中出现的元件的图。因此,此元件针对一个图的描述应同样适用于描述出现该元件的另一个图。For the following description, please note that the same reference numerals are used for the figures of elements that appear in more than one figure. Therefore, the description of this element for one figure should also be applicable to the description of another figure in which the element appears.

而且,下面提出的描述初步假设要编码的变换系数二维布置以便形成变换区块比如图的变换区块。然而,本申请不局限于图像和/或视频编码。相反,要编码的变换系数可选地可以是一维变换的变换系数,比如在音频编码等中使用的。Furthermore, the description presented below preliminarily assumes that the transform coefficients to be encoded are arranged two-dimensionally to form a transform block, such as a transform block of a graph. However, the present application is not limited to image and/or video encoding. Instead, the transform coefficients to be encoded may alternatively be transform coefficients of a one-dimensional transform, such as used in audio encoding, etc.

为了解释下面进一步描述的实施例面临的问题,以及下面进一步描述的实施例克服这些问题的方式,初步参照图1-3,其示出了变换区块的变换系数的实例及熵编码的一般方式,然后通过随后解释的实施例改善。In order to explain the problems faced by the embodiments further described below, and the ways in which the embodiments further described below overcome these problems, reference is initially made to Figures 1-3, which show examples of transform coefficients of a transform block and a general way of entropy coding, and then improved by the embodiments explained subsequently.

图1示例性地示出了变换系数12的区块10。在本实施例中,变换系数二维布置。特别地,变换系数示例性地示为规则地布置成列和行,但是也可能存在另一个二维布置。产生变换系数12或变换区块10的变换可以是DCT或将图片的(变换)区块,例如空间布置值的一些其他区块分解成不同空间频率的分量的一些其他变换。在图1的实例中,变换系数12二维布置成列i和行j以便对应于沿不同空间方向x,y比如彼此垂直的方向测量的频率fx(i),fy(j)的频率对(fx(i),fy(j)),其中fx/y(i)<fx/y(i+1)并且(i,j)是变换区块10中的各个分量的位置。FIG1 exemplarily shows a block 10 of transform coefficients 12. In this embodiment, the transform coefficients are arranged two-dimensionally. In particular, the transform coefficients are exemplarily shown as being regularly arranged in columns and rows, but another two-dimensional arrangement is also possible. The transform that produces the transform coefficients 12 or transform block 10 can be a DCT or some other transform that decomposes a (transform) block of a picture, such as some other block of spatially arranged values, into components of different spatial frequencies. In the example of FIG1 , the transform coefficients 12 are arranged two-dimensionally into columns i and rows j so as to correspond to frequency pairs (f x (i), f y (j)) of frequencies f x (i), f y (j) measured along different spatial directions x, y, such as directions perpendicular to each other, where f x/y (i) < f x/y (i+1) and (i, j) are the positions of the respective components in the transform block 10.

通常,对应于更低频率的变换系数12与对应于更高频率的变换系数相比具有更高变换系数级别。因此,通常,变换区块10的最高频率分量附近的许多变换系数被量化为零并且不必进行编码。相反,扫描顺序14可以在变换系数12之间限定,其按顺序(即(i,j)→k)将二维布置的变换系数12(i,j)一维布置成系数序列,使得变换系数级别很可能具有沿该顺序单调递减的趋势,即,系数k的系数级别很可能大于系数k+1的系数级别。Typically, transform coefficients 12 corresponding to lower frequencies have higher transform coefficient levels than transform coefficients corresponding to higher frequencies. Therefore, typically, many transform coefficients near the highest frequency component of the transform block 10 are quantized to zero and do not need to be encoded. Instead, a scan order 14 can be defined between the transform coefficients 12, which arranges the two-dimensionally arranged transform coefficients 12 (i, j) into a coefficient sequence in a one-dimensional manner in an order (i.e., (i, j) → k) such that the transform coefficient levels are likely to have a monotonically decreasing trend along the order, i.e., the coefficient level of coefficient k is likely to be greater than the coefficient level of coefficient k+1.

例如,锯齿或光栅扫描可以在变换系数12之间限定。根据扫描,区块10可以从例如DC分量变换系数(左上系数)至最高频率变换系数(右下系数)或从最高频率变换系数(右下系数)至DC分量变换系数(左上系数)对角线地扫描。可选地,在刚才提及的极端分量变换系数之间的变换系数可以使用逐行或逐列扫描。For example, a zigzag or raster scan may be defined between the transform coefficients 12. Depending on the scan, the block 10 may be scanned diagonally from, for example, the DC component transform coefficient (upper left coefficient) to the highest frequency transform coefficient (lower right coefficient) or from the highest frequency transform coefficient (lower right coefficient) to the DC component transform coefficient (upper left coefficient). Alternatively, the transform coefficients between the extreme component transform coefficients just mentioned may use row-by-row or column-by-column scanning.

如下面进一步所述,在编码变换区块的过程中,按照扫描顺序14的最后非零变换系数L的位置可以首先被编码成数据流,然后只编码从DC变换系数沿扫描路径14至最后非零变换系数L(任选在此方向上或在相反方向上)的变换系数。As further described below, during encoding of a transform block, the position of the last non-zero transform coefficient L according to the scan order 14 may be encoded into the data stream first, and then only the transform coefficients from the DC transform coefficient along the scan path 14 to the last non-zero transform coefficient L (optionally in this direction or in the opposite direction) may be encoded.

变换系数12具有可以有符号或无符号的变换系数级别。例如,变换系数12可能已经通过前述变换获得,随后量化到可能量化值的集合上,每个量化值都与各个变换系数级别相关联。用于量化变换系数,即将变换系数映射到变换系数级别上的量化函数可以是线性的或可以是非线性的。换句话说,每个变换系数12具有可能级别的区间范围之外的变换系数级别。图2例如示出了变换系数级别x限定在级别范围【0,2N-1】内的实例。根据可选实施例,区间范围可能不存在上限。而且,图2仅图示了正变换系数级别,但是其也可以有符号。关于变换系数12的符号及其编码,应该注意的是,不同可能性相对于下面阐述的所有实施例存在以便编码这些符号,并且所有可能性都应该在这些实施例的范围内。针对图2,这意味着变换系数级别的范围区间可能也不存在下限。The transform coefficients 12 have transform coefficient levels that may be signed or unsigned. For example, the transform coefficients 12 may have been obtained by the aforementioned transform and subsequently quantized to a set of possible quantization values, each quantization value being associated with a respective transform coefficient level. The quantization function used to quantize the transform coefficients, i.e., to map the transform coefficients to transform coefficient levels, may be linear or nonlinear. In other words, each transform coefficient 12 has a transform coefficient level outside the interval of possible levels. FIG2 illustrates, for example, an example in which the transform coefficient level x is limited to the level range [0, 2 N-1 ]. According to alternative embodiments, the interval may not have an upper limit. Furthermore, FIG2 only illustrates positive transform coefficient levels, which may also be signed. Regarding the signs of the transform coefficients 12 and their encoding, it should be noted that different possibilities exist for encoding these signs with respect to all embodiments described below, and all possibilities are intended to be within the scope of these embodiments. With respect to FIG2 , this means that the range of the transform coefficient levels may also have no lower limit.

在任何情况下,为了编码变换系数12的变换系数级别,使用不同符号化方案以便覆盖范围区间20的不同部分或区间16,18。更确切地说,第一级别区间16内的变换系数级别,等于第一级别区间16的最大级别的除外,可以根据第一符号化方案简单符号化到一个或多个符号的集合上。然而,位于第二级别区间18内的变换系数级别被映射到第一和第二符号化方案的符号集合的组合上。如稍后所注意的,第三和进一步区间因此可以遵循第二区间。In any case, to encode the transform coefficient levels of the transform coefficients 12, different symbolization schemes are used so as to cover different parts or intervals 16, 18 of the range interval 20. More precisely, the transform coefficient levels within the first level interval 16, except for the maximum level of the first level interval 16, can be simply symbolized onto a set of one or more symbols according to the first symbolization scheme. However, the transform coefficient levels located within the second level interval 18 are mapped onto a combination of the symbol sets of the first and second symbolization schemes. As will be noted later, the third and further intervals can thus follow the second interval.

如图2中所示,第二级别区间18位于第一级别区间16上方,但在第一级别区间16的最大级别处与后者重叠,在图2的实例中为2。针对位于第二级别区间18内的变换系数级别,将各个级别映射到对应于符合第一符号化方案的第一级别区间的最大级别的第一符号集合和依据符合第二符号化方案的第二级别区间内的变换系数级别的位置的第二符号集合的组合上。2 , the second level interval 18 is located above the first level interval 16 but overlaps the first level interval 16 at its maximum level, which in the example of FIG2 is 2. For the transform coefficient levels within the second level interval 18, each level is mapped to a combination of a first set of symbols corresponding to the maximum level of the first level interval in accordance with a first symbolization scheme and a second set of symbols according to the position of the transform coefficient level within the second level interval in accordance with a second symbolization scheme.

换句话说,第一符号化方案16将第一级别区间16覆盖的级别映射到第一符号序列的集合上。请注意,第一符号化方案的符号序列的集合内的符号序列的长度在二进制字母表的情况下并在仅覆盖两个变换系数级别比如0和1的第一级别区间16的情况下甚至可以仅为一个二进制符号。根据本申请的实施例,第一符号化方案是区间16内的级别的截断的一元二值化。在二进制字母表的情况下,符号可以被称为仓(bin)。In other words, the first symbolization scheme 16 maps the levels covered by the first level interval 16 onto a set of first symbol sequences. Note that the length of the symbol sequences within the set of symbol sequences of the first symbolization scheme can even be just one binary symbol in the case of a binary alphabet and in the case of a first level interval 16 covering only two transform coefficient levels, such as 0 and 1. According to an embodiment of the present application, the first symbolization scheme is a truncated unary binarization of the levels within the interval 16. In the case of a binary alphabet, the symbols can be referred to as bins.

如下面更详细所述,第二符号化方案将第二级别区间18内的级别映射到不同长度的第二符号序列的集合上,其中第二符号化方案是根据符号化参数可参数化的。第二符号化方案可以将区间18内的级别,即x-第一区间的最大级别,映射到具有莱斯参数(Riceparameter)的莱斯码(Rice code)上。As described in more detail below, a second symbolization scheme maps levels within a second level interval 18 to a set of second symbol sequences of different lengths, wherein the second symbolization scheme is parameterizable according to a symbolization parameter. The second symbolization scheme can map the levels within the interval 18, i.e., x minus the maximum level of the first interval, to a Rice code having a Rice parameter.

特别地,第二符号化方案18可以经配置使得符号化参数改变第二方案的符号序列的长度从第二级别区间18的下限增加至其上限的速率。显然,符号序列的增加长度在变换系数要编码成的数据流内消耗更多的数据速率。一般来说,如果某个级别映射到其上的符号序列的长度与当前要编码的变换系数级别假设各个级别的实际概率相关,则是优选的。自然地,后一说法对第二级别区间18外第一级别区间16内的级别有效或总体来说对第一符号化方案有效。In particular, the second symbolization scheme 18 can be configured such that the symbolization parameter changes at a rate at which the length of the symbol sequence of the second scheme increases from the lower limit of the second level interval 18 to its upper limit. Obviously, increasing the length of the symbol sequence consumes more data rate in the data stream into which the transform coefficients are encoded. Generally speaking, it is preferable if the length of the symbol sequence to which a certain level is mapped is correlated with the actual probabilities of the respective levels for the transform coefficient level hypothesis currently being encoded. Naturally, this latter statement is also valid for levels within the first level interval 16 outside the second level interval 18, or for the first symbolization scheme in general.

特别地,如图3所示,变换系数通常示出了出现某些变换系数级别的某些统计数字概率。图3示出了使各个变换系数级别实际由讨论中的变换系数假设的概率关联到每个可能变换系数级别x的图。更确切地说,图3示出了两个此相关性或概率曲线,即针对不同上下文的两个系数。也就是说,图3假设根据其上下文区别的变换系数比如相邻变换系数的变换系数值所确定的。根据上下文,图3示出了使概率值与每个变换系数级别相关联的概率曲线可以依据讨论中的变换系数的上下文。In particular, as shown in FIG3 , transform coefficients generally exhibit certain statistical probabilities of occurring at certain transform coefficient levels. FIG3 shows a graph associating the probability of each transform coefficient level being actually assumed by the transform coefficient in question to each possible transform coefficient level x. More specifically, FIG3 shows two such correlation or probability curves, namely, for two coefficients in different contexts. That is, FIG3 assumes that the transform coefficients are determined based on their contextual distinctions, such as the transform coefficient values of neighboring transform coefficients. Depending on the context, FIG3 shows that the probability curves associating probability values with each transform coefficient level can depend on the context of the transform coefficient in question.

根据下述实施例,第一符号化方案16的符号序列的符号以上下文自适应方式进行熵编码。也就是说,上下文与符号相关联,并且与所选上下文相关联的字母概率分布用于对各个符号进行熵编码。第二符号化方案的符号序列的符号直接或使用固定字母概率分布比如字母表的所有成员同样根据其同样可能的相同概率分布插入到数据流中。According to the embodiment described below, the symbols of the symbol sequence of the first symbolization scheme 16 are entropy coded in a context-adaptive manner. That is, a context is associated with the symbol, and the alphabet probability distribution associated with the selected context is used to entropy code each symbol. The symbols of the symbol sequence of the second symbolization scheme are inserted into the data stream directly or using a fixed alphabet probability distribution, such as one in which all members of the alphabet are equally likely according to the same probability distribution.

必须适当选择用于对第一符号化方案的符号进行熵编码的上下文以便允许所估计的字母概率分布很好的适应实际字母的统计数字。也就是说,每当编码/解码具有该上下文的符号时,熵编码方案可以被配置为更新上下文字母概率分布的当前估计,由此逼近实际字母统计数字。如果适当选择上下文,即足够精细,则该逼近更快,但没有太多不同的上下文以便避免符号与某些上下文过于罕见的相关联。The context used to entropy encode the symbols of the first symbolization scheme must be appropriately chosen to allow the estimated letter probability distribution to be well adapted to the actual letter statistics. That is, whenever a symbol with that context is encoded/decoded, the entropy encoding scheme can be configured to update the current estimate of the context letter probability distribution, thereby approximating the actual letter statistics. This approximation is faster if the context is chosen appropriately, i.e., fine enough, but without too many different contexts to avoid symbols being too rarely associated with certain contexts.

同样地,系数的符号化参数应该根据先前编码/解码的系数来选择以便尽可能近地逼近实际字母统计数字。太精细的多样化在这里不是关键问题,因为符号化参数根据先前编码/解码系数直接确定,但是该确定应紧密对应于第二区间18内的概率曲线对先前编码/解码系数的依赖性的相关性。Likewise, the symbolization parameters of the coefficients should be selected based on the coefficients of the previous encoding/decoding in order to approximate the actual letter statistics as closely as possible. Excessive diversification is not a critical issue here, since the symbolization parameters are determined directly based on the coefficients of the previous encoding/decoding, but this determination should closely correspond to the dependence of the probability curve in the second interval 18 on the coefficients of the previous encoding/decoding.

如下面更详细所述,下面进一步所述的编码变换系数的实施例的优点在于使用常用函数以便实现上下文自适应性和符号化参数确定。选择正确上下文如上所述是重要的以便实现高编码效率或压缩率,并且这同样适用于符号化参数。下面描述的实施例允许通过保持实例化对先前编码/解码系数的依赖性的开销较低来实现该目的。特别地,本申请的发明人发现一种发现一方面实现对先前编码/解码系数的依赖性与另一方面减少实例化各个上下文依赖性的专用逻辑的数量之间的良好折中。As described in more detail below, an advantage of the embodiments of encoding transform coefficients described further below is the use of common functions to achieve context adaptability and symbolization parameter determination. As previously mentioned, selecting the correct context is important for achieving high coding efficiency or compression, and the same applies to symbolization parameters. The embodiments described below allow this to be achieved by keeping the overhead of instantiating dependencies on previously encoded/decoded coefficients low. In particular, the inventors of the present application have discovered a good compromise between achieving dependencies on previously encoded/decoded coefficients on the one hand and reducing the amount of dedicated logic required to instantiate each context dependency on the other.

图4示出了根据本发明实施例的用于将具有变换系数级别的多个变换系数编码成数据流的装置。要注意,在以下描述中,假设符号字母表为二进制字母表,但是该假设如上所述对本发明来说不是关键的,因此所有解释都应解释为扩展到其他符号字母表来说同样是说明性的。FIG4 shows an apparatus for encoding a plurality of transform coefficients having transform coefficient levels into a data stream according to an embodiment of the present invention. Note that in the following description, it is assumed that the symbol alphabet is a binary alphabet, but this assumption is not critical to the present invention as described above, and therefore all explanations should be interpreted as being equally illustrative for other symbol alphabets.

图4的装置用于将在输入端30处输入的多个变换系数编码成数据流32。装置包括符号化器34、上下文自适应熵编码器36、符号化参数确定器38和插入器40。4 is used to encode a plurality of transform coefficients input at an input terminal 30 into a data stream 32. The apparatus includes a symbolizer 34, a context adaptive entropy encoder 36, a symbolization parameter determiner 38 and an inserter 40.

符号化器34具有连接至输入端30的输入并被配置为以上文针对图2描述的方式将当前输入其输入的当前变换系数映射到符号上。也就是说,符号化器34被配置为如果当前变换系数的变换系数级别x在第一级别区间16内,则根据第一符号化方案将当前变换系数映射到一个或多个符号的第一集合上,并且如果当前变换系数的变换系数级别在第二级别区间18内,则根据第二符号化方案将当前变换系数映射到第一级别区间16的最大级别根据第一符号化方案映射到其上的符号的第二集合以及依据第二级别区间18内的当前变换系数的变换系数级别的位置的符号的第三集合的组合上。换句话说,符号化器34被配置为,在当前变换系数的变换系数级别在第一级别区间16内而在第二级别区间外的情况下,将当前变换系数映射到第一符号化方案的第一符号序列上,在当前变换系数的变换系数级别在第二级别区间内的情况下,将当前变换系数映射到第一级别区间16的第一符号化方案的符号序列和第二符号化方案的符号序列的组合上。The symbolizer 34 has an input connected to the input terminal 30 and is configured to map a current transform coefficient currently input thereto into symbols in the manner described above with respect to FIG2 . That is, the symbolizer 34 is configured to map the current transform coefficient into a first set of one or more symbols according to a first symbolization scheme if the transform coefficient level x of the current transform coefficient is within the first level interval 16, and to map the current transform coefficient into a combination of a second set of symbols to which the maximum level of the first level interval 16 is mapped according to the first symbolization scheme and a third set of symbols that are dependent on the position of the transform coefficient level of the current transform coefficient within the second level interval 18 according to a second symbolization scheme if the transform coefficient level x of the current transform coefficient is within the first level interval 16 but outside the second level interval. In other words, the symbolizer 34 is configured to map the current transform coefficient into a first symbol sequence of the first symbolization scheme if the transform coefficient level of the current transform coefficient is within the first level interval 16 but outside the second level interval, and to map the current transform coefficient into a combination of the symbol sequence of the first symbolization scheme and the symbol sequence of the second symbolization scheme for the first level interval 16 if the transform coefficient level of the current transform coefficient is within the second level interval.

符号化器34具有两个输出端,即第一符号化方案的符号序列的输出端和第二符号化方案的符号序列的输出端。插入器40具有用于接收第二符号化方案的符号序列42的输入端并且上下文自适应熵编码器36具有用于接收第一符号化方案的符号序列44的输入端。进一步地,符号化器34具有用于从符号化参数确定器38的输出端接收符号化参数46的参数输入端。The symbolizer 34 has two outputs, namely an output for a symbol sequence of a first symbolization scheme and an output for a symbol sequence of a second symbolization scheme. The inserter 40 has an input for receiving a symbol sequence 42 of the second symbolization scheme, and the context adaptive entropy encoder 36 has an input for receiving a symbol sequence 44 of the first symbolization scheme. Furthermore, the symbolizer 34 has a parameter input for receiving a symbolization parameter 46 from the output of the symbolization parameter determiner 38.

上下文自适应熵编码器36被配置为将第一符号序列44的符号熵编码成数据流32。插入器40被配置成将符号序列42插入到数据流32中。The context adaptive entropy encoder 36 is configured to entropy encode the symbols of the first symbol sequence 44 into the data stream 32. The inserter 40 is configured to insert the symbol sequence 42 into the data stream 32.

一般来说,熵编码器36和插入器40依次扫描变换系数。显然,插入器40仅针对变换系数操作,其变换系数级别位于第二级别区间18内。然而,如下面更详细所述,存在限定熵编码器36和插入器40的操作之间的顺序的不同可能性。根据第一实施例,图4的编码装置被配置为在单次扫描中扫描变换系数,使得在熵编码器将与相同变换系数有关的第一符号序列44编码成数据流32之后并在熵编码器将与成一条直线的下一个变换系数有关的符号序列44熵编码成数据流32之前,插入器40将变换系数的符号序列42插入到数据流32中。In general, the entropy encoder 36 and the inserter 40 scan the transform coefficients sequentially. Obviously, the inserter 40 operates only on transform coefficients whose transform coefficient levels are within the second level interval 18. However, as described in more detail below, there are different possibilities for defining the order between the operations of the entropy encoder 36 and the inserter 40. According to a first embodiment, the encoding device of FIG4 is configured to scan the transform coefficients in a single scan, so that the inserter 40 inserts the symbol sequence 42 of the transform coefficients into the data stream 32 after the entropy encoder has encoded a first symbol sequence 44 associated with the same transform coefficient into the data stream 32 and before the entropy encoder has entropy encoded a symbol sequence 44 associated with the next transform coefficient in a line into the data stream 32.

根据可选实施例,装置使用两次扫描,其中在第一次扫描中,上下文自适应熵编码器36针对每个变换系数依次将符号序列44编码成数据流32,插入器40然后插入变换系数级别位于第二级别区间18内的变换系数的符号序列42。甚至可能存在更复杂的方案,例如,上下文自适应熵编码器36据此使用几次扫描以便将第一符号序列44的各个符号编码成数据流32,比如继第二扫描中的序列44的第二符号或仓之后的第一扫描中的第一符号或仓。According to an alternative embodiment, the apparatus uses two scans, wherein in a first scan the context adaptive entropy encoder 36 encodes the sequence of symbols 44 into the data stream 32 for each transform coefficient in turn, and the inserter 40 then inserts the sequence of symbols 42 for transform coefficients whose transform coefficient levels are within the second level interval 18. Even more complex schemes are possible, for example, whereby the context adaptive entropy encoder 36 uses several scans in order to encode individual symbols of the first sequence of symbols 44 into the data stream 32, such as the first symbol or bin of the first scan following the second symbol or bin of the sequence 44 in the second scan.

正如上面已经指出的,上下文自适应熵编码器36被配置为以上下文自适应的方式将符号序列44的至少一个预定符号熵编码成数据流32。例如,上下文自适应性用于符号序列44的所有符号。可选地,上下文自适应熵编码器36可以限制第一位置处与符号的上下文自适应性以及第一符号化方案的符号序列,或第一和第二,或第一至第三位置等。As already indicated above, the context adaptive entropy encoder 36 is configured to entropy encode at least one predetermined symbol of the symbol sequence 44 into the data stream 32 in a context adaptive manner. For example, the context adaptability is applied to all symbols of the symbol sequence 44. Alternatively, the context adaptive entropy encoder 36 may limit the context adaptability to the symbols at the first position and the symbol sequence of the first symbolization scheme, or the first and second, or the first to third positions, etc.

如上所述,对于上下文自适应性,编码器36通过存储并更新每个上下文的字母概率分布估计来管理上下文。每当编码某个上下文的符号时,当前存储的字母概率分布估计使用该符号的实际值更新,由此逼近此上下文的符号的实际字母统计数字。As described above, for context adaptability, encoder 36 manages contexts by storing and updating an estimate of the probability distribution of letters for each context. Whenever a symbol of a context is encoded, the currently stored estimate of the probability distribution of letters is updated with the actual value of that symbol, thereby approximating the actual letter statistics of the symbols of that context.

同样地,符号化参数确定器38被配置为依据先前编码的变换系数确定第二符号化方案的符号化参数46及其符号序列42。Likewise, the symbolization parameter determiner 38 is configured to determine the symbolization parameters 46 of the second symbolization scheme and its symbol sequence 42 as a function of previously encoded transform coefficients.

更确切地说,上下文自适应熵编码器36经配置使得其经由通过函数参数可参数化的函数依据先前编码的变换系数针对当前变换系数使用或选择上下文,其中函数参数被设置为第一设定,同时符号参数确定器38被配置为经由相同函数依据先前编码的变换系数确定符号化参数,所述函数参数被设置为第二设定。所述设定可以不同,但是然而,因为符号化参数确定器38和上下文自适应熵编码器36使用相同函数,所以可以减少逻辑开销。函数参数只可以在一方面熵编码器36的上下文选择与另一方面符号化参数确定器38的符号化参数确定之间不同。More specifically, the context adaptive entropy encoder 36 is configured to use or select a context for a current transform coefficient based on previously encoded transform coefficients via a function parameterizable by a function parameter, wherein the function parameter is set to a first setting, while the symbol parameter determiner 38 is configured to determine the symbolization parameter based on previously encoded transform coefficients via the same function, wherein the function parameter is set to a second setting. The settings may be different, but since the symbolization parameter determiner 38 and the context adaptive entropy encoder 36 use the same function, the logic overhead may be reduced. The function parameter may only differ between context selection by the entropy encoder 36 on the one hand and symbolization parameter determination by the symbolization parameter determiner 38 on the other hand.

就涉及对先前编码的变换系数的依赖性而言,应该注意,该依赖性局限于这些先前编码的变换系数已经被编码成数据流32的程度。例如,想象一下,此先前编码的变换系数位于第一级别区间18内,但其符号序列42尚未插入到数据流中。在此情况下,符号化参数确定器38和上下文自适应熵编码器36仅仅从此先前编码的变换系数的第一符号序列44了解到其位于第二级别区间18内。在此情况下,第一级别区间16的最大级别可以充当该先前编码的变换系数的代表。在这范围内,应广义理解“对先前编码的变换系数”的依赖性为包含“对关于先前编码成/插入到数据流32中的其他变换系数的信息”的依赖性。进一步地,在最后非零系数L位置之外的变换系数可以被推断为零。With respect to dependencies on previously encoded transform coefficients, it should be noted that such dependencies are limited to the extent that these previously encoded transform coefficients have already been encoded into the data stream 32. For example, imagine that this previously encoded transform coefficient lies within the first level interval 18, but its symbol sequence 42 has not yet been inserted into the data stream. In this case, the symbolization parameter determiner 38 and the context-adaptive entropy encoder 36 only know from the first symbol sequence 44 of this previously encoded transform coefficient that it lies within the second level interval 18. In this case, the maximum level of the first level interval 16 can serve as a representative of this previously encoded transform coefficient. In this context, dependencies on previously encoded transform coefficients should be broadly understood to include dependencies on information about other transform coefficients previously encoded/inserted into the data stream 32. Furthermore, transform coefficients outside the last non-zero coefficient L can be inferred to be zero.

为了完成图4的描述,熵编码36和插入器40的输出端被示为经由开关50连接至装置的共用输出端48,相同的连接性存在于一方面符号化参数确定器38和上下文自适应熵编码器36的先前插入/编码信息的输入端与另一方面熵编码器36和插入器40的输出端之间。开关50按照上文提及的顺序针对将一次、两次或多次扫描用于编码变换系数的各种可能性连接输出端48与熵编码器36和插入器40的输出端中的任意一个。4 , the outputs of the entropy coder 36 and the inserter 40 are shown connected to a common output 48 of the apparatus via a switch 50, the same connectivity existing between the inputs of the symbolization parameter determiner 38 and the previously inserted/encoded information of the context adaptive entropy coder 36 on the one hand and the outputs of the entropy coder 36 and the inserter 40 on the other hand. The switch 50 connects the output 48 to any one of the outputs of the entropy coder 36 and the inserter 40 for the various possibilities of using one, two or more scans for encoding the transform coefficients, in the order mentioned above.

为了更具体地解释可参数化函数针对上下文自适应熵编码器36和符号化参数确定器38的共同用途,参照图1。被熵编码器36和符号化参数确定器38共同使用的函数在图1中用52表示,即g(f(x))。该函数适用于先前编码的变换系数的集合,如上文所解释的,其可以限定为包含具有相对于当前系数的某空间关系的先前编码系数。该函数的特定实施例将在下面更详细阐述。一般来说,f是将先前编码系数级别的集合结合成标量的函数,其中g是检查标量位于哪个区间中的函数。换句话说,函数g(f(x))适用于先前编码的变换系数的集合x。在图1中,用小十字表示的变换系数12,例如当前变换系数,和带阴影线的变换系数12表示函数52适用的变换系数的集合x以便获得符号化参数46和对当前变换系数x的上下文进行索引的熵上下文索引54。如图1中所示,可以使用限定当前变换系数周围的相对空间布置的局部模板以便确定所有先前编码的变换系数范围之外的相关先前编码的变换系数的集合x。如在图1中可以看出,模板56可以包含当前变换系数下方和右边的紧密相邻的变换系数。通过如此选择模板,扫描410的一个对角线上的变换系数的符号序列42和44可以并行编码,因为对角线上的变换系数都没有落入相同对角线上的另一个变换系数的模板56中。自然地,可以发现类似模板用于逐行和逐列扫描。To more specifically explain the shared use of parameterizable functions for the context-adaptive entropy encoder 36 and the symbolization parameter determiner 38, reference is made to FIG. A function commonly used by the entropy encoder 36 and the symbolization parameter determiner 38 is indicated at 52 in FIG. 1 , namely, g(f(x)). This function is applied to a set of previously encoded transform coefficients, which, as explained above, can be defined as containing previously encoded coefficients having a certain spatial relationship relative to the current coefficient. Specific embodiments of this function will be described in more detail below. In general, f is a function that combines a set of previously encoded coefficient levels into a scalar, while g is a function that checks the interval within which the scalar lies. In other words, the function g(f(x)) is applied to a set x of previously encoded transform coefficients. In FIG. 1 , the transform coefficient 12 represented by a small cross, e.g., the current transform coefficient, and the shaded transform coefficient 12 indicate the set x of transform coefficients to which the function 52 is applied to obtain the symbolization parameters 46 and the entropy context index 54 that indexes the context of the current transform coefficient x. As shown in FIG1 , a local template defining the relative spatial arrangement around the current transform coefficient can be used to determine a set x of relevant previously coded transform coefficients that are outside the range of all previously coded transform coefficients. As can be seen in FIG1 , the template 56 can include the transform coefficients immediately below and to the right of the current transform coefficient. By selecting the template in this way, the symbol sequences 42 and 44 of the transform coefficients on one diagonal of the scan 410 can be encoded in parallel because no transform coefficient on the diagonal falls within the template 56 of another transform coefficient on the same diagonal. Naturally, similar templates can be found for row-by-row and column-by-column scanning.

为了提供共同使用的函数g(f(x))和对应函数参数的更具体实例,在下文中,使用各个公式提供这些实例。特别地,图4的装置可以经配置使得限定一方面先前编码的变换系数的集合x与另一方面对上下文和符号化参数46进行索引的上下文索引编号54之间的关系的函数52可以为:To provide more specific examples of commonly used functions g(f(x)) and corresponding function parameters, these examples are provided below using various formulas. In particular, the apparatus of FIG4 can be configured so that the function 52 defining the relationship between the set x of previously encoded transform coefficients on the one hand and the context index number 54 indexing the context and symbolization parameters 46 on the other hand can be:

g(f(x)),其中且g(f(x)), where

其中in

and

其中in

t和以及任选wi形成函数参数,t and, optionally , wi form the function parameters,

x={x1,...,xd},xi中i∈{1...d}表示先前解码的变换系数i,x={x 1 ,...,x d } , where x i∈{1...d} represents the previously decoded transform coefficient i,

wi是加权值,其中每一个可以等于一或不等于一,并且w i are weight values, each of which may be equal to one or not, and

h是常数或xi的函数。h is a constant or a function of xi .

因此,g(f(x))位于[0,df]内。如果g(f(x))用于限定与至少一个基本上下文索引偏移量数ctxbase一起总计的上下文索引偏移量数ctxoffset,则由此产生的上下文索引ctx=ctxbase+ctxoffset的值范围为[ctxbase;ctxbase+df]。每当提出上下文的不同集合用于对符号序列44的符号进行熵编码时,以不同方式选择ctxbase使得[ctxbase,1;ctxbase+df]不与[ctxbase,2;ctxbase+df]重叠。例如,针对以下项为真Therefore, g(f(x)) lies within [0, df ]. If g(f(x)) is used to define a context index offset number ctx offset that is summed with at least one base context index offset number ctx base , the resulting context index ctx = ctx base + ctx offset has a value range of [ctx base ; ctx base + df ]. Whenever a different set of contexts is proposed for entropy coding a symbol of the symbol sequence 44, ctx base is selected in a different manner so that [ctx base, 1 ; ctx base + df ] does not overlap with [ctx base, 2 ; ctx base + df ]. For example, the following is true:

·属于不同尺寸的变换区块的变换系数;Transform coefficients belonging to transform blocks of different sizes;

·属于不同信息分量类型比如深度、亮度、色度等的变换区块的变换系数;Transform coefficients of transform blocks belonging to different information component types such as depth, luma, chroma, etc.

·属于相同变换区块的不同频率部分的变换系数。• Transform coefficients of different frequency parts belonging to the same transform block.

如前所述,符号化参数可以是莱斯参数k。也就是说,区间16内的(绝对)级别,即X,其中X+M=x(其中M是区间16的最大级别,x是(绝对)变换系数级别),可以映射到具有前缀和后缀的仓串上,前缀是的一元码,后缀是X·2-k的余数的二进制码。As mentioned above, the symbolization parameter may be the Rice parameter k. That is, the (absolute) level in interval 16, i.e., X, where X+M=x (where M is the maximum level in interval 16 and x is the (absolute) transform coefficient level), may be mapped onto a bin string with a prefix and a suffix, the prefix being a unary code of and the suffix being a binary code of the remainder of X·2 -k .

df还可以形成函数参数的一部分。d也可以形成函数参数的一部分。d f can also form part of a function's arguments. d can also form part of a function's arguments.

比如上下文选择与符号化参数确定之间的函数参数的差只需要t、df(如果形成函数参数的一部分)、或d(如果形成函数参数的一部分)中的任意一个的一个差。For example, the difference in function parameters between context selection and symbolic parameter determination requires only a difference in either t, df (if forming part of the function parameters), or d (if forming part of the function parameters).

如上所述,索引i可以对模板56内的变换系数12进行索引。在各个模板位置位于变换区块外的情况下,xi可以设为零。进一步地,上下文自适应熵编码器36可以经配置使得来自先前编码的变换系数的上下文的依赖性经由函数:使得在变换系数级别在第一级别区间16内的情况下,xi等于先前编码的变换系数i的变换系数级别,并在先前编码的变换系数i的变换系数级别在第二级别区间18内的情况下等于第一级别区间16的最大级别,或者使得xi等于先前编码的变换系数i的变换系数级别,与先前编码的变换系数i的变换系数级别在第一或第二级别区间内无关。As described above, the index i may index the transform coefficient 12 within the template 56. In the case where the respective template position is outside the transform block, x i may be set to zero. Further, the context adaptive entropy encoder 36 may be configured such that the dependency of the context from the previously encoded transform coefficient is via a function such that x i is equal to the transform coefficient level of the previously encoded transform coefficient i if the transform coefficient level is within the first level interval 16 and equal to the maximum level of the first level interval 16 if the transform coefficient level of the previously encoded transform coefficient i is within the second level interval 18, or such that x i is equal to the transform coefficient level of the previously encoded transform coefficient i, regardless of whether the transform coefficient level of the previously encoded transform coefficient i is within the first or second level interval.

就涉及符号化参数确定器而言,同样可以经配置使得,在确定符号化参数的过程中,xi等于先前编码的变换系数i的变换系数级别,与先前编码的变换系数i的变换系数级别在第一或第二级别区间内无关。As far as the symbolization parameter determiner is concerned, it can also be configured so that, in the process of determining the symbolization parameter, x i is equal to the transform coefficient level of the previously encoded transform coefficient i, regardless of whether the transform coefficient level of the previously encoded transform coefficient i is within the first or second level interval.

装置还可以经配置使得适用于任何情况。The device can also be configured to be suitable for any situation.

装置还可以经配置使得h=|xi|-t。The apparatus may also be configured such that h = | xi | - t.

在进一步实施例中,装置可以被配置为依据所述变换系数相对于当前变换系数的相对空间布置从空间上确定先前编码的变换系数,即基于当前变换系数的位置周围的模板。In a further embodiment, the apparatus may be configured to spatially determine previously coded transform coefficients in dependence on the relative spatial arrangement of said transform coefficients with respect to the current transform coefficient, ie based on a template around the position of the current transform coefficient.

装置还可以被配置为沿预定扫描顺序14确定变换系数区块10的变换系数之中的最后非零变换系数L的位置,并将关于位置的信息插入到数据流32中,其中多个变换系数包含从最后非零变换系数L至预定扫描顺序的开始的变换系数,即DC分量变换系数。The device can also be configured to determine the position of the last non-zero transform coefficient L among the transform coefficients of the transform coefficient block 10 along a predetermined scanning order 14, and insert information about the position into the data stream 32, wherein the multiple transform coefficients include the transform coefficients from the last non-zero transform coefficient L to the beginning of the predetermined scanning order, i.e., the DC component transform coefficient.

在进一步实施例中,符号化器34可以被配置为使用用于符号化最后变换系数L的修改后的第一符号化方案。根据修改后的第一符号化方案,仅可以映射第一级别区间16内的非零变换系数级别,同时推定零级别不应用于最后变换系数L。例如,截断的一元二值化的第一仓可以针对系数L抑制。In a further embodiment, the symbolizer 34 may be configured to use a modified first symbolization scheme for symbolizing the last transform coefficient L. According to the modified first symbolization scheme, only non-zero transform coefficient levels within the first level interval 16 may be mapped, while it is presumed that the zero level should not be applied to the last transform coefficient L. For example, a truncated unary binarized first bin may be suppressed for the coefficient L.

上下文自适应熵编码器可以被配置为使用独立于用于对不同于最后非零变换系数的一个或多个符号的第一集合进行熵编码的上下文的用于对最后非零变换系数的一个或多个符号的第一集合进行熵编码的上下文的单独集合。The context adaptive entropy encoder may be configured to use a separate set of contexts for entropy encoding the first set of one or more symbols of the last non-zero transform coefficients that is independent of the contexts for entropy encoding the first set of one or more symbols other than the last non-zero transform coefficients.

上下文自适应熵编码器可以按照从变换系数区块的最后非零变换系数至DC变换系数的相反扫描顺序遍历多个变换系数。这同样可以或不可以应用于第二符号序列42。The context adaptive entropy encoder may traverse the plurality of transform coefficients in a reverse scanning order from the last non-zero transform coefficient of the transform coefficient block to the DC transform coefficient. The same may or may not apply to the second symbol sequence 42.

装置还可以被配置为在两次扫描中将多个变换系数编码成数据流32,其中上下文自适应熵编码器36可以被配置为按照对应于变换系数的第一扫描的顺序将变换系数的符号序列44熵编码成数据流32,其中插入器40被配置为随后按照对应于在变换系数的第二扫描内出现具有第二级别区间18内的变换系数级别的变换系数的顺序将具有第二级别区间18内的变换系数级别的变换系数的符号序列42插入到数据流32中。由此产生的数据流32的实例在图5A中示出:其可以包括任选在关于L的位置的信息57中,继呈熵编码形式的符号序列42(呈上下文自适应熵编码形式的至少一些)之后以及进一步继直接或使用例如旁通模式(相等的概率字母)插入的符号序列44之后。The apparatus may also be configured to encode a plurality of transform coefficients into a data stream 32 in two scans, wherein the context adaptive entropy encoder 36 may be configured to entropy encode a sequence of symbols 44 of transform coefficients into the data stream 32 in an order corresponding to the first scan of the transform coefficients, wherein the inserter 40 is configured to subsequently insert the sequence of symbols 42 of transform coefficients having transform coefficient levels within the second level interval 18 into the data stream 32 in an order corresponding to the occurrence of transform coefficients having transform coefficient levels within the second level interval 18 within the second scan of the transform coefficients. An example of the resulting data stream 32 is shown in FIG5A : it may include, optionally in information 57 about the position of L, the sequence of symbols 42 in entropy coded form (at least some in context adaptive entropy coded form) and further followed by the sequence of symbols 44 inserted directly or using, for example, a bypass mode (equal probability alphabet).

在进一步实施例中,装置可以被配置为在一次扫描中依次将多个变换系数编码成数据流32,其中上下文自适应熵编码器36和插入器40被配置为,针对按照一次扫描的扫描顺序的每个变换系数,在继上下文自适应熵编码器将符号序列44熵编码成数据流32之后立即将具有第二级别区间18内的变换系数级别的各个变换系数的符号序列42插入到数据流32中,同时形成相同的变换系数映射到其上的组合,使得符号序列42被穿插入变换系数的符号序列44之间的数据流32。结果在图5B中示出。In a further embodiment, the apparatus may be configured to sequentially encode a plurality of transform coefficients into a data stream 32 in one scan, wherein the context adaptive entropy encoder 36 and the inserter 40 are configured to, for each transform coefficient in the scan order of one scan, immediately after the context adaptive entropy encoder entropy encodes the symbol sequence 44 into the data stream 32, insert the symbol sequence 42 of each transform coefficient having a transform coefficient level within the second level interval 18 into the data stream 32, while forming a combination onto which the same transform coefficient is mapped, so that the symbol sequence 42 is inserted into the data stream 32 between the symbol sequences 44 of the transform coefficients. The result is shown in FIG5B.

插入器40可以被配置为直接或使用利用固定概率分布的熵编码将符号序列42插入到数据流中。第一符号化方案可以是截断的一元二值化方案。第二符号化方案可以使得符号序列42为莱斯码。The inserter 40 may be configured to insert the symbol sequence 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 may be such that the symbol sequence 42 is a Rice code.

正如上面已经提到的,图4的实施例可以在图像/视频编码器内实现。此图像/视频编码器或图片编码器的实例在图6中示出。图片编码器一般用参考符号60表示并且包括例如对应于图4中所示的装置的装置62。编码器60被配置为在编码图片64的过程中,将图片64的区块66变换成然后由装置62处理的变换系数区块10以便按照变换区块10编码其多个变换系数。特别地,装置62逐变换区块地处理变换区块10。在这样做的过程中,装置62可以将函数52用于不同尺寸的区块10。例如,可以使用分层多树细分以便将其图片64或树根区块分解成不同尺寸的区块66。从将变换应用于这些区块66产生的变换区块10因此具有不同尺寸,并且虽然函数52可以针对不同区块尺寸通过使用不同函数参数的方式进行优化,但是提供一方面符号化参数和另一方面上下文索引的不同依赖性的整体开销保持较低。As mentioned above, the embodiment of FIG. 4 can be implemented within an image/video encoder. An example of such an image/video encoder or picture encoder is shown in FIG. The picture encoder is generally designated by reference numeral 60 and includes, for example, a device 62 corresponding to the device shown in FIG. 4 . Encoder 60 is configured to, during the encoding of a picture 64, transform a block 66 of picture 64 into a transform coefficient block 10, which is then processed by device 62 to encode its plurality of transform coefficients per transform block 10. Specifically, device 62 processes transform block 10 on a transform block-by-transform block basis. In doing so, device 62 can apply function 52 to blocks 10 of varying sizes. For example, a hierarchical multi-tree subdivision can be used to decompose picture 64 or a tree root block thereof into blocks 66 of varying sizes. The transform blocks 10 resulting from applying the transform to these blocks 66 thus have varying sizes, and while function 52 can be optimized for different block sizes by using different function parameters, the overall overhead of providing different dependencies between symbolization parameters, on the one hand, and context indices, on the other, remains low.

图7示出了用于从数据流32解码具有变换系数级别的多个变换系数的装置,其适合上文针对图4概述的装置。特别地,图7的装置包括上下文自适应熵解码器80、解符号化器82和提取器84以及符号化参数确定器86。上下文自适应熵解码器80被配置为针对当前变换系数,从数据流32对一个或多个符号的第一集合,即符号序列44,进行熵解码。解符号化器82被配置为根据第一符号化方案将一个或多个符号的第一集合,即符号序列44,映射到第一级别区间16内的变换系数级别上。更确切地说,上下文自适应熵解码器80和解符号化器82以交互的方式操作。解符号化器82经由符号从数据流32依次通过解码器80解码的信号88通知上下文自适应熵解码器80已经完成第一符号化方案的有效符号序列。FIG7 illustrates an apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream 32, which is adapted from the apparatus described above with respect to FIG4. Specifically, the apparatus of FIG7 includes a context-adaptive entropy decoder 80, a desymbolizer 82, an extractor 84, and a symbolization parameter determiner 86. The context-adaptive entropy decoder 80 is configured to entropy decode a first set of one or more symbols, i.e., a symbol sequence 44, from the data stream 32 for a current transform coefficient. The desymbolizer 82 is configured to map the first set of one or more symbols, i.e., the symbol sequence 44, to transform coefficient levels within a first level interval 16 according to a first symbolization scheme. More specifically, the context-adaptive entropy decoder 80 and the desymbolizer 82 operate in an interactive manner. The desymbolizer 82 notifies the context-adaptive entropy decoder 80 of the completion of a valid symbol sequence for the first symbolization scheme via a signal 88, which is obtained by sequentially decoding the symbols from the data stream 32 through the decoder 80.

提取器84被配置为如果一个或多个符号的第一集合(即符号序列44)根据第一符号化方案映射到其上的变换系数级别是对级别区间16的最大级别,则从数据流32提取符号的第二集合,即符号序列42。再者,解符号化器82和提取器84可以协同操作。也就是说,当完成第二符号化方案的有效符号序列之后,解符号化器82可以通过信号90通知提取器84,因此提取器84可以完成符号序列42的提取。Extractor 84 is configured to extract a second set of symbols, i.e., symbol sequence 42, from data stream 32 if the transform coefficient level to which the first set of one or more symbols, i.e., symbol sequence 44, is mapped according to the first symbolization scheme is the maximum level for level interval 16. Furthermore, desymbolizer 82 and extractor 84 may operate in coordination. That is, upon completion of a valid symbol sequence for the second symbolization scheme, desymbolizer 82 may notify extractor 84 via signal 90, so that extractor 84 may complete extraction of symbol sequence 42.

解符号化器82被配置为根据第二符号化方案将符号的第二集合,即符号序列42,映射到第二级别区间18内的位置上,该第二符号化方案,正如上面已经提到的,根据符号化参数46是可参数化的。The desymbolizer 82 is configured to map the second set of symbols, ie the symbol sequence 42 , to positions within the second level interval 18 according to a second symbolization scheme which, as already mentioned above, is parameterizable according to the symbolization parameter 46 .

上下文自适应熵解码器80被配置为,在对第一符号序列44的至少一个预定符号进行熵解码的过程中,经由函数使用依据先前解码的变换系数的上下文。符号化参数确定器86被配置为如果第一符号序列44根据第一符号化方案映射到其上的变换系数级别是第一级别区间16的最大级别,则经由函数52依据先前解码的变换系数确定符号化参数46。为此,熵解码器80和符号化参数确定器86的输入端经由开关92连接至解符号化器82的输出端,在此解符号化器82输出变换系数的值xiThe context-adaptive entropy decoder 80 is configured to use, via a function, a context based on previously decoded transform coefficients during entropy decoding of at least one predetermined symbol of the first symbol sequence 44. The symbolization parameter determiner 86 is configured to determine, via a function 52, a symbolization parameter 46 based on the previously decoded transform coefficients if the transform 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 this end, the inputs of the entropy decoder 80 and the symbolization parameter determiner 86 are connected via a switch 92 to the output of the desymbolizer 82, where the desymbolizer 82 outputs the value x i of the transform coefficient.

如上所述,对于上下文自适应性,解码器80通过存储并更新每个上下文的字母概率分布估计来管理上下文。每当解码某个上下文的符号时,使用该符号的实际/解码值来更新当前存储的字母概率分布估计,由此逼近此上下文的符号的实际字母统计数字。As described above, for context adaptability, decoder 80 manages contexts by storing and updating an estimate of the probability distribution of letters for each context. Whenever a symbol of a context is decoded, the actual/decoded value of that symbol is used to update the currently stored estimate of the probability distribution of letters, thereby approximating the actual letter statistics of the symbols of that context.

同样地,符号化参数确定器86被配置为依据先前解码的变换系数确定第二符号化方案的符号化参数46及其符号序列42。Likewise, the symbolization parameter determiner 86 is configured to determine the symbolization parameters 46 and the symbol sequence 42 of the second symbolization scheme as a function of previously decoded transform coefficients.

一般来说,上文针对编码描述的所有可能修改和进一步详情也可转移到图7的用于解码的装置。Generally speaking, all possible modifications and further details described above for encoding are also transferable to the apparatus for decoding of FIG. 7 .

图8示出了图6的补充。也就是说,图7的装置可以在图片解码器100内实现。图7的图片解码器100包括根据图7的装置,即装置102。图片解码器100被配置为,在解码或重构图片104的过程中,从变换系数区块10重新变换图片104的区块106,装置102从数据流32解码多个变换系数,该数据流32然后输入图片解码器100。特别地,装置102逐区块地处理变换区块10并且,正如上文已经表示的,可以将函数52共同用于不同尺寸的区块106。FIG8 shows a supplement to FIG6 . That is, the apparatus of FIG7 can be implemented within a picture decoder 100. The picture decoder 100 of FIG7 includes an apparatus according to FIG7 , namely apparatus 102. The picture decoder 100 is configured to, during decoding or reconstruction of the picture 104, retransform a block 106 of the picture 104 from a transform coefficient block 10. The apparatus 102 decodes a plurality of transform coefficients from a data stream 32, which is then input to the picture decoder 100. In particular, the apparatus 102 processes the transform block 10 block by block and, as already indicated above, can apply the function 52 to blocks 106 of different sizes.

应该注意,图片编码器和解码器60和100分别可以被配置为使用预测编码,其中将变换/重新转换应用于预测残差。而且,数据流32可以具有其中编码的细分信息,其向图片解码器100表明细分成分别进行变换的区块。It should be noted that the picture encoder and decoder 60 and 100, respectively, can be configured to use predictive coding, wherein the transform/retransform is applied to the prediction residual. Furthermore, the data stream 32 can have subdivision information encoded therein, which indicates to the picture decoder 100 the subdivision into blocks that are respectively transformed.

在下文中,换句话说,再次对上述实施例进行描述,并提供关于特定方面的更多详情,这些详情可以分别转移到上述实施例。也就是说,上述实施例与上下文建模的特定方式有关以便编码与变换系数有关的语法元素,比如在基于区块的图像和视频编码器中,并且其方面在下面进一步描述并突出显示。In other words, the above-described embodiment will be described again below, with further details provided on specific aspects that can be transferred to the above-described embodiment, respectively. That is, the above-described embodiment relates to a specific way of modeling context for encoding syntax elements related to transform coefficients, such as in block-based image and video encoders, and aspects thereof are further described and highlighted below.

实施例可以涉及数字信号处理的领域,并且特别地,涉及用于图像和视频解码器和编码器的方法和装置。特别地,根据所描述的实施例可以执行基于区块的图像和视频编解码器中的变换系数及其相关联语法元素的编码。在这个范围内,一些实施例表示用于编码与变换系数有关的语法元素的改进上下文建模,利用采用概率建模的熵编码器。进一步地,如上所述针对符号化参数可以进行用于剩余绝对变换系数的自适应二值化的莱斯参数的推导。统一、简化、友好的并行处理及上下文存储器的适度内存使用情况与简单的上下文建模相比是实施例的好处。Embodiments may relate to the field of digital signal processing, and in particular, to methods and apparatus for image and video decoders and encoders. In particular, according to the described embodiments, encoding of transform coefficients and their associated syntax elements in block-based image and video codecs may be performed. Within this scope, some embodiments represent improved context modeling for encoding syntax elements related to transform coefficients, utilizing an entropy encoder employing probabilistic modeling. Furthermore, a derivation of Rice parameters for adaptive binarization of residual absolute transform coefficients may be performed for the symbolization parameters as described above. Benefits of the embodiments are unification, simplification, parallel processing friendliness and moderate memory usage of the context memory compared to simple context modeling.

甚至换句话说,本发明的实施例可以揭示用于对与编码基于区块的图像和视频编码器中的变换系数有关的语法元素进行上下文模型选择的新方法。进一步地,描述了控制绝对变换系数的剩余值的二值化的符号化参数(比如莱斯参数)的推导规则。基本上,上述实施例使用规则的简单和共用集合对与编码变换系数有关的所有或部分语法元素进行上下文模型选择。In other words, embodiments of the present invention may disclose novel methods for context model selection for syntax elements associated with encoding transform coefficients in block-based image and video encoders. Further, derivation rules for symbolization parameters (such as Rice parameters) that control the binarization of residual values of absolute transform coefficients are described. Essentially, the above embodiments use a simple and common set of rules to perform context model selection for all or part of the syntax elements associated with encoding transform coefficients.

上文提及的第一符号化方案可以是截断的一元二值化。如果是这样的话,coeff_significant_flag、coeff_abs_greater_1及coeff_abs_greater_2可以被称为二进制语法元素或语法,其形成由变换系数的截断的一元二值化产生的第一、第二和第三仓。如上所述,截断的一元二值化只可以表示前缀,其在变换系数的级别落在第二级别区间18内的情况下通过后缀(其本身是莱斯码)来完成。另一个后缀可以属于指数哥伦布码(Exp-Golombcode)比如属于0阶,由此形成继图2中的第一和第二区间16和18之后的另一个级别区间(图2中未示出)。The first symbolization scheme mentioned above can be a truncated unary binarization. If so, coeff_significant_flag, coeff_abs_greater_1 and coeff_abs_greater_2 can be referred to as binary syntax elements or syntax, which form the first, second and third bins generated by the truncated unary binarization of the transform coefficients. As mentioned above, the truncated unary binarization can only represent a prefix, which is completed by a suffix (which itself is a Rice code) when the level of the transform coefficient falls within the second level interval 18. Another suffix can belong to an exponential Golomb code (Exp-Golombcode), such as order 0, thereby forming another level interval (not shown in Figure 2) following the first and second intervals 16 and 18 in Figure 2.

如上所述,可以基于如用于上下文模型选择的规则52的相同集合来进行用于剩余绝对变换系数的自适应二值化的莱斯参数的推导。As described above, the derivation of Rice parameters for adaptive binarization of the residual absolute transform coefficients can be performed based on the same set of rules 52 as used for context model selection.

针对扫描顺序,要注意,与上述描述相比同样可以改变。而且,不同区块尺寸和形状然而可以利用规则的相同集合,即利用相同函数52由图4和图6的装置支持。因此,可以实现对与编码变换系数有关的语法元素进行上下文模型选择的统一和简化方案,该上下文模型选择与推导符号化参数的和谐化组合。因此,上下文模型选择和符号化参数推导可以使用可以硬接线的相同逻辑、编程硬件或软件子程序等。Regarding the scanning order, it should be noted that this can also be varied compared to the above description. Furthermore, different block sizes and shapes can be supported by the apparatus of Figures 4 and 6 using the same set of rules, i.e., the same function 52. Thus, a unified and simplified approach to context model selection for syntax elements associated with coded transform coefficients can be achieved, with a harmonious combination of context model selection and symbolization parameter derivation. Thus, context model selection and symbolization parameter derivation can utilize the same logic, which can be hardwired, programmed hardware, or software subroutines.

为了实现符号化参数(比如莱斯参数)的上下文模型选择和推导的共同且简单的方案,如上所述可以评估区块或形状的已经编码的变换系数。为了评估已经编码的变换系数,在编码coeff_significant_flag(其是由二值化产生的第一仓)(其可以被称为编码有效图),以及变换系数级别的剩余绝对值的过程中的分离使用共用函数52执行。In order to achieve a common and simple solution for context model selection and derivation of symbolic parameters (such as Rice parameters), the already coded transform coefficients of the block or shape can be evaluated as described above. To evaluate the already coded transform coefficients, the separation in the process of encoding coeff_significant_flag (which is the first bin resulting from binarization) (which can be called a coded significance map) and the residual absolute value of the transform coefficient level is performed using a common function 52.

编码标志信息可以以交织的方式,即通过在编码绝对变换系数之后直接编码标志来进行。因此,整个变换系数可以只在一遍扫描中进行编码。可选地,标志信息可以在单独的扫描路径中进行编码,只要评估值f(x)只依赖绝对级别信息即可。The flag information can be encoded in an interleaved fashion, i.e., by encoding the flag directly after encoding the absolute transform coefficients. Thus, the entire transform coefficients can be encoded in a single scan pass. Alternatively, the flag information can be encoded in a separate scan pass, as long as the evaluation value f(x) depends only on the absolute level information.

如上所述,变换系数可以在单遍扫描中或在多遍扫描中进行编码。这可以通过截止集合c来启用或描述,该集合的系数ci表示在扫描i中处理的变换系数(第一和第二)符号化的符号数量。在空截止集合的情况下,可使用一次扫描。为了获得上下文模型选择和符号化参数推导的改善结果,截止集合c的第一截止参数c0应该大于1。As described above, the transform coefficients can be encoded in a single pass or in multiple passes. This can be enabled or described by a cutoff set c, whose coefficients c i represent the number of symbols for the transform coefficients (first and second) processed in scan i. In the case of an empty cutoff set, a single scan can be used. In order to obtain improved results for context model selection and symbolization parameter derivation, the first cutoff parameter c 0 of the cutoff set c should be greater than 1.

注意,截止集合c可以选择为c={c0;c1},其中c0=1且c1=3且|c|=2,其中c0表示第一扫描中包含的第一二值化的仓/符号的数量,c1=3表示第一二值化内的符号位置,第一二值化的符号覆盖的符号位置是第二扫描。当该方案编码第一遍扫描中的整个区块或形状的由二值化产生的第一仓,接下来编码第二遍扫描中的整个区块或形状的第二仓时,给出另一个实例,其中c0等于1,c1等于2,等等。Note that the cutoff set c can be chosen to be c = {c 0 ; c 1 }, where c 0 = 1 and c 1 = 3 and |c| = 2, where c 0 represents the number of bins/symbols of the first binarization contained in the first scan, c 1 = 3 represents the symbol positions within the first binarization, and the symbol positions covered by the symbols of the first binarization are the symbol positions of the second scan. Another example is given when the scheme encodes the first bin resulting from the binarization of the entire block or shape in the first pass, followed by encoding the second bin of the entire block or shape in the second pass, where c 0 equals 1, c 1 equals 2, and so on.

可以设计用于编码coeff_significant_flag,即由二值化过程产生的第一仓的局部模板56,如图1所示或如图9所示。作为统一和简化,局部模板56可以用于所有区块尺寸和形状。以xi的形式将整个变换系数输入到函数52,而不只是评估不等于零的变换系数的邻居数量。注意,可以固定局部模板56,即与当前变换系数的位置或扫描索引无关并与先前编码的变换系数无关,或自适应的,即依赖当前变换系数的位置或扫描索引和/或先前编码的变换系数,并且尺寸可以是固定的或自适应的。进一步地,当调整模板尺寸和形状从而允许覆盖区块或形状的所有扫描位置时,所有已经编码的变换系数或所有已经编码的变换系数直到特定限制用于评估过程。A local template 56 for encoding coeff_significant_flag, i.e., the first bin generated by the binarization process, can be designed as shown in FIG1 or as shown in FIG9 . For unification and simplification, the local template 56 can be used for all block sizes and shapes. Instead of evaluating only the number of neighbors of the transform coefficient that is not equal to zero, the entire transform coefficient is input to the function 52 in the form of x i . Note that the local template 56 can be fixed, i.e., independent of the position or scan index of the current transform coefficient and independent of the previously encoded transform coefficients, or adaptive, i.e., dependent on the position or scan index of the current transform coefficient and/or the previously encoded transform coefficients, and the size can be fixed or adaptive. Furthermore, when the template size and shape are adjusted to allow coverage of all scan positions of the block or shape, all already encoded transform coefficients or all already encoded transform coefficients up to a certain limit are used for the evaluation process.

作为实例,图9示出了可以用于对角线扫描14的8x8变换区块10的局部模板56的另一个实例。L表示最低有效扫描位置和标有x的扫描位置,x表示当前扫描位置。注意,对于其他扫描顺序,可以修改局部模板以符合扫描顺序14。例如,在正向对角线扫描的情况下,局部模板56可以沿对角线翻动。As an example, FIG9 shows another example of a local template 56 for an 8x8 transform block 10 that can be used for a diagonal scan 14. L represents the least significant scan position and the scan position is labeled x, where x represents the current scan position. Note that for other scan orders, the local template can be modified to conform to the scan order 14. For example, in the case of a forward diagonal scan, the local template 56 can be flipped diagonally.

上下文模型选择和符号化参数推导可以基于由已经编码的邻居xi产生的不同评估值f(x)。该评估针对具有由局部模板56覆盖的已经编码的邻居的所有扫描位置进行。局部模板56具有可变或固定尺寸并且可以依据扫描顺序。然而,模板形状和尺寸仅自适应扫描顺序,因此推导值f(x)与扫描顺序140和模板56的形状和尺寸无关。注意,通过设置模板56的尺寸和形状使得允许针对每个扫描位置覆盖区块10的所有扫描位置,从而实现当前区块或形状的所有已经编码的变换系数的使用。The context model selection and symbolization parameter derivation can be based on different evaluation values f(x) generated by the already coded neighbors x i . This evaluation is performed for all scan positions with already coded neighbors covered by the local template 56. The local template 56 can have a variable or fixed size and can depend on the scan order. However, the template shape and size are only adaptive to the scan order, so the derived value f(x) is independent of the scan order 140 and the shape and size of the template 56. Note that the size and shape of the template 56 are set so that all scan positions of the block 10 are covered for each scan position, thereby enabling the use of all already coded transform coefficients of the current block or shape.

如前所述,选择上下文模型索引和推导符号化参数使用评估值f(x)。一般来说,映射函数的一般集合将由此产生的评估值f(x)映射到上下文模型索引和特定符号化参数上。除此之外,额外信息作为变换区块或形状10内侧的当前变换系数的当前空间位置或最低有效扫描位置L可以用于选择与编码变换系数有关的上下文模型并且可以用于推导符号化参数。注意,可以组合由评估和空间位置产生的信息或最后信息,因此可能存在特定加权。在评估和推导过程之后,所有参数(上下文模型索引、符号化参数)都可用于编码整个变换系数级别或达到特定极限的变换系数。As mentioned before, the evaluation value f(x) is used for selecting the context model index and for deriving the symbolization parameters. In general, a general set of mapping functions maps the resulting evaluation value f(x) onto a context model index and specific symbolization parameters. In addition to this, additional information as the current spatial position or the least significant scan position L of the current transform coefficient inside the transform block or shape 10 can be used to select the context model relevant for encoding the transform coefficient and can be used to derive the symbolization parameters. Note that the information or the last information resulting from the evaluation and the spatial position can be combined, so there may be a specific weighting. After the evaluation and derivation process, all parameters (context model index, symbolization parameters) can be used to encode the entire transform coefficient level or the transform coefficients up to a certain limit.

作为所呈现的发明的实例配置,截止设置尺寸为空。这意味着,在沿扫描顺序处理接下来的变换系数之前,完全传输每个变换系数。As an example configuration of the presented invention, the cutoff setting size is null. This means that each transform coefficient is completely transmitted before the next transform coefficient is processed in scan order.

评估值f(x)可以由局部模板56覆盖的已经编码的邻居xi的评估产生。特定映射函数ft(x)将输入矢量映射到用于选择上下文模型和莱斯参数的评估值。输入矢量x可以由局部模板56覆盖的邻居的变换系数值xi组成并依据交织方案。例如,如果截止集合c为空并且标志在单独一遍扫描中进行编码,则矢量x仅由绝对变换系数xi组成。一般来说,输入矢量x的值可以有符号或无符号。映射函数可以利用尺寸d的输入矢量x建立如下(假设t作为常数输入)。The evaluation value f(x) can be generated by the evaluation of the already encoded neighbors x i covered by the local template 56. A specific mapping function ft (x) maps the input vector to an evaluation value for selecting a context model and Rice parameters. The input vector x can be composed of the transform coefficient values xi of the neighbors covered by the local template 56 and according to the interleaving scheme. For example, if the cutoff set c is empty and the flag is encoded in a single pass scan, the vector x consists only of the absolute transform coefficients xi . In general, the values of the input vector x can be signed or unsigned. The mapping function can be established as follows using an input vector x of size d (assuming t is input as a constant).

更具体地,映射函数ft(x)可以利用尺寸d的输入矢量x定义如下(假设t作为常数输入)。More specifically, the mapping function ft (x) can be defined using an input vector x of size d as follows (assuming t is input as a constant).

也就是说,gt(xi)可以是(|xi|-t)。在后一个公式中,函数δ定义如下(假设t作为常数输入)。That is, g t ( xi ) can be (| xi |-t). In the latter formula, the function δ is defined as follows (assuming t is input as a constant).

另一种评估值是大于或小于特定值t的相邻绝对变换系数级别的数量,定义如下。Another evaluation value is the number of adjacent absolute transform coefficient levels that are greater or less than a certain value t, defined as follows.

注意,对于这两种评估值,额外的加权因子控制特定邻近的重要性是可能的。例如,加权因子wi对具有更短空间距离的邻居来说比对具有更大空间距离的邻居来说更高。进一步地,当将所有wi设为1时,忽略加权。Note that for both evaluation values, additional weighting factors are possible to control the importance of specific neighbors. For example, the weighting factor wi can be higher for neighbors with shorter spatial distances than for neighbors with greater spatial distances. Furthermore, when all wi are set to 1, weighting is ignored.

作为所呈现的发明的实例配置,f0、f1、f2和f3是评估值,其中{0,1,2,3}和δ(xi)的各个t如(1)定义。对于该实例,f0用于推导第一仓的上下文索引,f1用于第二仓,f2用于第三仓,并且f3用于莱斯参数。在另一个实例配置中,f0用于对第一仓进行上下文模型选择,同时f1用来对第二仓、第三仓和莱斯参数进行上下文模型选择。这里,莱斯参数充当同样用于其他符号化参数的代表。As an example configuration of the invention presented, f 0 , f 1 , f 2 and f 3 are evaluation values, where {0, 1, 2, 3} and the respective t of δ( xi ) are defined as in (1). For this example, f 0 is used to derive the context index for the first bin, f 1 is used for the second bin, f 2 is used for the third bin, and f 3 is used for the Ricean parameters. In another example configuration, f 0 is used for context model selection for the first bin, while f 1 is used for context model selection for the second bin, the third bin, and the Ricean parameters. Here, the Ricean parameters serve as a proxy for the other symbolization parameters as well.

对熵编码过程中的所有语法元素或仓索引以及符号化参数进行上下文模型选择通过采用评估值f(x)而使用相同的逻辑。一般来说,特定评估值f(x)通过另一个映射函数g(x,n)映射到上下文模型索引或符号化参数。特定映射函数定义如下,其中d作为输入矢量n的尺寸。The same logic is used for context model selection for all syntax elements or bin indices and symbolic parameters during entropy coding, using the evaluation value f(x). In general, a particular evaluation value f(x) is mapped to a context model index or symbolic parameter using another mapping function g(x,n). The specific mapping function is defined as follows, where d is the size of the input vector n.

针对该映射,函数δ(x,n)可以定义如下。For this mapping, the function δ(x,n) can be defined as follows.

输入矢量n的尺寸d和矢量n的值可能是可变的并依据语法元素或仓索引。进一步地,变换区块或形状内侧的空间位置可以用于使所选的上下文模型索引相加或相减(或移动)。The size d of the input vector n and the values of the vector n may be variable and depend on syntax elements or bin indices.Furthermore, the spatial position inside the transform block or shape may be used to add or subtract (or shift) the selected context model index.

当编码/解码的变换系数时,在对其进行扫描的过程中,第一扫描位置可以是当应用从DC指向最高频率的图1的扫描方向时的最后扫描位置L。也就是说,用于遍历系数以便对其进行编码/解码的扫描中的至少第一扫描可以从系数L指向DC。对于该扫描位置L,第一仓索引可以忽略,因为最后信息已经表明该扫描位置由不等于零的变换系数组成。对于该扫描位置,单独的上下文模型索引可以用于编码由变换系数的二值化产生的第二仓和第三仓。When encoding/decoding transform coefficients, in the process of scanning them, the first scanning position can be the last scanning position L when the scanning direction of Figure 1 pointing from DC to the highest frequency is applied. That is, at least the first scan in the scan for traversing the coefficients for encoding/decoding them can be directed from coefficient L to DC. For this scanning position L, the first bin index can be ignored because the last information already indicates that the scanning position consists of transform coefficients that are not equal to zero. For this scanning position, a separate context model index can be used to encode the second bin and the third bin generated by the binarization of the transform coefficients.

作为本发明的实例配置,由此产生的评估值f0与输入矢量n={1,2,3,4,5}一起被用作输入,并且由此产生的值是第一仓的上下文模型索引。注意,在评估值等于零的情况下,上下文索引为零。相同的方案运用评估值f1和输入矢量n={1,2,3,4}并且由此产生的值为二值化的第二仓和第三仓的上下文模型索引。对于莱斯参数,使用f3和n={0,5,19}。注意,最大莱斯参数为3,因此通过所呈现的发明不对与最先进技术相比最大的莱斯参数进行改变。可选地,f1可以用于推导莱斯参数。对于此配置,输入矢量应该修改为n={3,9,21}。注意,规则的底层集合对所有语法元素或仓索引以及莱斯参数来说是相同的,只有参数或阈值集合(输入矢量n)不同。进一步地,依据当前扫描位置的对角线,可以修改上下文模型索引,如前所述,通过使特定量相加或相减。对此的等效描述是选择另一个不相交的上下文模型集合。在实例实现中,如果当前扫描位置位于前两条对角线上,则由此产生的用于第一仓的上下文模型索引移动2*|ctx0|。如果当前扫描位置位于第三和第四对角线上,则用于第一仓的上下文模型索引移动|ctx0|,其中|ctx0|是由关于产生不相交的上下文模型集合的评估值的推导基础产生的最大上下文模型的数量。该概念仅用于亮度平面以便实例实现,同时在色度避免上下文稀释的情况下(即,没有利用自适应上下文模型编码足够的仓并且统计数字不能被上下文模型跟踪)没有添加另一个偏移量。相同的技术可以应用于第二仓和第三仓的上下文模型索引。这里,在所呈现的发明的实例配置中,阈值对角线为3和10。再者,该技术仅应用于亮度信号。注意,还可以将该技术扩展到色度信号。进一步地,注意,依据对角线的额外索引偏移量可以建立如下。As an example configuration of the present invention, the resulting evaluation value f 0 is used as input together with the input vector n = {1, 2, 3, 4, 5}, and the resulting value is the context model index of the first bin. Note that when the evaluation value is equal to zero, the context index is zero. The same scheme uses the evaluation value f 1 and the input vector n = {1, 2, 3, 4} and the resulting values are the context model indices of the binarized second and third bins. For the Rice parameters, f 3 and n = {0, 5, 19} are used. Note that the maximum Rice parameter is 3, so the maximum Rice parameter is not changed compared to the state-of-the-art technology by the presented invention. Optionally, f 1 can be used to derive Rice parameters. For this configuration, the input vector should be modified to n = {3, 9, 21}. Note that the underlying set of rules is the same for all syntax elements or bin indices and Rice parameters, only the parameter or threshold set (input vector n) is different. Further, depending on the diagonal of the current scan position, the context model index can be modified, as described above, by adding or subtracting specific amounts. An equivalent description of this is to select another non-overlapping context model set. In the example implementation, if the current scan position is on the first two diagonals, the resulting context model index for the first bin is shifted by 2*|ctx0|. If the current scan position is on the third and fourth diagonals, the context model index for the first bin is shifted by |ctx0|, where |ctx0| is the maximum number of context models generated by the derivation basis for the evaluation value of generating a non-overlapping context model set. This concept is only used for the luma plane for example implementation, while no further offset is added in the case of chroma to avoid context dilution (i.e., not enough bins are encoded using the adaptive context model and the statistics cannot be tracked by the context model). The same technique can be applied to the context model indexes for the second and third bins. Here, in the example configuration of the invention presented, the threshold diagonals are 3 and 10. Again, this technique is only applied to luma signals. Note that this technique can also be extended to chroma signals. Further, note that additional index offsets based on diagonals can be established as follows.

cixoffset=dj*idxinc cix offset = d j * idx inc

在该公式中,dj表示当前扫描位置的对角线的加权,idxinc表示步长。进一步地,注意,偏移量索引可以反向以便用于实际实现。对于所陈述的实例实现,反向可以将额外索引设为零,如果当前扫描位置位于第一和第二对角线上,则针对第三和第四对角线移动|ctx0|,否则移动2*|ctx0|。通过使用给出的公式,当将d0和d1设为2,将d3和d4设为1并将所有剩余的对角线因子设为0时,实现针对实例配置的相同行为。In this formula, dj represents the weight of the diagonal for the current scan position, and idxinc represents the step size. Furthermore, note that the offset indices can be reversed for practical implementations. For the example implementation presented, the inversion can be done by setting the extra indices to zero, shifting the third and fourth diagonals by |ctx0| if the current scan position is on the first and second diagonals, and by 2*|ctx0| otherwise. Using the given formula, the same behavior for the example configuration is achieved when d0 and d1 are set to 2, d3 and d4 are set to 1, and all remaining diagonal factors are set to 0.

即使上下文模型索引对于不同区块尺寸或平面类型(例如,亮度和色度)来说是相同的,基本上下文模型索引也可以不同,从而导致上下文模型的集合不同。例如,可以使用在亮度方面大于8x8的区块尺寸的相同基本索引,同时基本索引在亮度方面对4x4和8x8来说可以是不同的。为了获得有意义数量的上下文模型,该基本索引然而可以以不同方式进行分组。Even if the context model index is the same for different block sizes or plane types (e.g., luma and chroma), the base context model index can be different, resulting in a different set of context models. For example, the same base index can be used for block sizes larger than 8x8 in luma, while the base index can be different for 4x4 and 8x8 in luma. To obtain a meaningful number of context models, the base index can however be grouped in different ways.

作为实例配置,用于4x4区块和剩余区块的上下文模型在亮度方面可以不同,同时相同的基本索引可以用于色度信号。在另一个实例中,相同的基本索引可以用于亮度和色度信号这两者,同时用于亮度和色度的上下文模型是不同的。此外,用于第二仓和第三仓的上下文模型可以被分组,从而导致更少的上下文内存。如果用于第二仓和第三仓的上下文模型索引推导相同,则相同的上下文模型可以用于传输第二仓和第三仓。通过正确组合基本索引分组和加权,可以实现有意义数量的上下文模型,从而节省上下文内存。As an example configuration, the context models for the 4x4 block and the residual block can be different for luma, while the same base index can be used for chroma signals. In another example, the same base index can be used for both luma and chroma signals, while the context models for luma and chroma are different. In addition, the context models for the second and third bins can be grouped, resulting in less context memory. If the context model index derivation for the second and third bins is the same, the same context model can be used to transmit the second and third bins. By properly combining base index grouping and weighting, a meaningful number of context models can be achieved, saving context memory.

在本发明的优选实施例中,截止集合c为空。也就是说,只使用一次扫描。对于该优选实施例,标志信息可以使用相同相同的一遍扫描进行交织或可以在单独的一遍扫描中进行编码。在另一个优选实施例中,集合尺寸c等于1和c0,截止集合c的第一且仅值等于3。这对应于上文通过使用两次扫描示出的实例。在该优选实施例中,上下文模型选择可以针对由截断的一元二值化产生的全部三个仓进行,同时符号化参数推导比如莱斯参数选择可以使用相同的函数52进行。In a preferred embodiment of the present invention, the cutoff set c is empty. That is, only one scan is used. For this preferred embodiment, the flag information can be interleaved using the same scan or can be encoded in a separate scan. In another preferred embodiment, the set size c is equal to 1 and c 0 , and the first and only value of the cutoff set c is equal to 3. This corresponds to the example shown above by using two scans. In this preferred embodiment, context model selection can be performed for all three bins produced by the truncated unary binarization, while symbolization parameter derivation such as Rice parameter selection can be performed using the same function 52.

在优选实施例中,局部模板的尺寸为5。局部模板的尺寸可以为4。对于该优选实施例,与图8相比,可以除去在垂直方向上具有为2的空间距离的邻居。在另一个优选实施例中,模板尺寸是自适应的并被调整为扫描顺序。对于该优选实施例,之前在处理步骤中编码的邻居不包括在模板中,仅如图1和图8中的情况。通过这样做,缩短了依赖或延迟,从而导致更高的处理顺序。在另一个优选实施例中,模板尺寸和形状被调整为足够大(例如,当前区块或形状的相同区块或形状尺寸)。在另一个优选实施例中,可以使用两个局部模板并且其可以通过加权因子组合。对于该优选实施例,局部模板在尺寸和形状方面可以不同。In a preferred embodiment, the size of the local template is 5. The size of the local template can be 4. For this preferred embodiment, compared to Figure 8, neighbors with a spatial distance of 2 in the vertical direction can be removed. In another preferred embodiment, the template size is adaptive and adjusted to the scanning order. For this preferred embodiment, neighbors previously encoded in the processing step are not included in the template, only as in the cases of Figures 1 and 8. By doing so, dependencies or delays are shortened, resulting in a higher processing order. In another preferred embodiment, the template size and shape are adjusted to be large enough (for example, the same block or shape size of the current block or shape). In another preferred embodiment, two local templates can be used and they can be combined by weighting factors. For this preferred embodiment, the local templates can be different in size and shape.

在优选实施例中,f0可以用于选择用于第一仓的上下文模型索引并且f1用于第二仓、第三仓和莱斯参数。在该优选实施例中,输入矢量n={0,1,2,3,4,5}产生6个上下文模型。用于第二和第三仓索引的输入矢量n可以是相同的并且n={0,1,2,3,4},同时用于莱斯参数的输入矢量n可以为n={3,9,21}。此外,在优选实施例中,在其内可以使用单独的上下文集合的变换区块的前述频率部分可以由对角线(光栅)扫描的对角线(或线)的不相交的集合形成。例如,不同的上下文基本偏移量数对第一和第二对角线来说可以存在,当从DC分量看时对第二和第三对角线以及第四和第五对角线可以存在,使得在上下文不相交的集合内发生这些对角线中的系数的上下文选择。注意,第一对角线为1。对于第二和第三仓索引,位于[0,2]范围内的对角线具有加权因子2,位于[3,9]范围内的对角线具有加权因子1。在亮度信号的情况下使用这些额外的偏移量,同时色度的加权因子全部等于零。同样对于该优选实施例,用于第一扫描位置(其是最低有效扫描位置)的第二和第三仓索引的上下文模型与剩余的上下文模型分离。这意味着评估过程不可以选择该单独的上下文模型。In a preferred embodiment, f 0 can be used to select the context model index for the first bin and f 1 for the second bin, the third bin and the Rice parameter. In this preferred embodiment, the input vector n = {0, 1, 2, 3, 4, 5} generates 6 context models. The input vector n for the second and third bin indices can be the same and n = {0, 1, 2, 3, 4}, while the input vector n for the Rice parameter can be n = {3, 9, 21}. In addition, in a preferred embodiment, the aforementioned frequency portion of the transform block in which a separate context set can be used can be formed by a non-intersecting set of diagonals (or lines) scanned diagonally (raster). For example, different numbers of context base offsets can exist for the first and second diagonals, and can exist for the second and third diagonals and the fourth and fifth diagonals when viewed from the DC component, so that the context selection of the coefficients in these diagonals occurs within a non-intersecting set of contexts. Note that the first diagonal is 1. For the second and third bin indices, the diagonals in the range [0,2] have a weighting factor of 2, and the diagonals in the range [3,9] have a weighting factor of 1. These additional offsets are used in the case of the luma signal, while the weighting factors for the chroma are all equal to zero. Also for this preferred embodiment, the context models for the second and third bin indices for the first scan position (which is the least significant scan position) are separated from the remaining context models. This means that the evaluation process cannot select this separate context model.

在优选实施例中,4x4亮度区块或形状使用用于第一仓的上下文的单个集合,同时用于剩余区块尺寸或形状的上下文模型是相同的。在该优选实施例中,用于色度信号的区块尺寸或形状之间没有分离。在本发明的另一个优选实施例中,区块尺寸或形状之间没有分离,从而导致用于区块尺寸和形状的相同基本索引或上下文模型集合。注意,对于这两个优选实施例,上下文模型的不同集合用于亮度和色度信号。In a preferred embodiment, a 4x4 luma block or shape uses a single set of contexts for the first bin, while the context models for the remaining block sizes or shapes are the same. In this preferred embodiment, there is no separation between the block sizes or shapes used for the chroma signals. In another preferred embodiment of the present invention, there is no separation between the block sizes or shapes, resulting in the same base index or set of context models for both block sizes and shapes. Note that for these two preferred embodiments, different sets of context models are used for luma and chroma signals.

在下文中,示出了使用根据上述实施例的修改莱斯参数二值化,但没有上下文自适应熵编码的实施例。根据该可选编码方案,只使用莱斯二值化方案(任选添加指数哥伦布后缀)。因此,不需要自适应上下文模型来编码变换系数。对于该可选编码方案,莱斯参数推导针对上述实施例使用相同规则。In the following, an embodiment using modified Rice parameter binarization according to the above embodiment is shown, but without context adaptive entropy coding. According to this optional coding scheme, only the Rice binarization scheme is used (optionally adding an exponential Golomb suffix). Therefore, no adaptive context model is needed to encode the transform coefficients. For this optional coding scheme, the Rice parameter derivation uses the same rules for the above embodiment.

换句话说,为了降低复杂性和上下文内存并改善编码流水线的延迟,描述一种基于规则或逻辑的相同集合的可选编码方案。对于可选编码方案,禁止对由二值化产生的前三个仓进行上下文模型选择,并且由截断的一元二值化,即第一符号化方案产生的前三个仓可以利用固定相同的概率(即,利用0.5的概率)进行编码。可选地,省略截断的一元二值化方案并调整二值化方案的区间界限。在该使用过程中,莱斯区间,即区间18,的左侧界限为0而不是3(区间16消失)。用于该用途的右侧/上部界限可以不加修改或可以减去3。推导莱斯参数可以根据评估值并根据输入矢量n进行修改。In other words, in order to reduce complexity and context memory and improve the latency of the encoding pipeline, an optional encoding scheme based on the same set of rules or logic is described. For the optional encoding scheme, context model selection is prohibited for the first three bins produced by the binarization, and the first three bins produced by the truncated unary binarization, i.e., the first symbolization scheme, can be encoded with a fixed same probability (i.e., with a probability of 0.5). Optionally, the truncated unary binarization scheme is omitted and the interval limits of the binarization scheme are adjusted. In this use, the left limit of the Rice interval, i.e., interval 18, is 0 instead of 3 (interval 16 disappears). The right/upper limit used for this purpose can be left unchanged or can be subtracted by 3. The derived Rice parameters can be modified based on the evaluation value and based on the input vector n.

因此,根据刚才概述的修改实例,可以构造用于从数据流32解码不同变换区块的各自具有变换系数级别的多个变换系数的装置并且该装置如图10中所示并针对图10所述进行操作。Thus, according to the modified example just outlined, an apparatus for decoding a plurality of transform coefficients, each having a transform coefficient level, of different transform blocks from a data stream 32 may be constructed and operated as shown and described with respect to FIG. 10 .

图10的装置包括提取器120,被配置为从当前变换系数的数据流32中提取符号的集合或符号序列122。如上文针对图7的提取器84所述,执行该提取。The apparatus of Figure 10 comprises an extractor 120 configured to extract a set of symbols or a sequence of symbols 122 from the data stream 32 of the current transform coefficient. This extraction is performed as described above with respect to the extractor 84 of Figure 7 .

解符号化器124被配置为根据符号化方案将符号的集合122映射到当前变换系数的变换系数级别上,所述符号化方案是根据符号化参数可参数化的。该映射只可以使用可参数化符号化方案比如莱斯二值化,或者只可以使用该可参数化符号化方案作为当前变换系数的整体符号化的前缀或后缀。就图2而言,例如,可参数化符号化方案,即第二符号化方案,相对于第一符号化方案的符号序列形成后缀。The de-symbolizer 124 is configured to map the set of symbols 122 onto the transform coefficient levels of the current transform coefficient according to a symbolization scheme that is parameterizable according to a symbolization parameter. This mapping may only use a parameterizable symbolization scheme, such as Rice binarization, or may only use the parameterizable symbolization scheme as a prefix or suffix to the overall symbolization of the current transform coefficient. With respect to FIG. 2 , for example, the parameterizable symbolization scheme, i.e., the second symbolization scheme, forms a suffix relative to the symbol sequence of the first symbolization scheme.

为了呈现更多实例,参照图11A和图11B。根据图11A,将变换系数的区间范围20细分成三个区间16,18和126,一起覆盖区间范围20并按照各个更低区间的各个最大级别彼此重叠。如果系数级别x在最高区间126内,则整体符号化是符号化区间16内的级别的第一符号化方案128的符号序列44、形成继第一后缀之后的前缀的符号序列,即符号化区间18内的级别的第二符号化方案130的以及进一步继第二后缀之后的符号序列42,即符号化区间126内的级别的第三符号化方案134的符号序列132的组合。后者可以是指数哥伦布码比如阶0。如果系数级别x在中间区间18内(而不在区间126内),则整体符号化仅仅是继第一后缀42之后的前缀44的组合。如果系数级别x在最低区间16内(而不在区间18内),则整体符号化仅仅由前缀44组成。整体符号化经组成使得其是无前缀的。在没有第三符号化的情况下,根据图11A的符号化可以对应于图2的符号化。第三符号化方案134可以是哥伦布莱斯二值化。第二符号化方案130可以形成可参数化的符号化方案,但是其也可以是第一128。For further examples, refer to Figures 11A and 11B. According to Figure 11A, the range of transform coefficients 20 is subdivided into three ranges 16, 18, and 126, which together cover the range 20 and overlap at the maximum level of each lower range. If the coefficient level x is within the highest range 126, the overall symbolization is a combination of the symbol sequence 44 of the first symbolization scheme 128 symbolizing the levels within range 16, the symbol sequence forming a prefix following the first suffix, i.e., the second symbolization scheme 130 symbolizing the levels within range 18, and the symbol sequence 42 further following the second suffix, i.e., the third symbolization scheme 134 symbolizing the levels within range 126. The latter can be an Exponential Golomb code, such as order 0. If the coefficient level x is within the middle range 18 (but not within range 126), the overall symbolization is simply a combination of the prefix 44 following the first suffix 42. If the coefficient level x is within the lowest range 16 (but not within range 18), the overall symbolization consists solely of the prefix 44. The overall symbolization is composed so that it is prefix-free. Without the third symbolization, the symbolization according to FIG. 11A may correspond to the symbolization of FIG. 2 . The third symbolization scheme 134 may be a Columbine binarization. The second symbolization scheme 130 may form a parameterizable symbolization scheme, but it may also be the first 128.

可选整体符号化在图1中示出。这里,仅仅组合两个符号化方案。与图11A相比,留下了第一符号化方案。依据方案134的区间136,或方案130的区间138(区间136外)内的x,x的符号化包括前缀140和后缀142,或仅仅包括前缀140。Optional overall symbolization is shown in FIG1 . Here, only two symbolization schemes are combined. Compared to FIG11A , the first symbolization scheme remains. Depending on x within interval 136 of scheme 134 or interval 138 (outside interval 136) of scheme 130, the symbolization of x includes prefix 140 and suffix 142, or only prefix 140.

进一步地,图10的装置包括连接在解符号化器的输出端与解符号化器124的参数输入端之间的符号化参数确定器144。确定器144被配置为经由函数52依据先前处理的变换系数为当前变换系数确定符号化参数46(可从解符号化片段或目前为止解符号化的/处理的/解码的部分推导)。10 further comprises a symbolization parameter determiner 144 connected between the output of the desymbolizer and the parameter input of the desymbolizer 124. The determiner 144 is configured to determine the symbolization parameter 46 (which may be derived from the desymbolized segment or the portion desymbolized/processed/decoded so far) for the current transform coefficient from previously processed transform coefficients via the function 52.

提取器120、解符号化器124和符号化参数确定器144被配置为依次处理不同变换区块的变换系数,如上文所述。也就是说,扫描140可以在变换区块10内在相反的方向上遍历。几次扫描例如可以用于不同符号化片段,即前缀和后缀。The extractor 120, the de-symbolizer 124, and the symbolization parameter determiner 144 are configured to process the transform coefficients of different transform blocks in sequence, as described above. That is, the scan 140 may traverse in opposite directions within the transform block 10. Several scans may be performed, for example, for different symbolized segments, i.e., prefixes and suffixes.

函数参数依据当前变换系数的变换区块的尺寸、当前变换系数的变换区块的信息分量类型和/或当前变换系数位于变换区块内的频率部分而改变。The function parameters vary depending on the size of the transform block of the current transform coefficient, the type of information component of the transform block of the current transform coefficient, and/or the frequency portion in which the current transform coefficient is located within the transform block.

装置可以经配置使得限定一方面先前解码的变换系数与另一方面符号化参数之间的关系的函数为g(f(x)),该函数已经在上文进行了描述。The apparatus may be configured such that the function defining the relationship between previously decoded transform coefficients on the one hand and the symbolization parameters on the other hand is g(f(x)), which function has been described above.

同样如上文所讨论的,可以使用依据相对于当前变换系数的相对空间布置的先前处理的变换系数的空间确定。As also discussed above, spatial determination of previously processed transform coefficients in terms of relative spatial arrangement with respect to the current transform coefficient may be used.

装置可以非常容易且快速地操作,因为提取器120可以被配置为直接或使用利用固定概率分布的熵解码从数据流中提取符号的集合。可参数化符号化方案可以使得符号的集合是莱斯码,并且符号化参数是莱斯参数。The apparatus can operate very easily and quickly because the extractor 120 can be configured to extract the set of symbols from the data stream directly or using entropy decoding with a fixed probability distribution.The parameterizable symbolization scheme can be such that the set of symbols is a Rice code and the symbolization parameters are Rice parameters.

换句话说,解符号化器124可以被配置为将符号化方案限制为在变换系数的范围区间20范围外的级别区间比如18或138,使得符号的集合相对于当前变换系数比如44和132或142的整体符号化的其他部分表示前缀或后缀。针对其他符号,其也可以直接或使用利用固定概率分布的熵解码从数据流中提取,但图1至图9示出还可以使用利用上下文自适应性的熵编码。In other words, the de-symbolizer 124 can be configured to restrict the symbolization scheme to level intervals outside the range interval 20 of the transform coefficient, such as 18 or 138, so that the set of symbols represents a prefix or suffix relative to the rest of the overall symbolization of the current transform coefficient, such as 44 and 132 or 142. For other symbols, they can also be extracted from the data stream directly or using entropy decoding using a fixed probability distribution, but Figures 1 to 9 show that entropy coding using context adaptability can also be used.

图10的装置可以被用作图8的图片解码器102中的装置102。The apparatus of FIG. 10 may be used as the apparatus 102 in the picture decoder 102 of FIG. 8 .

为了完整起见,图12示出了用于将不同变换区块的各自具有变换系数级别的多个变换系数编码成数据流32的装置,装配至图10的装置。For the sake of completeness, FIG. 12 shows an apparatus for encoding a plurality of transform coefficients of different transform blocks, each having a transform coefficient level, into a data stream 32 , assembled to the apparatus of FIG. 10 .

图12的装置包括符号化器,被配置为根据符号化方案针对当前变换系数将变换系数级别映射到符号的集合或符号序列上,所述符号化方案是根据符号化参数可参数化的。The apparatus of FIG. 12 comprises a symbolizer configured to map transform coefficient levels onto a set of symbols or a sequence of symbols according to a symbolization scheme for a current transform coefficient, the symbolization scheme being parameterizable according to a symbolization parameter.

插入器154被配置为将当前变换系数的符号的集合插入到数据流32中。Inserter 154 is configured to insert a set of signs of the current transform coefficients into the data stream 32 .

符号化参数确定器156被配置为,经由通过函数参数可参数化的函数52依据先前处理的变换系数为当前变换系数确定符号化参数46,为此,其可以连接在插入器152的输出端与符号化器150的参数输入端之间,或可选择地在符号化器150的输出端与输入端之间。The symbolization parameter determiner 156 is configured to determine the symbolization parameter 46 for the current transform coefficient depending on the previously processed transform coefficient via the function 52 which is parameterizable by means of a function parameter, and for this purpose it can be connected between the output of the interpolator 152 and the parameter input of the symbolizer 150, or alternatively between the output and the input of the symbolizer 150.

插入器154、符号化器150和符号化参数确定器156可以被配置为依次处理不同变换区块的变换系数,并且函数参数依据当前变换系数的变换区块的尺寸、当前变换系数的变换区块的信息分量类型和/或当前变换系数位于变换区块内的频率部分而改变。The inserter 154, the symbolizer 150 and the symbolization parameter determiner 156 can be configured to process the transform coefficients of different transform blocks in sequence, and the function parameters change depending on the size of the transform block of the current transform coefficient, the information component type of the transform block of the current transform coefficient and/or the frequency part of the current transform coefficient within the transform block.

如上文针对图10的解码装置所述,图12的装置可以经配置使得限定一方面先前解码的变换系数与另一方面符号化参数之间的关系的函数为g(f(x)),并且先前处理的变换系数可以依据相对于当前变换系数的相对空间布置从空间上确定。插入器可以被配置为直接或使用利用固定概率分布的熵编码将符号的集合插入到数据流中,并且符号化方案可以使得符号的集合是莱斯码,并且符号化参数是莱斯参数。符号化器可以被配置为将符号化方案限制为在变换系数的范围区间20范围外的级别区间18,使得符号的集合表示关于当前变换系数的整体符号化的其他部分的前缀或后缀。As described above with respect to the decoding apparatus of FIG. 10 , the apparatus of FIG. 12 can be configured such that the function defining the relationship between previously decoded transform coefficients on the one hand and symbolization parameters on the other hand is g(f(x)), and the previously processed transform coefficients can be spatially determined based on their relative spatial arrangement with respect to the current transform coefficient. The inserter can be configured to insert the set of symbols into the data stream directly or using entropy coding with a fixed probability distribution, and the symbolization scheme can be such that the set of symbols is a Rice code and the symbolization parameters are Rice parameters. The symbolizer can be configured to restrict the symbolization scheme to level intervals 18 outside the range interval 20 of the transform coefficients, such that the set of symbols represents a prefix or suffix of the rest of the overall symbolization with respect to the current transform coefficient.

如上所提及的,对于图10至图12实施例的优选实现,用于前三个仓的上下文模型选择与图1至图9的实施例相比被禁用。对于该优选实施例,由截断的一元二值化128产生的仓利用0.5的固定概率进行编码。在另一个优选实施例中,如图11B所示省略截断的一元二值化128并调整莱斯区间的界限,从而产生如与本领域状态相同的区间范围(即,左侧和右侧界限减去3)。对于该优选实施例,与图1至图9的实施例相比,修改莱斯参数推导规则。例如可以使用f0来代替作为评估值的f1。进一步地,输入矢量可以被调整为n={4,10,22}。As mentioned above, for the preferred implementation of the embodiments of Figures 10 to 12, the context model selection for the first three bins is disabled compared to the embodiments of Figures 1 to 9. For this preferred embodiment, the bins produced by the truncated unary binarization 128 are encoded with a fixed probability of 0.5. In another preferred embodiment, the truncated unary binarization 128 is omitted as shown in Figure 11B and the limits of the Rice interval are adjusted to produce an interval range that is the same as the state of the art (i.e., the left and right limits are subtracted by 3). For this preferred embodiment, the Rice parameter derivation rule is modified compared to the embodiments of Figures 1 to 9. For example, f0 can be used instead of f1 as the evaluation value . Further, the input vector can be adjusted to n = {4, 10, 22}.

下文描述的另一个实施例示出了实际上具有用于一方面上下文选择/依赖性且另一方面用于符号化参数确定的不同模板的可能性。也就是说,系数xi的模板对上下文选择/依赖性和符号化参数确定都保持不变,但要影响f(x)的系数xi通过适当设置wi而在上下文选择/依赖性和符号化参数确定之间有效地呈现不同:加权wi为零的所有系数xi因此不影响f(x),从而设计wi为零的模板的部分,一方面上下文选择/依赖性与另一方面符号化参数确定之间不同,有效导致上下文选择/依赖性和符号化参数确定的不同“有效模板”。换句话说,通过针对上下文选择/依赖性和符号化参数确定之一的某些模板位置i将一些wi设为零,同时针对上下文选择/依赖性和符号化参数确定的另一个将某些模板位置i处的wi设为非零值,上下文选择/依赖性和符号化参数确定的首先提及的一个的模板有效地小于上下文选择/依赖性和符号化参数确定的后一者的模板。再者,正如上面已经表示的,模板可以包含区块的所有变换系数,而不管当前编码变换系数的位置。Another embodiment described below illustrates the possibility of having different templates for context selection/dependence, on the one hand, and for symbolic parameter determination, on the other. That is, the template for the coefficients x i remains constant for both context selection/dependence and symbolic parameter determination, but the coefficients x i that are intended to influence f(x) effectively differ between context selection/dependence and symbolic parameter determination by appropriately setting w i : all coefficients x i with a weight w i of zero therefore do not influence f(x), thereby designing the portion of the template where w i is zero to differ between context selection/dependence, on the one hand, and symbolic parameter determination, on the other, effectively resulting in different "effective templates" for context selection/dependence and symbolic parameter determination. In other words, by setting some w i to zero for certain template positions i for one of the context selection/dependence and symbolic parameter determination, while setting w i at certain template positions i to non-zero values for the other, the template for the first of the two is effectively smaller than the template for the second of the two. Furthermore, as already indicated above, the template may contain all transform coefficients of a block, regardless of the position of the currently coded transform coefficient.

例如参见图13,其示出了示例性地由16x16变换系数12的阵列组成的变换系数区块10。变换系数区块10分别被细分成4x4变换系数12的子区块200。因此,子区块200按4x4阵列规则排列。根据本实施例,对于编码变换系数区块10,有效图在数据流32内进行编码,该有效图表示有效变换系数级别12的位置,即变换系数级别不等于0。然后,变换系数级别减去这些有效变换系数之一可以在数据流内进行编码。如上所述可以进行对后面的变换系数级别进行编码,即通过混合上下文自适应熵编码和使用共用可参数化函数的可变长度编码以便选择上下文并确定符号化参数。可以使用某个扫描顺序以便使有效变换系数序列化或给其排序。此扫描顺序的一个实例在图13中示出:子区块200从最高频率(右下)至DC(左上)进行扫描,并且在每个子区块200内,变换系数12在访问按照子区块顺序的下一个子区块的变换系数之前进行扫描。这由表示子区块扫描的箭头202和示出了实际系数扫描的一部分的204示出。扫描索引可以在数据流32内传输以便允许在几条扫描路径之间选择,从而分别扫描子区块200和/或子区块内的变换系数12。在图13中,针对子区块扫描202和每个子区块内的变换系数12扫描示出了对角线扫描。因此,在解码器处可以解码有效图,并且有效变换系数的变换系数级别可以使用刚才提及的扫描顺序并使用利用可参数化函数的上述实施例进行解码。在下面更详细概述的描述中,xS和yS表示从DC位置(即区块10的左上角)起测量的子区块列和子区块行,当前编码/解码的变换系数定位在该位置内。xP和yP表示从当前子区块(xS,yS)的左上角(DC系数位置)测量的当前编码/解码的变换系数的位置。在图13中这针对右上的子区块200示出。xC和yC表示从DC位置起在变换系数中测量的当前解码/编码变换系数位置。进一步地,因为图13中的区块10的区块尺寸,即16x16,仅出于说明目的进行了选择,所以下面进一步概述的实施例使用log2TrafoSize作为表示区块10的尺寸的参数,假设其是二次的。log2TrafoSize表示区块10的变换系数的每行内的变换系数的数量的底为2的对数,即变换系数中测量的区块10的边缘的长度的log2。CtxIdxInc最终选择上下文。进一步地,在下面概述的特定实施例中,假设前述有效图表明coded_sub_block_flag,即二进制语法元素或标志,对于区块10的子区块200以便逐子区块地表明在各个子区块200内是否定位有任何有效变换系数,即是否只有无效变换系数位于各个子区块200内。如果标志为零,则只有无效变换系数位于各个子区块内。For example, see FIG. 13 , which illustrates a transform coefficient block 10 exemplarily consisting of an array of 16x16 transform coefficients 12. The transform coefficient block 10 is subdivided into sub-blocks 200 of 4x4 transform coefficients 12. Thus, the sub-blocks 200 are arranged in a regular 4x4 array. According to this embodiment, for encoding the transform coefficient block 10, a significance map is encoded within the data stream 32 , indicating the positions of the significant transform coefficient levels 12, i.e., transform coefficient levels that are not equal to 0. The transform coefficient level minus one of these significant transform coefficients can then be encoded within the data stream. The encoding of the subsequent transform coefficient levels can be performed as described above, i.e., by a hybrid of context-adaptive entropy coding and variable-length coding using a common parameterizable function to select the context and determine the symbolization parameters. A certain scanning order can be used to sequence or order the significant transform coefficients. An example of this scanning order is shown in FIG13 : subblocks 200 are scanned from the highest frequency (lower right) to DC (upper left), and within each subblock 200, the transform coefficients I2 are scanned before accessing the transform coefficients of the next subblock in the subblock order. This is illustrated by arrow 202, which indicates the subblock scan, and arrow 204, which shows a portion of the actual coefficient scan. A scan index can be transmitted within the data stream 32 to allow selection between several scan paths, respectively scanning the subblocks 200 and/or the transform coefficients I2 within the subblocks. In FIG13 , a diagonal scan is shown for the subblock scan 202 and the transform coefficient I2 scan within each subblock. Thus, at the decoder, the significance map can be decoded, and the transform coefficient levels of the significant transform coefficients can be decoded using the scan order just mentioned and using the above-described embodiment utilizing a parameterizable function. In the description outlined in more detail below, xS and yS denote the subblock column and row, respectively, measured from the DC position (i.e., the upper-left corner of block 10), within which the currently encoded/decoded transform coefficient is located. xP and yP denote the position of the currently encoded/decoded transform coefficient, measured from the upper-left corner (DC coefficient position) of the current subblock (xS, yS). This is illustrated for the upper-right subblock 200 in FIG. 13 . xC and yC denote the currently decoded/encoded transform coefficient position, measured in transform coefficients, from the DC position. Furthermore, because the block size of block 10 in FIG. 13 , i.e., 16x16, was chosen for illustrative purposes only, the embodiments outlined further below use log2TrafoSize as the parameter representing the size of block 10, assuming it is quadratic. log2TrafoSize denotes the base-2 logarithm of the number of transform coefficients within each row of transform coefficients for block 10, i.e., the log² of the length of the edge of block 10, measured in transform coefficients. CtxIdxInc ultimately selects the context. Furthermore, in the specific embodiment outlined below, it is assumed that the aforementioned significance map indicates coded_sub_block_flag, i.e., a binary syntax element or flag, for the sub-blocks 200 of the block 10 in order to indicate, on a sub-block-by-sub-block basis, whether any valid transform coefficients are located within each sub-block 200, i.e., whether only invalid transform coefficients are located within each sub-block 200. If the flag is zero, then only invalid transform coefficients are located within each sub-block.

因此,根据该实施例,以下通过上下文自适应熵解码器/编码器执行以便选择significant_coeff_flag,即标志(其是有效图的一部分和子区块的某个变换系数的信号)的上下文,coded_sub_block_flag针对各个系数是否有效,即是否非零表明各个子区块200包含非零变换系数。Therefore, according to this embodiment, the following is performed by the context adaptive entropy decoder/encoder to select the context of significant_coeff_flag, that is, a flag (which is part of the significance map and a signal of a certain transform coefficient of the sub-block), and coded_sub_block_flag is used to determine whether each coefficient is significant, that is, whether it is non-zero, indicating that each sub-block 200 contains a non-zero transform coefficient.

至该过程的输入是颜色分量索引cIdx、当前系数扫描位置(xC,yC)、扫描顺序索引scanIdx、变换区块尺寸log2TrafoSize。该过程的输出是CtxIdxInc。The inputs to this process are the color component index cIdx, the current coefficient scan position (xC, yC), the scan order index scanIdx, and the transform block size log2TrafoSize. The output of this process is CtxIdxInc.

变量sigCtx依据当前位置(xC,yC)、颜色分量索引cIdx、变换区块尺寸和语法元素coded_sub_block_flag的先前解码仓。对于sigCtx的推导,以下情况适用。The variable sigCtx depends on the current position (xC, yC), the color component index cIdx, the transform block size, and the previous decoding bin of the syntax element coded_sub_block_flag. For the derivation of sigCtx, the following applies.

-如果log2TrafoSize等于2,则sigCtx使用如下表1中指定的ctxIdxMap[]进行推导。-If log2TrafoSize is equal to 2, sigCtx is derived using ctxIdxMap[] as specified in Table 1 below.

sigCtx=ctxIdxMap[(yC<<2)+xC]sigCtx=ctxIdxMap[(yC<<2)+xC]

-否则,如果xC+yC等于0,则sigCtx推导如下。- Otherwise, if xC+yC is equal to 0, then sigCtx is derived as follows.

sigCtx=0sigCtx=0

-否则,sigCtx使用coded_sub_block_flag的先前值推导如下。Otherwise, sigCtx is derived using the previous value of coded_sub_block_flag as follows.

-水平和垂直子区块位置xS和yS分别被设为等于(xC>>2)和(yC>>2)。- The horizontal and vertical sub-block positions xS and yS are set equal to (xC>>2) and (yC>>2), respectively.

-变量prevCsbf被设为等于0。-The variable prevCsbf is set equal to 0.

-当xS小于(1<<(log2TrafoSize-2))-1,则以下情况适用。-When xS is less than (1<<(log2TrafoSize-2))-1, the following applies.

prevCsbf+=coded_sub_block_flag[xS+1][yS]prevCsbf+=coded_sub_block_flag[xS+1][yS]

-当yS小于(1<<(log2TrafoSize-2))-1,则以下情况适用。-When yS is less than (1<<(log2TrafoSize-2))-1, the following applies.

prevCsbf+=(coded_sub_block_flag[xS][yS+1]<<1)prevCsbf+=(coded_sub_block_flag[xS][yS+1]<<1)

-内部子区块位置xP和yP被分别设为等于(xC&3)和(yC&3)。- The interior subblock positions xP and yP are set equal to (xC&3) and (yC&3) respectively.

-变量sigCtx推导如下。-The variable sigCtx is derived as follows.

-如果prevCsbf等于0,则以下情况适用。- If prevCsbf is equal to 0, the following applies.

sigCtx=(xP+yP==0)?2:(xP+yP<3)?1:0sigCtx=(xP+yP==0)? 2:(xP+yP<3)? 1:0

-否则,如果prevCsbf等于1,则以下情况适用。- Otherwise, if prevCsbf is equal to 1, the following applies.

sigCtx=(yP==0)?2:(yP==1)?1:0sigCtx=(yP==0)? 2:(yP==1)? 1:0

-否则,如果prevCsbf等于2,则以下情况适用。- Otherwise, if prevCsbf is equal to 2, the following applies.

sigCtx=(xP==0)?2:(xP==1)?1:0sigCtx=(xP==0)? 2:(xP==1)? 1:0

-否则,(prevCsbf等于3),则以下情况适用。- Otherwise, (prevCsbf is equal to 3), then the following applies.

sigCtx=2sigCtx=2

-变量sigCtx修改如下。-The variable sigCtx is modified as follows.

-如果cIdx等于0,则以下情况适用。- If cIdx is equal to 0, the following applies.

-当(xS+yS)大于0时,以下情况适用。-When (xS+yS) is greater than 0, the following applies.

sigCtx+=3sigCtx+=3

-变量sigCtx修改如下。-The variable sigCtx is modified as follows.

-如果log2TrafoSize等于3,则以下情况适用。- If log2TrafoSize is equal to 3, the following applies.

sigCtx+=(scanIdx==0)?9:15sigCtx+=(scanIdx==0)? 9:15

-否则,以下情况适用。- Otherwise, the following applies.

sigCtx+=21sigCtx+=21

-否则,(cIdx大于0),以下情况适用。- Otherwise, (cIdx is greater than 0), the following applies.

-如果log2TrafoSize等于3,则以下情况适用。- If log2TrafoSize is equal to 3, the following applies.

sigCtx+=9sigCtx+=9

-否则,以下情况适用。- Otherwise, the following applies.

sigCtx+=12sigCtx+=12

上下文所有增量CtxIdxInc使用颜色分量索引cIdx和sigCtx进行如下推导。The context-inclusive increment CtxIdxInc is derived as follows using the color component indices cIdx and sigCtx.

-如果cIdx等于0,则CtxIdxInc推导如下。- If cIdx is equal to 0, then CtxIdxInc is derived as follows.

ctxIdxInc=sigCtxctxIdxInc=sigCtx

-否则,(cIdx大于0),CtxIdxInc推导如下。- Otherwise, (cIdx is greater than 0), CtxIdxInc is derived as follows.

ctxIdxInc=27+sigCtxctxIdxInc=27+sigCtx

表1-ctxIdxMap[i]的规格Table 1 - Specifications of ctxIdxMap[i]

ii 00 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414 ctxIdxMap[i]ctxIdxMap[i] 00 11 44 55 22 33 44 55 66 66 88 88 77 77 88

如上所述,对于每个有效变换系数,进一步语法元素或符号的集合可以在数据流内传递以便表明其级别。根据下面概述的实施例,对于一个有效变换系数,传输以下语法元素或变换系数的集合:coeff_abs_level_greater1_flag、coeff_abs_level_greater2flag(任选)、及coeff_abs_level_remaining,使得当前编码/解码的有效变换系数级别TransCoeffLevel为:As described above, for each significant transform coefficient, a further set of syntax elements or symbols may be conveyed within the data stream to indicate its level. According to the embodiment outlined below, for a significant transform coefficient, the following set of syntax elements or transform coefficients is transmitted: coeff_abs_level_greater1_flag, coeff_abs_level_greater2flag (optional), and coeff_abs_level_remaining, such that the currently encoded/decoded significant transform coefficient level TransCoeffLevel is:

TransCoeffLevel=(coeff_abs_level_remaining+baseLevel)*(1-2*coeff_sign_flag])TransCoeffLevel=(coeff_abs_level_remaining+baseLevel)*(1-2*coeff_sign_flag])

其中in

baseLevel=1+coeff_abs_level_greater1_flag+coeff_abs_level_greater2_flagbaseLevel=1+coeff_abs_level_greater1_flag+coeff_abs_level_greater2_flag

请注意,significant_coeff_flag根据定义对于有效变换系数为1,因此,可以被视为编码变换系数的一部分,即其熵编码符号的一部分。Note that significant_coeff_flag is by definition 1 for significant transform coefficients and, therefore, can be considered as part of the coded transform coefficient, ie, part of its entropy coded sign.

上下文白适应熵解码器/编码器例如可对coeff_abs_level_greater1_flag执行上下文选择,如下。例如,当前子区块扫描索引i可沿扫描路径202向DC的方向增加,并且当前系数扫描索引n可在各个子区块内沿扫描路径204增加,当前编码/解码的变换系数位置位于各个子区块内,其中,如上文概述,不同可能性对于扫描路径202和204来说存在,并且其根据索引scanIdx实际上是可变的。The context adaptive entropy decoder/encoder may, for example, perform context selection for coeff_abs_level_greater1_flag as follows. For example, the current subblock scan index i may increase in the DC direction along the scan path 202, and the current coefficient scan index n may increase within each subblock along the scan path 204, where the currently encoded/decoded transform coefficient position is located within each subblock, wherein, as outlined above, different possibilities exist for the scan paths 202 and 204, and they are actually variable according to the index scanIdx.

至选择coeff_abs_level_greater1_flag的上下文的过程的输入是颜色分量索引cIdx、当前子区块扫描索引i和当前子区块内的当前系数扫描索引n。The inputs to the process of selecting the context of coeff_abs_level_greater1_flag are the color component index cIdx, the current subblock scan index i, and the current coefficient scan index n within the current subblock.

该过程的输出是CtxIdxInc。The output of this process is CtxIdxInc.

变量ctxSet指定当前上下文集合并且对于其推导,以下情况适用。The variable ctxSet specifies the current context set and for its derivation, the following applies.

-如果该过程在第一时间内针对当前子区块扫描索引i调用,则以下情况适用。If this procedure is called for the first time for the current sub-block scan index i, then the following applies.

-变量ctxSet初始化如下。-The variable ctxSet is initialized as follows.

-如果当前子区块扫描索引i等于0或cIdx大于0,则以下情况适用。- If the current sub-block scan index i is equal to 0 or cIdx is greater than 0, the following applies.

ctxSet=0ctxSet=0

-否则(i大于0且cIdx等于0),以下情况适用。- Otherwise (i is greater than 0 and cIdx is equal to 0), the following applies.

ctxSet=2ctxSet=2

-变量lastGreater1Ctx推导如下。-The variable lastGreater1Ctx is derived as follows.

-如果具有扫描索引i的当前子区块对当前变换区块来说是该节中要处理的第一子区块,则变量lastGreater1Ctx被设为等于1.If the current subblock with scan index i is the first subblock to be processed in this section for the current transform block, the variable lastGreater1Ctx is set equal to 1.

-否则,变量lastGreater1Ctx被设为等于greater1Ctx的值,其在针对具有扫描索引i+1的先前子区块的语法元素coeff_abs_level_greater1_flag最后调用该节中指定的过程期间进行推导。Otherwise, the variable lastGreater1Ctx is set equal to the value of greater1Ctx, which was derived during the last call of the procedure specified in this section for the syntax element coeff_abs_level_greater1_flag for the previous subblock with scan index i+1.

-当lastGreater1Ctx等于0时,ctxSet递增1如下。-When lastGreater1Ctx is equal to 0, ctxSet is incremented by 1 as follows.

ctxSet=ctxSet+1ctxSet=ctxSet+1

-变量greater1Ctx被设为等于1。-The variable greater1Ctx is set equal to 1.

-否则(在第一时间内不针对当前子区块扫描索引i调用该过程),以下情况适用。- Otherwise (the process is not called for the current sub-block scan index i in the first time), the following applies.

-变量ctxSet被设为等于已经在最后调用该节中指定的过程期间推导的变量ctxSet。-The variable ctxSet is set equal to the variable ctxSet that has been derived during the last call to the procedure specified in this section.

-变量greater1Ctx被设为等于已经在最后调用该节中指定的过程期间推导的变量greater1Ctx。-The variable greater1Ctx is set equal to the variable greater1Ctx that has been derived during the last call to the procedure specified in this section.

-当greater1Ctx大于0时,变量lastGreater1Flag设为等于在最后调用该节中指定的过程期间使用的语法元素coeff_abs_level_greater1_flag并且greater1Ctx修改如下。- When greater1Ctx is greater than 0, the variable lastGreater1Flag is set equal to the syntax element coeff_abs_level_greater1_flag used during the last call to the procedure specified in this section and greater1Ctx is modified as follows.

-如果lastGreater1Flag等于1,则greater1Ctx被设为等于0。- If lastGreater1Flag is equal to 1, greater1Ctx is set equal to 0.

-否则(lastGreater1Flag等于0),greater1Ctx递增1。- Otherwise (lastGreater1Flag is equal to 0), greater1Ctx is incremented by 1.

上下文索引增量CtxIdxInc使用当前上下文集合ctxSet和当前上下文greater1Ctx推导如下。The context index increment CtxIdxInc is derived using the current context set ctxSet and the current context greater1Ctx as follows.

ctxIdxInc=(ctxSet*4)+Min(3,greater1Ctx)ctxIdxInc=(ctxSet*4)+Min(3,greater1Ctx)

当cIdx大于0时,CtxIdxInc修改如下。When cIdx is greater than 0, CtxIdxInc is modified as follows.

ctxIdxInc=ctxIdxInc+16ctxIdxInc=ctxIdxInc+16

可以使选择coeff_abs_level_greater2_flag的上下文的过程与coeff_abs_level_greater2_flag相同,区别如下:The process of selecting the context of coeff_abs_level_greater2_flag can be made the same as coeff_abs_level_greater2_flag, with the following differences:

上下文索引增量CtxIdxInc被设为等于变量ctxSet,如下。The context index increment CtxIdxInc is set equal to the variable ctxSet as follows.

ctxIdxInc=ctxSetctxIdxInc=ctxSet

当cIdx大于0时,CtxIdxInc修改如下。When cIdx is greater than 0, CtxIdxInc is modified as follows.

ctxIdxInc=ctxIdxInc+4ctxIdxInc=ctxIdxInc+4

对于符号化参数选择,由符号化参数确定器执行以下情况以便确定在这里包括cLastAbsLevel和cLastRiceParam的符号化参数。For symbolication parameter selection, the following is performed by the symbolication parameter determiner to determine the symbolication parameters which include cLastAbsLevel and cLastRiceParam here.

至该过程的输入是语法元素coeff_abs_level_remaining[n]二值化和baseLevel的请求。The input to this process is the request for the syntax element coeff_abs_level_remaining[n] to be binarized and baseLevel.

该过程的输出是语法元素二值化。The output of this process is the binarization of syntax elements.

变量cLastAbsLevel和cLastRiceParam推导如下。The variables cLastAbsLevel and cLastRiceParam are derived as follows.

-如果n等于15,则cLastAbsLevel和cLastRiceParam被设为等于0。-If n is equal to 15, cLastAbsLevel and cLastRiceParam are set equal to 0.

-否则(n小于15),cLastAbsLevel被设为等于baseLevel+coeff_abs_level_remaining[n+1]并且cLastRiceParam被设为等于在针对相同变换区块的语法元素coeff_abs_level_remaining[n+1]最后调用该节中指定的二值化过程期间推导的cRiceParam的值。Otherwise (n is less than 15), cLastAbsLevel is set equal to baseLevel + coeff_abs_level_remaining[n+1] and cLastRiceParam is set equal to the value of cRiceParam derived during the last invocation of the binarization process specified in this section for the syntax element coeff_abs_level_remaining[n+1] for the same transform block.

变量cRiceParam从cLastAbsLevel和cLastRiceParam推导为:The variable cRiceParam is derived from cLastAbsLevel and cLastRiceParam as follows:

cRiceParam=Min(cLastRiceParam+(cLastAbsLevel>(3*(1<<cLastRiceParam))?1:0),4)cRiceParam=Min(cLastRiceParam+(cLastAbsLevel>(3*(1<<cLastRiceParam))?1:0),4)

变量cTRMax从cRiceParam推导为:The variable cTRMax is derived from cRiceParam as:

cTRMax=4<<cRiceParamcTRMax=4<<cRiceParam

coeff_abs_level_remaining二值化可以由前缀部分(存在时)和后缀部分组成。The coeff_abs_level_remaining binarization can consist of a prefix part (when present) and a suffix part.

二值化的前缀部分通过调用例如前缀部分Min(cTRMax,coeff_abs_level_remaining[n])的莱斯二值化过程进行推导。The binarized prefix part is derived by calling the Rice binarization process of, for example, prefix part Min(cTRMax, coeff_abs_level_remaining[n]).

当前缀仓串等于长度4的比特串时,例如所有比特等于1,仓串可以由前缀仓串和后缀仓串组成。后缀仓串可以使用后缀部分(coeff_abs_level_remaining[n]-cTRMax)的指数哥伦布k阶二值化进行推导,其中指数哥伦布k阶例如设为等于cRiceParam+1。When the prefix bin string is equal to a bit string of length 4, e.g., all bits are equal to 1, the bin string may consist of a prefix bin string and a suffix bin string. The suffix bin string may be derived using the exponential Golomb k-order binarization of the suffix part (coeff_abs_level_remaining[n]-cTRMax), where the exponential Golomb k-order is set equal to cRiceParam+1, for example.

应该注意,可以改变上述实施例。例如,可以留下对颜色分量索引cIdx的依赖性。例如仅仅应考虑一个颜色分量。进一步地,可以改变所有确切值。在这个范围内,刚才概述的实例将从广义上解释以便同样并入变型。It should be noted that the above-described embodiment can be modified. For example, the dependency on the color component index cIdx can be retained. For example, only one color component should be considered. Furthermore, all specific values can be changed. To this extent, the example just outlined is to be interpreted broadly so as to also incorporate variations.

在上述实例中,上文概述的实施例可以有利地以下列方式使用。特别地,一方面确定coeff_abs_level_greater1_flag的CtxIdxInc及coeff_abs_level_remaining的符号化参数确定利用上述函数f和g通过以下列方式设置函数参数来进行协调。In the above example, the embodiments outlined above can be advantageously used in the following manner: In particular, the symbolization parameters CtxIdxInc and coeff_abs_level_remaining that determine coeff_abs_level_greater1_flag are coordinated using the above functions f and g by setting the function parameters in the following manner.

为此,图13示例性地示出了用十字206示出的“当前变换系数”。其是随后提及的任何语法元素与之相关联的任何变换系数的代表。其定位在当前子区块(xS,yS)=(0,1)内的(xP,yP)=(1,1)和(xC,yC)=(1,5)处。右侧相邻子区块在(xS,yS)=(1,1)处,底部相邻子区块在(xS,yS)=(0,2)处并且先前编码子区块依据扫描路径202。这里,示例性地,示出了对角线扫描202,并且紧位于当前子区块之前的所编码/解码的子区块在(xS,yS)=(1,0)处。To this end, FIG13 exemplarily shows a "current transform coefficient" indicated by a cross 206. This is representative of any transform coefficient associated with any syntax element mentioned later. It is located at (xP, yP) = (1, 1) and (xC, yC) = (1, 5) within the current subblock (xS, yS) = (0, 1). The right neighboring subblock is at (xS, yS) = (1, 1), the bottom neighboring subblock is at (xS, yS) = (0, 2), and the previously coded subblock follows the scan path 202. Here, by way of example, a diagonal scan 202 is shown, and the coded/decoded subblock immediately preceding the current subblock is at (xS, yS) = (1, 0).

我们再次改写常用可参数化函数的公式We rewrite the formula of the commonly used parameterizable function again

f(x)=∑iwi×h(xi)×δ(xi,t) (2)f(x)=∑ i w i ×h(x i )×δ( xi , t) (2)

针对选择当前系数206的significant_coeff_flag的上下文,以下情况可以通过熵编码/解码装置计算。也就是说,其可使用函数(1),其中(2)具有设置如下的函数参数t,h和w:The following can be calculated by the entropy encoding/decoding apparatus for the context of selecting the significant_coeff_flag of the current coefficient 206. That is, it can use function (1), where (2) has function parameters t, h, and w set as follows:

针对函数(2),对于当前子区块右边和下面的相邻子区块中的所有xi,wi=1,并且在区块10的其他地方wi=0;For function (2), for all x i in the adjacent subblocks to the right and below the current subblock, w i = 1, and w i = 0 elsewhere in the block 10;

对于当前子区块右边的相邻子区块中的所有xi,h(xi)=1;如果存在,则同样事先在子区块扫描202中进行扫描;如果一次以上的扫描202是可用的,则全部可以使得(独立于scanIdx)右边的相邻子区块具有在当前子区块之前编码/解码的系数;For all x i in the neighboring subblocks to the right of the current subblock, h(x i )=1; if any, they are also previously scanned in the subblock scan 202; if more than one scan 202 is available, all of them can make (independent of scanIdx) that the neighboring subblock to the right has coefficients encoded/decoded before the current subblock;

对于先前在子区块扫描中扫描的当前子区块下面的相邻子区块中的所有xi,h(xi)=24+1(独立于scanIdx);For all x i in the adjacent subblocks below the current subblock previously scanned in the subblock scan, h(x i )=2 4 +1 (independent of scanIdx);

否则h(xi)=0;Otherwise h( xi ) = 0;

t=1;t = 1;

如果f的值等于0,则表明当前子区块Nachbarn右边和下面的相邻子区块部不包括任何有效变换系数的情况;If the value of f is equal to 0, it indicates that the adjacent sub-blocks to the right and below the current sub-block Nachbarn do not include any valid transform coefficients;

如果f的值介于1和16(包括两个端点)之间,则这对应于coded_sub_block_flag在右边相邻子区块中等于1的事实;If the value of f is between 1 and 16 (inclusive), this corresponds to the fact that coded_sub_block_flag is equal to 1 in the right adjacent sub-block;

如果f的值是24+1的倍数(没有余数),则这对应于coded_sub_block_flag在底部相邻子区块中等于1的事实;If the value of f is a multiple of 2 4 +1 (without remainder), this corresponds to the fact that coded_sub_block_flag is equal to 1 in the bottom adjacent subblock;

如果f的值是24+1的倍数(但有余数),则这意味着coded_sub_block_flag针对两个相邻子区块等于1的事实,即一个在当前子区块右边,一个在当前子区块下面;If the value of f is a multiple of 2 4 +1 (but with a remainder), this means that coded_sub_block_flag is equal to 1 for two adjacent subblocks, one to the right of the current subblock and one below the current subblock;

针对函数(1),n设置如下,其中df为3:For function (1), n is set as follows, where d f is 3:

n=(0,24,m)n=(0,2 4 ,m)

其中in

通过这种措施,上下文索引的可变分量使用g(f)确定,其中上述函数参数基于已经编码/解码的系数。By this measure, the variable component of the context index is determined using g(f), where the above function parameters are based on the already encoded/decoded coefficients.

针对选择coeff_abs_greater1_flag的上下文,以下情况可以通过熵编码/解码装置计算。也就是说,其可使用函数(1),其中(2)具有设置如下的函数参数:For the context in which coeff_abs_greater1_flag is selected, the following can be calculated by the entropy encoding/decoding apparatus. That is, it can use function (1), where (2) has function parameters set as follows:

针对函数(2),参数设置如下:For function (2), the parameters are set as follows:

对于前面紧接着的子区块和当前子区块中的所有xi,wi=1,并且针对所有其他为零。For all x i in the immediately preceding subblock and the current subblock, w i = 1, and is zero for all others.

对于当前子区块中的所有xi,h(xi)=1,其中|xi|=1For all x i in the current sub-block, h(x i )=1, where |x i |=1

对于当前子区块中的所有xi,h(xi)=24,其中|xi|>1For all x i in the current sub-block, h(x i )=2 4 , where |x i |>1

对于前面紧接着的子区块中的所有xi,h(xi)=216 For all x i in the immediately preceding subblock, h(x i )=2 16

t=2t=2

针对函数(1),n设定如下,df为8:For function (1), n is set as follows and d f is 8:

n=(0,1,2,24,216,216+1,216+2,216+24)n=(0, 1 , 2, 2 4 , 2 16 , 2 16 +1 , 2 16 +2, 2 16 +2 4 )

针对选择coeff_abs_greater2_flag的上下文,以下情况可以通过熵编码/解码装置计算。特别地,其可使用函数(1),其中(2)具有设置上文针对coeff_abs_greater2_flag所述的函数参数,但df为1:For the context where coeff_abs_greater2_flag is selected, the following can be calculated by the entropy encoding/decoding apparatus. Specifically, it can use function (1), where (2) has the function parameters set as described above for coeff_abs_greater2_flag, but df is 1:

n=(216)n=(2 16 )

针对确定coeff_abs_level_remaining的符号化参数,符号化参数确定器可使用常见函数(1),其中函数参数设定如下:For determining the symbolic parameter of coeff_abs_level_remaining, the symbolic parameter determiner may use the common function (1), where the function parameters are set as follows:

针对函数(2),参数设定如下:For function (2), the parameters are set as follows:

对于当前子区块中的所有xi,wi=1,但在其他地方为零For all x i in the current subblock, w i = 1, but zero elsewhere

对于最近根据内部系数扫描204访问的系数xi(coeff_abs_level_remaining已经针对其进行编码),即其级别落入与符号化方案对应的区间内,h(xi)=1;For a coefficient x i that was recently accessed according to the intra coefficient scan 204 (for which coeff_abs_level_remaining has been encoded), i.e., whose level falls within the interval corresponding to the symbolization scheme, h(x i )=1;

在模板其他地方h(xi)=0h( xi )=0 in other places of the template

t=0t=0

针对函数(1),n设置如下:For function (1), n is set as follows:

对于最近提及的根据内部系数扫描204访问的系数,n=(2m),其中其中k是符号化参数,例如莱斯参数。使用由此产生的g(f),来确定当前系数206的符号化参数。For the most recently mentioned coefficient accessed according to the internal coefficient scan 204 , n=(2 m ), where k is a symbolization parameter, such as a Ricean parameter. Using the resulting g(f), the symbolization parameter of the current coefficient 206 is determined.

以下语法可用于传递刚才概述的语法元素。The following syntax can be used to pass the syntax elements just outlined.

语法表示变换系数的级别由coeff_abs_level_remaining和baseLevel组成,其中baseLevel由1+coeff_abs_level_greater1_flag[n]+coeff_abs_level_greater2_flag[n]组成。使用1,因为在该位置(或在级别在解码器中重构时),语法元素为significant_coeff_flag=1。“第一集合”然后是TU码(参数化等于0的莱斯码),据此形成前3个语法元素。“第二集合”然后形成语法元素coeff_abs_level_remaining。The syntax indicating the level of the transform coefficient consists of coeff_abs_level_remaining and baseLevel, where baseLevel is composed of 1 + coeff_abs_level_greater1_flag[n] + coeff_abs_level_greater2_flag[n]. 1 is used because at this position (or when the level is reconstructed in the decoder), the syntax element is significant_coeff_flag = 1. The "first set" then consists of the TU code (Rice code with parameterization equal to 0), from which the first three syntax elements are formed. The "second set" then forms the syntax element coeff_abs_level_remaining.

因为边界在“第一集合”与“第二集合”之间移位,所以最大值由coeff_abs_greater1_flag、coeff_abs_greater2_flag或由significant_coeff_flag限定,因此分支取决于表中的语法元素。Since the boundary shifts between the "first set" and the "second set", the maximum value is defined by coeff_abs_greater1_flag, coeff_abs_greater2_flag or by significant_coeff_flag, so the branching depends on the syntax element in the table.

函数参数的上述设定在下文中仍然是有点目的的。The above setting of function parameters is still somewhat purposeful in the following text.

g(f)形成相邻系数之和并使用推导上下文和解符号化参数的结果,其中稍后的修改可以依据空间位置执行。g(f) forms the result of the sum of adjacent coefficients and uses the derived context and desymbolization parameters, where later modifications can be performed depending on the spatial position.

g(x)获取一个单一的值。该值对应于函数f(x)的结果。了解这个之后,可以推导上下文选择和莱斯参数的参数化。g(x) takes a single value. This value corresponds to the result of the function f(x). Knowing this, we can deduce the context selection and the parameterization of the Rice parameter.

significant_coeff_flag:因为h本身可以是x的函数,所以f(x)或任何其他函数可以一次再一次地链接。对于右边4x4子区块中的所有位置,函数f(x),其中wi=1,t=1和h,是配置向f(x)一样配置但不反向的函数,使得最后得到值0或1,即h(x)=min(1,f(x))。significant_coeff_flag: Since h itself can be a function of x, f(x) or any other function can be chained again and again. For all positions in the right 4x4 subblock, the function f(x), where wi = 1, t = 1, and h is configured like f(x) but not inverted, so that the final value is 0 or 1, that is, h(x) = min(1, f(x)).

等效地,对于第二条目,这适用于底部4x4子区块。然后,prevCsbf=h0+2×h1,其中prefCsbf也可以是f(x)内的函数h。Equivalently, for the second entry, this applies to the bottom 4x4 subblock. Then, prevCsbf = h 0 + 2×h 1 , where prefCsbf may also be a function h within f(x).

如果设置t=∞,则可以推导语法元素coded_sub_block_flag的值。因此,获得0与3之间的值作为最外面f(x)的结果。g(x)的参数n然后可以是(xP+yP),xP,yP或(0,0)。如果得到f(x)=0,则n=(xP+yP,xP+yP+3),对于f(x)=1得到n=(yP,yP+1),对于f(x)=2得到n=(xP,xP+1),并且对于f(x)=3得到n=(0,0)。可以说,f(x)可以直接评估以便确定n。上文剩余的公式仅仅描述依据亮度/色度的自适应和对全局位置和扫描的进一步依赖性。就纯粹的4x4区块而言,f(x)可以经配置使得可以再现prevCsbf=4的值(也可以不同)并因此再现映射表。If t = ∞ is set, the value of the syntax element coded_sub_block_flag can be derived. Thus, a value between 0 and 3 is obtained as the result of the outermost f(x). The parameter n of g(x) can then be (xP+yP), xP, yP, or (0,0). If f(x) = 0 is obtained, then n = (xP+yP, xP+yP+3), for f(x) = 1 n = (yP, yP+1), for f(x) = 2 n = (xP, xP+1), and for f(x) = 3 n = (0,0). It can be said that f(x) can be directly evaluated to determine n. The remaining formulas above only describe the adaptation based on luma/chroma and the further dependence on global position and scanning. For a pure 4x4 block, f(x) can be configured so that the value of prevCsbf = 4 (which can also be different) and therefore the mapping table can be reproduced.

coeff_abs_level_greater1_flag:这里,子区块的评估类似,其中只评估先前的子区块。结果是,例如1或2(其只能是两个不同的值),其中t=2。这对应于依据先前子区块中的已经解码的级别的基础索引的选择。因此可以获得对位于子区块内的级别的直接依赖性。有效地,当解码0时执行一个索引的接通(从1开始,限制到3)并且一解码1就将其设为0。如果不考虑该布置,则参数化可以执行如下,从0开始。对于相同子区块中的所有级别wi=1并且t=3,即f(x)提供coeff_abs_greater1_flag=1的级别数量。对于进一步函数f(x),t=2,即编码语法元素coeff_abs_greater1_flag的位置数量。第一函数要受限制,即h0=f(x)=min(f0(x),2),并且第二函数要受限制,其中h1=f(x)=max(f1(x),1)。所有都与delta函数有关联(如果h1=1,则为0,否则为h0)。对于coeff_abs_greater2_flag,只使用集合的推导(对于链接的内部函数,将wi设为0)。coeff_abs_level_greater1_flag: Here, the evaluation of the subblocks is similar, where only the previous subblock is evaluated. The result is, for example, 1 or 2 (which can only be two different values), where t=2. This corresponds to the selection of the base index according to the already decoded level in the previous subblock. A direct dependency on the level located within the subblock can thus be obtained. Effectively, a switching on of one index (starting from 1 and limited to 3) is performed when decoding 0 and it is set to 0 as soon as 1 is decoded. If this arrangement is not taken into account, the parameterization can be performed as follows, starting from 0. For all levels w i = 1 and t = 3 in the same subblock, f(x) provides the number of levels for which coeff_abs_greater1_flag = 1. For the further function f(x), t = 2, i.e. the number of positions of the coding syntax element coeff_abs_greater1_flag. The first function is constrained to h 0 = f(x) = min(f 0 (x), 2), and the second function is constrained to h 1 = f(x) = max(f 1 (x), 1). All are associated with the delta function (0 if h 1 = 1, h 0 otherwise). For coeff_abs_greater2_flag, only the derivation of the set is used ( wi is set to 0 for chained inner functions).

coeff_abs_level_remaining:选择仅限于当前子区块并且n推导如上所述。coeff_abs_level_remaining: The selection is limited to the current subblock and n is derived as described above.

针对刚才概述的实施例,注意以下情况。特别地,根据上述描述,针对模板的定义存在不同可能性:模板可以是移动模板,其位置依据当前系数206的位置来确定。此示例性移动模板的概述在图13中用虚线208描述。模板由当前系数206位于其内的当前子区块、当前子区块右边和下面的相邻子区块、以及一个或多个子区块组成,如果具有其中的几个(其中之一可使用如上解释的扫描索引选择),则一个或多个子区块在子区块扫描202或任意子区块扫描202中仅位于当前子区块之前。作为替代方案,模板208可以简单包含区块10的所有变换系数12。With respect to the embodiment just outlined, the following considerations apply. Specifically, as described above, different possibilities exist for defining a template: the template can be a moving template, whose position is determined by the position of the current coefficient 206. An overview of this exemplary moving template is depicted in FIG13 by dashed line 208. The template consists of the current subblock within which the current coefficient 206 is located, the neighboring subblocks to the right and below the current subblock, and one or more subblocks, if any (one of which can be selected using the scan index as explained above), that precede the current subblock in the subblock scan 202 or any subblock scan 202. Alternatively, the template 208 can simply contain all transform coefficients 12 of the block 10.

在上述实例中,具有选择h和n的值的进一步不同的可能性。这些值因此可以以不同方式进行设置。针对wi这同样有点是真的,一直到涉及这些加权,其被设为1。同样可以被设为另一个非零值。甚至不必彼此相等。因为wi乘以h(xi),所以相同的积值可以通过以不同方式设置非零wi来实现。而且,符号化参数没有必要是莱斯参数,或不同的说,符号化方案不限于莱斯符号化方案。至于上下文索引选择,参照上述描述,其中已经注意到,最终上下文索引可以通过将使用函数g(f)获得的上下文索引与一些偏移量索引相加而获得,该偏移量索引例如对语法元素的各个类型是特定的,即对significant_coeff_flag、coeff_abs_level_greater1_flag和coeff_abs_level_greater2_flag是特定的。In the above example, there are further different possibilities for selecting the values of h and n. These values can therefore be set in different ways. This is also somewhat true for w i , as far as these weights are concerned, which are set to 1. They can also be set to another non-zero value. They do not even have to be equal to each other. Because w i is multiplied by h( xi ), the same product value can be achieved by setting non-zero w i in different ways. Moreover, the symbolization parameters do not necessarily have to be Rice parameters, or to put it differently, the symbolization scheme is not limited to the Rice symbolization scheme. As for the context index selection, refer to the above description, in which it has been noted that the final context index can be obtained by adding the context index obtained using the function g(f) to some offset index, which is, for example, specific to each type of syntax element, that is, specific to significant_coeff_flag, coeff_abs_level_greater1_flag and coeff_abs_level_greater2_flag.

虽然已经就装置的上下文描述了若干方面,但显然这些方面也表示对应的方法的描述,其中,方框或装置是与方法步骤或方法步骤的特征对应的。同理,在方法步骤的上下文中描述的方面也表示对应的方框或对应的装置的项目或特征结构的描述。部分或全部方法步骤可通过(或使用)硬件装置执行,类似例如微处理器、可编程计算机或电子电路。在某些实施例中,最重要方法步骤中的某一者或多者可通过这种装置执行。Although several aspects have been described in the context of an apparatus, it is clear that these aspects also represent descriptions of corresponding methods, where blocks or apparatuses correspond to method steps or features of method steps. Similarly, aspects described in the context of method steps also represent descriptions of corresponding blocks or items or features of corresponding apparatuses. Some or all of the method steps may be performed by (or using) hardware devices, such as, for example, microprocessors, programmable computers, or electronic circuits. In certain embodiments, one or more of the most important method steps may be performed by such devices.

根据某些实现的要求,本发明的实施例已经在硬件或软件中实现。实现可使用数字存储介质进行,例如软盘、DVD、蓝光盘、CD、ROM、PROM、EPROM、EEPROM或闪存,其上存储有电子可读取控制信号,其与可编程计算机系统协作(或可协作),从而执行各个方法。因此数字存储介质可为计算机可读介质。Depending on the requirements of certain implementations, embodiments of the present invention have been implemented in hardware or software. Implementation can be performed using a digital storage medium, such as a floppy disk, DVD, Blu-ray disc, CD, ROM, PROM, EPROM, EEPROM, or flash memory, having stored thereon electronically readable control signals that cooperate (or can cooperate) with a programmable computer system to perform the respective methods. The digital storage medium can therefore be a computer-readable medium.

根据本发明的某些实施例包括具有电子可读控制信号的数据载体,其可与可编程计算机系统协作,以便执行本文所述方法中的一者。Some embodiments according to the invention comprise a data carrier having electronically readable control signals, which are capable of cooperating with a programmable computer system, such that one of the methods described herein is performed.

通常情况下,本发明的实施例可实现为具有程序代码的计算机程序产品,当该计算机程序产品在计算机上运行时,该程序代码可操作用来执行该等方法中的一者。该程序代码例如可存储在机器可读载体上。Generally, the embodiments of the present invention can be implemented as a computer program product having a program code, which, when the computer program product runs on a computer, is operable to perform one of the methods. The program code can be stored on a machine-readable carrier, for example.

其它实施例包括用于执行本文所述方法中的一者且存储在机器可读载体上的计算机程序。Other embodiments comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier.

换句话说,因此本发明方法的实施例为具有程序代码的一种计算机程序,用于当该计算机程序在计算机上运行执行本文所述方法中的一者。In other words, an embodiment of the inventive method is, therefore, a computer program having a program code for performing one of the methods described herein, when the computer program runs on a computer.

因此,本发明方法的进一步实施例为一种数据载体(或数字存储介质或计算机可读介质)包括于其上记录的用于执行本文所述方法中的一者的计算机程序。数据载体、数字存储介质或记录介质典型地是有形的和/或非转变的。A further embodiment of the inventive method is, therefore, a data carrier (or a digital storage medium or a computer-readable medium) comprising, recorded thereon, the computer program for performing one of the methods described herein. The data carrier, the digital storage medium or the recorded medium are typically tangible and/or non-transferable.

因此,本发明方法的进一步实施例为表示用于执行本文所述方法中的一者的计算机程序的数据流或信号序列。数据流或信号序列例如可配置来经由数据通讯连接例如通过互联网传送。A further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein.The data stream or the sequence of signals can, for example, be configured to be transmitted via a data communication connection, for example via the Internet.

进一步实施例包括一种处理构件,例如计算机或可编程逻辑设备,被配置来或适用于执行本文所述方法中的一者。A further embodiment comprises a processing means, for example a computer or a programmable logic device, configured to or adapted to perform one of the methods described herein.

进一步实施例包括其上安装有用于执行本文所述方法中的一者的计算机程序的计算机。A further embodiment comprises a computer having installed thereon the computer program for performing one of the methods described herein.

根据本发明的进一步实施例包括一种装置或系统,其配置为(例如电子地或光学地)将用于执行本文描述方法的其中之一的计算机程序传递到接收器。接收器可以例如是计算机、移动设备、存储器设备等等。该装置或系统可以例如包括用于将计算机程序传递到接收器的文件服务器。A further embodiment according to the present invention comprises an apparatus or system configured to deliver (e.g. electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may be, for example, a computer, a mobile device, a memory device, etc. The apparatus or system may, for example, comprise a file server for delivering the computer program to the receiver.

在某些实施例中,可编程逻辑设备(例如现场可编程门阵列)可用来执行本文所述方法的一部分或全部功能。在某些实施例中,现场可编程门阵列可与微处理器协作以执行本文所述方法中的一者。通常情况下,该等方法优选由硬件装置执行。In some embodiments, a programmable logic device (e.g., a field programmable gate array) may be used to perform some or all of the functionality of the methods described herein. In some embodiments, a field programmable gate array may cooperate with a microprocessor to perform one of the methods described herein. Typically, such methods are preferably performed by hardware.

上述实施例仅用于举例说明本发明的原理。应理解,本文所述的配置及细节的修改及变化对本领域的技术人员来说是显而易见的。因此,意图仅受随附的专利权利要求的范围所限制,而不受由本文实施例的描述及解说所呈现的特定细节所限制。The above embodiments are intended to illustrate the principles of the present invention only. It should be understood that modifications and variations of the configurations and details described herein will be apparent to those skilled in the art. Accordingly, it is intended that the present invention be limited only by the scope of the appended patent claims and not by the specific details presented in the description and explanation of the embodiments herein.

Claims (44)

1.一种用于从数据流(32)解码具有变换系数级别的多个变换系数(12)的装置,包括:1. An apparatus for decoding a plurality of transform coefficients (12) having transform coefficient levels from a data stream (32), comprising: 上下文自适应熵解码器(80),被配置为针对当前变换系数(x)从所述数据流(32)对一个或多个符号的第一集合(44)进行熵解码;a context-adaptive entropy decoder (80) configured to entropy decode a first set of one or more symbols (44) from the data stream (32) for a current transform coefficient (x); 解符号化器(82),被配置为根据第一符号化方案将一个或多个符号的所述第一集合(44)映射到第一级别区间(16)内的变换系数级别上;a de-symbolizer (82) configured to map said first set of one or more symbols (44) onto transform coefficient levels within a first level interval (16) according to a first symbolization scheme; 提取器(84),被配置为如果一个或多个符号的所述第一集合根据所述第一符号化方案映射到其上的所述变换系数级别是所述第一级别区间(16)的最大级别,则从所述数据流(32)中提取符号的第二集合(42),an extractor (84) configured to extract a second set (42) of symbols from the data stream (32) if the transform coefficient level to which the first set of one or more symbols is mapped according to the first symbolization scheme is a maximum level of the first level interval (16), 其中,所述解符号化器(82)被配置为根据第二符号化方案将符号的所述第二集合(42)映射到第二级别区间(18)内的位置上,所述第二符号化方案是根据符号化参数可参数化的,wherein the desymbolizer (82) is configured to map the second set of symbols (42) to positions within a second level interval (18) according to a second symbolization scheme, the second symbolization scheme being parameterizable according to a symbolization parameter, 其中,所述上下文自适应熵解码器(80)被配置为,在从所述数据流(32)对一个或多个符号的所述第一集合(44)的至少一个预定符号进行熵解码的过程中,经由通过函数(52)参数可参数化的函数依据先前解码的变换系数使用上下文,其中,函数参数被设置为第一设定,并且wherein the context adaptive entropy decoder (80) is configured to use a context in dependence on previously decoded transform coefficients during entropy decoding of at least one predetermined symbol of the first set (44) of one or more symbols from the data stream (32) via a function parameterizable by a function (52) parameter, wherein the function parameter is set to a first setting, and 其中,所述装置还包括符号化参数确定器(86),被配置为如果一个或多个符号的所述第一集合(44)根据所述第一符号化方案映射到其上的所述变换系数级别是所述第一级别区间(16)的最大级别,则经由所述函数参数被设置为第二设定的函数(52),依据所述先前解码的变换系数确定符号化参数(46),The apparatus further comprises a symbolization parameter determiner (86) configured to determine a symbolization parameter (46) based on the previously decoded transform coefficients via a function (52) in which the function parameter is set to a second setting, if the transform coefficient level to which the first set of one or more symbols (44) is mapped according to the first symbolization scheme is the maximum level of the first level interval (16), 其中,所述提取器、所述解符号化器以及所述符号化参数确定器被配置为使用锯齿或光栅扫描处理不同变换区块的变换系数。The extractor, the de-symbolizer and the symbolization parameter determiner are configured to process transform coefficients of different transform blocks using a zigzag or raster scan. 2.根据权利要求1所述的装置,其中,所述装置经配置使得限定一方面所述先前解码的变换系数,和用于对所述上下文进行索引的上下文索引偏移量数,以及另一方面所述符号化参数之间的关系的函数为:2. The apparatus according to claim 1 , wherein the apparatus is configured such that a function defining a relationship between, on the one hand, the previously decoded transform coefficients and a context index offset number for indexing the context, and, on the other hand, the symbolization parameter is: g(f(x)),其中,且g(f(x)), where, and 其中,in, and 其中,in, t,wi和形成所述函数参数,其中,t作为常数输入,x={x1,...,xd},i∈{1...d}的xi表示先前解码的变换系数i,t, w i and form the function parameters, where t is input as a constant, x={x 1 ,...,x d }, i∈{1...d} where x i represents the previously decoded transform coefficient i, wi是加权值,其中的每一个可以等于一或不等于一,并且h是常数或xi的函数。w i are weight values, each of which may be equal to one or not equal to one, and h is a constant or a function of x i . 3.根据权利要求2所述的装置,其中,所述上下文自适应熵解码器经配置使得来自所述先前解码的变换系数的上下文的依赖性经由函数:3. The apparatus of claim 2 , wherein the context adaptive entropy decoder is configured such that the dependency of the context from the previously decoded transform coefficients is determined via the function: 使得在所述先前解码的变换系数i的所述变换系数级别在所述第一级别区间内的情况下,xi等于所述先前解码的变换系数i的所述变换系数级别,并在所述先前解码的变换系数i的所述变换系数级别在所述第二级别区间内的情况下等于所述第一级别区间的所述最大级别,或者such that, if the transform coefficient level of the previously decoded transform coefficient i is within the first level interval, x i is equal to the transform coefficient level of the previously decoded transform coefficient i, and is equal to the maximum level of the first level interval if the transform coefficient level of the previously decoded transform coefficient i is within the second level interval, or 使得xi等于所述先前解码的变换系数i的所述变换系数级别,与所述先前解码的变换系数i的所述变换系数级别在所述第一级别区间或所述第二级别区间内无关。Let x i be equal to the transform coefficient level of the previously decoded transform coefficient i, regardless of whether the transform coefficient level of the previously decoded transform coefficient i is within the first level interval or the second level interval. 4.根据权利要求2所述的装置,其中,符号化参数确定器经配置使得所述符号化参数对所述先前解码的变换系数的依赖性经由函数使得xi等于所述先前解码的变换系数i的所述变换系数级别,与所述先前解码的变换系数i的所述变换系数级别在所述第一级别区间或所述第二级别区间内无关。4. The apparatus of claim 2 , wherein the symbolization parameter determiner is configured such that the dependency of the symbolization parameter on the previously decoded transform coefficient is such that x i is equal to the transform coefficient level of the previously decoded transform coefficient i via a function, regardless of whether the transform coefficient level of the previously decoded transform coefficient i is within the first level interval or the second level interval. 5.根据权利要求2所述的装置,其中,所述装置经配置使得n1≤...≤ndfThe apparatus according to claim 2 , wherein the apparatus is configured such that n 1 ≤ ... ≤ n df . 6.根据权利要求2所述的装置,其中,所述装置经配置使得h为|xi|-t。The apparatus of claim 2 , wherein the apparatus is configured such that h is | xi |−t. 7.根据权利要求1所述的装置,其中,所述装置被配置为依据所述变换系数相对于当前变换系数的相对空间布置从空间上确定所述先前解码的变换系数。7 . The apparatus of claim 1 , wherein the apparatus is configured to spatially determine the previously decoded transform coefficients as a function of a relative spatial arrangement of the transform coefficients with respect to a current transform coefficient. 8.根据权利要求1所述的装置,其中,所述装置被配置为沿预定的扫描顺序(14)从所述数据流(32)中提取关于变换系数区块的变换系数之中的最后非零变换系数的位置的信息,其中,多个所述变换系数包含从沿所述扫描顺序的所述最后非零变换系数至所述变换系数区块的DC变换系数的变换系数。8. The apparatus according to claim 1 , wherein the apparatus is configured to extract information about a position of a last non-zero transform coefficient among transform coefficients of a transform coefficient block from the data stream ( 32 ) along a predetermined scanning order ( 14 ), wherein the plurality of transform coefficients include transform coefficients from the last non-zero transform coefficient along the scanning order to a DC transform coefficient of the transform coefficient block. 9.根据权利要求8所述的装置,其中,解符号化器被配置为使用用于映射所述最后非零变换系数的一个或多个符号的第一集合的修改后的第一符号化方案,其中,仅涉及所述第一级别区间内的非零变换系数级别,同时推定零级别不应用于最后变换系数。9. The apparatus of claim 8 , wherein the desymbolizer is configured to use a modified first symbolization scheme for mapping a first set of one or more symbols for the last non-zero transform coefficient, wherein only non-zero transform coefficient levels within the first level interval are involved, while it is presumed that a zero level does not apply to the last transform coefficient. 10.根据权利要求8所述的装置,其中,上下文自适应熵解码器被配置为使用上下文的单独集合用于对所述最后非零变换系数的一个或多个符号的所述第一集合进行熵解码,所述单独集合独立于在对与所述最后非零变换系数不同的一个或多个符号的所述第一集合进行熵解码中使用的上下文。10. The apparatus of claim 8 , wherein the context adaptive entropy decoder is configured to use a separate set of contexts for entropy decoding the first set of one or more symbols of the last non-zero transform coefficient, the separate set being independent of contexts used in entropy decoding the first set of one or more symbols different from the last non-zero transform coefficient. 11.根据权利要求8所述的装置,其中,所述上下文自适应熵解码器按照从所述变换系数区块的所述最后非零变换系数至所述DC变换系数的相反扫描顺序遍历所述多个变换系数。11 . The apparatus of claim 8 , wherein the context adaptive entropy decoder traverses the plurality of transform coefficients in a reverse scanning order from the last non-zero transform coefficient of the transform coefficient block to the DC transform coefficient. 12.根据权利要求1所述的装置,其中,所述装置被配置为在两次扫描中从所述数据流解码所述多个变换系数,其中,所述上下文自适应熵解码器被配置为按照对应于所述变换系数的第一扫描的顺序从所述数据流对所述变换系数的符号的所述第一集合进行熵解码,其中,所述提取器被配置为随后按照对应于在所述变换系数的第二扫描内出现符号的所述第一集合映射到所述第一级别区间的所述最大级别上的所述变换系数的顺序从所述数据流中提取符号的所述第一集合映射到所述第一级别区间的所述最大级别上的所述变换系数的符号的第二集合。12. An apparatus according to claim 1, wherein the apparatus is configured to decode the plurality of transform coefficients from the data stream in two scans, wherein the context adaptive entropy decoder is configured to entropy decode the first set of symbols of the transform coefficients from the data stream in an order corresponding to the first scan of the transform coefficients, and wherein the extractor is configured to subsequently extract from the data stream a second set of symbols of the transform coefficients mapped to the maximum level of the first level interval in an order corresponding to the mapping of the first set of symbols to the transform coefficients at the maximum level of the first level interval. 13.根据权利要求1所述的装置,其中,所述装置被配置为在一次扫描中依次从所述数据流解码所述多个变换系数,其中,符号的所述第二集合穿插在所述变换系数的符号的第一集合之间的所述数据流内,并且其中,所述上下文自适应熵解码器和所述提取器被配置为,为按照所述一次扫描的扫描顺序的每个变换系数,在继所述上下文自适应熵解码器从所述数据流对符号的所述第一集合映射到所述第一级别区间的所述最大级别上的各个变换系数的一个或多个符号的所述第一集合进行熵解码之后立即从所述数据流中提取符号的所述第一集合映射到所述第一级别区间的所述最大级别上的各个变换系数的符号的所述第二集合。13. The apparatus of claim 1 , wherein the apparatus is configured to decode the plurality of transform coefficients sequentially from the data stream in a scan, wherein the second set of symbols is interspersed within the data stream between the first set of symbols for the transform coefficients, and wherein the context adaptive entropy decoder and the extractor are configured to extract, for each transform coefficient in a scan order of the scan, the second set of symbols that map from the data stream to the respective transform coefficients at the maximum level of the first level interval immediately after the context adaptive entropy decoder entropy decodes, from the data stream, the first set of symbols that map to the respective transform coefficients at the maximum level of the first level interval. 14.根据权利要求1所述的装置,其中,所述提取器被配置为直接或使用利用固定概率分布的熵解码从所述数据流中提取符号的所述第二集合。14. The apparatus of claim 1, wherein the extractor is configured to extract the second set of symbols from the data stream directly or using entropy decoding with a fixed probability distribution. 15.根据权利要求1所述的装置,其中,所述第一符号化方案是截断的一元二值化方案。15. The apparatus of claim 1, wherein the first symbolization scheme is a truncated unary binarization scheme. 16.根据权利要求1所述的装置,其中,所述第二符号化方案使得符号的所述第二集合是莱斯码。16. The apparatus of claim 1, wherein the second symbolization scheme is such that the second set of symbols is a Rice code. 17.根据权利要求1所述的装置,其中,所述数据流在其中编码有深度图。17. The apparatus of claim 1, wherein the data stream has a depth map encoded therein. 18.一种包括根据权利要求1所述的装置的图片解码器,其中,所述图片解码器被配置为,在解码图片的过程中,使来自变换系数区块的所述图片的区块再变换,其中,所述装置被配置为使用不同尺寸的变换系数区块、不同尺寸的变换系数区块和/或不同信息分量类型的变换系数区块的函数,逐变换系数区块地依次解码变换系数区块的多个变换系数。18. A picture decoder comprising an apparatus according to claim 1, wherein the picture decoder is configured to, during decoding of a picture, re-transform blocks of the picture from transform coefficient blocks, wherein the apparatus is configured to sequentially decode multiple transform coefficients of a transform coefficient block on a transform coefficient block-by-transform coefficient block basis using functions of transform coefficient blocks of different sizes, transform coefficient blocks of different sizes and/or transform coefficient blocks of different information component types. 19.根据权利要求18所述的图片解码器,其中,所述装置被配置为,针对所述变换系数区块的不同频率部分,针对不同尺寸的变换系数区块和/或针对不同信息分量类型的变换系数区块,使用上下文的不同集合,其中,所述当前变换系数的所述上下文依据所述先前解码的变换系数进行选择。19. A picture decoder according to claim 18, wherein the device is configured to use different sets of contexts for different frequency parts of the transform coefficient block, for transform coefficient blocks of different sizes and/or for transform coefficient blocks of different information component types, wherein the context of the current transform coefficient is selected based on the previously decoded transform coefficient. 20.一种用于将具有变换系数级别的多个变换系数编码成数据流(32)的装置,包括:20. An apparatus for encoding a plurality of transform coefficients having transform coefficient levels into a data stream (32), comprising: 符号化器(34),被配置为The symbolizer (34) is configured to 如果当前变换系数的变换系数级别在第一级别区间(16)内,则根据第一符号化方案将当前变换系数映射到一个或多个符号的第一集合上,并且If the transform coefficient level of the current transform coefficient is within a first level interval (16), mapping the current transform coefficient onto a first set of one or more symbols according to a first symbolization scheme, and 如果所述当前变换系数的变换系数级别在第二级别区间(18)内,则根据第二符号化方案将当前变换系数映射到符号的第二集合和符号的第三集合的组合上,所述第一级别区间(16)的最大级别根据所述第一符号化方案映射到符号的第二集合上,符号的第三集合依据所述第二级别区间(18)内的所述当前变换系数的变换系数级别的位置,所述第二符号化方案根据符号化参数(46)是可参数化的;If the transform coefficient level of the current transform coefficient is within a second level interval (18), mapping the current transform coefficient to a combination of a second set of symbols and a third set of symbols according to a second symbolization scheme, the maximum level of the first level interval (16) being mapped to the second set of symbols according to the first symbolization scheme, the third set of symbols being dependent on the position of the transform coefficient level of the current transform coefficient within the second level interval (18), the second symbolization scheme being parameterizable according to a symbolization parameter (46); 上下文自适应熵编码器(36),被配置为如果所述当前变换系数的变换系数级别在所述第一级别区间内,则将一个或多个符号的所述第一集合熵编码成所述数据流,并且如果所述当前变换系数的变换系数级别在所述第二级别区间内,则将一个或多个符号的所述第二集合熵编码成所述数据流,其中,所述上下文自适应熵编码器被配置为,在将一个或多个符号的所述第二集合的至少一个预定符号熵编码成所述数据流的过程中,经由通过函数参数可参数化的函数依据先前编码的变换系数使用上下文,其中,所述函数参数被设置为第一设定;以及a context adaptive entropy encoder (36) configured to entropy encode the first set of one or more symbols into the data stream if the transform coefficient level of the current transform coefficient is within the first level interval, and to entropy encode the second set of one or more symbols into the data stream if the transform coefficient level of the current transform coefficient is within the second level interval, wherein the context adaptive entropy encoder is configured to use a context in dependence on a previously encoded transform coefficient via a function parameterizable by a function parameter set to a first setting during entropy encoding of at least one predetermined symbol of the second set of one or more symbols into the data stream; 符号化参数确定器(38),被配置为如果所述当前变换系数的变换系数级别在所述第二级别区间内,则经由所述函数参数被设置为第二设定所述函数依据所述先前编码的变换系数确定用于映射到符号的所述第三集合上的所述符号化参数(46);以及a symbolization parameter determiner (38) configured to determine, if the transform coefficient level of the current transform coefficient is within the second level interval, the symbolization parameter (46) for mapping onto the third set of symbols from the previously encoded transform coefficients via the function parameter being set to a second setting; and 插入器(40),被配置为如果所述当前变换系数的变换系数级别在所述第二级别区间内,则将符号的所述第三集合插入到所述数据流中,an inserter (40) configured to insert the third set of symbols into the data stream if the transform coefficient level of the current transform coefficient is within the second level interval, 其中,所述符号化器以及所述符号化参数确定器被配置为使用锯齿或光栅扫描处理不同变换区块的变换系数。The symbolizer and the symbolization parameter determiner are configured to process transform coefficients of different transform blocks using a zigzag or raster scan. 21.根据权利要求20所述的装置,其中,所述装置经配置使得限定一方面所述先前编码的变换系数,和对所述上下文进行索引的上下文索引编号(56),和另一方面所述符号化参数(46)之间的关系的函数为21. The apparatus according to claim 20, wherein the apparatus is configured such that the function defining the relationship between the previously coded transform coefficients and the context index number (56) indexing the context on the one hand, and the symbolization parameter (46) on the other hand is g(f(x)),其中,且g(f(x)), where, and 其中,in, and 其中,in, t,wi和形成所述函数参数,其中,t作为常数输入,x={x1,...,xd},xi中i∈{1...d}表示先前编码的变换系数i,t, w i and form the function parameters, where t is input as a constant, x = {x 1 , ..., x d } , where i∈{1...d} represents the previously coded transform coefficient i, wi是加权值,其中的每一个可以等于一或不等于一,并且h是常数或xi的函数。w i are weight values, each of which may be equal to one or not equal to one, and h is a constant or a function of x i . 22.根据权利要求21所述的装置,其中,所述上下文自适应熵编码器(36)经配置使得来自所述先前编码的变换系数的所述上下文的依赖性经由函数22. The apparatus of claim 21, wherein the context adaptive entropy encoder (36) is configured such that the dependency of the context from the previously encoded transform coefficients is determined via the function 使得在所述变换系数级别在所述第一级别区间内的情况下,xi等于所述先前编码的变换系数i的所述变换系数级别,并在所述先前编码的变换系数i的所述变换系数级别在所述第二级别区间(18)内的情况下等于所述第一级别区间(16)的所述最大级别,或者such that x i is equal to the transform coefficient level of the previously encoded transform coefficient i if the transform coefficient level is within the first level interval, and is equal to the maximum level of the first level interval (16) if the transform coefficient level of the previously encoded transform coefficient i is within the second level interval (18), or 使得xi等于所述先前编码的变换系数i的所述变换系数级别,与所述先前编码的变换系数i的所述变换系数级别在所述第一级别区间或所述第二级别区间内无关。Let x i be equal to the transform coefficient level of the previously encoded transform coefficient i, regardless of whether the transform coefficient level of the previously encoded transform coefficient i is within the first level interval or the second level interval. 23.根据权利要求21所述的装置,其中,所述符号化参数确定器(38)经配置使得所述符号化参数对所述先前编码的变换系数的依赖性经由所述函数:23. The apparatus of claim 21 , wherein the symbolization parameter determiner (38) is configured such that the dependency of the symbolization parameter on the previously encoded transform coefficients is determined via the function: 使得xi等于所述先前编码的变换系数i的所述变换系数级别,与所述先前编码的变换系数i的所述变换系数级别在所述第一级别区间或所述第二级别区间内无关。Let x i be equal to the transform coefficient level of the previously encoded transform coefficient i, regardless of whether the transform coefficient level of the previously encoded transform coefficient i is within the first level interval or the second level interval. 24.根据权利要求21所述的装置,其中,所述装置经配置使得24. The apparatus of claim 21, wherein the apparatus is configured such that 25.根据权利要求21所述的装置,其中,所述装置经配置使得h为|xi|-t。25. The apparatus of claim 21, wherein the apparatus is configured such that h is |xi | - t. 26.根据权利要求20所述的装置,其中,所述装置被配置为依据所述变换系数相对于所述当前变换系数的相对空间布置从空间上确定所述先前编码的变换系数。26. The apparatus of claim 20, wherein the apparatus is configured to spatially determine the previously encoded transform coefficients as a function of a relative spatial arrangement of the transform coefficients with respect to the current transform coefficients. 27.根据权利要求20所述的装置,其中,所述装置被配置为沿预定扫描顺序确定变换系数区块的变换系数之中的最后非零变换系数的位置,并将关于所述位置的信息插入到所述数据流中,其中,所述多个变换系数包含从最后非零变换系数至预定扫描顺序的开始的变换系数。27. An apparatus according to claim 20, wherein the apparatus is configured to determine a position of a last non-zero transform coefficient among transform coefficients of a transform coefficient block along a predetermined scanning order and insert information about the position into the data stream, wherein the plurality of transform coefficients include transform coefficients from the last non-zero transform coefficient to the beginning of the predetermined scanning order. 28.根据权利要求27所述的装置,其中,所述符号化器被配置为使用用于符号化最后变换系数的修改后的第一符号化方案,其中,仅涉及所述第一级别区间内的非零变换系数级别,同时推定零级别不应用于所述最后变换系数。28. The apparatus of claim 27, wherein the symbolizer is configured to use a modified first symbolization scheme for symbolizing a last transform coefficient, wherein only non-zero transform coefficient levels within the first level interval are involved, while it is presumed that a zero level does not apply to the last transform coefficient. 29.根据权利要求27所述的装置,其中,所述上下文自适应熵编码器被配置为使用上下文的单独集合用于对所述最后非零变换系数的一个或多个符号的所述第一集合进行熵编码,所述单独集合独立于在对与所述最后非零变换系数不同的一个或多个符号的所述第一集合进行熵编码中使用的上下文。29. The apparatus of claim 27 , wherein the context adaptive entropy encoder is configured to use a separate set of contexts for entropy encoding the first set of one or more symbols of the last non-zero transform coefficient, the separate set being independent of contexts used in entropy encoding the first set of one or more symbols different from the last non-zero transform coefficient. 30.根据权利要求27所述的装置,其中,所述上下文自适应熵编码器按照从所述变换系数区块的所述最后非零变换系数至DC变换系数的相反扫描顺序遍历所述多个变换系数。30. The apparatus of claim 27, wherein the context adaptive entropy encoder traverses the plurality of transform coefficients in a reverse scanning order from the last non-zero transform coefficient to a DC transform coefficient of the transform coefficient block. 31.根据权利要求20所述的装置,其中,所述装置被配置为在两次扫描中将所述多个变换系数编码成所述数据流,其中,所述上下文自适应熵编码器被配置为按照对应于所述变换系数的第一扫描的顺序将所述变换系数的符号的所述第一集合和所述第二集合熵编码成所述数据流,其中,插入器被配置为随后按照对应于在所述变换系数的第二扫描内出现具有所述第二级别区间内的变换系数级别的所述变换系数的顺序将具有所述第二级别区间内的所述变换系数级别的所述变换系数的符号的所述第三集合插入到所述数据流中。31. An apparatus according to claim 20, wherein the apparatus is configured to encode the plurality of transform coefficients into the data stream in two scans, wherein the context adaptive entropy encoder is configured to entropy encode the first set and the second set of symbols of the transform coefficients into the data stream in an order corresponding to the first scan of the transform coefficients, and wherein the inserter is configured to subsequently insert the third set of symbols of the transform coefficients having the transform coefficient levels within the second level interval into the data stream in an order corresponding to the occurrence of the transform coefficients having the transform coefficient levels within the second level interval in the second scan of the transform coefficients. 32.根据权利要求20所述的装置,其中,所述装置被配置为在一次扫描中依次将所述多个变换系数编码成所述数据流,其中,所述上下文自适应熵编码器和所述插入器被配置为,为按照所述一次扫描的扫描顺序的每个变换系数,在继所述上下文自适应熵编码器将具有所述第二级别区间内的变换系数级别的所述各个变换系数的一个或多个符号的所述第二集合熵编码成所述数据流之后立即将具有所述第二级别区间内的变换系数级别的所述各个变换系数的符号的所述第三集合插入到所述数据流中,使得符号的所述第三集合被穿插入所述变换系数的符号的所述第一集合和所述第二集合之间的所述数据流。32. An apparatus according to claim 20, wherein the apparatus is configured to encode the plurality of transform coefficients into the data stream sequentially in a scan, wherein the context adaptive entropy encoder and the inserter are configured to, for each transform coefficient in the scan order of the scan, insert the third set of symbols of the respective transform coefficients having transform coefficient levels within the second level interval into the data stream immediately after the context adaptive entropy encoder entropy encodes the second set of one or more symbols of the respective transform coefficients having transform coefficient levels within the second level interval into the data stream, so that the third set of symbols is inserted into the data stream between the first set and the second set of symbols of the transform coefficients. 33.根据权利要求20所述的装置,其中,所述插入器被配置为直接或使用利用固定概率分布的熵编码将符号的所述第三集合插入到所述数据流中。33. The apparatus of claim 20, wherein the inserter is configured to insert the third set of symbols into the data stream directly or using entropy coding with a fixed probability distribution. 34.根据权利要求20所述的装置,其中,所述第一符号化方案是截断的一元二值化方案。34. The apparatus of claim 20, wherein the first symbolization scheme is a truncated unary binarization scheme. 35.根据权利要求20所述的装置,其中,所述第二符号化方案使得符号的所述第三集合是莱斯码。35. The apparatus of claim 20, wherein the second symbolization scheme is such that the third set of symbols is a Rice code. 36.一种包括根据权利要求20所述的装置的图片编码器,其中,所述图片编码器被配置为,在编码图片的过程中,使所述图片的区块变换成变换系数区块,其中,所述装置(62)被配置为使用不同尺寸的区块的函数(52)逐变换系数区块地编码所述变换系数区块的多个变换系数。36. A picture encoder comprising an apparatus according to claim 20, wherein the picture encoder is configured to transform blocks of the picture into transform coefficient blocks during encoding of the picture, wherein the apparatus (62) is configured to encode a plurality of transform coefficients of the transform coefficient blocks on a transform coefficient block-by-transform coefficient block basis using functions (52) of blocks of different sizes. 37.根据权利要求36所述的图片编码器,其中,所述装置被配置为,针对变换系数区块的不同频率部分,使用上下文的不同集合,其中,所述当前变换系数的所述上下文依据所述先前编码的变换系数进行选择。37. The picture encoder of claim 36, wherein the apparatus is configured to use different sets of contexts for different frequency parts of a block of transform coefficients, wherein the context for the current transform coefficient is selected in dependence on the previously encoded transform coefficients. 38.根据权利要求37所述的装置,其中,所述数据流在其中编码有深度图。38. The apparatus of claim 37, wherein the data stream has a depth map encoded therein. 39.一种用于从数据流(32)解码具有变换系数级别的多个变换系数(12)的方法,包括:39. A method for decoding a plurality of transform coefficients (12) having transform coefficient levels from a data stream (32), comprising: 针对当前变换系数(x),从所述数据流(32)对一个或多个符号的第一集合(44)进行熵解码;entropy decoding a first set (44) of one or more symbols from the data stream (32) for a current transform coefficient (x); 根据第一符号化方案将一个或多个符号的所述第一集合(44)解符号化映射到第一级别区间(16)内的变换系数级别上;Desymbolically mapping the first set of one or more symbols (44) to transform coefficient levels within a first level interval (16) according to a first symbolization scheme; 如果一个或多个符号的所述第一集合根据所述第一符号化方案映射到其上的所述变换系数级别是所述第一级别区间(16)的最大级别,则从所述数据流(32)提取符号的第二集合(42),extracting a second set (42) of symbols from the data stream (32) if the transform coefficient level to which the first set of one or more symbols is mapped according to the first symbolization scheme is a maximum level of the first level interval (16), 其中,所述解符号化映射包括根据第二符号化方案将符号的所述第二集合(42)映射到第二级别区间(18)内的位置上,所述第二符号化方案是根据符号化参数可参数化的,wherein the desymbolization mapping comprises mapping the second set of symbols (42) to positions within a second level interval (18) according to a second symbolization scheme, the second symbolization scheme being parameterizable according to a symbolization parameter, 熵解码涉及通过经由通过函数(52)参数可参数化的函数使用依据先前解码的变换系数的上下文来从数据流(32)对一个或多个符号的所述第一集合(44)的至少一个预定符号进行熵解码,其中,函数参数被设置为第一设定,并且Entropy decoding involves entropy decoding at least one predetermined symbol of said first set (44) of one or more symbols from a data stream (32) using a context from previously decoded transform coefficients via a function parameterizable by a function (52) parameter, wherein the function parameter is set to a first setting, and 其中,所述方法还包括:The method further comprises: 如果一个或多个符号的所述第一集合(44)根据所述第一符号化方案映射到其上的所述变换系数级别是所述第一级别区间(16)的最大级别,则经由所述函数参数被设置为第二设定的函数(52),依据所述先前解码的变换系数确定所述符号化参数(46),determining the symbolization parameter (46) from the previously decoded transform coefficients via a function (52) in which the function parameter is set to a second setting, if the transform coefficient level to which the first set of one or more symbols (44) is mapped according to the first symbolization scheme is a maximum level of the first level interval (16), 其中,使用锯齿或光栅扫描处理不同变换区块的变换系数。Here, the transform coefficients of different transform blocks are processed using zigzag or raster scanning. 40.根据权利要求39所述的方法,其中,所述数据流在其中编码有深度图。40. The method of claim 39, wherein the data stream has a depth map encoded therein. 41.一种用于将具有变换系数级别的多个变换系数编码成数据流(32)的方法,包括:41. A method for encoding a plurality of transform coefficients having transform coefficient levels into a data stream (32), comprising: 如果当前变换系数的变换系数级别在第一级别区间(16)内,则根据第一符号化方案将当前变换系数映射到一个或多个符号的第一集合上,并且If the transform coefficient level of the current transform coefficient is within a first level interval (16), mapping the current transform coefficient onto a first set of one or more symbols according to a first symbolization scheme, and 如果所述当前变换系数的变换系数级别在第二级别区间(18)内,则根据第二符号化方案将当前变换系数映射到符号的第二集合和符号的第三集合的组合上,所述第一级别区间(16)的最大级别根据所述第一符号化方案映射到符号的第二集合上,符号的第三集合依据所述第二级别区间(18)内的所述当前变换系数的变换系数级别的位置,所述第二符号化方案根据符号化参数(46)是可参数化的;If the transform coefficient level of the current transform coefficient is within a second level interval (18), mapping the current transform coefficient to a combination of a second set of symbols and a third set of symbols according to a second symbolization scheme, the maximum level of the first level interval (16) being mapped to the second set of symbols according to the first symbolization scheme, the third set of symbols being dependent on the position of the transform coefficient level of the current transform coefficient within the second level interval (18), the second symbolization scheme being parameterizable according to a symbolization parameter (46); 上下文自适应熵编码,包括,如果所述当前变换系数的变换系数级别在所述第一级别区间内,则将所述一个或多个符号的第一集合熵编码成所述数据流,并且如果所述当前变换系数的变换系数级别在所述第二级别区间内,则将一个或多个符号的所述第二集合熵编码成所述数据流,其中,所述上下文自适应熵编码涉及,在将一个或多个符号的所述第二集合的至少一个预定符号熵编码成所述数据流的过程中,经由通过函数参数可参数化的函数依据先前编码的变换系数使用上下文,其中,所述函数参数被设置为第一设定;并且Context-adaptive entropy coding, comprising entropy coding a first set of the one or more symbols into the data stream if a transform coefficient level of the current transform coefficient is within the first level interval, and entropy coding a second set of one or more symbols into the data stream if the transform coefficient level of the current transform coefficient is within the second level interval, wherein the context-adaptive entropy coding involves, in entropy coding at least one predetermined symbol of the second set of one or more symbols into the data stream, using a context as a function of a previously encoded transform coefficient via a function parameterizable by a function parameter, wherein the function parameter is set to a first setting; and 如果所述当前变换系数的变换系数级别在所述第二级别区间内,则经由函数依据所述先前编码的变换系数确定用于映射到符号的所述第三集合上的所述符号化参数(46),其中,所述函数参数被设置为第二设定;以及determining the symbolization parameters (46) for mapping onto the third set of symbols from the previously encoded transform coefficients via a function if the transform coefficient level of the current transform coefficient is within the second level interval, wherein the function parameters are set to a second setting; and 如果所述当前变换系数的变换系数级别在所述第二级别区间内,则将符号的所述第三集合插入到所述数据流中,inserting the third set of symbols into the data stream if the transform coefficient level of the current transform coefficient is within the second level interval, 其中,使用锯齿或光栅扫描处理不同变换区块的变换系数。Here, the transform coefficients of different transform blocks are processed using zigzag or raster scanning. 42.根据权利要求41所述的方法,其中,所述数据流在其中编码有深度图。42. The method of claim 41, wherein the data stream has a depth map encoded therein. 43.一种用于解码数据流的方法,其中,所述方法包括:43. A method for decoding a data stream, wherein the method comprises: 接收并解码通过根据权利要求41所述的方法将表示图片的多个变换系数编码成的所述数据流。The data stream into which a plurality of transform coefficients representing a picture are encoded by the method according to claim 41 is received and decoded. 44.一种用于解码数据流的方法,其中,所述方法包括:44. A method for decoding a data stream, wherein the method comprises: 接收并解码按照指示解码器通过执行根据权利要求39所述的方法将多个变换系数从所述数据流解码的方式将表示图片的多个变换系数编码成的数据流。A data stream into which a plurality of transform coefficients representing a picture are encoded in a manner instructing a decoder to decode the plurality of transform coefficients from the data stream by performing the method according to claim 39 is received and decoded.
HK18105191.6A 2012-01-20 2018-04-20 Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream HK1246017B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261588846P 2012-01-20 2012-01-20
US61/588,846 2012-01-20

Publications (2)

Publication Number Publication Date
HK1246017A1 HK1246017A1 (en) 2018-08-31
HK1246017B true HK1246017B (en) 2021-04-16

Family

ID=

Similar Documents

Publication Publication Date Title
AU2024202509B2 (en) Transform coefficient coding
HK1246017B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246016B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246052B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246014B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246053B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246051B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246015B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246020B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246018B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246019B (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
HK1246014A1 (en) Apparatus for decoding a plurality of transform coefficients having transform coefficient levels from a data stream
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载