CN115152215A - 支持变换系数级别的适应性相依量化的解码器、编码器及方法 - Google Patents

支持变换系数级别的适应性相依量化的解码器、编码器及方法 Download PDF

Info

Publication number
CN115152215A
CN115152215A CN202080097352.7A CN202080097352A CN115152215A CN 115152215 A CN115152215 A CN 115152215A CN 202080097352 A CN202080097352 A CN 202080097352A CN 115152215 A CN115152215 A CN 115152215A
Authority
CN
China
Prior art keywords
default
residual
current
level
conversion
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202080097352.7A
Other languages
English (en)
Inventor
海科·施瓦尔茨
索恩克·施密特
保罗·哈斯
潘·浩·通·阮
德特勒夫·马尔佩
托马斯·威甘德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
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 Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Publication of CN115152215A publication Critical patent/CN115152215A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种解码器,被配置为从数据流解码表示预测残差的残差级别,并且通过以下方式依序地对残差级别进行反量化:依据当前转换状态,从默认量化器的集合之中选择量化器,使用量化器对当前残差级别进行反量化,以获得经反量化的残差值,根据通过将二进制函数应用到当前残差级别而获得的当前残差级别的特性以及依据包含在数据流中的量化模式信息来更新当前转换状态。解码器被配置为使用经反量化的残差值来重构媒体信号。当前转换状态根据依据量化模式信息的从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域到一个或多个转换状态的集合的满射映射,其中所述一个或多个转换状态的集合的基数根据所述量化模式信息而不同。此外,解码器被配置为,无论量化模式信息如何,通过使用第一映射将当前变换状态的预定数量的位映射到默认量化器,以执行量化器的选择,无论量化模式信息如何,预定数量和第一映射相等。

Description

支持变换系数级别的适应性相依量化的解码器、编码器及 方法
1.技术领域
根据本发明的实施方式涉及支持变换系数级别(transform coefficient level)的适应性相依量化的解码器、编码器及方法。
本发明适用于残差样本(residual sample)的块(block)的有损编码。残差样本表示样本的原始块与预测信号的样本之间的差异(预测信号可以通过以下方式获得:通过图像内预测(intra-picture prediction)或者图像间预测(inter-picture prediction)、或者通过图像内以及图像间预测的组合、或者通过任何其他手段;在特殊情况下,预测信号可以设定为等于零)。
样本的残差块利用信号变换(signal transform)进行变换。通常,会使用线性以及可分离变换(线性表示变换是线性,但可以结合额外的变换系数的舍入取整)。通常使用DCT-II的整数近似或者DCT/DST家族的其他变换的整数近似。在水平或者垂直方向上可以使用不同的变换。变换并不限为线性且可分离变换。可以使用任何其他变换(线性且不可分离、或者非线性)。具体而言,二阶不可分离变换可以适用于变换系数或者第一可分离变换后所获得的变换系数的一部分。由于信号变换,而获得变换系数的块,其表示在不同信号空间中的残差样本的原始块。在特殊情况下,变换可以等于识别变换(亦即,变换系数的块可以等于残差样本的块)。变换系数的块利用有损编码进行编码。在解码器侧,将重构变换系数的块进行反变换,以获得残差样本的重构块。最后,通过加入预测信号,而获得影像样本的重构块。
本发明描述变换系数的块的有损编码概念。其具体地描述用以实现相依量化的多种变型的方法以及适用变型的适应性选择。
在此上下文中,相依量化涉及具有以下性质的量化方法:在编码器侧,变换系数的块被映射到变换系数级别的块(亦即,量化索引(quantization index)),其表示保真度降低的变换系数。在解码器侧,量化索引被映射到重构变换系数(reconstructed transformcoefficient)(其由于量化而不同于原始变换系数)。与传统的纯量量化相比,变换系数不是独立量化。相反地,针对一些变换系数的可容许重构级别的集合取决于针对其他变换系数所选择的量化索引。
相依量化存在多种变型,其主要差异在于可能的所谓量化状态的数量。增加量化状态的数量通常改善编码效率,但也增加编码器复杂度。因此,为了给予编码器在编码效率与实现方式复杂度之间自由选择适当权衡,支持相依量化的多种变型是很合理的。但对于解码器而言,实现方式复杂度随着用于量化的支持变型的数量而增加。
本发明描述用于在统一架构中支持独立量化以及相依量化的多种变型的方法。以解码器可以以单一实现方式支持全部变型的方式设计重构程序和变换系数级别的熵编码。取决于所选择的变型的唯一方面是状态转换表(state transition table)的选择。本发明包括以下方面:
·除了传统的独立量化以外,还支持相依量化的两种或更多种变型;
·尤其,增加具有8个状态的相依量化的变型;
·使用量化方法的高级别信令;
·用于从量化索引重构变换系数级别的统一程序;
·量化索引的熵编码的统一程序(包括针对经上下文编码的二元符码(context-coded bin)的最大数量的标准);
·针对有效值标志(significance flag)的统一状态相依上下文选择。
2.背景技术
在下文中,将描述相依量化以及相关联的变换系数级别的熵编码的概念。说明内容尤其强调多功能影像编码标准草案7(VTM-7,draft 7for the Versatile Video Codingstandard)所指明的设计方面。然而,应注意,可能有此特定设计的许多变化。
2.1相依量化
变换系数的相依量化涉及以下概念:用于变换系数的可用重构级别的集合取决于针对重构顺序中的在前变换系数(preceding transform coefficient)所选择的量化索引(在相同变换块内)。基于用于在前变换系数的量化索引(依编码顺序),预先定义重构级别的多个集合,且选择预先定义的多个集合之一用于重构当前变换系数。
2.1.1重构级别的集合
在预先定义的重构级别的集合的联集(两个或更多个集合)中,针对当前变换系数选择可容许重构级别的集合(基于用于依编码顺序的在前变换系数的量化索引)。通过基于块的量化参数,将重构级别的集合的重构级别的值进行参数化。基于块的量化参数(QP,quantization parameter)确定量化步长大小Δ(quantization step size)且全部重构级别(在重构级别的全部集合之中)表示量化步长大小Δ的整数倍数。用于特定变换系数tk(k表示重构顺序)的量化步长大小Δk可以不仅由块量化参数QP确定,而且用于特定变换系数tk的量化步长大小Δk也可能由量化权重矩阵以及块量化参数确定。通常,用于变换系数tk的量化步长大小Δk是由用于变换系数tk的权重系数wk(由量化权重矩阵指定)以及块量化步长大小Δblock(由块量化参数指定)的乘积而给定,
Δkk·Δblock
在VTM-7中,用于变换系数的相依纯量量化使用两个完全不同的重构级别的集合。在两个集合中的用于变换系数tk的全部重构级别表示用这里变换系数的量化步长大小Δk的整数倍数(其至少部分是由基于块的量化参数来确定)。应注意,量化步长大小Δk正好表示用于两个集合两者中的可容许重构值的缩放因子(scaling factor)。除了变换块内的用于不同变换系数tk的可能的个体量化步长大小Δk(且因此,个体缩放因子)以外,相同的两个重构级别的集合被用于全部变换系数。
图1显示重构级别的两个集合。中空以及填满的圆圈表示重构级别的集合内的两个不同的子集;这些子集可用以确定用于按重构顺序的下一变换系数的重构级别的集合。
重构级别的两个集合在图1中示出:
·包含在第一量化集合(标示为图1的集合0)中的重构级别表示量化步长大小的偶整数倍数。
·第二量化集合(标示为图1的集合1)包含量化步长大小的全部奇整数倍数且额外包含等于零的重构级别。
应注意,重构集合两者都对称于零。重构集合两者都包含等于零的重构级别,否则这些重构集合不相交。重构集合两者的联集包括量化步长大小的所有整数倍数。
2.1.2重构级别的表示
编码器从可容许重构级别之中所选择的重构级别必须指示在位流之内。如同在传统的独立纯量量化中,这可以使用所谓量化索引(也称为变换系数级别)来达成。量化索引(或者变换系数级别唯一地识别量化集合内(亦即,在重构级别的集合之内)的可用重构级别的整数。将量化索引传输至解码器作为位流的一部分(使用任何熵编码技术)。在解码器侧,可以基于当前重构级别的集合(其通过按编码/重构顺序的在前量化索引来确定)以及用于当前变换系数的已传输量化索引而唯一地计算重构变换系数。
图1中的重构级别由相关联的量化索引(量化索引是由圆圈下方的数字给定,其表示重构级别)标示。等于0的量化索引被分配给等于0的重构级别。等于1的量化索引被分配给大于0的最小重构级别,等于2的量化索引被分配给大于0的下一重构级别(亦即,大于0的第二最小的重构级别)…等等。或者,换言之,大于0的重构级别以数值递增顺序的方式由大于0的整数标示(亦即,由1、2、3等等标示)。同样地,量化索引-1被分配给小于0的最大重构级别,量化索引-2被分配给小于0的下一重构级别(亦即,第二最大的)…等等。或者,换言之,小于0的重构级别以数值递减顺序的方式由小于0的整数标示(亦即,由-1、-2、-3等等标示)。
重构级别(其表示量化步长大小的整数倍数)的使用将允许用于解码器侧的重构变换系数的计算上的低复杂度算法。这显示在基于以下图1的优选示例。第一量化集合包括量化步长大小的所有的偶整数倍数,以及第二量化集合包括量化步长大小的所有的奇整数倍数并且加上等于0的重构级别(其被包括在量化集合两者之中)。可用类似图2的伪码所表示的算法来实现变换系数的重构程序。
图2示出说明变换系数的重构程序的伪码。k表示索引,其指示当前变换系数的重构顺序,用于当前变换系数的量化索引以level[k]表示,应用在当前变换系数的量化步长大小Δk以quant_step_size[k]表示,以及trec[k]表示重构变换系数t′k的值。变量setId[k]指示应用在当前变换系数的重构级别的集合。其基于按重构顺序的在前变换系数来确定;setId[k]的可能值是0和1。变量n指示量化步长大小的整数因子;其由所选择的重构级别的集合(亦即,setId[k]的值)和所传输的量化索引level[k]来给定。
在图2的伪码中,level[k]表示用于变换系数tk所传输的量化索引,且setId[k](等于0或者1)表示当前重构级别的集合的标识符(其基于按重构顺序的在前量化索引而确定,将在以下加以详述)。变量n表示由量化索引level[k]以及集合标识符setId[k]所给定的量化步长大小的整数倍数。若使用包括量化步长大小Δk的偶整数倍数的重构级别的第一集合(setId[k]==0)将变换系数进行编码,则变量n是所传输的量化索引的两倍。若使用重构级别的第二集合(setId[k]==1)将变换系数进行编码,则有以下三种情况:(a)若level[k]等于0,则n也等于0;(b)若level[k]大于0,则n等于量化索引level[k]的两倍减1;以及(c)若level[k]小于0,则n等于量化索引level[k]的两倍加1。这可以使用正负号函数来表示,
Figure BDA0003809448230000041
接着,若使用第二量化集合,则变量n等于量化索引level[k]的两倍减去量化索引的正负号函数sign(level[k])。
一旦确定了变量n(表示量化步长大小的整数因子),则通过n乘以量化步长大小Δk而获得重构变换系数t′k
图3示出说明图2中的伪码的替代实现方式的伪码。主要变化是利用整数实现方式来表示与量化步长的乘法运算,所述整数实现方式使用缩放以及移位参数。通常,对于变换块而言,移位参数(由shift表示)是固定的,且仅有缩放参数(由scale[k]给定)可以取决于变换系数的位置。变量add表示舍入取整偏移,通常将其设定为等于add=(1<<(shift-1))。在Δk是变换系数的标称量化步长的情况下,选择参数shift以及scale[k]以使Δk≈scale[k]·2-shift
如上所述,可以通过整数近似来获得重构变换系数t′k,以替代与量化步长大小Δk的精确乘法运算。这在图3中的伪码中说明。这里,变量shift表示位向右移位。其值通常仅取决于块的量化参数(但也有可能移位参数可以针对块内的不同变换系数而改变)。变量scale[k]表示变换系数tk的缩放因子;除了块量化参数以外,其还可以例如取决于量化权重矩阵的对应元素。变量add表示舍入取整偏移,通常将其设定为等于add=(1<<(shift-1))。应注意,除了舍入取整以外,图3中的伪码所表示的整数算术(最后一行)是等效于与量化步长大小Δk(给定如下)的乘法运算,
Δk=scale[k]·2-shift
相对于图2,图3中的另一变化(单纯表面上)是使用三元if-then-else运算符(a?b:c)来实现重构级别的两个集合之间的切换,且从而例如C程序语言的程序语言可以得知三元if-then-else运算符(a?b:c)。
2.1.3变换系数的相依重构
相依纯量量化的另一重要设计方面是用于所定义的量化集合(重构级别的集合)之间进行切换的算法。所使用的算法确定在变换系数的N维空间中(且因此,同样在重构样本的N维空间中)可以达到的「紧凑密度」(packing density)。较高的紧凑密度最终结果是编码效率增高。
在VTM-7中,量化集合(集合0与集合1)之间的转换是由状态变量(或者量化状态)确定。对于重构顺序中的第一变换系数,状态变量被设定为等于预定值。通常,此预定值等于0。编码顺序中的后续变换系数的状态变量由更新程序确定。特定变换系数的状态仅取决于重构顺序中的先前变换系数的状态以及先前变换系数的值。
状态变量具有四个可能的值(0,1,2、3)。一方面,状态变量指示用于当前变换系数的量化集合。当(且只有当)状态变量等于0或者1时,使用量化集合0;以及当(且只有当)状态变量等于2或者3时,使用量化集合1。另一方面,状态变量也指示量化集合之间可能的转换。
特定变换系数的状态仅取决于重构顺序中的先前变换系数的状态以及先前变换系数的值的二进制函数。二进制函数在以下称为路径。在VTM-7中,使用以下的状态转换表,其中「路径」是指重构顺序中的先前变换系数级别的所述二进制函数。
表1:VTM-6中的状态转换表。
Figure BDA0003809448230000061
在VTM-7中,路径是由量化索引的奇偶校验(parity)给定。在level[k]是变换系数级别的情况下,其可以根据以下而确定
path=(level[k]&1),
其中运算符「&」表示二补码整数算术中的逐位「和」(and)。
作为替代方式,路径也可以表示level[k]的其他二进制函数。举例而言,其可以指示是否变换系数级别等于或者不等于0:
Figure BDA0003809448230000062
用于相依纯量量化的状态转换的概念允许用于解码器中的重构变换系数的低复杂度实现方式。用于单变换块的变换系数的重构程序的优选示例是显示在图4中的使用C语言形式的伪码。
图4示出说明对于变换块的变换系数的重构程序的伪码。数组level表示对于变换块所传输的变换系数级别(量化索引),且数组trec表示对应的重构变换系数。二维表格state_trans_table表示状态转换表,且表格setId表示与状态有关的量化集合。函数path()表示变换系数级别的二进制函数。
在图4的伪码中,索引k表示变换系数的重构顺序。应注意,在示例代码之中,索引k是按重构顺序递减。最终变换系数的索引等于k=0。第一索引kstart表示第一重构变换系数的重构索引(或者更精确而言,反重构索引)。可以将变量kstart设定为等于变换块中的变换系数的数量减1,或者可以将其设定为等于依编码/重构顺序中的第一非零量化索引的索引(例如,若第一非零量化索引的位置以所应用的熵编码方法传输)。在后面的情况中,将全部的在前变换系数(索引k>kstart的情况)被推论为等于0。每一个变换系数的重构程序与图3的示例相同。关于图3中的示例,量化索引由level[k]表示,且相关联的重构变换由trec[k]表示。状态变量由state表示。一维表格setId[]表示与状态变量的不同值有关的量化集合,且二维表格state_trans_table[][]表示状态转换,其中给定当前state(第一参数)以及path(第二参数)。作为示例,path可以由量化索引的奇偶校验给定(使用逐位和运算符&),但其他概念也是可能的。作为另一示例,path可以表示变换系数等于还是不等于零。表格的示例(C语言形式语法)在图5之中给定(这些表格与表1相同)。
图5显示状态转换表state_trans_table以及表格setId,其表示与状态相关联的量化集合。以C语言形式语法给定的表格表示表1所指示的表格。
可以使用产生相同结果的算术运算,以替代使用表格state_trans_table[][]来确定下一状态。同样地,也可以使用算术运算来实现表格setId[]。或者,可以使用算术运算来实现使用一维表格setId[]的表格查找以及正负号函数的组合。
2.2变换系数级别的熵编码
相依纯量量化的主要方面是对于变换系数而有不同的可容许重构级别的集合(也称为量化集合)。基于在前变换系数的量化索引的值以确定当前变换系数的量化集合。若考虑图1中的优选示例并且比较两个量化集合,则显而易见相较于在集合1之中,在集合0中的等于零的重构级别与邻近重构级别之间的距离较大。因此,若使用集合0,则量化索引等于0的概率较大,且若使用集合1,则概率较小。在VTM-7中,通过切换基于用于当前量化索引的状态的概率模型,将此效果运用在熵编码之中。
应注意,为了码字表格或者概率模型的适当切换,当熵解码当前量化索引(或者当前量化索引的对应二元决策(binary decision))时,全部在前量化索引的path(量化索引的二进制函数)必须是已知的。
在VTM-7中,使用类似H.264|MPEG-4AVC或者H.265|MPEG-H HEVC的二进制算术编码将量化索引进行编码。为此目的,将非二进制量化索引首先映射到一系列二元决策(其通常称为二元符码(bins))。
2.2.1二进制化(Binarization)
量化索引以绝对值以及正负号(针对绝对值大于0的情况)进行传输。当正负号以单一二元符码进行传输时,存在将绝对值映射到一系列二元决策的许多可能性。
表2:VTM-7中的变换系数级别的绝对值|q|的二进制化。
Figure BDA0003809448230000071
Figure BDA0003809448230000081
表2中示出VTM-7所使用的绝对值的二进制化。传输下列二进制以及非二进制语法元素:
·sig_flag指示是否变换系数级别的绝对值|q|大于0;
·若sig_flag等于1,则gt1_flag指示是否变换系数级别的绝对值|q|大于1;
·若gt1_flag等于1,则par_flag指示变换系数级别的绝对值|q|的奇偶校验,且gt3_flag指示是否变换系数级别的绝对值|q|大于3;
·若gt3_flag等于1,则非二进制值rem指示绝对级别|q|的其余部分(remainder)。此语法元素以算术编码机的旁路模式(bypass mode)、利用Golomb-Rice码进行传输。
不存在的语法元素被推论为等于0。在解码器侧,变换系数级别的绝对值被如下重构:
|q|=sig_flag+gt1_flag+par_flag+2*(gt3_flag+rem)
对于非零变换系数级别(由sig_flag等于1所指示),sign_flag表示在旁路模式中额外传输变换系数级别的正负号。
2.2.2二元符码的编码顺序及旁路模式
VTM-7中的变换系数级别的熵与HEVC共同具有多个方面。但其也包括用于相依量化的熵编码的额外方面。
图6显示依编码顺序的第一非零量化索引120的位置的信令(突显的样本)。除了第一非零变换系数120的位置以外,仅传输依编码顺序102的第一非零量化索引120以后的系数122的二元符码(例如,标示蓝色的样本),依编码顺序102的第一非零量化索引120以前的系数被推论为等于0(例如,标示白色的样本)。
将变换系数的每个块分割为固定大小的子块(也称为系数组)。一般而言,子块具有4x4大小系数的(见图6)。在一些情况下,可以使用其他大小(例如2x2、2x4、4x2、2x8、或者8x2)。
类似于HEVC,变换系数的块的编码进行如下:
·首先,传输所谓的coded_block_flag,其表示为否变换块之中有任何非零变换系数级别。若coded_block_flag等于0,则全部变换系数级别等于0,而且不再是变换块传输数据。在一些情况下(例如在跳过模式(Skip mode)),可以不显式地传输coded_block_flag,而是基于其他语法元素进行推论。
·若coded_block_flag等于1,则传输编码顺序中的第一重要变换系数(significant transform coefficient)的x和y坐标(这有时称为最末重要系数,因为实际扫描顺序指示从高频至低频成分的扫描);
·基于子块(通常是4x4子块)进行变换系数的扫描;在将任何其他子块的任何变换系数级别编码之前,将子块的全部变换系数级别进行编码;依预定的扫描顺序处理子块,其开始于在扫描顺序中包括第一重要系数的子块并且结束于包括DC系数的子块;
·语法包括coded_subblock_flag,其指示是否子块包括任何非零变换系数级别;对于扫描顺序中的第一以及最后子块(亦即,在扫描顺序中包括第一重要系数的子块以及包括DC系数的子块),不传输此标志,而被推论为等于1;当传输coded_subblock_flag时,其通常在子块开始时传输;
·对于coded_subblock_flag等于1的每个子块而言,在遍及子块的扫描位置的多次扫描遍次(scan pass)中传输变换系数级别。
以下,初始将先忽略特殊方面(其将在稍后描述)。在没有此特殊方面的情况下,coded_subblock_flag等于1的子块的编码进行如下:
·对于编码顺序中的第一子块(亦即,包括第一重要扫描位置的子块,而其x和y坐标被显式地传输),编码开始于依扫描顺序中的第一非零系数的扫描位置firstSigScanIdx(亦即,对应于显式地传输x和y坐标的扫描位置)。对于全部其他子块,编码开始于子块内的最小扫描索引minSubblockScanIdx。扫描结束于子块内的最大扫描索引maxSubblockScanIdx。
·在第一遍次中,传输正规编码二元符码sig_flag、gt1_flag、par_flag、以及gt3_flag:
o若sig_flag可以被推论为等于1,则不传输sig_flag。在以下两种情况中,可以推论sig_flag等于零:
(1)当前扫描位置等于扫描顺序中的第一非零系数的扫描索引startScanIdx(亦即,对应于显式地传输x和y坐标的扫描位置);
(2)当前子块是已传输coded_subblock_flag等于1的子块,当前扫描索引是子块内的最大扫描索引maxSubblockScanIdx,以及对于当前子块的全部先前所传输的sig_flag等于1。
o若扫描索引k的sig_flag[k]等于1(传输或者推论),则传输gt1_flag。在其他情况下,则推论gt1_flag等于零。
o若扫描索引k的gt1_flag[k]等于1,则传输par_flag以及gt3_flag。在其他情况下,则推论par_flag以及gt3_flag等于零。
·在第二遍次中,对于那些已传输的gt3_flag等于1的扫描索引进行其余部分rem的编码。对于全部的其他扫描索引,其余部分rem被推论为等于0。使用Rice码以及指数Golomb码的串接(其通过所谓Rice参数加以参数化)对其余部分rem进行编码。对应的码字的二元符码是以旁路模式进行编码。Rice参数是基于已经编码的语法元素而确定(见以下所述)。
·最后,在最终遍次中,对于sig_flag[k]等于1的全部扫描索引k(编码或者推论),传输sign_flag,其表示为否变换系数值是负或者正。
下述的伪码进一步显示用于子块内的变换系数级别的编码程序。其从解码器观点来呈现。布尔变量firstSubblock指示是否当前子块是编码顺序中的第一子块(在变换块内)。firstSigScanIdx指示扫描索引,其对应于变换块中的第一重要变换系数的位置(变换块语法开始时显式地发送信号之一)。minSubblockScanIdx以及maxSubblockScanIdx表示当前子块的扫描索引的最小以及最大值。应注意,对于已传输任何数据的第一扫描索引取决于是否子块包括扫描顺序中的第一重要系数。若情况如此,则第一扫描遍次开始于对应于第一重要变换系数的扫描索引;否则,第一扫描遍次开始于子块的最小扫描索引。扫描索引k的变量coeff[k]表示重构变换系数级别。模拟于解码而进行编码。
规定对coded_subblock_flag等于1的子块进行的解码的伪码(经简化):
Figure BDA0003809448230000111
Figure BDA0003809448230000121
相对于HEVC的缺点是每个变换系数的正规编码二元符码的最大数量增加了。为了规避此问题,VTM-7之中包括了以下概念:
·用于变换块的正规编码二元符码的最大数量maxNumRegBins被设定为等于
maxNumRegBins=1.75*width*height,
其中width以及height表示变换块的尺寸(更精确而言,在变换系数被强制为等于零的情况下,其表示变换块的非零外区域的尺寸)。
·在变换块的开始处,将计数器remRegBins(其表示正规编码二元符码的可用数量)设定为等于remRegBins=maxNumRegBins。
·在正规编码二元符码进行编码或者解码之后,将计数器remRegBins减1。
·在第一遍次中的扫描位置的编码开始时,若计数器小于4(在此情况下,并非全部二元符码sig_flag、gt1_flag、par_flag以及gt3_flag可以在没有超过正规编码二元符码的最大数量的情况下进行传输),则结束第一遍次。此外,针对如此扫描位置,仅传输包括在第一遍次中的其余部分。
·在第一扫描遍次中的无数据进行编码的绝对级别完全以旁路模式进行编码。其使用与用于其余部分rem相同类别的码进行编码。Rice参数和变量pos0基于已经编码的语法元素而确定(见以下所述)。这些绝对级别|q|不直接进行编码,而是先将其映射到语法元素abs_level,接着使用参数码进行编码。
绝对值|q|至语法元素abs_level的映射取决于变量pos0。其被表示为:
abs_level=(|q|==0?pos0:(|q|<=pos0?|q|-1:|q|)
在解码器侧,语法元素abs_level至绝对值|q|的映射被表示如下:
|q|=(abs_level==pos0?0:(abs_level<pos0?abs_level+1:abs_level)
应注意,正规编码二元符码的数量限制是在变换块基础上应用的,而非子块基础上。这意谓着,计数器remRegBins在变换块开始时进行初始化,并且对于每个正规编码二元符码递减。若在特定子块之中将编码切换至旁路模式,则依编码顺序中的全部后续子块的全部变换系数级别也将以旁路模式进行编码。
下述的伪码显示用于子块(coded_subblock_flag等于1)的编码程序。如先前的伪码,此编码程序是从解码器观点来呈现。对于第一编码子块,计数器remRegBins的初始值等于maxNumRegBins。对于全部后续子块,计数器remRegBins的初始值等于先前的编码子块结束时所获得的值。扫描索引startIdxBypass是子块内的旁路编码(亦即,abs_level的编码)开始时的第一扫描索引(若适用的话)。
规定(以旁路模式)对coded_subblock_flag等于1的子块进行的解码的伪码 (114):
Figure BDA0003809448230000131
Figure BDA0003809448230000141
Figure BDA0003809448230000151
2.2.3上下文建模(Context Modelling)
对于正规编码二元符码sig_flag、gt1_flag、par_flag、以及gt3_flag,选择多个概率模型(或者上下文)之一用于实际编码。
图7显示用以选择用于一个或多个二元符码的概率模型的局部模板(template)。黑色方块130表示当前扫描位置,且突显的样本132(例如:蓝色方块)表示模板内的邻近扫描位置。
2.2.3.1有效值标志sig_flag
对于有效值标志,所选择的概率模型取决于:
·当前变换块是否是亮度(luma)或者色度(chroma)变换块;
·相依量化的状态;
·当前变换系数的x和y坐标;
·局部邻近区域中的部分重构的绝对值(在第一遍次之后)。
以下,将给出更多细节。
变量state表示相依量化中所使用的当前变换系数的状态。状态可以取值0,1,2、或者3。最初,将状态设定为等于0。如以上说明,当前变换系数的状态是由编码顺序中的先前系数的状态以及先前变换系数级别的奇偶校验(或者更一般而言,二进制函数)给定。
在x和y是变换块内的当前变换系数的坐标的情况下,令diag=x+y是当前系数的对角线位置。给定对角线位置,则对角线类别索引dsig被如下推导:
dsig=(diag<2?2:(diag<5?1:0))对于亮度变换块
以及
dsig=(diag<2?1:0)对于色度变换块
三元运算符(c?a:b)表示if-then-else语句。若条件c是真,则使用值a,否则(c是伪)使用值b。
上下文也取决于局部邻近区域内的部分重构的绝对值。在VTM-7中,局部邻近区域是由图7所示的模板T给定。但其他模板也是可能的。所使用的模板可以也取决于是否亮度或者色度块已编码。令sumAbs是模板T中的部分重构的绝对值(在第一遍次之后)的总和:
Figure BDA0003809448230000161
其中abs1[k]表示在第一遍次之后的扫描索引k的部分重构的绝对级别。在VTM-7的二进制化的情况下,其由以下给定:
abs1[k]=sig_flag[k]+gt1_flag[k]+par_flag[k]+2*gt3_flag[k]。
应注意,abs1[k]等于在第一扫描遍次之后所获得的值coeff[k](见以上所述)。
假定用于sig_flag的可能的概率模型是一维数组的结构。且令ctxIdSig是标识所使用的概率模型的索引。根据VTM-7,上下文索引ctxIdSig可以被如下推导:
若变换块是亮度块,
ctxIdSig=min((sumAbs+1)>>1,3)+4*dsig+12*min(state-1,0)
若变换块是色度块,
ctxIdSig=36+min((sumAbs+1)>>1,3)+4*dsig+8*min(state-1,0)
在此,运算符「>>」表示位向右移位(在二补码算术中)。此运算与除以二并且将其结果向下取整(舍至下一整数)相同。
应注意,上下文模型的其他结构也是可能的。但在任何情况下,选择用于编码sig_flag的概率模型取决于:
·是否对亮度或者色度块进行编码;
·状态变量,具体是min(state-1,0);
·对角线类别dsig;
·局部样本内的部分重构的绝对值的总和(在第一遍次之后),具体是min((sumAbs+1)>>1,3)。
2.2.3.2标志gt1_flag、par_flag、以及gt3_flag
对于标志gt1_flag、par_flag、以及gt3_flag,所选择的概率模型取决于:
·当前变换块是否是亮度或者色度变换块;
·当前变换系数是否是变换块内依编码顺序的第一非零系数;
·当前变换系数的x和y坐标;
·局部邻近区域中的部分重构的绝对值(在第一遍次之后)。
令firstCoeff是指示是否当前扫描索引表示编码顺序中的第一非零变换系数级别的扫描索引(亦即,显式地编码x和y位置的扫描索引)的变量。若当前扫描索引等于第一非零变换系数级别的扫描索引,则firstCoeff等于1;否则,firstCoeff等于0。
在x和y是变换块内的当前变换系数的坐标的情况下,令diag=x+y是当前系数的对角线位置。给定对角线位置的情况下,对角线类别索引dclass被如下推导:
dclass=(diag==0?3:(diag<3?2:(diag<10?1:0)))对于亮度变换块
以及
dclass=(diag==0?1:0)对于色度变换块
上下文也取决于局部邻近区域内的部分重构的绝对值。变量sumAbs如以上所示进行推导。此外,变量numSig(其表示模板T内的非零变换系数级别的数量)被如下推导:
Figure BDA0003809448230000171
类似用于sig_flag,假定可能的概率模型是一维数组的结构。且令ctxId是标识概率模型所使用的索引。根据VTM-7,上下文索引ctxId可以被如下推导:
若变换块是亮度块,
ctxId=(firstCoeff?0:1+min(sumAbs-numSig,4)+5*dclass)
若变换块是色度块,
ctxId=21+(firstCoeff?0:1+min(sumAbs-numSig,4)+5*dclass)
应注意,其上下文模型的他结构也是可能的。但在任何情况下,所选择的概率模型取决于:
·是否对亮度或者色度块进行编码;
·是否当前扫描索引是编码顺序中的第一非零变换系数级别的扫描索引;
·对角线类别dclass;
·局部样本内的部分重构的绝对值的总和(在第一遍次之后)与局部模板内的非零变换系数级别的数量的差值,具体是min(sumAbs-numSig,4)。
应注意,相同的上下文索引ctxId被用于gt1_flag、par_flag、以及gt3_flag。但对于这些标志中的每一个,使用上下文模型的不同集合。
2.2.3.3用于其余部分以及旁路编码的变换系数级别的Rice参数
其余部分rem以及绝对值abs_level两者都使用参数类别码进行编码,其中二元符码是以旁路模式进行编码(见以上所述)。实际上所使用的二进制化是由所谓Rice参数RP确定。此外,对于绝对级别abs_level,变量pos0确定从编码的语法元素abs_level至实际绝对值的映射。
基于局部模板中的重构的绝对值的总和,推导用于其余部分的Rice参数RPrem。在VTM-7中,使用如上所述的相同模板。在T表示模板且coeff[k]表示扫描索引k的重构的系数的情况下,总和sumAbs被如下推导
Figure BDA0003809448230000181
应注意,使用了完全重构的变换系数值coeff[k]。令tabRPrem[]是尺寸32的固定表格。Rice参数RPrem被如下推导:
RPrem=tabRPrem[max(min(sumAbs–20,31),0)]。
令tabRPabs[]是另一尺寸32的固定表格。用于编码abs_level的Rice参数RPabs被如下推导:
RPabs=tabRPabs[min(sumAbs,31)]。
变量pos0取决于下列两者:局部模板中的重构的绝对值的总和以及状态变量。变量pos0从量化状态以及Rice参数RPabs进行推导,如下:
pos0=(state<2?1:2)<<RPabs。
2.3量化方法的高级别信令
VTM-7支持具有4个状态的相依量化且额外支持传统的独立纯量量化。由编码器所选择的量化方法在位流之中指示,如以下所述。
图像头部包括语法元素pic_dep_quant_enabled_flag,其利用单一位进行编码且指示是否当前图像使用或者不使用相依量化。若pic_dep_quant_enabled_flag等于0,则当前图像使用传统的独立量化。若pic_dep_quant_enabled_flag等于1,则当前图像使用相依量化的特定变型。
图像头部语法元素并非永远存在于图像头部之中。其存在性通过编码在图像参数集合之中的另一语法元素来控制。图像参数集合包括语法元素pps_dep_quant_enabled_idc,其利用2位的固定长度码进行编码且具有以下意义:
·值是0指示pic_dep_quant_enabled_flag存在于图像头部之中;
·值是1指示pic_dep_quant_enabled_flag不存在于图像头部之中,但对于参照图像参数集合的全部图像而言,pic_dep_quant_enabled_flag被推论为等于0;
·值是2指示pic_dep_quant_enabled_flag不存在于图像头部之中,但对于参照图像参数集合的全部图像而言,pic_dep_quant_enabled_flag被推论为等于1;
·值是3保留给将来使用。
若图像参数集合标志constant_slice_header_params_enabled_flag等于1,则pps_dep_quant_enabled_idc存在图像参数集合之中。若图像参数集合标志constant_slice_header_params_enabled_flag等于0,则图像参数集合语法元素pps_dep_quant_enabled_idc不存在图像参数集合之中,但其被推论为等于0(在此情况下,pic_dep_quant_enabled_flag被编码在图像头部之中)。
因此,期望提供使图像编码和/或视频编码更有效率的概念,以支持变换系数级别的适应性相依量化。额外地,或者替代地,期望降低位流以及因此降低信号化(signalization)成本。
这是通过本申请的独立权利要求的目标来达成。
根据本发明的进一步实施方式是由本申请的从属权利要求的目标来界定。
3.发明内容
依据本发明的第一方面,本案发明人理解到当试图使用变换系数级别的相依量化/反量化时,将遭遇一问题,此问题起因于在提供多数相依量化/反量化模式的情况下,会涉及高实现复杂度的事实。根据本申请的第一方面,通过将用于独立量化/反量化以及相依量化/反量化的多种变型的架构统一,以克服此难题。本案发明人发现到,选择独立于量化模式信息的量化器是有利的。相依于量化模式信息的唯一方面是当前转换状态的更新,例如可用于更新的转换表的选择。这是基于以下想法:相对于支持单一量化模式,用于全部所支持的量化模式的一个统一程序,在解码器侧几乎不引入额外的实现复杂度。但若必须支持不同的方法,则解码器复杂度将增加。因此,允许使用不同的量化模式,由此给予编码器选择变型的自由度,这提供了对于其应用领域的编码效率与实现复杂度之间最适当的权衡。此外,量化器的选择(独立于量化模式)允许在编码器/解码器处使用具有多于4个转换状态的相依量化模式,由此因为达成N维信号空间中的可容许重构点的更密集紧凑,因此可以使编码效率提高。
因此,依据本申请的第一方面,一种解码器被配置为从数据流解码残差级别,残差级别表示预测残差,并且通过以下方式依序地反量化残差级别:依据当前转换状态,从默认量化器的集合选择量化器;使用所述量化器反量化当前残差级别,以获得经反量化的残差值;将二进制函数应用在当前残差级别以获得当前残差级别的特性(例如,奇偶校验),并且依据当前残差级别的特性、利用待使用的转换表,来更新当前转换状态。残差级别的反量化是依序地执行,这意谓着上述反量化步骤是以循环方式执行(例如直到全部残差值被反量化是止),因此当前转换状态的更新可以理解为在此顺序中的第一步骤或者最终步骤。当前转换状态的更新步骤连接残差级别的连续反量化,例如:先前残差级别的反量化是通过当前转换状态的更新而与当前残差级别的反量化连接。此外,例如在第一残差级别的反量化的情况下,当前转换状态可以设定为默认/预定状态(例如:零),且依据当前残差级别的特性(亦即,第一残差级别特性)、利用待使用的转换表(例如,用以初始化残差级别的依序反量化),来更新此当前转换状态。解码器被配置为利用经反量化的残差值以重构媒体信号。此外,解码器被配置为依据包括在数据流中的量化模式信息,以从默认转换表的集合之中选择默认转换表作为待使用的转换表,每个默认转换表表示满射映射,满射映射是从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域映射到一个或多个转换状态的集合,其中默认转换表的差异在于一个或多个转换状态的集合的基数。满射映射例如将一个或多个转换状态的集合的元素(亦即,转换状态)映射到一个或多个转换状态的集合的元素(亦即,转换状态)。满射映射的域以及共域两者都例如与一个或多个转换状态的相同集合相关联。此待使用的转换表的选择例如:可以在当前转换状态的更新时针对每个残差级别而执行;可以针对包括多数残差级别的每个变换块而执行;或者可以逐图像而执行。此外,解码器被配置为无论选择默认转换表中的哪一个作为待使用的转换表,通过使用第一映射将当前转换状态的预定数量的位映射到默认量化器,以执行量化器的选择;无论选择默认转换表中的哪一个作为待使用的转换表,预定数量以及第一映射是相等的。预定数量的位表示例如位于一个或多个预定位位置的一定数量的一个或多个位(例如:LSB或者位于第二但非最末有效位位置的位)。
因此,依据本申请的第一方面,一种解码器被配置为从数据流解码残差级别,残差级别表示预测残差,并且通过以下方式依序地反量化残差级别:依据当前转换状态,从默认量化器的集合之中选择量化;使用所述量化器反量化当前残差级别,以获得经反量化的残差值;以及依据通过将二进制函数应用在当前残差级别(例如,奇偶校验)所获得的当前残差级别的特性,以及依据包括在数据流中的量化模式信息,来更新当前转换状态。如上所述,残差级别的反量化是依序地执行,这意谓着上述反量化步骤是以循环方式执行(例如直到全部残差值被量化是止),因此当前转换状态的更新可以理解为在此顺序中的第一步骤或者最终步骤。当前转换状态的更新步骤连接残差级别的连续反量化,例如:先前残差级别的反量化是通过当前转换状态的更新而与当前残差级别的反量化连接。此外,例如在第一残差级别的反量化的情况下,当前转换状态可以设定为默认/预定状态(例如:零),且依据当前残差级别的特性(亦即,第一残差级别特性),来更新此当前转换状态(例如,用以初始化残差级别的依序反量化)。根据取决于量化模式信息的满射映射,将当前转换状态从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域转换(例如,在更新时)至一个或多个转换状态的集合,其中一个或多个转换状态的集合的基数依据量化模式信息而有所差异。无论何种量化模式信息(例如:与量化模式信息无关,或者与量化模式信息独立),解码器被配置为通过使用第一映射将当前转换状态的预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到默认量化器,以执行量化器的选择;无论何种量化模式信息,预定数量以及第一映射是相等的。此外,解码器被配置为使用经反量化的残差值来重构媒体信号。
因此,依据本申请的第一方面,一种编码器被配置为:预测性地编码媒体信号以获得残差信号;以及通过以下方式,依序地量化表示残差信号的残差值,以获得残差级别:依据当前转换状态,从默认量化器的集合之中选择量化器;使用所述量化器量化当前残差值,以获得当前残差级别;将二进制函数应用在当前残差级别以获得当前残差级别的特性(例如,奇偶校验);以及依据所述当前残差级别的特性、使用待使用的转换表,来更新当前转换状态。残差级别的量化是依序地执行,这意谓着上述量化步骤是以循环方式执行(例如直到全部残差值被量化是止),因此当前转换状态的更新可以理解为在此顺序中的第一步骤或者最终步骤。当前转换状态的更新步骤连接残差级别的连续量化,例如:先前残差级别的量化是通过当前转换状态的更新而与当前残差级别的量化连接。此外,例如在第一残差级别的量化的情况下,当前转换状态可以设定为默认/预定状态(例如:零),且依据当前残差级别的特性(亦即,第一残差级别特性)、利用待使用的转换表(例如,用以初始化残差级别的依序反量化),来更新此当前转换状态。编码器被配置为将残差级别编码至数据流之中。此外,编码器被配置为依据数据流中所传输的量化模式信息,从默认转换表的集合之中选择默认转换表作为待使用的转换表,每个默认转换表表示满射映射,满射映射是从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域映射到一个或多个转换状态的集合,其中默认转换表的差异在于一个或多个转换状态的集合的基数。满射映射例如将一个或多个转换状态的集合的元素(亦即,转换状态)映射到一个或多个转换状态的集合的元素(亦即,转换状态)。满射映射的域以及共域两者都例如与一个或多个转换状态的相同集合相关联。此待使用的转换表的选择例如:可以在当前转换状态的更新时针对每个残差级别而执行;可以针对包括多数残差级别的每个变换块而执行;或者可以逐图像而执行。此外,编码器被配置为无论选择默认转换表中的哪一个作为待使用的转换表,通过使用第一映射将当前转换状态的预定数量的位映射到默认量化器,以执行量化器的选择;无论选择默认转换表中的哪一个作为待使用的转换表,预定数量以及第一映射是相等的。预定数量的位表示例如位于一个或多个预定位位置的一定数量的一个或多个位(例如:LSB或者位于第二但非最末有效位位置的位)。
因此,依据本申请的第一方面,一种编码器被配置为:预测性地编码媒体信号以获得残差信号;以及通过以下方式,依序地量化表示残差信号的残差值,以获得残差级别:依据当前转换状态,从默认量化器的集合之中选择量化器;使用所述量化器量化当前残差值,以获得当前残差级别;以及依据通过将二进制函数应用在当前残差级别所获得的当前残差级别的特性(例如,奇偶校验),以及依据数据流中所传输的量化模式信息,来更新当前转换状态。如上所述,残差级别的量化是依序地执行,这意谓着上述量化步骤是以循环方式执行(例如直到全部残差值被量化是止),因此当前转换状态的更新可以理解为在此顺序中的第一步骤或者最终步骤。当前转换状态的更新步骤连接残差级别的连续量化,例如:先前残差级别的量化是通过当前转换状态的更新而与当前残差级别的量化连接。此外,例如在第一残差级别的量化的情况下,当前转换状态可以设定为默认/预定状态(例如:零),且依据当前残差级别的特性(亦即,第一残差级别特性),来更新此当前转换状态(例如,用以初始化残差级别的依序反量化)。根据取决于量化模式信息的满射映射,将当前转换状态从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域转换(例如,在更新时)至一个或多个转换状态的集合,其中一个或多个转换状态的集合的基数依据量化模式信息而有所差异。无论何种量化模式信息(例如:与量化模式信息无关,或者与量化模式信息独立),解码器被配置为通过使用第一映射将当前转换状态的预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到默认量化器,以执行量化器的选择;无论何种量化模式信息,预定数量以及第一映射是相等的。此外,编码器被配置为将残差级别编码至数据流之中。
因此,依据本申请的第一方面,一种方法包括:从数据流解码残差级别,残差级别表示预测残差;并且通过以下方式依序地反量化残差级别:依据当前转换状态,从默认量化器的集合之中选择量化器;使用所述量化器反量化当前残差级别,以获得经反量化的残差值;以及依据通过将二进制函数应用在当前残差级别所获得的当前残差级别的特性(例如,奇偶校验),以及依据包含在数据流中的量化模式信息,来更新当前转换状态。此外,所述方法包括使用经反量化的残差值来重构媒体信号。根据取决于量化模式信息的满射映射,将当前转换状态从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域转换至一个或多个转换状态的集合,其中一个或多个转换状态的集合的基数依据量化模式信息而有所差异。此外,所述方法包括无论何种量化模式信息(例如:与量化模式信息无关,或者与量化模式信息独立),通过使用第一映射将当前转换状态的预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到默认量化器,以执行量化器的选择;无论何种量化模式信息,预定数量以及第一映射是相等的。
因此,依据本申请的第一方面,一种方法包括:预测性地编码媒体信号,以获得残差信号;并且通过以下方式,依序地量化表示残差信号的残差值,以获得残差级别:依据当前转换状态,从默认量化器的集合之中选择量化器;使用所述量化器量化当前残差值,以获得当前残差级别;以及依据通过将二进制函数应用在当前残差级别所获得的当前残差级别的特性(例如,奇偶校验),以及依据数据流中所传输的量化模式信息,来更新当前转换状态。此外,所述方法包括将残差级别编码至数据流之中。根据取决于量化模式信息的满射映射,将当前转换状态从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域转换至一个或多个转换状态的集合,其中一个或多个转换状态的集合的基数依据量化模式信息而有所差异。此外,所述方法包括无论何种量化模式信息(例如:与量化模式信息无关,或者与量化模式信息独立),通过使用第一映射将当前转换状态的预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到默认量化器,以执行量化器的选择;无论何种量化模式信息,预定数量以及第一映射是相等的。
以上所述的方法是基于如前述编码器/解码器的相同考虑。顺带一提,所述方法可用全部特性以及功能来完成,这些方法也以关于编码器/解码器的方式加以描述。
一种实施方式涉及一种数据流,所述数据流具有利用这里所述的编码方法而编码于其中的图像或者视频。
一种实施方式涉及一种计算机程序,所述计算机程序具有程序代码,当程序代码运作在计算机上时,执行这里所述的方法。
4.附图说明
附图未必按比例绘制;反而通常在用图例说明本发明的原理处进行强调。在以下说明内容中,参考下述附图以描述本发明的各种实施方式,其中:
图1示出两个不同的量化器;
图2示出说明变换系数的重构程序的伪码;
图3示出说明变换系数的重构程序的替代实现方式的伪码;
图4示出说明用于变换块的变换系数的重构程序的伪码;
图5示出状态转换表;
图6示出编码顺序;
图7示出可用于选择一个或多个二元符码的概率模型的局部模板;
图8示出根据实施方式的解码器;
图9示出用于有效值二元符码的上下文适应性二进制算术编码的实施方式;
图10示出根据实施方式的转换表;
图11显示根据实施方式的说明用于变换块的变换系数的重构程序的伪码;
图12示出图像和/或视频编码器;
图13示出图像和/或视频解码器;以及
图14显示重构信号与预测残差信号以及预测信号的组合之间的关系。
5.具体实施方式
在以下描述中,相同或者等同的组件或者具有相同或者等同功能的组件是由相同或者等同的组件符号表示(即使出现在不同的附图中)。
在以下描述中,列出许多细节以提供对本发明实施方式的更完整说明。然而,对于本领域中普通技术人员而言,显然可以在没有这些特定细节的情况下实现本发明实施方式。在其他情况下,公知的结构以及装置是以方块图的形式显示,而不呈现细节,以避免混淆本发明的实施方式。此外,除非特别指明之外,以下所述的不同实施方式特性可以彼此组合。
以下所述的实施方式主要将以解码器的角度来说明特征以及功能。然而,显然地,编码器可以包括相同或者类似特性以及功能,例如由解码器所执行的解码可以对应于编码器的编码。此外,编码器可以包括如所述有关反馈循环中的解码器的相同特征,例如在预测级36之中。
图8显示解码器20的实施方式。解码器20可以选择性地包括如第2节所述的特征和/或功能(例如第2.1~2.3节中所述的一个或多个特征)。
解码器20被配置为从数据流14解码210残差级别142(其表示预测残差)。残差级别142可以是表示预测残差的变换系数的量化级别。如图1所示,残差级别142可以表示量化步长大小144的整数倍数。
解码器20被配置为依序地反量化150残差级别142。可以沿着编码顺序(亦即扫描顺序或者重构顺序)反量化150残差级别142。不同的编码顺序是可能的,且编码顺序可以取决于媒体信号,例如将由解码器20进行解码的图像信号、视频信号或者声音信号。图6显示编码顺序102的示例,其可用于解码图像或者视频信号。根据一种实施方式,解码器20可以反量化150残差级别142,且其开始于反量化150第一非零变换系数(亦即,依编码顺序中的残差级别不等于零的第一变换系数),并且继续依编码顺序反量化150后续变换系数的残差级别142,直到编码顺序中的最终变换系数。编码顺序中的在第一非零量化索引之前的变换系数的残差级别可以由解码器20被推论为等于0。
解码器20被配置为通过下列方式依序地反量化150残差级别142:依当前转换状态220,从默认量化器的集合151之中选择152量化器153;使用量化器153反量化154当前残差级别,以获得经反量化的残差值104;以及依据通过将二进制函数应用156在当前残差级别所获得的当前残差级别的特性157以及依据包括在数据流14中的量化模式信息180,以更新158当前转换状态。将当前残差级别进行反量化154,以获得经反量化的残差值104,其中用于反量化154的量化器153是取决于当前转换状态220。在此反量化154之后,将当前转换状态进行更新158,以获得新的当前转换状态,新的当前转换状态例如用于反量化下一残差级别或者用于使用更新的当前转换状态而再次反量化当前残差级别(例如见下述的第一残差级别的反量化150)。新的当前转换状态是例如取决于当前转换状态以及取决于当前残差级别的特性157。当前残差级别的特性157可以表示当前残差级别的特性,且非下一残差级别特性。特定变换系数的转换状态可以取决于编码顺序中的先前变换系数的转换状态以及先前变换系数的残差级别特性157。
在更新158时,根据取决于量化模式信息180的满射映射(surjective mapping),当前转换状态从具有当前残差级别的特性157的一个或多个转换状态的集合161的组合163的域(domain)转换至一个或多个转换状态的所述集合161,其中一个或多个转换状态的所述集合161的基数l、m、n是依量化模式信息180而有所差异。例如,在量化模式信息180指示是第一量化模式的情况下,一个或多个转换状态的集合161a具有基数l;在量化模式信息180指示是第二量化模式的情况下,一个或多个转换状态的集合161b具有基数m;以及在量化模式信息180指示是第三量化模式的情况下,一个或多个转换状态的集合161c具有基数n。根据一种实施方式,解码器20可被配置为依据量化模式信息180,使用具有基数l(例如l=1)的一个或多个转换状态的集合161a或者使用具有基数m(例如m=4)的一个或多个转换状态的集合161b。图10显示三个可能的满射映射106a、106b以及106c。
根据一种实施方式,二进制函数是奇偶校验(parity)。
在图8之中,二进制函数可以称为「路径」(path),且第一残差级别特征可以与「路径0」有关以及第二残差级别特征可以与「路径1」有关。根据一种实施方式,解码器20被配置为获得残差级别的奇偶校验作为残差级别特征157。解码器可被配置为通过将二进制函数应用156在当前残差级别,来确定是否残差级别具有偶奇偶校验或者奇奇偶校验。例如,「路径0」可以对应于偶奇偶校验以及「路径1」可以对应于奇奇偶校验。
如图8所示,解码器20被配置为执行(无论何种量化模式信息18何,例如与量化模式信息180无关或者与量化模式信息180独立)量化器153的选择152,其是通过使用第一映射200将当前转换状态220的预定数量的位映射到默认量化器来执行,而无论何种量化模式信息18何,预定数量以及第一映射200是相等的。预定数量的位表示例如位于一个或多个预定位位置(例如,LSB或者位于第二但非最末有效位位置的位)的当前转换状态220的一个或多个位。
根据一种实施方式,默认量化器的集合151(如图1所示)是由第一默认量化器1511以及第二默认量化器1512组成,其中第一默认量化器1511包括量化步长大小144的偶整数倍数作为重构级别142,且第二默认量化器1512包括量化步长大小144的奇整数倍数以及零作为重构级别142。
根据一种实施方式,第一映射200将等于一或者小于一的当前转换状态220映射到第一默认量化器1511,以及将大于一的当前转换状态220映射到第二默认量化器1512。位的预定数量可以是一,且解码器20可被配置为将当前转换状态220的第二位(例如第二LSB)映射到第一默认量化器或者映射到第二默认量化器。
图8所示的解码器20被配置为使用经反量化的残差值104,来重构170媒体信号。根据一种实施方式,解码器20被配置为通过执行一预测而获得媒体信号的预测版本,以执行重构170,以及利用经反量化的残差值104来校正预测版本;或者利用经反量化的残差值104、通过执行预测而获得媒体信号的预测版本,以重构媒体信号;将经反量化的残差值104进行反向变换以获得媒体残差信号;以及利用媒体残差信号来校正预测版本。
如上所述,残差级别142是依序地反量化150。存在用以反量化150第一残差级别(亦即,第一非零变换系数的残差级别)的不同选择,其中解码器20可被配置为使用这些选择之一。
解码器20可被配置为将当前残差级别是第一残差级别的当前转换状态设定190成预定值。例如,预定值可以是零。基于此预定的当前转换状态,可以执行量化器153的选择152,且第一残差级别是例如使用所选择的量化器153进行反量化154。解码器20可被配置为将二进制函数应用156在第一残差级别,以获得第一残差级别特性作为当前残差级别的特性157,并且依据当前残差级别的特性157来更新158当前转换状态。根据第一选择,解码器20可被配置为使用更新的转换状态作为当前转换状态,以执行对于下一残差级别的反量化150。根据第二选择,解码器20被配置为在进行下一残差级别的反量化150之前,使用更新的转换状态作为当前转换状态,再次执行第一残差级别的反量化150。替代性地,根据第三选择,解码器20可被配置为将当前残差级别是第一残差级别的当前转换状态设定190是预定值,并且将二进制函数应用156在第一残差级别,以获得第一残差级别特性作为当前残差级别的特性157。例如,预定值可以是零。此外,解码器20被配置为依当前残差级别的特性157来更新158预定的当前转换状态,以获得当前转换状态。基于此当前转换状态,可以执行量化器153的选择152,且第一残差级别是例如使用所选择的量化器153进行反量化154。此外,解码器20可被配置为再次执行更新158,以获得用于下一残差级别的当前转换状态。
根据一种实施方式,解码器20被配置为利用待使用的转换表106,来更新158当前转换状态。例如,解码器20被配置为通过下列方式依序地反量化150残差级别142:依据当前转换状态,从默认量化器的集合151之中选择152量化器153;使用量化器153反量化154当前残差级别,以获得经反量化的残差值104;将二进制函数应用156在当前残差级别,以获得当前残差级别的特性157;以及利用待使用的转换表106、依据当前残差级别的特性157,来更新158当前转换状态。解码器可被配置为依据包括在数据流14中的量化模式信息180,从默认转换表106a、b、c的集合159之中选择默认转换表作为待使用的转换表106,每个转换表106a、b、c表示从具有当前残差级别的特性157的一个或多个转换状态的集合161的组合163的域满射映射到一个或多个转换状态的集合161,其中这些默认转换表的差异在于一个或多个转换状态的集合161的基数l、m、n。此外,解码器20是例如配置以执行(无论选择哪个默认转换表作为待使用的转换表)量化器的选择152,其是通过使用第一映射200将当前转换状态220的预定数量的位映射到默认量化器来执行,而无论选择哪个默认转换表作为待使用的转换表,预定数量以及第一映射200是相等的。
根据一种实施方式,默认转换表106a、b、c的集合159包括下列其中两个或者更多个:
第一默认转换表106,其中一个或多个转换状态的集合的基数是一,
第二默认转换表106,其中一个或多个转换状态的集合的基数是四,
第三默认转换表106,其中一个或多个转换状态的集合的基数是八。
根据一种实施方式,默认转换表106a、b、c的集合159包括:第一默认转换表106a,其中一个或多个转换状态的集合的基数是一;以及第二默认转换表106b,其中一个或多个转换状态的集合的基数是四。
换言之,依据量化模式信息180,满射映射以及一个或多个转换状态的集合161的基数l、m、n是可以在下列其中两项或者更多项之间选择:一个或多个转换状态的集合161a的基数l是一,一个或多个转换状态的集合161b的基数m是四,以及一个或多个转换状态的集合161c的基数n是八。根据一种实施方式,满射映射以及一个或多个转换状态的集合161的基数l、m、n可以在一个或多个转换状态的集合161a的基数l是一与一个或多个转换状态的集合161b的基数m是四之间选择。
根据一种实施方式,解码器20被配置为管理默认转换表106a、b、c的集合159作为统一转换表的不同部分;在统一转换表之中,对于每个默认转换表106a、b、c而言,一个或多个转换状态的集合161中的每一个是使用状态索引进行索引,而此状态索引是不同于在统一转换表之中对任何其他默认转换表进行索引所使用的状态索引(例如:对于在统一转换表的不同部分的默认转换表的转换状态而言,默认转换表与另默认转换表彼此不相交)。
根据一种实施方式,解码器20被配置为执行当前转换状态220的更新158,例如:依据当前残差级别的特性157,利用欲使用在下一反量化的残差级别的下一转换状态162的转换表106,通过在统一转换表中查找对应于当前残差级别的特性157以及当前转换状态220的组合163的项目。
根据一种实施方式,量化模式信息180包括数据流中的语法元素,此语法元素表示用于依一反量化顺序(例如,沿着此顺序执行依序反量化)反量化第一残差级别的开始转换状态(starting transition state),通过拟合至仅用于对应于待使用的转换表的统一转换表的部分的状态索引,使得此语法元素指示出从默认转换表的待使用的转换表。
根据一种实施方式,媒体信号是视频,且解码器20被配置为从数据流14读取量化模式信息180,并且以下列其中一种方式执行从默认转换表的集合选择默认转换表106:对于视频仅一次、逐图像块、以每图像为基础、以每切片为基础、以及以每图像序列为基础。
换言之,解码器20可被配置为读取量化模式信息180,量化模式信息180控制以下列其中一种方式执行更新:对于视频仅一次、逐图像块、以每图像为基础、以每切片为基础、以及以每图像序列为基础。
根据一种实施方式,媒体信号是彩色视频,且解码器20被配置为对于不同的颜色成分使用默认量化器的集合151的不同版本。
解码器20和/或对应的编码器可以包括如以下实施方式其中一种或多种所述的特征和/或功能。
本发明指示一种解码器、一种编码器以及一种方法,用以在统一架构中支持相依量化的多种变型。本发明具体地描述一种概念,其中对于全部的支持量化方法而言,熵解码以及重构程序(例如媒体信号的重构170)基本上皆相同,亦即与量化模式信息180独立,例如基于由编码器所选择且在位流(亦即数据流14)内发送信号的量化方法而仅选取状态转换表106。在本发明的优选实施方式中,支持三种量化方法,其可以通过量化模式信息180加以指示:
·传统的独立纯量量化;
·具有4个状态(亦即转换状态)的相依量化;以及
·具有8个状态(亦即转换状态)的相依量化。
在另一种实施方式中,支持具有多于8个状态(例如16个状态)的相依量化的额外变型。在本发明的另一种实施方式中,仅支持传统的量化以及具有多于4个状态的相依量化的版本。在另一种实施方式中,支持两种或更多种全部皆具有多于4个状态的相依量化的变型。根据另一方面,仅支持传统的量化以及具有4个状态的相依量化。
本发明的一方面是将全部解码器操作设计成与实际使用的量化方法独立。此方面中可以取决于所选取的量化方法是状态转换表106的选择。一旦给定状态转换表106,解码程序即与所选择的量化方法独立。
本发明的优点如下:
·通过支持具有多于4个状态的相依量化,由于达成N维信号空间中的可容许重构点的更密集紧凑,因此可以提高编码效率(这已显示在文献中)。
·通过支持相依量化的不同变型(其差别在于状态的数量),而给予编码器选择变型的自由度,此提供在其应用领域中的编码效率与实现方式复杂度之间的最适当权衡。应注意,编码器复杂度取决于所支持的量化状态的数量,亦即取决于一个或多个转换状态的集合161的基数l、m、n。虽然具有8个状态的相依量化比具有4个状态的相依量化产生较高的编码效率,但其也需要较高的编码器复杂度。
·通过设计用于所支持的全部量化方法的统一解码器程序,基本上在解码器侧无需额外的实现方式复杂度。应注意,解码复杂度几乎与量化状态的数量独立。但若必须支持不同的方法,则解码器复杂度将会提高。通过统一所支持的全部量化方法的解码程序,解码器的实现方式复杂度相对于支持相依量化的单一方法几乎是不变的。
5.1本发明的基本概念
在VTM-7中,指明具有4个状态的相依量化以及以下状态转换表106,例如在基数m是四的一个或多个转换状态的集合161b的情况下所表示的状态转换表106b:
Figure BDA0003809448230000291
Figure BDA0003809448230000301
在VTM-5之中,路径是由当前变换系数级别(亦即,依编码顺序102的当前残差级别(或者量化索引))的奇偶校验给定。在level[k]表示当前变换系数级别的情况下,变量path被如下确定:
path=(level[k]&1),
其中「&」表示二补码算术中的逐位「和」运算符。如上所述,路径可以是量化索引的任何二进制函数。尽管如此,使用奇偶校验是优选的。
在VTM-7的解码程序中,一些操作为取决于状态变量(亦即,转换状态)。尤其是以下三种方面:
·为重构变换系数选取的量化器153取决于当前转换状态220。在VTM-7中,量化器标识符(quantizer id)(其可以是零或者一)是给定是QId=state>>1。
在给定状态变量状态的当前值以及当前量化索引level[k]的情况下,重构变换系数trec[k](亦即,经反量化的残差值104)被如下获得:
Figure BDA0003809448230000302
其中,在if分支内的第二行表示与量化步长大小144的乘积的整数变量。表示式(state>>1)指示所使用的量化器153,例如表示式(state>>1)表示第一映射200。运算符「>>」表示位向右移位。
·见图9,用于编码有效值标志(亦即,有效值二元符码(significance bin)92)的上下文模型(亦即,上下文242)取决于状态变量(亦即,当前转换状态220)。在VTM-7中,其是取决于max(state-1,0)的值230以及选择性地取决于其他变量。其可以解释为使用了三个不同的上下文模型242的集合。第一集合是用于变换系数级别(亦即,残差级别142),其中状态变量220等于0或者1;第二集合是用于变换系数级别142,其中状态变量220等于2;以及第三集合是用于变换系数级别142,其中状态变量220等于3。
·用于编码语法元素dec_abs_level(在旁路模式中进行编码的变换系数级别)的参数pos0(例如,表示二进制化参数302)取决于量化状态(亦即,指定至个体残差级别的转换状态)。在VTM-7中,变量pos0被如下确定:
pos0=(state<2?1:2)<<RPabs
其中RPabs表示基于局部邻近区域中的绝对变换系数的总和所选取的Rice参数。
5.1.1增加相依量化的另一变型
此时,举例而言,在位流语法以及解码程序之中应支持具有8个状态的相依量化的额外变型。此变型可以使用以下状态转换表106c(例如在基数n是八的情况下的一个或多个转换状态的集合161c):
Figure BDA0003809448230000311
对于此变型而言,量化器153被给定为QId=state>>2。
概念上,脱离VTM-7中所选取的量化器的两个量化器会是优选的。
见图9,对于编码有效值标志92而言,多于3个不同的上下文集合242会是优选的。使用与4状态变型相同的关系(亦即,min(state-1,0)),将需要7个上下文集合242。上下文集合242的数量可以限制是3,但接着须使用与4状态变型不同的规则。
此外,在VTM-7中的pos0变量(亦即,二进制化参数302)的推导(用于编码dec_abs_level)是取决于所使用的量化器153。对于第量化器1511,其被设定为等于
pos0=1<<RPabs,
而对于第二量化器1512,其被设定为等于
pos0=2<<RPabs。
因此,对于8状态变型而言,将需要不同的实现方式。
5.1.2解码程序的统一
所提出的概念的想法是要统一用于所支持的全部量化变型的解码程序。残差级别的量化变型可以由量化模式信息180指示。允许统一的第一观察结果是:在不影响重构程序的结果的情况下,可以重新标记量化状态(亦即,转换状态)。例如,由以下所给定的VTM-7状态转换表
Figure BDA0003809448230000321
可以重写为
Figure BDA0003809448230000322
这里,将状态1以及2的意义交换。对于原始表格,量化器153是由QId=state>>1给定。对于重新制定的表格106,量化器153是由QId=state&1给定,其中「&」表示逐位「和」运算符。
以类似方式,可以重新制定用于8状态版本(或者相依量化的任何其他变型)的状态转换表106,使得相同关系(亦即,第一映射200)可用于推导量化器标识符(亦即,待使用的量化器153)。
为了进一步统一解码程序,必须在编码效率与实现方式复杂度之间妥协。例如,对于有效值标志92的熵编码而言,无法选取适于全部所支持的量化器的变型的最佳版本,但仍可以设计统一版本,即使这对于所支持的相依量化的变型中的一些变型是次最佳方式。
5.1.3所选择的量化变型的信令
最后,所选择的量化器变型(亦即,待使用的量化器153)必须指示在位流(亦即,数据流14)内。为此目的,多种变型是可能的:
·其可以在块层级上选择(例如,每个编码树单元或者编码单元);在此情况中,每个对应的块必须传输专用语法元素;
·其可以在切片或者图像层级上选择(或者,图块或者图块组层级);在此情况中,切片或者图像头部(或者,图块或者图块组)之中必须传输专用语法元素;
·其可以在序列层级上选择;在此情况中,序列参数集合或者类似语法结构之中必须传输专用语法元素。
在一种实施方式中,不同的量化器可用于不同的颜色成分(例如,不同的量化器可用于亮度以及色度)。
5.2特定实施方式的描述
在下述中,将更详细描述本发明的实施方式。然而,应注意,其他实施方式也是可能的(如上所述以及部分以下描述)。本发明并不限于以下所述的特定设计。
本发明的特征是两种或更多种下述方面的组合:
·支持独立量化以及相依量化的一个或多个变型的位流语法以及解码程序,其中相依量化的至少一个变型使用4或者更多量化状态;
·所使用的量化变型是由在块、切片、图像、或者序列层级传输的专用语法元素来指示。在优选版本中,其在图像头部传输。
·变换系数的量化状态是通过状态转换程序(亦即,满射映射)进行推导,其由下列步骤组成:
o将编码顺序中的第一变换系数(亦即,第一残差级别)的状态(亦即,转换状态)设定至预定值;在优选版本中,其被设定为等于0。
o基于编码顺序中的在前变换系数的状态以及在前变换系数的量化索引的值的二进制函数(亦即,在前残差级别的值的二进制函数),推导当前变换系数(亦即,当前残差级别)的状态。在优选版本中,二进制函数表示奇偶校验,亦即当前状态由在前状态以及在前量化索引(亦即,在前残差级别)的奇偶校验给定。
o状态转换程序(亦即,满射映射),其基于在前状态来确定当前状态220,且在前量化索引的二进制函数(优选地是奇偶校验)由状态转换表106指示。
o基于实际上所选择的量化变型(其指示在位流之中,例如通过量化模式信息180)以选择状态转换表106。然而,对于给定的状态转换表106而言,状态转换程序(例如,所使用的二进制函数)与所选择的量化器变型独立。
·支持图1所示的两个纯量量化器(例如,量化器1511以及量化器1512),且用于当前变换系数的量化器153是唯一地由量化器状态确定:
o从状态220至量化器标识符(0或者1)的相同映射(亦即,第一映射200)是用于全部所支持的量化变型。在优选版本中,量化器标识符由qId=state&1给定。
o第量化器1511(qid等于0)的可容许重构级别142包括量化步长大小144的全部偶整数倍数。
o第二量化器1512(qid等于1)的可容许重构级别142包括量化步长大小144的全部奇整数倍数以及额外包括等于0的重构级别。
·例如见图9,量化索引(亦即,残差级别142)是使用二进制算术编码进行编码,其中二进制化300包括至少一个二元符码(优选地是有效值标志92,其表示为否量化索引是零或者非零),为此所选取的概率模型(或者上下文模型242)是取决于对应的变换系数(亦即,当前残差级别)的量化状态(亦即,当前转换状态220)。因此,用于推导上下文模型242的相同方法是用于全部所支持的量化变型。这意谓着,对应的二元符码的上下文模型推导取决于状态220,但其并不取决于所选择的量化变型,亦即与量化模式信息180独立。
以下,将描述特定实施方式,其支持独立量化、具有4个状态的相依量化、以及具有8个状态的相依量化。
5.2.1高级别信令(High-level signaling)
根据一种实施方式,如图8所示,媒体信号是视频,且数据流14中的量化模式信息180包括第一语法元素182(例如pps_dep_quant_enabled_idc),其指示视频或者视频的一部分是否从默认转换表106a、b、c的集合159之中选择一个默认转换表106是经由数据流14中的量化模式信息180的第二语法元素184(例如pic_dep_quant_idc)而控制在所述视频或者所述视频的所述部分之内,或者将要选择默认转换表106a、b、c的集合159中的哪一个作为用于所述视频的所述部分的一个默认转换表106。
换言之,媒体信号是视频,且数据流14中的量化模式信息180包括第一语法元素182(例如pps_dep_quant_enabled_idc),其指示视频或者视频的一部分是否更新158是经由数据流14中的量化模式信息180的第二语法元素184(例如pic_dep_quant_idc)而控制在所述视频或者所述视频的所述部分之内,或者将要选择满射映射中的哪一个以及一个或多个转换状态的集合161的基数l、m、n中的哪一个来用于更新158。
根据一种实施方式,在所述部分是视频的情况下,第一语法元素182被包含在数据流14中的视频参数集合之内,以及第二语法元素184控制以图像序列、图像、图块、切片、编码树块、编码块、或者残差变换块为单位,从默认转换表106a、b、c的集合159之中选择一个默认转换表106。替代性地,在所述部分是图像序列的情况下,第一语法元素182被包含在数据流14中的序列参数集合之内,以及第二语法元素184控制以图像、图块、切片、编码树块、编码块、或者残差变换块为单位,从默认转换表106a、b、c的集合159之中选择一个默认转换表106。替代性地,在所述部分是一个或多个图像的情况下,第一语法元素182被包含在数据流14中的图像参数集合之内,以及第二语法元素184控制以图像、图块、切片、编码树块、编码块、或者残差变换块为单位,从默认转换表106a、b、c的集合159之中选择一个默认转换表106。替代性地,在所述部分是一个图像的情况下,第一语法元素182被包含在数据流14中的图像头部之内,以及第二语法元素184控制以图块、切片、编码树块、编码块、或者残差变换块为单位,从默认转换表106a、b、c的集合159之中选择一个默认转换表106。替代性地,在所述部分是一个编码树块的情况下,第一语法元素182被包含在数据流14中的参数集合之内,以及第二语法元素184控制以编码块、或者残差变换块为单位,从默认转换表106a、b、c的集合159之中选择一个默认转换表106。在编码树块的情况下,可以以下述为单位来控制选择,例如:在通过递归多树型细分(recursive multi-tree subdivisioning)的方式将每个编码树块分割成编码块之前,将一个图像均匀地预先细分的单位。在编码块的情况下,可以以下述为单位来控制选择,例如:做出图像内/图像间模式确定的单位。
换言之,在所述部分是视频的情况下,第一语法元素182被包含在数据流14中的视频参数集合之内,以及第二语法元素以图像序列、图像、图块、切片、编码树块、编码块、或者残差变换块为单位,控制更新158。替代性地,在所述部分是图像序列的情况下,第一语法元素182被包含在数据流14中的序列参数集合之内,以及第二语法元素以图像、图块、切片、编码树块、编码块、或者残差变换块为单位,控制更新158。替代性地,在所述部分是一个或多个图像的情况下,第一语法元素182被包含在数据流14中的图像参数集合之内,以及第二语法元素以图像、图块、切片、编码树块、编码块、或者残差变换块为单位,控制更新158。替代性地,在所述部分是一个图像的情况下,第一语法元素182被包含在数据流14中的图像头部之内,以及第二语法元素以图块、切片、编码树块、编码块、或者残差变换块为单位,控制更新158。替代性地,在所述部分是一个编码树块的情况下,第一语法元素182被包含在数据流14中的参数集合之内,以及第二语法元素以编码块、或者残差变换块为单位,控制更新158。在编码树块的情况下,可以以下述为单位来控制更新158,例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位。在编码块的情况下,可以以下述为单位来控制更新,例如:做出图像内/图像间模式确定的单位。
在一个版本中,所选择的量化方法是由编码在图像头部之中的语法元素(亦即,第二语法元素184)来指示。此语法元素184可以称为pic_dep_quant_idc,并且可以采用下述三个值之一,例如表示将要选择满射映射中的哪一个以及一个或多个转换状态的集合161的基数l、m、n中的哪一个用于更新158(例如,表示将要选择哪个默认转换表106a、b、c的集合159作为用于视频的所述部分的一个默认转换表106):
·值0表示传统的独立纯量量化是用于当前图像(例如表示集合161a具有等于to1的基数l);
·值1表示具有4个状态的相依量化是用于当前图像(例如表示集合161b具有等于4的基数m);
·值2表示具有8个状态的相依量化是用于当前图像(例如表示集合161c具有等于8的基数n)。
此外,类似于VTM-7,图像头部语法元素的存在性是由图像参数集合(PPS,pictureparameter set)语法元素pps_dep_quant_enabled_idc来指示。此语法元素(亦即,第一语法元素182)可以利用2位的固定长度码进行编码,且可以具有下述语意:
·值0指示pic_dep_quant_idc是存在于图像头部之中(例如表示通过第二语法元素184将更新158控制在视频或者视频的所述部分之内);
·值1指示pic_dep_quant_idc是不存在于图像头部之中,但对于参照图像参数集合的全部图像而言,其被推论为等于0(独立纯量量化)(例如表示集合161a的基数l等于1);
·值2指示pic_dep_quant_idc是不存在于图像头部之中,但对于参照图像参数集合的全部图像而言,其被推论为等于1(具有4个状态的相依量化)(例如表示集合161b的基数m等于4);
·值3指示pic_dep_quant_idc是不存在于图像头部之中,但对于参照图像参数集合的全部图像而言,其被推论为等于2(具有8个状态的相依量化)(例如表示集合161c的基数n等于8)。
类似于VTM-7,若图像参数集合标志constant_slice_header_params_enabled_flag等于1,则pps_dep_quant_enabled_idc182是存在于图像参数集合之中。若图像参数集合标志constant_slice_header_params_enabled_flag等于0,则图像参数集合语法元素pps_dep_quant_enabled_idc182是不存在于图像参数集合之中,但其被推论为等于0(在此情况下,pic_dep_quant_idc184是编码在图像头部之中)。
5.2.2状态转换表
基于图像头部语法元素pic_dep_quant_idc(或者任何类似的语法元素)的值(传输的值或者推论的值),可以选择状态转换表106。如图10所示,三个状态转换表106a、b、c可以支持3种支持量化变型。状态转换表106a、b、c表示作为示例(实际所使用的状态转换表可以脱离这些示例)。
根据一种实施方式,解码器20和/或对应的编码器仅使用状态转换表106a以及106b。
5.2.3状态转换
对于每个变换块112,初始状态被设定为等于0。
变换块112的变换系数(亦即,残差级别142)是依预定的编码顺序102进行处理。给定当前变换系数的状态(currState)(亦即,当前转换状态220)以及当前变换系数(currLevel)的量化索引(也称为变换系数级别或者残差级别),则编码/处理顺序中的下一变换系数的状态(nextState)被如下推导:
nextState=stateTransTab[currState][currLevel&1],
例如表示满射映射,其中stateTransTab表示由所选择的量化变型确定的状态转换表106。这里,量化索引的奇偶校验(currLevel&1)确定路径变量(见上述状态转换表)。在替代使用奇偶校验的情况中,也可能使用任何其他的量化索引的二进制函数(见以上所述)。
5.2.4变换系数的重构
用于当前变换系数(亦即,当前残差级别)的量化器153是唯一地由状态变量(亦即,当前转换状态220)的值来指示。量化器标识符QId被如下推导:
QId=state&1,
表示第一映射200,其中&表示逐位「和」运算符。具有QId=0的量化器1511包括量化步长大小144的偶整数倍数作为可容许重构级别142。具有QId=1的量化器1512包括量化步长大小144的奇整数倍数以及等于0的值作为可容许重构级别142。
用于单个变换块的变换系数的重构程序的优选示例是显示在图11使用C语言形式的伪码之中。
图11示出伪码,其说明用于变换块112的变换系数的重构程序。数组level表示对于变换块112所传输的变换系数级别(亦即,所传输的残差级别142(量化索引)),且数组trec表示对应的重构变换系数104。二维表格state_trans_table表示状态转换表106(例如基于高级别语法元素(例如dep_quant_idc)而选择)。
在图11的伪码中,索引k指示变换系数(亦即,残差级别142)的重构顺序102。应注意,在示例码之中,索引k按重构顺序而递减。最终变换系数的索引等于k=0。第一索引kstart指示第一重构变换系数的重构索引(或者更精确而言,反重构索引)。变量kstart可以设定为等于变换块中的变换系数的数量减1,或者其可以设定为等于编码/重构顺序102中的第一非零量化索引(例如,若在所应用的熵编码方法中传输所述第一非零量化索引的位置)的索引。在后者的情况中,全部在前变换系数(在索引k>kstart的情况下)被推论为等于0。量化索引(亦即,残差级别142)是由level[k]表示,且相关联的重构变换系数(亦即,反量化残差级别104)是由trec[k]表示。状态变量(亦即,当前转换状态220)是由state表示。状态转换表106是由二维数组state_trans_table[][]表示。在替代使用表格state_trans_table[][]以确定下一状态的情况中,可以使用产生相同结果的算术运算。
quant_step_size[k]表示对于变换系数在索引k的量化步长大小144。应注意,不同的量化步长大小144可用于不同的变换系数位置k(如由量化权重矩阵与块量化参数的组合所给定)。如上所述,非整数量化步长大小的乘法通常使用整数运算来实现,例如:
trec[k]=(n*scale[k]+add)>>shift
其中量化步长大小144基本上是由下述给定:Δk=scale[k]·2-shift
5.2.5量化索引(或者变换系数级别)的熵编码
在优选版本中(见图9),量化索引是利用类似H.264|MPEG-4AVC或者H.265|MPEG-HHEVC的二进制算术编码进行编码。
为此目的,首先将非二进制量化索引90映射到一系列二元决策(其通常称为二元符码)。量化索引是以绝对值以及正负号(针对绝对值大于0的情况)进行传输。在优选版本中,使用与VTM-7之中相同的二进制化。
Figure BDA0003809448230000391
传输下述的二进制以及非二进制语法元素:
·sig_flag 92指示是否变换系数级别的绝对值|q|大于0;
·若sig_flag 92等于1,则gt1_flag 96指示是否变换系数级别的绝对值|q|大于1;
·若gt1_flag 96等于1,则par_flag 94指示变换系数级别的绝对值|q|的奇偶校验,且gt3_flag 98指示是否变换系数级别的绝对值|q|大于3;
·若gt3_flag 98等于1,则非二进制值rem 99指示绝对级别|q|的其余部分。此语法元素是以算术编码机的旁路模式、利用Golomb-Rice码进行传输。
不存在的语法元素被推论为等于0。在解码器侧,变换系数级别的绝对值被如下重构:
|q|=sig_flag+gt1_flag+par_flag+2*(gt3_flag+rem)
对于非零变换系数级别(由sig_flag 92等于1来指示),则在旁路模式中额外传输sign_flag,其表示变换系数级别的正负号。
除了以下所述的两种方面之外,二元符码的编码顺序102以及上下文模型基本上与VTM-7之中相同。此外,使用用以限制上下文编码二元符码的数量的最差情况的相同概念。
图9显示用于残差级别142的绝对值的初始值域90。此初始值域90可以包括介于零与一些最大值之间的全部整数值。初始值域90也可以是往更大数值开放的区间。初始值域90中的整数值的数量不需是2的幂次。此外,图9显示参与表示个体残差级别142的各种二元符码类型(亦即,参与表示其绝对值)。存在sig_flag 92类型,其表示特定残差级别的绝对值是否是零或者非零。亦即,sig_flag 92将初始值域90二分为两个子部分;亦即,一部分仅包括零,而另一部分包括全部其他可能的值。亦即,若后者刚好是零(如图9下方所示),则sig_flag 92已唯一地表示残差级别的绝对值。初始值域90的非零值形成值域96,值域96进一步由二元符码类型gt1_flag 96进行二分;亦即,一部分仅包括一,而另一部分包括全部其他可能的值。下一标志,亦即par_flag 94将结果值域(包括大于一的全部值)分是奇数值的一部分以及偶数值的另一部分。对于特定残差级别142而言,只有在后者大于一的情况下,par_flag 94才需要存在。相对于同样将值域94二分而成的各半部分中的一个,par_flag 94不产生唯一性。其表示一个半部分作为下一结果(递归地定义)值域,且因此下一标志(亦即,gt3_flag 98)在par_flag 94之后将此结果值域进一步二分。如图9下方所示,这意谓着,若后者刚好是零,对于特定变换系数的残差级别,仅将sig_flag 92进行编码;而若后者刚好是一,对于一特定变换系数的残差级别,则将sig_flag 92以及gt1_flag 96进行编码。若后者刚好落入包括绝对值2至5的值区间,则将全部的标志sig_flag 92、gt1_flag96、par_flag 94以及gt3_flag 98进行编码,以表示特定变换系数的特定残差级别;此外,对于绝对值落在初始值域90之外的其余区间的变换系数的残差级别,则将其余部分99进行编码。
5.2.5.1对于有效值标志的上下文选择
图9显示对于有效值二元符码92的上下文适应性二进制算术编码(CABAC,context-adaptive binary arithmetic coding)的实施方式。根据一种实施方式,解码器20(显示于图8)被配置为使用当前残差级别的二进制化300的二元符码的上下文适应性二进制算术解码240,以从数据流14解码210当前残差级别,所述二元符码包括指示是否当前残差级别是零或者非零的有效值二元符码92。解码器20可被配置为依据通过映射所获得的值230,以选择用于解码当前残差级别的第一二元符码(亦即,有效值二元符码92)的第一上下文242,其中映射是使用第二映射202将当前转换状态220的进一步预定数量的位(例如LSB)映射到值230。无论何种量化模式信息18何,第二映射202可以是相等的,例如无论选择默认转换表106a、b、c中的哪一个作为待使用的转换表106,第二映射202可以是相等的。进一步预定数量的位表示例如位于一个或多个预定位位置(例如LSB或者位于第二但非最末有效位位置的位)的当前转换状态220的一个或多个位。
根据一种实施方式,进一步预定数量的位是二,且例如表示LSB(lastsignificant bit,最末有效位)以及位于第二但非最末有效位位置的位。值230可以从第二映射202产生,其是如第5.1节所示的max(state-1,0)或者是max(0,(state&3)-1)。替代映射方式是可能的。
对于有效值标志(亦即,有效值二元符码92),所选择的概率模型(亦即,上下文模型或者上下文242)例如取决于:
·当前变换块112是否是亮度或者色度变换块;
·相依量化的转换状态;
·当前变换系数的x和y坐标(当前残差级别表示当前变换系数的残差级别);
·局部邻近区域中的部分重构的绝对残差值(在第一遍次601之后)。
变量state表示用于当前变换系数的状态(亦即,当前转换状态220)。如以上的说明,用于当前变换系数的状态220是由编码顺序102中的用于先前系数的状态以及先前变换系数级别的奇偶校验(或者更一般而言,二进制函数)给定。
在x和y是变换块112内的当前变换系数的坐标的情况下,令diag=x+y是当前系数的对角线位置。给定对角线位置,则对角线类别索引dsig被如下推导:
dsig=(diag<2?2:(diag<5?1:0))对于亮度变换块
以及
dsig=(diag<2?1:0)对于色度变换块
三元运算符(c?a:b)表示if-then-else语句。若条件c是真,则使用值a,否则使用值b(c是伪)。
上下文242可以取决于局部邻近区域内的部分重构的绝对值。如VTM-7之中,局部邻近区域可以由模板T132给定,例如图7所示。但其他模板132是可能的。所使用的样本132也可以取决于是否亮度或者色度块进行编码。令sumAbs是模板T132中的部分重构的绝对值的总和(在第一遍次601之后):
Figure BDA0003809448230000411
其中abs1[k]表示在第一遍次之后的扫描索引k的部分重构的绝对级别。在VTM-7的二进制化的情况下,其被如下给定:
abs1[k]=sig_flag[k]+gt1_flag[k]+par_flag[k]+2*gt3_flag[k]。
应注意,abs1[k]等于在第一扫描遍次601之后所获得的值coeff[k](见以上所述)。
假定用于sig_flag92的可能的概率模型(亦即,上下文242)是一维数组的结构。且令ctxIdSig是标识所使用的概率模型242的索引。上下文索引ctxIdSig(例如,表示上下文242的索引)可以被如下推导110:
若变换块是亮度块,
ctxIdSig=min((sumAbs+1)>>1,3)+4*dsig+12*state2CtxSet(state&3)
若变换块是色度块,
ctxIdSig=36+min((sumAbs+1)>>1,3)+4*dsig+8*state2CtxSet(state&3)
这里,运算符「>>」表示位向右移位(二补码算术)。此运算与除以二并且将其结果向下取整(舍至下一整数)相同。
应注意,首先将状态(亦即,当前转换状态220)映射到介于0与3之间的值(包括0与3)。这可以通过运用与3进行逐位「和」(亦即,state&3)而达成。接着,函数state2CtxSet(..)将此值映射到值230(0,1,2)其中之一。在优选实施方式中,函数给定如下:
Figure BDA0003809448230000421
根据此实施方式,第二映射202可以理解为两个连续映射,其中先将当前转换状态220映射到第一值,并且接着将此第一值映射到值230(上下文242的选择是取决于此值230)。
应注意,上下文索引取决于状态220,但其并不取决于所使用的量化方法180。
应注意,上下文模型的其他结构(亦即,不同的上下文242)是可能的。但在任何情况中,是编码sig_flag92所选取的概率模型(亦即,上下文242)取决于:
·是否对亮度或者色度块进行编码;
·状态变量220(但相同函数是例如用于全部所支持的量化变型);
·对角线类别dsig;
·局部模板132内的部分重构的绝对值的总和(在第一遍次601之后),具体是min((sumAbs+1)>>1,3)。
5.2.5.2用于经旁路编码的变换系数级别的映射参数
根据一种实施方式,媒体信号是视频,且解码器20(显示于图8)被配置为通过在关于另一图像块84的残差级别之前,解码关于一个图像块84(例如,表示变换系数块112)的残差级别,而从数据流14解码210残差级别142(如图6下方所示)。解码器20可被配置为在一个或多个扫描60之中(亦即,沿着编码顺序102的扫描)依序地解码210关于所述一个图像块84的残差级别142的二进制化300的二元符码,且针对残差级别142的二进制化300的二元符码的预定数量的前导二元符码,使用上下文适应性二进制算术解码,以及针对残差级别142的二进制化300的后续二元符码,使用等概率旁路模式。如图9所示,举例而言,有效值二元符码92、奇偶校验二元符码94、大于一的二元符码96以及大于三的二元符码98是在第一扫描601中进行解码(亦即,第一遍次),且其余部分二元符码99是于第二扫描602中进行编码。替代性地,残差级别142可以在一个扫描60或者三或者更多扫描60中进行解码。图9显示示例性变换系数块112,其中变换系数是沿着编码顺序102进行扫描,并且开始于第一非零残差级别120。因为残差级别304表示未超过预定数量的前导二元符码的最终残差级别,所以残差级别146的二进制化的二元符码直到残差级别304是使用CABAC进行解码,且残差级别144的二进制化的二元符码是使用等概率旁路模式进行编码。解码器20可被配置为通过使用第三映射118将转换状态220(亦即,与预定残差级别145有关的转换状态)的进一步预定数量的位(例如LSB)映射到二进制化参数302,并且依据二进制化参数302来执行预定残差级别145的二进制化300的确定,以确定预定残差级别145(其中,预定数量304的二元符码耗尽)的二进制化300。根据一种实施方式,对于全部残差级别144(其中,预定数量304的二元符码耗尽)而言,二进制化的确定可以由解码器20执行。转换状态220的位是例如位于转换状态220的一个或多个预定位位置的一个或多个位(例如:LSB,或者位于第二但非最末有效位位置的位)。
根据一种实施方式,解码器20被配置为依据二进制化参数302,以确定用于预定残差级别145的二进制化300,使得二进制化300是通过以下方式修改后的默认二进制化(例如Golomb-Rice码):将与预定级别相关联的一个二进制化码(其取决于二进制化参数302,例如pos0)复位向(re-directing)与级别零相关联,以及将与一个或多个级别(从零至所述预定级别减一)相关联的一个或多个二进制化码重定向至与一个或多个级别(从一至所述预定级别)相关联。默认二进制化的修饰可以通过方程式|q|=(abs_level==pos0?0:(abs_level<pos0?abs_level+1:abs_level)来实现,见以下所述。
根据一种实施方式,进一步预定数量的位是一。
类似于VTM-7,在第一扫描遍次601之中没有数据进行编码的绝对级别(亦即,残差级别144)是完全在旁路模式(亦即,等概率旁路模式)之中进行编码。其使用与用于其余部分rem99相同类别的码进行编码。基于已编码的语法元素(见以下所述),可以确定Rice参数和变量pos0(亦即,二进制化参数302)。这些绝对级别|q|144例如不被直接编码,而是被先映射到语法元素abs_level,而语法元素abs_level接着使用参数码进行编码。
依据变量pos0 302,可以将绝对值|q|144映射到语法元素abs_level。其可以表示为:
abs_level=(|q|==0?pos0:(|q|<=pos0?|q|-1:|q|)
在解码器侧,将语法元素abs_level映射到绝对值|q|可以表示如下:
|q|=(abs_level==pos0?0:(abs_level<pos0?abs_level+1:abs_level)
用于编码abs_level的Rice参数RPabs被如下推导:
RPabs=tabRPabs[min(sumAbs,31)],
其中sumAbs表示局部模板132内的绝对量化索引的总和;亦即,残差级别的绝对级别的总和(见以上所述)。
变量pos0 302可以取决于下列两者:局部模板132中的重构的绝对值的总和以及状态变量220。根据下式,变量pos0 302是从量化状态220以及Rice参数Rpabs推导118的:
pos0=(1+(state&1))<<RPabs。
应注意,变量pos0 302确实取决于状态220,但不取决于所使用的量化方法180。
方程式pos0=(1+(state&1))<<RPabs可以表示第三映射118,其是将转换状态220的进一步预定数量的位映射到二进制化参数pos0 302,其中(state&1)表示LSB被映射到二进制化参数pos0。进一步预定数量的位是一。
替代性地,方程式pos0=(state<2?1:2)<<RPabs可以表示第三映射118,其是将转换状态220的进一步预定数量的位映射到二进制化参数pos0 302,其中(state<2?1:2)表示将转换状态220的第二但非最末有效位位置映射到二进制化参数pos0(见第5.1节最后一项)。进一步预定数量的位是一。
5.3其他实施方式的方面
上述实施方式的多个方面是可以被修改的。以下,将指明这些方面的其中一部分:
·支持的量化变型和/或用于这些变型的实际状态转换表106的数量是可以被修改的;
·可以使用用以表示所选取的量化变型的不同机制;
·不同的量化索引的二进制函数可用于状态转换程序。这意谓着,状态转换可以表示为:
nextState=stateTransTable[currState][binFun(currLevel)],
其中binFunc()表示任何二进制函数(亦即,具有0以及1的可能函数值的函数)。
·不同的二进制化程序可用于编码量化索引。尤其,使用状态相依二进制化是可能的,其中支持多数二进制化且所使用的二进制化取决于量化状态(以及可能其他参数)。在此情况下,二进制化的选择可以与状态变量的值相依,但与所选取的量化方法独立。举例而言,可以支持两个二进制化,且所选择的二进制化可以取决于(state&1)的值。
·不同的上下文模型可用于任何二元符码。在此情况下,用于一个或多个二元符码的上下文仍可以与状态变量相依,但其可以与所选择的量化方法独立。
·可以使用用以确定其余部分的Rice参数和/或旁路编码的量化索引的不同方法。
·可以使用用以推导将旁路编码的量化索引进行编码的参数pos0的不同方法。但在结合本发明的情况下,参数pos0的确定不取决于所选择的量化方法。
5.4更进一步的实施方式
在上述实施方式中,变换编码是用以编码预测残差,以及量化方案/模式是由编码器选取并且用信号通知至解码器,以便用以量化/反量化变换系数。可以使用所获得的量化索引的熵编码(亦即,上下文适应性算术编码)。在解码器侧,重构的样本的集合是通过对应的量化索引的解码以及对应的变换系数的反量化而获得,以使反变换产生空间域中的预测残差。然而,可以将以上所提的实施方式修改,以产生其他实施方式,例如:用编码其他残差值(例如空间域中的残差样本)的方式。在替代使用上述用于编码视频的实施方式的情况下,可以使用上述概念来处理另一媒体信号,例如声音信号。以下所述的实施方式的主要目标在于影像以及视频编解码器中的预测误差样本的块的有损编码,但所述实施方式也可以应用于其他领域的有损编码。具体而言,对于形成矩形块的样本的集合并无限制。
虽然不限制在使用基于变换的预测残差编码的视频编码,但为了形成可以建立用于对样本块的变换表现形式进行编码以及解码的实施方式的编码架构的示例,后续提供了用于视频的图像编码的基于块的预测编解码器的视频编码器以及视频解码器的描述。视频编码器以及视频解码器是参照图12至14加以描述。如上所述的本申请的实施方式,其可以立即分别建立在图12以及13的视频编码器以及解码器之中,尽管以上所述的实施方式也可用以形成不根据图12以及13的视频编码器以及视频解码器之内在编码架构进行操作的视频编码器以及视频解码器。
图12显示用以将由一序列的图像12所组成的视频11预测性地编码至数据流14之中的设备。为此目的,使用逐块预测编码。此外,示范性地使用基于变换的残差编码。使用参考符号10来表示所述设备(或者编码器)。图13显示对应的解码器20;亦即,设备20被配置为预测性地从数据流14解码由图像块中的图像12’所组成的视频11’,这里也示范性地使用基于变换的残差解码,其中已使用撇号来分别指示由解码器20重构的图像12’以及视频11’,而就预测残差信号的量化所引入的编码损失而言,其与由设备10原始编码的图像12有所偏差。虽然图12以及图13示范性地使用基于变换的预测残差编码,但本申请的实施方式不限制于这种预测残差编码。对于参照图12以及13加以描述的其他细节,这也是真的,将如以下所述。
编码器10被配置为使预测残差信号进行空间至频谱变换,以及配置以将因此而得的预测残差信号编码至数据流14之中。同样地,解码器20被配置为从数据流14解码预测残差信号,以及配置以使因此而得的预测残差信号进行频谱至空间变换。
编码器10内部可以包括预测残差信号形成器22,其产生预测残差24以测量预测信号26与原始信号(亦即,视频11或者当前图像12)的偏差。预测残差信号形成器22可以例如是减法器,其将原始信号(亦即,当前图像12)减去预测信号。接着,编码器10进一步包括变换器28,其使预测残差信号24进行空间至频谱变换以获得频谱域预测残差信号24’,其是接着通过量化器32(也包括在编码器10)进行量化。将因此量化的预测残差信号24”编码至位流14之中。为此目的,编码器10可以选择性地包括熵编码器34,其使预测残差信号进行熵编码而变换并且量化至数据流14之中。预测残差26是由编码器10的预测级36基于预测残差信号24”而产生,预测残差信号24”被解码至数据流14之中且可以从数据流14解码。为此目的,如图12所示,预测级36内部可以包括反量化器38,反量化器38将预测残差信号24”进行反量化以获得频谱域预测残差信号24”’(除了量化损失以外,其对应于信号24’);后接反变换器40,反变换器40使后来的预测残差信号24”’进行反变换(亦即,频谱至空间变换)以获得预测残差信号24””(除了量化损失以外,其对应于原始预测残差信号24)。预测级36的组合器42接着将预测信号26以及预测残差信号24””进行再组合(例如通过加法方式)以获得重构信号46(亦即,原始信号12的重构)。重构信号46可以对应于信号12’。
通过使用例如空间预测(亦即,图像内预测)和/或时间预测(亦即,图像间预测),预测级36的预测模块44接着基于信号46而产生预测信号26。以下描述关于这方面的细节。
同样地,解码器20内部可以由对应于预测级36的构件(并且以对应的互连方式)组成。具体而言,解码器20的熵解码器50可以从数据流熵解码量化的频谱域预测残差信号24”;据此,依上述有关预测级36的模块的互连以及协作方式的反量化器52、反变换器54、组合器56以及预测模块58基于预测残差信号24”来恢复重构信号,以使组合器56的输出产生重构信号(亦即,视频11’或者其当前图像12’),如图13所示。
虽然以上未具体描述,但清楚可见编码器10可以根据一些优化方案(例如,优化一些速率以及失真相关的标准(亦即,编码成本)和/或使用一些速率控制的方式),以设定一些编码参数(包括例如预测模式、运动参数以及其类似物)。如以下更详细的描述,编码器10以及解码器20以及对应的模块44、58分别支持不同的预测模式,例如图像内编码模式以及图像间编码模式,其基于以下述详述方式所组成的图像块的预测,而形成原始预测模式的集合或者池(pool)。编码器以及解码器在这些预测组成之间切换的粒度可以对应于图像12以及12’分别成为块的细分。应注意,这些块的一部分可以是仅为图像内编码的块以及一部分块可以是仅为图像间编码的块,且选择性地,甚至一些块可以是使用图像内编码以及图像间编码两者所获得的块,而以下将提出其细节。根据图像内编码模式,块的预测信号是基于个体块的空间上、已编码/解码的邻近区域而获得。多个图像内编码子模式可以存在选择,而选择之中,
「准」(quasi)表示一种图像内预测参数。可以存在方向性或者角度性图像内编码子模式,根据这些子模式,个体块的预测信号是通过将邻近区域的样本值沿着特定方向(其是特定用于个体方向性图像内编码子模式)外推而填入个体块。图像内编码子模式也可以例如包括一个或多个其他子模式,例如:DC编码模式,根据这个子模式,个体块的预测信号指定DC值给个体块内的全部样本;和/或平面图像内编码模式,根据这个子模式,个体块的预测信号是近似或者判断是由二维线性函数所描述的样本值在个体块的样本位置上的空间分布,基于邻近样本而推导由二维线性函数所定义的平面的倾斜以及偏移。与此相较的下,根据图像间预测模式,可以例如通过时间上预测块内部而获得块的预测信号。对于图像间预测模式的参数化而言,运动向量可以在数据流内用信号通知,运动向量表示视频11的先前编码的图像的部分的空间位移,先前编码/解码的图像是这里进行取样以获得个体块的预测信号。这意谓着,除了数据流14所包括的残差信号编码(例如表示量化的频谱域预测残差信号24”的熵编码的变换系数级别)以外,数据流14还可以具有编码于其中的用以指定块预测模式的预测相关参数、用于所指定的预测模式的预测参数(例如用于图像间预测模式的运动参数)、以及(选择性地)控制使用所指定的预测模式以及预测参数的块的最终预测信号的组成的其他参数,如以下更详细的描述。此外,数据流可以包括图像12以及12’分别细分至块的控制以及信令参数。解码器20使用这些参数进行以下操作:利用与编码器所做的相同方式细分图像、指定相同预测模式以及参数给块、以及执行相同预测以产生相同预测信号。
图14一方面说明重构信号(亦即,重构图像12’)与数据流中所信令的预测残差信号24””以及预测信号26的组合之间的关系;另一方面说明预测残差信号24””以及预测信号26的组合。如上所述,所述组合可以是相加方式。预测信号26在图14中是显示是图像区域细分为不同尺寸的块80,但这仅是一示例。所述细分可以是任何细分,例如图像区域的规则细分为块的列和行,或者图像12的多树型细分为不同尺寸的叶块(例如,四元树细分或者其类似物),其中图14显示其混合方式,其中先将图像区域细分为树根块的列和行,接着依据递归多树型细分方式将树根块再细分以产生块80。
图14中的预测残差信号24””也显示图像区域的细分为块84。这些块可以称为变换块,以与编码块80有所区别。实际上,图14显示编码器10以及解码器20可以分别使用将图像12以及图像12’划分为块的两种不同细分;亦即,划分为编码块80的细分以及划分为块84的另一细分。两种细分可以相同(亦即,每个块80可以同时形成变换块84),且反之亦然;但图14显示以下情况:例如,划分为变换块84的细分形成划分为块80的细分的延伸,以使两个块80之间的任何边界与两个块84之间的边界重迭,或者替代性而言,每个块80与变换块84之一重合,或者与变换块84的群集重合。然而,细分的确定或者选择也可以彼此独立,使得变换块84可以替代性地跨越块80之间的块边界。就细分为变换块84而言,如同有关细分为块80所提说明的类似说明是成立的;亦即,块84可以是将图像区域规则细分为排列成列以及行的块的结果、将图像区域进行递归多树型细分的结果、或者其组合、或者任何其他的分割。顺便说明,应注意,块80以及84并不限制是方形、矩形、或者任何其他形状。此外,将当前图像12划分为块80的细分(这里形成预测信号)以及将当前图像12划分为块84的细分(这里编码预测残差)并非可用于编码/解码的唯一细分。这些细分形成粒度,这里执行预测信号确定以及残差编码;但首先,可以在没有细分的情况下,替代性地完成残差编码;其次,对于这些细分以外的其他粒度,编码器以及解码器可以设定特定编码参数,编码参数可以包括部分前述参数,例如:预测参数、预测信号组成控制信号以及类似物。
图14显示预测信号26以及预测残差信号24””的组合直接产生重构信号12’。然而,应注意,依据替代实施方式,多于一个预测信号26可以与预测残差信号24””组合以产生图像12’,例如:从其他视图或者从其他编码层(其是例如在具有单独DPB的单独预测循环中进行编码/解码)所获得的预测信号。
在图14之中,变换块84应具有以下意义。变换器28以及反变换器54以这些变换块84为单位而执行其变换。例如,许多编解码器对于全部变换块84使用某种DST或者DCT。一些编解码器允许省略变换,使得对于部分变换块84而言,预测残差信号是直接在空间域进行编码。所支持的变换可以包括下列其中之一种或多种:
o DCT-II(或者DCT-III),其中DCT表示离散余弦变换(Discrete CosineTransform)
o DST-IV,其中DST表示离散正弦变换(Discrete Sine Transform)
o DCT-IV
o DST-VII
o恒等变换(IT,Identity Transformation)
变换可以是可分离变换。第二变换(其可以是不可分离变换)可以适用在低频部分,例如除了DC以及最高频率成分以外,从DC成分延伸至某一中频成分的子数组。编码器可以决定使用如此的第二变换,以及选择一个用于特定块,并且将所述决定用信号通知至解码器。
现在,回到适应性量化模式方面,解码器以及编码器可以操作如下。见例如图8,解码器20可被配置为从数据流14解码140残差级别142(例如,如图1所示的变换系数100的量化级别,其表示预测残差24”),以及通过以下方式依序地(亦即,沿着如图6所示的扫描顺序102)反量化150残差级别142:依据当前转换状态(state),从默认量化器的集合151(例如,图1中的集合0、集合1)之中选择152量化器;使用所述量化器反量化154当前残差级别以获得经反量化的残差值104;将二进制函数(例如奇偶校验函数)应用156在当前残差级别以获得当前残差级别的特性157(亦即,一或者零);以及依据当前残差级别的特性157、利用欲用于下一反量化的残差级别的下一转换状态162的转换表106,来更新158当前转换状态160。解码器20使用经反量化的残差值104来重构170媒体信号,例如图像或者视频。依据数据流14所包括的量化模式信息180(例如第5.1.3节所述的示例),解码器20可以从默认转换表106a、b、c的集合159之中选择默认转换表106作为待使用的转换表106,默认转换表106a、b、c中的每一个表示从具有当前残差级别的特性157的一个或多个转换状态的集合的组合163的域满射映射(见例如图10)至一个或多个转换状态的集合161,其中默认转换表106a、b、c的差异在于一个或多个转换状态的集合的基数l、m、n。无论选择哪个默认转换表106a、b、c作为待使用的转换表106,解码器20被配置为通过将当前转换状态的预定数量的LSB(例如一,亦即仅LSB)映射(使用第一映射108,例如见第5.2.4节)至默认量化器,以执行量化器的选择152;无论选择哪个默认转换表106a、b、c作为待使用的转换表106,预定数量以及第一映射是相等的(亦即,分别与选择的模式180或者转换表106a、b、c独立)。可以利用当前残差级别的二进制化的二元符码的上下文适应性二进制算术解码来完成从数据流14解码210当前残差级别142。二元符码可以包括有效值二元符码(sig_flag),其表示为否当前残差级别是零或者非零,以及可以通过将当前转换状态的进一步预定数量(例如2,其是通过“&3”而取出)的LSB映射(例如使用第二映射110,如第5.2.5.1节所述)至第一上下文,以选择用于解码当前残差级别的此第一二元符码的上下文,无论选择哪个默认转换表106a、b、c作为待使用的转换表106,第二映射是相等的。额外地或者替代性地,在关于另一图像块的残差级别之前,通过将关于一个图像块的残差级别142进行解码210(例如,图10中的块84,其残差是通过将图6所示的变换系数块112进行再变换而获得),而从数据流14解码残差级别142,以及在一个或多个扫描(见第2.2.2节的遍次114)之中依序地将关于一个图像块的残差级别142的二进制化的二元符码进行解码,且对于残差级别的二进制化的二元符码的预定数量(例如:remRegBins)的前导二元符码使用上下文适应性二进制算术解码,且对于残差级别的二进制化的后续二元符码(k>=startIdxBypass)使用等概率旁路模式;对于预定数量用尽(k>=startIdxBypass)的二元符码,通过以下方式确定预定残差级别145的二进制化:使用第三映射118将本身显现用于预定残差级别145的转换状态220的进一步预定数量(例如1)的LSB映射到二进制化参数302(例如pos0),并且依据二进制化参数302,以执行预定残差级别的二进制化的确定;无论选择哪个默认转换表106a、b、c作为待使用的转换表106,第三映射118是相等的。依据二进制化参数302,可以确定预定残差级别145的二进制化,使得二进制化是通过以下方式修改后的一默认二进制化(例如Rice码):将与预定级别相关联的一个二进制化码(其取决于二进制化参数)重定向至与级别零相关联,以及将与一个或多个级别(从零至所述预定级别减一)相关联的一个或多个二进制化码重定向至与一个或多个级别(从一至所述预定级别)相关联。
接着,解码器20被配置为利用经反量化的残差值104、通过执行一预测而获得媒体信号的预测版本,以重构170媒体信号,以及利用经反量化的残差值104来校正预测版本;或者利用经反量化的残差值104、通过执行预测而获得媒体信号的预测版本,以重构媒体信号,并且使经反量化的残差值104进行反向变换而获得媒体残差信号,并且利用媒体残差信号来校正预测版本。
以下,将描述本发明的附加实施方式以及方面,这些实施方式以及方面可以单独使用或者与这里所述的特征以及功能以及细节的任一者组合使用。
依据第一方面,一种解码器(20)可被配置为:
从数据流(14)解码(210)表示预测残差的残差级别(142),并且通过以下方式依序地对所述残差级别(142)进行反量化(150):
依据当前转换状态(220),从默认量化器的集合(151)之中选择(152)量化器(153);
使用所述量化器(153)对当前残差级别进行反量化(154),以获得经反量化的残差值;
将二进制函数应用(156)到所述当前残差级别,以获得当前残差级别的特性(157);
以及
利用待使用的转换表(106),依据所述当前残差级别的特性(157),来更新(158)
所述当前转换状态(220),
使用所述经反量化的残差值(104)来重构(170)媒体信号,
依据包含在所述数据流(14)中的量化模式信息(180),从默认转换表的集合(159)之中选择一个默认转换表作为待使用的转换表(106),其中默认转换表中的每一个表示从具有所述当前残差级别的特性(157)的一个或多个转换状态的集合(161)的组合(163)的域到一个或多个转换状态的集合(161)的满射映射,其中各默认转换表的差异在于所述一个或多个转换状态的集合(161)的基数,以及
无论选择何种默认转换表作为待使用的转换表(106),通过使用第一映射(200)将当前转换状态(220)的预定数量的位映射到所述默认量化器,以执行所述量化器(153)的所述选择(152),其中无论选择何种默认转换表作为待使用的转换表(106),所述预定数量和所述第一映射(200)是相等的。
依据第二方面(当回引第一方面时),在解码器(20)之中,预定数量的位可以是一。
依据第三方面(当回引第一或者第二方面时),解码器(20)可被配置为依据量化模式信息(180),从默认转换表(106a、b、c)的集合(159)之中选择待使用的转换表(106),以及管理默认转换表的集合(159)作为统一转换表的不同部分,其中对于每个默认转换表,一个或多个转换状态的集合(161)中的每一个使用状态索引进行索引,所述状态索引是不同于在统一转换表中的任何其他默认转换表进行索引所使用的状态索引(例如:对于在统一转换表的不同部分的默认转换表的转换状态而言,默认转换表与另默认转换表彼此不相交)。
依据第四方面(当回引第三方面时),解码器(20)可被配置为以通过在统一转换表中查找项目,以执行更新(158)当前转换状态(220),所述项目对应于当前残差级别的特性(157)以及当前转换状态(220)的组合。
依据第五方面(当回引第三或者第四方面时),在解码器(20)之中,量化模式信息(180)可以包括数据流(14)中的语法元素,所述语法元素表示依反量化顺序(例如:沿着此顺序执行依序反量化)反量化第一残差级别所使用的开始转换状态,通过拟合至仅用于对应于待使用的转换表(106)的统一转换表的部分中的状态索引,使得所述语法元素从默认转换表之中指示待使用的转换表(106)。
依据第六方面(当回引第一至第五方面中任一项时),在解码器(20)之中,默认量化器的集合(151)可以由以下组成:
第一默认量化器(1511),包括量化步长大小(144)的偶整数倍数作为重构级别;以及
第二默认量化器(1512),包括量化步长大小(144)的奇整数倍数以及零作为重构级别。
依据第七方面(当回引第一至第六方面中任一项时),解码器(20)可被配置为:
使用当前残差级别的二进制化的二元符码的上下文适应性二进制算术解码,以从数据流(14)解码当前残差级别,其中二元符码包括有效值二元符码(92),所述有效值二元符码(92)表示为否当前残差级别是零或者非零;
通过使用第二映射(202)将当前转换状态(220)的进一步预定数量的位映射到一值,依据所获得的所述值(230)以选择用于解码当前残差级别的第一二元符码(92)的第一上下文(242);无论何种量化模式信息(180),第二映射(144)是相等的。
依据第八方面(当回引第七方面时),在解码器(20)之中,进一步预定数量的位可以是二。
依据第九方面(当回引第一至第八方面中任一项时),在解码器(20)之中,媒体信号可以是视频,且解码器(20)可被配置为:
通过以下方式,从数据流(14)解码(210)残差级别(142):
在关于另一图像块(84)的残差级别之前,解码关于图像块(84)的残差级别;
在一个或多个扫描中依序地解码关于所述图像块(84)的残差级别的二进制化的二元符码,且对于残差级别的二进制化的二元符码的预定数量的前导二元符码使用上下文适应性二进制算术解码,且对于残差级别的二进制化的后续二元符码使用等概率旁路模式;
确定预定残差级别的二进制化,其中所述预定数量的二元符码耗尽,通过使用第三映射将转换状态的进一步预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到二进制化参数(302),以及依据二进制化参数(302)以执行预定残差级别的二进制化的确定;无论何种量化模式信息(180),第三映射是相等的。
依据第十方面(当回引第九方面时),解码器(20)可被配置为依据二进制化参数(302)以确定预定残差级别的二进制化,使得二进制化是通过以下方式修改后的默认二进制化:将依据二进制化参数(302)的二进制化码从与预定级别相关联重定向至与级别零相关联,以及将一个或多个二进制化码从与从零至所述预定级别减一的一个或多个级别相关联重定向至与从一至所述预定级别的一个或多个级别相关联。
依据第十一方面(当回引第九或者第十方面时),在解码器(20)之中,进一步预定数量的位可以是一。
依据第十二方面(当回引第九方面时),在解码器(20)之中,依据量化模式信息(180),满射映射以及一个或多个转换状态的集合(161)的基数可以在下列其中两个或者更多个之间选择:
一个或多个转换状态的集合(161)的基数是一;
一个或多个转换状态的集合(161)的基数是四;
一个或多个转换状态的集合(161)的基数是八。
依据十三方面(当回引第一至第十二方面中任一项时),在解码器(20)之中,媒体信号可以是视频,且解码器(20)可被配置为:
读取量化模式信息(180),其中量化模式信息(180)以下列方式中的一种方式来控制更新(158):
对于所述视频仅一次;
逐图像块(84);
以每图像为基础;
以每切片为基础;以及
以每图像序列为基础。
依据第十四方面(当回引第一至第十三方面中任一项时),在解码器(20)之中,媒体信号可以是视频,且量化模式信息(180)可以包括数据流(14)中的第一语法元素,所述第一语法元素指示所述视频或者所述视频的一部分是否更新(158)是通过数据流(14)中的量化模式信息(180)的第二语法元素而控制在所述视频或者所述视频的所述部分之内,或者将要选择满射映射中的哪一个以及一个或多个转换状态的集合(161)的基数中的哪一个用于更新(158)。
依据第十五方面(当回引第十四方面时),在解码器(20)之中,第一语法元素可以包括在数据流(14)中的以下之一内:
视频参数集合,其中所述部分是所述视频且第二语法元素以下述项为单位控制来更新(158):
图像序列,
图像,
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;
序列参数集合,其中所述部分是图像序列且第二语法元素以下述项为单位控制来更新(158):
图像,
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;
图像参数集合,其中所述部分是一个或多个图像且第二语法元素以下述项为单位控制来更新(158):
图像,
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;或者
图像头部,其中在所述部分是一个图像且第二语法元素以下述项为单位控制来更新(158):
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;或者
参数集合,其中在所述部分是一个编码树块且第二语法元素以下述项为单位控制来更新(158):
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块。
依据第十六方面(当回引第一至第十五方面中任一项时),在解码器(20)之中,媒体信号可以是彩色视频,且解码器(20)可被配置为对于不同的颜色成分,使用默认量化器的集合(151)的不同版本。
依据第十七方面(当回引第一至第十六方面中任一项时),在解码器(20)之中,二进制函数可以是奇偶校验。
依据第十八方面(当回引第一至第十七方面中任一项时),解码器(20)可被配置为通过以下方式、使用经反量化的残差值(104)来重构(170)媒体信号:
执行预测以获得媒体信号的预测版本;以及
利用反量化的残差值(104)校正所述预测版本。
依据第十九方面(当回引第一至第十八方面中任一项时),解码器(20)可被配置为通过以下方式、使用经反量化的残差值(104)来重构(170)媒体信号:
执行预测以获得媒体信号的预测版本;
将反量化的残差值(104)进行反向变换,以获得媒体残差信号;以及
利用媒体残差信号校正所述预测版本。
依据第二十方面,一种编码器可被配置为:
预测性地编码媒体信号,以获得残差信号;
通过以下方式,依序地量化表示残差信号的残差值,以获得残差级别(142):
依据当前转换状态(220),从默认量化器的集合(151)之中选择(152)量化器(153);
使用所述量化器(153)量化当前残差值,以获得当前残差级别;
依据通过将二进制函数应用(156)在当前残差级别(例如奇偶校验)所获得的当前残差级别的特征(157),以及依据数据流(14)中所传输的量化模式信息(180),来更新(158)当前转换状态(220);以及
将残差级别(142)编码至数据流(14)之中;
其中根据取决于量化模式信息(180)的满射映射,将当前转换状态(220)从具有当前残差级别的特征(157)的一个或多个转换状态的集合(161)的组合(163)的域转换至一个或多个转换状态的集合(161),其中一个或多个转换状态的集合(161)的基数依据量化模式信息(180)而有所差异;以及
无论何种量化模式信息(180)(例如:与量化模式信息(180)无关,或者与量化模式信息(180)独立),通过使用第一映射(200)将当前转换状态(220)的预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到默认量化器,以执行量化器(153)的选择(152);无论何种量化模式信息(180),预定数量以及第一映射(200)是相等的。
依据第二十一方面(当回引第二十方面时),在编码器之中,预定数量的位可以是一。
依据第二十二方面(当回引第二十或者第二十一方面时),编码器可被配置为依据量化模式信息(180),从默认转换表的集合(159)之中选择待使用的转换表(106),以及管理默认转换表的集合(159)作为统一转换表的不同部分,其中对于每个默认转换表,一个或多个转换状态的集合(161)中的每一个使用状态索引进行索引,而所述状态索引是不同于在统一转换表中的任何其他默认转换表进行索引所使用的状态索引(例如:对于在统一转换表的不同部分的默认转换表的转换状态而言,默认转换表与另默认转换表彼此不相交)。
依据第二十三方面(当回引第二十二时),编码器可被配置为通过在统一转换表中查找项目,以执行更新(158)当前转换状态(220),所述项目对应于当前残差级别的特性(157)以及当前转换状态(220)的组合。
依据第二十四方面(当回引第二十二或者第二十三方面时),编码器可被配置为将语法元素编码至数据流(14)之中而作为量化模式信息(180),所述语法元素表示依量化顺序(例如:沿着此顺序执行依序反量化)量化第一残差值所使用的开始转换状态,通过拟合至仅用于对应于待使用的转换表(106)的统一转换表的部分中的状态索引,使得所述语法元素从默认转换表之中指示待使用的转换表(106)。
依据第二十五方面(当回引第二十至第二十四方面中任一项时),在编码器之中,默认量化器的集合(151)由以下组成:
第一默认量化器(1511),包括量化步长大小(144)的偶整数倍数作为编码级别;以及
第二默认量化器(1512),包括量化步长大小(144)的奇整数倍数以及零作为编码级别。
依据第二十六方面(当回引第二十至第二十五方面中任一项时),编码器可被配置为:
使用当前残差级别的二进制化的二元符码的上下文适应性二进制算术编码,将当前残差级别编码至数据流(14)之中,其中二元符码包括有效值二元符码(92),所述有效值二元符码(92)表示为否当前残差级别是零或者非零;
通过使用第二映射(144)将当前转换状态(220)的进一步预定数量的位映射到值(230),依据所获得所述值(230)以选择用于编码当前残差级别的第一二元符码(92)的第一上下文(242);无论何种量化模式信息(180),第二映射(144)是相等的。
依据第二十七方面(当回引第二十六方面时),在编码器之中,进一步预定数量的位可以是二。
依据第二十八方面(当回引第二十至第二十七方面中任一项时),在编码器之中,媒体信号可以是视频,且编码器可被配置为:
通过以下方式,将残差级别(142)编码至数据流(14)之中:
在关于另一图像块(84)的残差级别之前,编码关于图像块(84)的残差级别;
在一个或多个扫描中依序地编码关于所述图像块(84)的残差级别的二进制化的二元符码,且对于残差级别的二进制化的二元符码的预定数量的前导二元符码使用上下文适应性二进制算术编码,且对于残差级别的二进制化的后续二元符码使用等概率旁路模式;
确定预定残差级别的二进制化,其中预定数量的二元符码耗尽,通过使用第三映射将转换状态的进一步预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到二进制化参数(302),以及依据二进制化参数(302)以执行预定残差级别的二进制化的确定;无论何种量化模式信息(180),第三映射是相等的。
依据第二十九方面(当回引第二十八方面时),编码器可被配置为依据二进制化参数(302)以确定预定残差级别的二进制化,使得所述二进制化是通过以下方式修改后的默认二进制化:将依据二进制化参数(302)的二进制化码从与预定级别相关联重定向至与级别零相关联,以及将一个或多个二进制化码从与从零至所述预定级别减一的一个或多个级别相关联重定向至与从一至所述预定级别的一个或多个级别相关联。
依据第三十方面(当回引第二十八或者第二十九方面时),在编码器之中,进一步预定数量的位可以是一。
依据第三十一方面(当回引第二十八方面时),在编码器之中,依据量化模式信息(180),满射映射以及一个或多个转换状态的集合(161)的基数可以在下列其中两个或者更多个之间选择:
一个或多个转换状态的集合(161)的基数是一;
一个或多个转换状态的集合(161)的基数是四;
一个或多个转换状态的集合(161)的基数是八。
依据第三十二方面(当回引第二十至第三十一方面中任一项时),在编码器之中,媒体信号可以是视频,且编码器可被配置为:
以下列方式中的一种方式,写入量化模式信息(180),以控制更新(158):
对于所述视频仅一次;
逐图像块(84);
以每图像为基础;
以每切片为基础;以及
以每图像序列为基础。
依据第三十三方面(当回引第二十至第三十二方面中任一项时),在编码器之中,媒体信号可以是视频,且量化模式信息(180)可以包括数据流(14)中的第一语法元素,所述第一语法元素指示所述视频或者所述视频的一部分是否通过数据流(14)中的量化模式信息(180)的第二语法元素而将更新(158)控制在所述视频或者所述视频的所述部分之内,或者将要选择满射映射中的哪一个以及一个或多个转换状态的集合(161)的基数中的哪一个用于更新(158)。
依据第三十四方面(当回引第三十三方面时),在编码器之中,第一语法元素可以包括在数据流(14)中的以下之一内:
视频参数集合,其中所述部分是所述视频且所述第二语法元素以下述项为单位控制来更新(158):
图像序列,
图像,
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;
序列参数集合,其中所述部分是图像序列且第二语法元素以下述项为单位控制来更新(158):
图像,
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;
图像参数集合,其中在所述部分是一个或多个图像且第二语法元素以下述项为单位控制来更新(158):
图像,
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;或者
图像头部,其中所述部分是一个图像且第二语法元素以下述项为单位控制来更新(158):
图块,
切片,
编码树块(例如:在通过递归多树型细分的方式将每个编码树块分割为编码块之前,将一图像均匀地预先细分的单位),编码块(做出图像内/图像间模式确定),
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块;或者
参数集合,其中所述部分是一个编码树块且第二语法元素以下述项为单位控制来更新(158):
编码块(例如:以例如做出图像内/图像间模式确定的单位),或者
残差变换块。
依据第三十五方面(当回引第二十至第三十四方面中任一项时),在编码器之中,媒体信号可以是彩色视频,且编码器可被配置为对于不同的颜色成分,使用默认量化器的集合(151)的不同版本。
依据第三十六方面(当回引第二十至第三十五方面中任一项时),在编码器之中,二进制函数可以是奇偶校验。
依据第三十七方面(当回引第二十至第三十六方面中任一项时),编码器可被配置为通过以下方式来预测性地编码媒体信号以获得残差信号:
执行预测以获得媒体信号的预测版本以及所述残差信号。
依据第三十八方面(当回引第二十至第三十七方面中任一项时),编码器可被配置为通过以下方式来预测性地编码媒体信号以获得残差信号:
执行预测以获得媒体信号的预测版本以及所述残差信号;
将所述残差信号进行正向变换。
依据第三十九方面,方法可以具有以下步骤:
从数据流解码残差级别,其中残差级别表示预测残差,并且通过以下方式依序地反量化残差级别:
依据当前转换状态,从默认量化器的集合之中选择量化器;
使用所述量化器反量化当前残差级别,以获得经反量化的残差值;
依据通过将一个二进制函数应用在当前残差级别(例如:奇偶校验)所获得的当前残差级别的特性,以及依据包含在数据流中的量化模式信息,来更新当前转换状态;
以及
使用经反量化的残差值来重构媒体信号;
根据取决于量化模式信息的满射映射,将当前转换状态从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域转换至一个或多个转换状态的集合,其中一个或多个转换状态的集合的基数依据量化模式信息而有所差异;以及
无论何种量化模式信息(例如:与量化模式信息无关,或者与量化模式信息独立),通过使用第一映射将当前转换状态的预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到默认量化器,以执行量化器的选择;无论何种量化模式信息,预定数量以及第一映射是相等的。
依据第四十方面,一种方法可以具有以下步骤:
预测性地编码媒体信号,以获得残差信号;
通过以下方式,依序地量化表示所述残差信号的残差值,以获得残差级别;
依据当前转换状态,从默认量化器的集合之中选择量化器;
使用所述量化器量化当前残差值,以获得当前残差级别;
依据通过将一个二进制函数应用在当前残差级别(例如:奇偶校验)所获得的当前残差级别的特性,以及依据数据流中所传输的量化模式信息,来更新当前转换状态;
以及
将残差级别编码至数据流之中;
其中根据取决于量化模式信息的满射映射,将当前转换状态从具有当前残差级别的特性的一个或多个转换状态的集合的组合的域转换至一个或多个转换状态的集合,其中一个或多个转换状态的集合的基数依据量化模式信息而有所差异;以及
无论何种量化模式信息(例如:与量化模式信息无关,或者与量化模式信息独立),通过使用第一映射将当前转换状态的预定数量的位(例如:位于一个或多个预定位位置的一个或多个位,例如LSB或者位于第二但非最末有效位位置的位)映射到默认量化器,以执行量化器的选择;无论何种量化模式信息,预定数量以及第一映射是相等的。
依据第四十一方面,可以通过根据第四十方面的方法进行编码的一种数据流。
依据第四十二方面,可以具有程序代码的一种计算机程序,当所述程序代码在一个或多个计算机上运行时,执行根据第三十九或者第四十方面的方法。

Claims (42)

1.一种解码器(20),被配置为:
从数据流(14)解码(210)表示预测残差的残差级别(142),并且通过以下方式依序地对所述残差级别(142)进行反量化(150):
依据当前转换状态(220),从默认量化器的集合(151)之中选择(152)量化器(153);
使用所述量化器(153)对当前残差级别进行反量化(154),以获得经反量化的残差值;
将二进制函数应用(156)到所述当前残差级别,以获得当前残差级别的特性(157);以及
利用待使用的转换表(106),依据所述当前残差级别的特性(157),来更新(158)所述当前转换状态(220),
使用所述经反量化的残差值(104)来重构(170)媒体信号,
依据包含在所述数据流(14)中的量化模式信息(180),从默认转换表的集合(159)之中选择一个默认转换表作为待使用的转换表(106),其中默认转换表中的每一个表示从具有所述当前残差级别的特性(157)的一个或多个转换状态的集合(161)的组合(163)的域到一个或多个转换状态的集合(161)的满射映射,其中各默认转换表的差异在于所述一个或多个转换状态的集合(161)的基数,以及
无论选择何种默认转换表作为待使用的转换表(106),通过使用第一映射(200)将当前转换状态(220)的预定数量的位映射到所述默认量化器,以执行所述量化器(153)的所述选择(152),其中无论选择何种默认转换表作为待使用的转换表(106),所述预定数量和所述第一映射(200)是相等的。
2.根据权利要求1所述的解码器,其中所述预定数量的位是一位。
3.根据前述权利要求1或2中任一项所述的解码器,其中所述解码器被配置为管理所述默认转换表的集合(159)作为统一转换表的不同部分,其中对于每个默认转换表,所述一个或多个转换状态的集合(161)中的每一转换状态是使用与用于在所述统一转换表中对任何其他默认转换表进行索引的状态索引不同的状态索引来索引的。
4.根据权利要求3所述的解码器,其中所述解码器被配置为通过在所述统一转换表中查找与所述当前残差级别的特性(157)和所述当前转换状态(220)的组合对应的项目,来执行更新(158)所述当前转换状态(220)。
5.根据权利要求3或4所述的解码器,其中所述量化模式信息(180)包括数据流(14)中的语法元素,所述语法元素表示在按反量化顺序对第一残差级别进行反量化中使用的开始转换状态,使得通过拟合至仅在与待使用的所述转换表(106)对应的统一转换表的部分中使用的状态索引,所述语法元素从所述默认转换表之中指示待使用的所述转换表(106)。
6.根据前述权利要求1至5中任一项所述的解码器,其中所述默认量化器的所述集合(151)由以下组成:
第一默认量化器(1511),包括量化步长大小(144)的偶整数倍数作为重构级别;以及
第二默认量化器(1512),包括所述量化步长大小(144)的奇整数倍数以及零作为重构级别。
7.根据前述权利要求1至6中任一项所述的解码器,被配置为:
使用所述当前残差级别的二进制化的二元符码的上下文适应性二进制算术解码,从所述数据流(14)解码所述当前残差级别,所述二元符码包括表示所述当前残差级别是零还是非零的有效值二元符码(92);
依据通过使用第二映射(144)将所述当前转换状态(220)的进一步预定数量的位映射到值(230)而获得的所述值,选择用于对所述当前残差级别的第一二元符码(92)进行解码的第一上下文(242),其中无论选择何种默认转换表作为待使用的所述转换表(106),所述第二映射(144)是相等的。
8.根据权利要求7所述的解码器,其中所述进一步预定数量的位是两位。
9.根据前述权利要求1至8中任一项所述的解码器,其中所述媒体信号是视频,且所述解码器被配置为:
通过以下方式,从所述数据流(14)解码(210)所述残差级别(142):
在关于另一图像块(84)的残差级别(142)之前,对关于图像块(84)的残差级别(142)进行解码;
在一个或多个扫描中依序地对关于所述图像块(84)的所述残差级别(142)的二进制化的二元符码进行解码,且对于所述残差级别的所述二进制化的所述二元符码的预定数量的前导二元符码使用上下文适应性二进制算术解码,且对于所述残差级别的所述二进制化的后续二元符码使用等概率旁路模式;
通过使用第三映射将转换状态的进一步预定数量的位映射到二进制化参数(302),确定其中所述预定数量的二元符码耗尽的预定残差级别的所述二进制化,以及依据所述二进制化参数(302)以执行所述预定残差级别的所述二进制化的所述确定。
10.根据权利要求9所述的解码器,被配置为依据所述二进制化参数(302)以确定所述预定残差级别的所述二进制化,使得所述二进制化是通过以下方式修改后的默认二进制化:将依据所述二进制化参数(302)的一个二进制化码从与预定级别相关联重定向至与级别零相关联,以及将一个或多个二进制化码从与从零至所述预定级别减一的一个或多个级别相关联重定向至与从一至所述预定级别的一个或多个级别相关联。
11.根据权利要求9或10所述的解码器,其中所述进一步预定数量的位是一位。
12.根据权利要求9所述的解码器,其中所述默认转换表的集合(159)包括以下中的两个或者更多个:
第一默认转换表,其中所述一个或多个转换状态的集合(161)的所述基数是一;
第二默认转换表,其中所述一个或多个转换状态的集合(161)的所述基数是四;
第三默认转换表,其中所述一个或多个转换状态的集合(161)的所述基数是八。
13.根据前述权利要求1至12中任一项所述的解码器,其中所述媒体信号是视频,且所述解码器被配置为:
以下列方式中的一种方式,从所述数据流(14)读取所述量化模式信息(180),以及执行从所述默认转换表的集合(159)之中选择所述一个默认转换表:
对于所述视频仅一次;
逐图像块(84);
以每图像为基础;
以每切片为基础;以及
以每图像序列为基础。
14.根据前述权利要求1至13中任一项所述的解码器,其中所述媒体信号是视频,且所述量化模式信息(180)包括所述数据流(14)中的第一语法元素,所述第一语法元素指示对于所述视频或者所述视频的一部分,从所述默认转换表的集合(159)之中选择所述一个默认转换表是否经由所述数据流(14)中的所述量化模式信息(180)的第二语法元素而被控制在所述视频或者所述视频的所述部分之内,或者将要选择所述默认转换表的集合(159)中的哪默认转换表作为用于所述视频的所述部分的所述一个默认转换表。
15.根据权利要求14所述的解码器,其中所述第一语法元素被包含在所述数据流(14)中的以下之一内:
视频参数集合,其中所述部分是所述视频,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图像序列,
图像,
图块,
切片,
编码树块,
编码块,或者
残差变换块;
序列参数集合,其中所述部分是图像序列,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图像,
图块,
切片,
编码树块,
编码块,或者
残差变换块;
图像参数集合,其中所述部分是一个或多个图像,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图像,
图块,
切片,
编码树块,
编码块,或者
残差变换块;或者
图像头部,其中所述部分是一个图像,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图块,
切片,
编码树块,
编码块,或者
残差变换块;或者
参数集合,其中所述部分是一个编码树块,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表的情况下:
编码块;或者
残差变换块。
16.根据前述权利要求1至15中任一项所述的解码器,其中所述媒体信号是彩色视频,且所述解码器被配置为对于不同的颜色成分,使用所述默认量化器的集合(151)的不同版本。
17.根据前述权利要求1至16中任一项所述的解码器,其中所述二进制函数是奇偶校验。
18.根据前述权利要求1至17中任一项所述的解码器,被配置为通过以下方式,使用所述经反量化的残差值(104)来重构(170)所述媒体信号:
执行预测以获得所述媒体信号的预测版本;
利用所述经反量化的残差值(104)校正所述预测版本。
19.根据前述权利要求1至18中任一项所述的解码器,被配置为通过以下方式,使用所述经反量化的残差值(104)来重构(170)所述媒体信号:
执行预测以获得所述媒体信号的预测版本;
使所述经反量化的残差值(104)进行反向变换,以获得媒体残差信号;以及
利用所述媒体残差信号校正所述预测版本。
20.一种编码器,被配置为:
预测性地对媒体信号进行编码,以获得残差信号;
通过以下方式,依序地对表示所述残差信号的残差值进行量化,以获得残差级别(142):
依据当前转换状态(220),从默认量化器的集合(151)之中选择(152)量化器(153);
使用所述量化器(153)对当前残差值进行量化(154),以获得当前残差级别;
将二进制函数应用(156)至所述当前残差级别,以获得当前残差级别的特性(157);以及
利用待使用的转换表(106),依据所述当前残差级别的特性(157),来更新(158)所述当前转换状态(220);
将所述残差级别(142)编码至所述数据流(14)中;
依据所述数据流(14)中所传输的量化模式信息(180),从默认转换表的集合(159)之中选择一个默认转换表作为待使用的转换表(106),其中默认转换表中的每一个表示从具有所述当前残差级别的特性(157)的一个或多个转换状态的集合(161)的组合(163)的域到一个或多个转换状态的集合(161)的满射映射,其中各默认转换表的差异在于所述一个或多个转换状态的集合(161)的基数;以及
无论选择何种默认转换表作为待使用的所述转换表(106),通过使用第一映射(200)将当前转换状态(220)的预定数量的位映射到所述默认量化器,以执行所述量化器(153)的所述选择(152),其中无论选择何种默认转换表作为待使用的所述转换表(106),所述预定数量和所述第一映射(200)是相等的。
21.根据权利要求20所述的编码器,其中所述预定数量的位是一位。
22.根据前述权利要求20或21中任一项所述的编码器,其中所述编码器被配置为管理所述默认转换表的集合(159)作为统一转换表的不同部分,其中对于每个默认转换表,所述一个或多个转换状态的集合(161)中的每一转换状态是使用与用于在所述统一转换表中对任何其他默认转换表进行索引的状态索引不同的状态索引来索引的。
23.根据权利要求22所述的编码器,其中所述编码器被配置为通过在所述统一转换表中查找与所述当前残差级别的特性(157)和所述当前转换状态(220)的组合对应的项目,来执行更新(158)所述当前转换状态(220)。
24.根据权利要求22或23所述的编码器,被配置为将语法元素作为所述量化模式信息(180)编码至所述数据流(14)中,所述语法元素表示在按量化顺序对第一残差值进行量化中使用的开始转换状态,使得通过拟合至仅在与待使用的所述转换表对应的统一转换表的部分中使用的状态索引,所述语法元素从所述默认转换表之中指示待使用的所述转换表。
25.根据前述权利要求20至24中任一项所述的编码器,其中所述默认量化器的集合(151)由以下组成:
第一默认量化器(1511),包括量化步长大小(144)的偶整数倍数作为编码级别;以及
第二默认量化器(1512),包括所述量化步长大小(144)的奇整数倍数以及零作为编码级别。
26.根据前述权利要求20至25中任一项所述的编码器,被配置为:
使用所述当前残差级别的二进制化的二元符码的上下文适应性二进制算术编码,将所述当前残差级别编码至所述数据流(14)中,所述二元符码包括表示所述当前残差级别是零还是非零的有效值二元符码(92);
依据通过使用第二映射(144)将所述当前转换状态(220)的进一步预定数量的位映射到值(230)而获得的所述值,选择用于对所述当前残差级别)的第一二元符码(92)进行编码的第一上下文(242),其中无论选择何种默认转换表作为待使用的所述转换表,所述第二映射(144)是相等的。
27.根据权利要求26所述的编码器,其中所述进一步预定数量的位是两位。
28.根据前述权利要求20至27中任一项所述的编码器,其中所述媒体信号是视频,且所述编码器被配置为:
通过以下方式,将所述残差级别编码至所述数据流(14)中:
在关于另一图像块(84)的残差级别之前,对关于一个图像块(84)的残差级别进行编码;
在一个或多个扫描中依序地对关于所述一个图像块(84)的所述残差级别的二进制化的二元符码进行编码,且对于所述残差级别的所述二进制化的所述二元符码的预定数量的前导二元符码使用上下文适应性二进制算术编码,且对于所述残差级别的所述二进制化的后续二元符码使用等概率旁路模式;
通过使用第三映射将转换状态的进一步预定数量的位映射到二进制化参数(302),确定其中所述预定数量的二元符码耗尽的预定残差级别的所述二进制化,以及依据所述二进制化参数(302)以执行所述预定残差级别的所述二进制化的所述确定。
29.根据权利要求28所述的编码器,被配置为依据所述二进制化参数(302)以确定所述预定残差级别的所述二进制化,使得所述二进制化是通过以下方式修改后的默认二进制化:将依据所述二进制化参数(302)的一个二进制化码从与预定级别相关联重定向至与级别零相关联,以及将一个或多个二进制化码从与从零至所述预定级别减一的一个或多个级别相关联重定向至与从一至所述预定级别的一个或多个级别相关联。
30.根据权利要求28或29所述的编码器,其中所述进一步预定数量的位是一位。
31.根据权利要求28所述的编码器,其中所述默认转换表的集合(159)包括以下中的两个或者更多个:
第一默认转换表,其中所述一个或多个转换状态的集合(161)的所述基数是一;
第二默认转换表,其中所述一个或多个转换状态的集合(161)的所述基数是四;
第三默认转换表,其中所述一个或多个转换状态的集合(161)的所述基数是八。
32.根据前述权利要求20至31中任一项所述的编码器,其中所述媒体信号是视频,且所述编码器被配置为:
以下列方式中的一种方式,将所述量化模式信息(180)写入至所述数据流(14)中,以及执行从所述默认转换表的集合(159)之中选择所述一个默认转换表:
对于所述视频仅一次;
逐图像块(84);
以每图像为基础;
以每切片为基础;以及
以每图像序列为基础。
33.根据前述权利要求20至32中任一项所述的编码器,其中所述媒体信号是视频,且所述量化模式信息(180)包括所述数据流(14)中的第一语法元素,所述第一语法元素指示对于所述视频或者所述视频的一部分,从所述默认转换表的集合(159)之中选择所述一个默认转换表是否经由所述数据流(14)中的所述量化模式信息(180)的第二语法元素而被控制在所述视频或者所述视频的所述部分之内,或者将要选择所述默认转换表的集合(159)中的哪默认转换表作为用于所述视频的所述部分的所述一个默认转换表。
34.根据权利要求33所述的编码器,其中所述第一语法元素被包含在所述数据流(14)中的以下之一内:
视频参数集合,其中所述部分是所述视频,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图像序列,
图像,
图块,
切片,
编码树块,
编码块,或者
残差变换块;
序列参数集合,其中所述部分是图像序列,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图像,
图块,
切片,
编码树块,
编码块,或者
残差变换块;
图像参数集合,其中所述部分是一个或多个图像,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图像,
图块,
切片,
编码树块,
编码块,或者
残差变换块;或者
图像头部,其中所述部分是一个图像,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
图块,
切片,
编码树块,
编码块,或者
残差变换块;或者
参数集合,其中所述部分是一个编码树块,且所述第二语法元素以下述项为单位控制从所述默认转换表的集合(159)之中选择所述一个默认转换表:
编码块,或者
残差变换块。
35.根据前述权利要求20至34中任一项所述的编码器,其中所述媒体信号是彩色视频,且所述编码器被配置为对于不同的颜色成分,使用所述默认量化器的集合(151)的不同版本。
36.根据前述权利要求20至35中任一项所述的编码器,其中所述二进制函数是奇偶校验。
37.根据前述权利要求20至36中任一项所述的编码器,被配置为通过以下方式,预测性地对媒体信号进行编码以获得残差信号:
执行预测以获得所述媒体信号的预测版本以及所述残差信号。
38.根据前述权利要求20至37中任一项所述的编码器,被配置为通过以下方式来预测性地对媒体信号进行编码以获得残差信号:
执行预测以获得所述媒体信号的预测版本以及所述残差信号;
使所述残差信号进行正向变换。
39.一种方法,包括:
从数据流解码表示预测残差的残差级别,并且通过以下方式依序地对所述残差级别进行反量化:
依据当前转换状态,从默认量化器的集合之中选择量化器;
使用所述量化器对当前残差级别进行反量化,以获得经反量化的残差值;
将二进制函数应用到所述当前残差级别,以获得当前残差级别的特性;以及
利用待使用的转换表,依据所述当前残差级别的特性,来更新所述当前转换状态,使用所述经反量化的残差值来重构媒体信号,
依据包含在所述数据流中的量化模式信息,从默认转换表的集合之中选择一个默认转换表作为待使用的转换表,其中默认转换表中的每一个表示从具有所述当前残差级别的特性的一个或多个转换状态的集合的组合的域到一个或多个转换状态的集合的满射映射,其中各默认转换表的差异在于所述一个或多个转换状态的集合的基数,以及
无论选择何种默认转换表作为待使用的转换表,通过使用第一映射将当前转换状态的预定数量的位映射到所述默认量化器,以执行所述量化器的所述选择,其中无论选择何种默认转换表作为待使用的转换表,所述预定数量和所述第一映射是相等的。
40.一种方法,包括:
预测性地对媒体信号进行编码,以获得残差信号;
通过以下方式,依序地对表示所述残差信号的残差值进行量化,以获得残差级别:
依据当前转换状态,从默认量化器的集合之中选择量化器;
使用所述量化器对当前残差值进行量化,以获得当前残差级别;
将二进制函数应用至所述当前残差级别,以获得当前残差级别的特性;以及
利用待使用的转换表,依据所述当前残差级别的特性,来更新所述当前转换状态;将所述残差级别编码至所述数据流中;
依据所述数据流中所传输的量化模式信息,从默认转换表的集合之中选择一个默认转换表作为待使用的转换表,其中默认转换表中的每一个表示从具有所述当前残差级别的特性的一个或多个转换状态的集合的组合的域到一个或多个转换状态的集合的满射映射,其中各默认转换表的差异在于所述一个或多个转换状态的集合的基数;以及
无论选择何种默认转换表作为待使用的所述转换表,通过使用第一映射将当前转换状态的预定数量的位映射到所述默认量化器,以执行所述量化器的所述选择,其中无论选择何种默认转换表作为待使用的所述转换表,所述预定数量和所述第一映射是相等的。
41.一种数据流(14),所述数据流是根据权利要求40所述的方法进行编码。
42.一种计算机程序,所述计算机程序具有程序代码,当所述程序代码在一个或多个计算机上运行时,执行根据权利要求39或者40所述的方法。
CN202080097352.7A 2019-12-20 2020-12-18 支持变换系数级别的适应性相依量化的解码器、编码器及方法 Pending CN115152215A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP19218785.4 2019-12-20
EP19218785 2019-12-20
PCT/EP2020/087146 WO2021123250A1 (en) 2019-12-20 2020-12-18 Decoder, encoder and method for supporting adaptive dependent quantization of transform coefficient levels

Publications (1)

Publication Number Publication Date
CN115152215A true CN115152215A (zh) 2022-10-04

Family

ID=69104238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080097352.7A Pending CN115152215A (zh) 2019-12-20 2020-12-18 支持变换系数级别的适应性相依量化的解码器、编码器及方法

Country Status (7)

Country Link
US (1) US20220321886A1 (zh)
EP (1) EP4078956A1 (zh)
JP (2) JP7439264B2 (zh)
KR (1) KR20220120622A (zh)
CN (1) CN115152215A (zh)
TW (2) TWI840030B (zh)
WO (1) WO2021123250A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114079772B (zh) * 2020-08-21 2023-04-07 腾讯科技(深圳)有限公司 视频解码方法、装置、计算机可读介质及电子设备
US11722672B2 (en) * 2020-10-06 2023-08-08 Qualcomm Incorporated Adaptively deriving rice parameter values for high bit-depth video coding
CN117426089A (zh) * 2021-07-27 2024-01-19 Oppo广东移动通信有限公司 一种视频解码、编码方法及设备、存储介质
CN118414827A (zh) * 2021-12-21 2024-07-30 交互数字Ce专利控股有限公司 用自适应相依量化进行视频编码和解码的方法和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2010135495A (ru) * 2010-08-24 2012-02-27 ЭлЭсАй Корпорейшн (US) Видеотранскодер с гибким управлением качеством и сложностью
GB2513111A (en) * 2013-04-08 2014-10-22 Sony Corp Data encoding and decoding
US10334277B2 (en) * 2016-09-02 2019-06-25 Qualcomm Incorporated Signaling target display parameters of color remapping information supplemental enhancement information messages
KR102543505B1 (ko) * 2018-03-29 2023-06-14 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 종속 양자화
US11451840B2 (en) * 2018-06-18 2022-09-20 Qualcomm Incorporated Trellis coded quantization coefficient coding
WO2020056017A1 (en) * 2018-09-11 2020-03-19 Beijing Dajia Internet Information Technology Co., Ltd. Methods and apparatus of video decoding using low complexity trellis-coded quantization

Also Published As

Publication number Publication date
US20220321886A1 (en) 2022-10-06
WO2021123250A1 (en) 2021-06-24
TW202320543A (zh) 2023-05-16
EP4078956A1 (en) 2022-10-26
JP7439264B2 (ja) 2024-02-27
TWI790514B (zh) 2023-01-21
TWI840030B (zh) 2024-04-21
JP2024054316A (ja) 2024-04-16
KR20220120622A (ko) 2022-08-30
TW202130171A (zh) 2021-08-01
JP2023507495A (ja) 2023-02-22

Similar Documents

Publication Publication Date Title
TWI813126B (zh) 相依量化技術
KR102662646B1 (ko) 종속 스칼라 양자화에 적합한 변환 계수의 엔트로피 코딩
KR102661759B1 (ko) 종속 스칼라 양자화를 사용하거나 이와 조합하는 데에 적합한 변환 계수의 효율적인 코딩
TWI790514B (zh) 支援轉換係數等級的適應性相依量化的解碼器、編碼器及方法
KR102702112B1 (ko) 종속 양자화
KR20240135049A (ko) 종속 양자화

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination