熵编码中的上下文初始化的制作方法

文档序号:7991585阅读:248来源:国知局
熵编码中的上下文初始化的制作方法
【专利摘要】一种用于从数据流中解码视频的解码器,其中,使用语法元素的二元化值来将语法元素编码到数据流中,该解码器包括:熵解码器,配置为根据数据流的先前解码部分,通过在不同上下文之间选择上下文并且更新与不同上下文相关联的概率状态,使用二元熵解码来从数据流中导出二元化值的多个段;解符号化器,配置为对语法元素的二元化值进行解二元化,以获得语法元素的整数值;重构器,配置为使用量化参数,基于语法元素的整数值来重构视频,其中,熵解码器配置为在126个概率状态之间进行区分,并且根据量化参数的线性方程对与不同上下文相关联的概率状态初始化,其中,熵解码器配置为针对不同上下文中的每一个,从相应8比特初始化值的前4个比特部分和后4个比特部分中导出线性方程的斜率和偏移。
【专利说明】熵编码中的上下文初始化
【技术领域】
[0001 ] 本发明涉及用于编码视频数据的熵编码构思。
【背景技术】
[0002]本领域中已知许多视频编解码器。通常,这些编解码器为了表示视频内容而降低了必需的数据量,即,这些编解码器对数据进行压缩。在熵编码中,主要使用概率估计来编码符号,概率估计尽可能接近地对应于实际符号统计。可以假定,概率估计将概率值与符号的每个可能值相关联来进行编码。例如,在二元熵编码的情况下,符号具有二元属性,并且仅存在这样的两个可能数值。在视频编码的情况下,要编码的符号属于满足不同任务的不同语法元素以便描述视频内容:存在运动矢量差值、编码模式、表示预测残差的变换系数级别等。首先,所有这些语法元素具有不同域的可能值,并且甚至具有在相同域的可能值上定义的那些可能值,这些可能值很可能在该域的可能值上示出不同频率直方图。相应地,这些语法元素的符号化/ 二元化的符号串/段(bin)串的符号/段也在符号字母表上示出了与概率分布有关的不同统计。相应地,使用上下文自适应熵编码:第一不同上下文具备各与不同概率估计相关联的每个上下文。相应地,例如,可以灵活地向不同上下文分配不同语法元素的段。甚至可以使用与视频图像的邻域部分有关的语法元素的段/符号之间的空间互相关关系,以便在提供的多个上下文之中进行选择。通过这种措施,能够将段/符号分类成组,组的符号统计同样针对不同视频内容而改变。然而,除此之外,与这些上下文相关联的概率估计在编码期间不断适应于实际符号统计。
[0003]从以上描述直接可知:仔细设计上下文并且适当地初始化上下文的概率估计是重要的。例如,如果上下文数目太多,则由于单独上下文内符号的频率太低,导致概率估计的适应会失败。另一方面,如果上下文数目太少,则单独上下文内收集的符号实际上具有不同统计,并且概率估计不能精密地近似相应上下文内所有这些符号的实际符号统计。只要关注概率估计的初始化,就可以根据执行某些训练阶段来获得相同效果,在一些训练阶段内对视频内容进行典型混合以进行编码,以便研究语法元素的样本统计。在这种情况下,例如在H.264中已经开发了:H.264的不同上下文部分示出了对量化参数的QP的依赖性,其中,编码器选择视频的单独分片。相应地,在H.264中,已经使用量化参数相关概率估计初始化。具体地,在H.264编解码器针对每个上下文定义了一对值,即,线性量化参数相关因素(即,斜率)以及偏移值(即,量化参数无关初始化值)。两个值均以8比特来定义。
[0004]目前希望进一步提高视频编码的编码效率,并且相应地,期待在效率方面(即,一方面压缩率与另一方面实现复杂度之间的折衷方面)进一步提高以上概括的上下文自适应二元熵编码。
[0005]因此本发明的目的在于提供这种编码构思。
[0006]通过所附独立权利要求的主题来实现该目的。

【发明内容】
[0007]本发明的基本发现由发明人的以下发现产生:上下文自适应二元熵编码中以上识别斜率和偏移的精度不应当太高,以免其中检查出视频内容的典型混合的任一序列阶段,以便为最优值左右的单独上下文导出斜率和偏移对,事实上,最优值与视频的统计总体的典型值相比更接近地表示实际上检查到的视频内容混合。相应地,本发明的发明人发现,有利地降低提供斜率和偏移值的精度,以初始化上下文的概率估计。例如,本发明人实现了,该降低不仅引起视频编码器和解码器上强加的用于存储针对每个上下文的斜率和偏移对的存储器需求降低,而且还引起当现场测试编码效率时编码效率的略微增加。
【专利附图】

【附图说明】
[0008]以下关于附图描述的本申请的优选实施例,在附图中:
[0009]图1示出了根据实施例的编码器的框图;
[0010]图2a-2c示意性示出了样本阵列(例如,画面)到块的不同再划分;
[0011]图3示出了根据实施例的解码器的框图;
[0012]图4更详细地示出了根据实施例的编码器的框图;
[0013]图5更详细地示出了根据实施例的解码器的框图;
[0014]图6示意性示出了来自空间域的块到频域的变换、生成的变换块及其再变换;
[0015]图7示出了根据实施例的编码器的框图;
[0016]图8示出了根据实施例的适合于解码图8的编码器产生的比特流的解码器的框图;
[0017]图9是示出了根据实施例的具有多像素化部分比特流的数据分组的示意图;
[0018]图10是示出了根据另一实施例的具有使用固定尺寸区段的备选分割的数据分组的不意图;
[0019]图11示出了根据实施例的支持模式切换的解码器;
[0020]图12示出了根据另一实施例的支持模式切换的解码器;
[0021]图13示出了根据实施例的适合于图11的解码器的编码器;
[0022]图14示出了根据实施例的适合于图12的解码器的编码器;
[0023]图15 不出了 pStateCtx 和 fulICtxState / 256 的映射;
[0024]图16示出了根据本发明实施例的解码器;以及
[0025]图17示出了根据本发明实施例的编码器。
【具体实施方式】
[0026]应当注意,在附图的描述期间,在这些附图的若干附图中出现的元件在这些附图的每个附图中用于相同附图标记来指示,并且避免关于这些元件的功能的重复描述,以免不必要的重复。然而,关于一幅图提供的功能和描述同样应当应用于其他附图,除非明确指示相反。
[0027]在以下中,首先,关于图1至17描述一般视频编码构思的实施例。图1至6涉及在语法级别上操作的视频编解码器的一部分。后续的图8至17涉及与语法元素流到数据流的转换以及数据流到语法元素流的转换有关的代码的一部分的实施例。本发明的特定方面和实施例以关于图1至17概括的一般构思的可能实施例的形式来描述。[0028]图1示出了其中可以实现本申请的方面的编码器10的示例。
[0029]编码器将信息样本20的阵列编码到数据流中。信息样本阵列可以表示与例如明亮度值、颜色值、亮度值、色度值等相对应的信息样本。然而,在样本阵列20是例如光传感器等的时间产生的深度图的情况下,信息样本也可以是深度值。
[0030]编码器10是基于块的编码器。S卩,编码器10以块40为单位将样本阵列20编码到比特流30中。以块40为单位的编码并不意味着,编码器10彼此无关地对这些块40进行总体编码。相反,编码器10可以使用先前编码块的重构,以便对剩余块进行外推或帧内预测,并且可以使用块的粒度来设置编码参数,即,设置对与相应块相对应的每个样本阵列区域的编码方式。
[0031]此外,编码器10是变换编码器。即,编码器10通过使用变换对块40编码,以便将每个块40内的信息样本从空间域传送到频域。可以使用二维变换,例如,FFT的DCT等。优选地,块40具有方形形状或矩形形状。
[0032]图1中示出的样本阵列20到块40的再划分仅用于示意性目的。图1示出了将样本阵列20再划分成方形或矩形块40的规则二维排列,方形或矩形块40以非交叠方式彼此邻接。块40的尺寸可以预定。即,编码器10可以不将数据流30内与块40的块尺寸有关的信息传送到解码侧。例如,解码器可以预期预定的块尺寸。
[0033]然而,多种备选方案是可能的。例如,块可以彼此交叠。然而,交叠限于以下程度:每个块具有没有与任一邻近块交叠的部分,或者使得块的每个样本最多与邻近块之中的一个块交叠,邻近块排列为沿预定方形与当前块毗邻。后一种情况意味着左手邻域块和右手领域块可以与当前块交叠,以便完全覆盖当前块,但是它们可以彼此不交叠,并且这同样适用于垂直和对角方向上的邻域。
[0034]作为另一备选方式,编码器10将样本阵列20再划分成块40可以适用于样本阵列20的内容,其中将与所使用的再划分有关的再划分信息经由比特流30传送到解码器。
[0035]图2a至2c示出了样本阵列20到块40的再划分的不同示例。图2a示出了样本阵列20不同尺寸的块40的基于四叉树的再划分,其中在40a,40b,40c和40d处以增加尺寸指示典型块。根据图2a的再划分,首先将样本阵列20划分成树块40d的规则二维排列,该排列继而具有与其相关联的单独再划分信息,根据该信息可以基于四叉树或者不根据四叉树对特定树块40d进一步进行再划分。根据四叉树结构,示例性地将树块40d的左侧再划分成较小块。编码器10可以对图2a中以实线和虚线示出的每个块执行一次二维变换。换言之,编码器10可以以块再划分为单位对阵列20进行变换。
[0036]代替基于四叉树的再划分,可以使用更一般的基于多树的再划分,并且每个分级级别的子节点数目可以在不同分级级别之间不同。
[0037]图2b示出了再划分的另一示例。根据图2b,首先按照相互毗邻非交叠方式将样本阵列20划分成以规则二维排列而排列的宏块40b,其中,每个宏块40b具有与其相关联的再划分信息,根据该再划分信息不对宏块进行再划分,或者如果进行再划分,则按照规则二维方式将宏块再划分成同等尺寸的子块,以实现针对不同宏块的不同再划分粒度。结果是以不同尺寸的块40对样本阵列20进行再划分,不同尺寸的块40表示在40a,40b and40a’处指示的不同尺寸。如在图2a中,编码器10对图2b中以实线和虚线示出的每个块执行二维变换。稍后讨论图2c。[0038]图3示出了能够对编码器10产生的数据流30进行解码以重构样本阵列20的重构版本60的解码器50。解码器从数据流30提取针对每个块40的变换系数块,并且通过对每个变换系数块执行逆变换来重构重构版本60。
[0039]编码器10和解码器50可以配置为执行熵编码/解码,以便将与变换系数块有关的信息插入到数据流中,并且相应地从该数据流中提取该信息。稍后根据不同实施例描述这方面的细节。应当注意,数据流30不必包括与针对样本阵列20的所有块40的变换系数块有关的信息。相反,可以按照另一方式将块40的子集编码到比特流30中。例如,编码器
10可以决定禁止将针对块40的特定块的变换系数块插入到比特流30,取而代之插入备选编码参数,备选编码参数使得解码器50能够预测或另外满足重构版本60中的相应块。例如,编码器10可以执行纹理分析,以便解码器通过纹理分析在样本阵列20内定位在解码器侧填充的块,并且相应地在比特流内指示这些块。
[0040]如关于以下附图讨论的,变换系数块不必表示样本阵列20的相应块40的原始信息样本。然而,这样的变换系数块可以表示相应块40的预测残差的谱域表示。图4示出了针对这种编码器的实施例。图4的编码器包括变换级100、熵编码器102、逆变换级104、预测器106以及减法器108和加法器110。减法器108、变换级100和熵编码器102以所提及的顺序串联在图4的编码器的输入112与输出114之间。逆变换级101、加法器110和预测器106以所提及的顺序连接在变换级100的输出与减法器108的反相输入之间,其中,预测器106的输出也连接至加法器110的另一输入。
[0041]图4的编码器是基于预测变换的块编码器。即,根据相同样本阵列20的先前编码和重构的部分或者当前样本阵列20之前或之后的先前编码和重构的其他样本阵列,来预测进入输入112的样本阵列20的块。预测可以由预测器106来执行。减法器108从这样的原始块中减去预测,并且变换级100对预测残差执行二维变换。二维变换本身或者变换级100内部的后续手段可能导致变换系数块内变换系数的量化。例如,熵编码器102内的熵编码可以利用在输出114处输出的生成数据流对量化的变换系数块进行无损编码。逆变换级104对量化的残差进行重构,加法器110继而将重构的残差与对应预测相组合,以便获得重构的信息样本,基于该重构的信息样本预测器106可以预测上述当前编码的预测块。预测器106可以使用诸如帧内预测模式和帧间预测模式等预测模式来预测块,并且将预测参数转发至熵编码器102以插入到数据流中。对于每个帧间预测块,经由熵编码器114将相应运动数据插入到比特流中,以使解码层能够重新进行预测。针对画面的预测块的运动数据可以涉及包括语法元素在内的语法部分,语法元素表示运动矢量差,运动矢量差相对于例如通过预定方法从邻近已经编码的预测块的运动矢量导出的运动矢量预测器以不同方式对当前预定块的运动矢量进行编码。
[0042]S卩,根据图4的实施例,变换系数块表示样本阵列残差的谱表示,而不是其实际信息样本。即,根据图4的实施例,语法元素序列可以进入熵编码器102中,以被熵编码到数据流114中。语法元素序列可以包括针对帧间预测块的运动矢量差语法元素和与指示显著变换系数级别的位置的显著图有关的语法元素以及对于变换块定义了显著变换系数级本身的语法元素。
[0043]应当注意到,图4的实施例存在多个备选方式,其中,一些备选方式在合并到图4的描述中的说明书的背景部分内已描述。[0044]图5示出了能够对图4的编码器产生的数据流进行解码的解码器。图5的解码器包括熵解码器150、逆变换级152、加法器154和预测器156。熵解码器150、逆变换级152和加法器154按照提及的顺序串联在解码器的输入158与输出160之间。熵解码器150的另一输出连接至预测器156,预测器156继而连接在加法器154的输出与加法器154的另一输入之间。熵解码器150在输入158处从进入图5的解码器的数据流提取变换系数块,其中,在级152处对变换系数块应用逆变换,以便获得残差信号。残差信号在加法器154处与来自预测器156的预测相组合,以在输出160处获得样本阵列的重构版本的重构块。基于重构版本,预测器156产生预测,从而在编码器侧重建预测器106执行的预测。为了获得与在编码器侧处使用的那些预测相同的预测,预测器156使用熵解码器150还从输入158处的数据流获得的预定参数。
[0045]应当注意,在上述实施例中,执行残差的预测和变换的空间粒度不必彼此相等。在图2C中示出了这一点。该图示出了针对实线的预测粒度和虚线的残差粒度的预测块的再划分。可以看出,通过编码器可以彼此独立选择再划分。为了更精确,数据流语法可以允许与预测再划分无关的残差再划分定义。备选地,残差再划分可以是预测再划分的扩展,使得每个残差块等于或是预测块的适当子集。在图2a和图2b中示出了这一点,例如,以实线示出了预测粒度并且以虚线示出了残差粒度。即,在图2a_2c中,具有关联的参考符号的所有块应当是在更大实线块覆盖虚线块40a时被执行了一次二维变换的残差块,例如应当是单独被执行了预测参数设置的预测块。 [0046]以上实施例共同之处在于,(残差或原始)样本的块应当在编码器侧处变换成变换系数块,变换系数块继而应当在解码器侧输出逆变换成样本的重构块。在图6中示出了这一点。图6示出了样本200的块。在图6的情况下,示例性地,该块200是方形且尺寸4x4样本202。样本202沿着水平方向x和垂直方向y规则排列。通过上述二维变换T,将块200变换到谱域中,即,变换到变换系数206的块204中,变换块204具有与块200相同的尺寸。即,变换块204沿着水平方向和垂直方向具有与块200具有样本相同多个变换系数206。然而,由于变换T是谱变换,因此变换块204内变换系数206的位置与空间位置不相对应,而是与块200的内容的谱分量相对应。具体地,变换块204的水平轴对应于水平方向上的谱频率单调增加的轴,而垂直轴对应于垂直方向上的谱频率单调减小的轴,其中,DC分量变换系数位于块204的角(这里示例性地,左上角)中,使得对应于水平方向和垂直方向上的最高频率的变换系数206位于右下角处。忽略空间方向,特定系数206所属的空间频率通常从左上角增加到右下角。通过逆变换1,变换块204从谱域重新变换到空间域,使得重新获得块200的拷贝208。在变换期间尚未引入量化/损耗的情况下,重构应当是理
相的
心、U J ο
[0047]如上所述,从图6可以看出,块200的较大块尺寸增加了生成谱表示204的谱分辨率。另一方面,量化噪声趋向于在整个块208上伸展,并因此块200内陡峭且非常局部化的对象趋向于,由于量化噪声导致再变换的块相对于原始块200劣化。然而,使用更多块的主要优点在于,一方面显著(即,非零)(量化的)变换系数的数目(即,级别)与另一方面非显著变换系数的数目之间的比率与较小块相比在较大块内减小,从而实现更好的编码效率。换言之,通常,显著变换系数级别(即,没有量化为零的变换系数)在变换块204上稀疏地分布。由此,根据以下更详细描述的实施例,通过显著图在数据流中信号通知显著变换系数级别的位置。从中分别地,在数据流内传输显著变换系数的值(即,在变换系数被量化情况下的变换系数级别)。
[0048]因此上述所有编码器和解码器配置为处理语法元素的特定语法。即,假定按照指定方式在数据流中顺序地布置上述语法元素(例如,变换系数级别、与变换块的显著图有关的语法元素、与帧间预测块有关的运动数据语法元素等)。这样的指定方式例如在H.264标准或其他视频编解码器中可以以伪码形式表示。
[0049]换言之,以上描述主要讨论根据预定语法结构将媒体数据(这里示例性地,视频数据)转换到语法元素序列,预定语法结构指定特定语法元素类型、特定语法元素类型的语义以及特定语法元素类型之间的顺序。图4和5的熵编码器和熵解码器可以配置为如以下概述地进行操作并且结构化。这同样用于执行语法元素序列与数据流(即,符号或比特流)之间的转换。
[0050]在图7中示出了根据实施例的熵编码器。编码器无损地将语法元素301的流转换成两个或更多个部分比特流312的集合。
[0051]在本发明的优选实施例中,每个语法元素301与一个或更多个类别(即,语法元素类型)的集合的类别相关联。作为示例,类别可以规定语法元素的类型。在混合视频编码的情况下,单独类别可以与宏块编码模式、块编码模式、参考画面索引、运动矢量差、再划分标志、编码的块标志、量化参数、变换系数级别等相关联。换言之,在诸如音频、语音、文本、文档或一般数据编码等其他应用领域中,语法元素的不同类别化是可能的。
[0052]通常,每个语法元素可以采用有限或可计数的无限值集合的值,其中,可能语法元素值集合可以针对不同语法元素类型而不同。例如,存在二元语法元素以及整数值语法元素。
[0053]为了降低编码和解码算法的复杂度,并且为了允许针对不同语法元素和语法元素类别的一般编码和解码设计,将语法元素301转换成有序的二元判定集合,并且然后由简单的二元编码算法来处理这些二元判定。因此,二元化器302双向单射地(bijectively)将每个语法元素301的值映射到段303的序列(或串或词语)上。段303的序列表示有序二元判定的集合。每个段303或二元判定可以采用二值集合中的一个值,例如,值O和I中的一个。二元化方案针对不同语法元素类别而不同。针对特定语法元素类别的二元化方案可以依赖于针对特定类型的可能语法元素值集合和/或语法元素的其他属性。
[0054]表I示出了针对可计数无限集合的三个二元化方案。针对可计数无限集合的二元化方案也可以应用于语法元素值的有限集合。具体地,对于语法元素值的较大有限集合,无效率(由于未使用的段序列导致)可以忽略,但是这种二元化方案的一般性在复杂度和存储器要求方面提供了优点。对于语法元素值的较小有限集合,通常优选地(在编码效率方面)使二元化方案适应可能符号值的数目。
[0055]表2示出了针对8个值的有限集合的三个示例二元化方案。可以通过修改一些段序列使得段序列的有限集合表示无冗余的码(并且潜在地重排序段序列),从针对可计数无限集合的通用二元化方案导出针对有限集合的二元化方案。作为示例,通过修改通用一元二元化(参见表I)的语法元素7的段序列,来创建表2中的截短一元二元化方案。可以通过修改针对通用顺序O 二元化(参见表I)的语法元素7的段序列并且通过对段序列重排序(向针对符号7的截短段序列分配符号I),创建表2中顺序O的截短并重排序的Exp-Golomb 二元化。对于语法元素的有限集合,如表2的最后一列中示例的,还能够使用非系统/非通用的二元化方案。
[0056]表1:针对可计数的无限集合(或较大有限集合)的二元化示例
【权利要求】
1.一种从数据流(401)中解码视频的解码器,其中,使用语法元素(327)的二元化值将语法元素编码到数据流(401)中,所述解码器包括: 熵解码器(409),配置为根据数据流(401)的先前解码部分,通过在不同上下文之中选择上下文并且更新与不同上下文相关联的概率状态,使用二元熵解码来从数据流(401)中导出二元化值的多个段(326); 解符号化器(314),配置为对语法元素(327)的二元化值进行解二元化,以获得语法元素的整数值; 重构器(404),配置为使用量化参数,基于语法元素的整数值来重构视频, 其中,熵解码器(409)配置为在126个概率状态之间进行区分,并且根据量化参数的线性方程对与不同上下文相关联的概率状态初始化,其中,熵解码器配置为针对不同上下文中的每一个,从相应8比特初始化值的前4个比特部分和后4个比特部分中导出线性方程的斜率和偏移。
2.根据权利要求1所述的解码器,其中,熵解码器(409)配置为使用二元算术解码或二元PIPE解码,从数据流(401)中导出二元化值的多个段(326)。
3.根据权利要求1或2所述的解码器,其中,熵解码器(409)配置为根据以下中的一个或更多个,执行针对当前要导出的段的上下文选择: 当前要导出的段所属的二元化值内当前要导出的段的段位置, 语法元素的语法元素类型,该语法元素的整数值是通过对当前要导出的段所属的二元化值解二元化而获得的,以及 先前从数据流(401)导出的一个或更多个段,或者先前解二元化的语法元素的整数值。
4.根据权利要求1所述的解码器,其中,熵解码器(409)配置为针对当前导出的段,通过从126个概率状态内与针对当前导出的段而选择的上下文相关联的当前概率状态过渡到126个概率状态之中依赖于当前导出的段的新概率状态,来执行概率状态更新。
5.根据权利要求1至4中任一项所述的解码器,其中,熵解码器(409)配置为通过以下操作对当前要导出的段进行二元算术解码:对表示当前概率区间的当前概率区间宽度值进行量化来获得概率区间索引;并且根据与针对当前要导出的段而选择的上下文相关联的当前概率状态,通过使用概率区间索引和概率状态索引对表条目之中的表条目编索引来执行区间再划分,以获得当前概率区间到两个部分区间的再划分。
6.根据权利要求5所述的解码器,其中,熵解码器(409)配置为使用针对当前概率区间宽度值的8比特表示,并且在量化当前概率区间宽度值时获取出所述8比特表示的2个或3个最闻有效位。
7.根据权利要求5或6所述的解码器,其中,熵解码器(409)配置为基于来自当前概率区间内部的偏移状态值,在两个部分区间之间进行选择;更新概率区间宽度值和偏移状态值,并且使用所选部分区间推断当前要导出的段的值;并且执行更新的概率区间宽度值和偏移状态值的再归一化,包括从数据流(401)中连续读取比特。
8.根据权利要求1至7中任一项所述的解码器,其中,熵解码器(409)配置为在视频分片的开始处初始化与不同上下文相关联的概率状态。
9.根据权利要求8所述的解码器,其中,熵解码器(409)配置为单独确定每个视频分片的量化参数。
10.根据权利要求1至9中任一项所述的解码器,其中,熵解码器(409)配置为通过以下操作来在视频分片开始处初始化与不同上下文相关联的概率状态:从数据流(401)中读取当前分片的量化参数,并且根据当前分片的量化参数的线性方程,初始化与不同上下文相关联的概率状态,其中熵解码器(409)配置为,针对每个分片,从相同相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
11.根据权利要求1至10中任一项所述的解码器,其中,重构器(404)配置为在基于语法元素的整数值重构视频(405)时,使用量化参数对语法元素包括的变换系数级进行解量化,对解量化的变换系数级执行再变换,以获得预测残差;执行空间和/或时间预测,以获得预测信号;并且将预测残差与预测信号相组合,以重构视频(405)。
12.根据权利要求1至11中任一项所述的解码器,其中,熵解码器(409)配置为针对不同上下文中的每一个,彼此独立地从相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
13.根据权利要求1至12中任一项所述的解码器,其中,熵解码器配置为针对不同上下文中的每一个,通过表查找或使用算术运算,从相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
14.根据权利要求1至12中任一项所述的解码器,其中,熵解码器配置为,针对不同上下文中的每一个,通过将前4个比特部分与第一对参数相乘并偏移来导出线性方程的斜率和偏移,并且通过将后4个比特部分与第二对参数相乘并偏移来导出偏移。
15.一种将视频编码到数据流中的编码器,通过使用语法元素的二元化值将语法元素编码到数据流中,所述编码器包括: 重构器,配置为通过根据量化参数设置语法元素的整数值来表示视频, 符号化器,配置为对语法元素的整数值进行二元化,来获得语法元素的二元化值, 熵编码器,配置为根据数据流的先前编码部分,通过在不同上下文之中选择上下文并且更新与不同上下文相关联的概率状态,使用二元熵编码来将二元化值的多个段编码到数据流中; 其中,熵编码器配置为在126个概率状态之间进行区分,并且根据量化参数的线性方程初始化与不同上下文相关联的概率状态,其中,熵编码器配置为针对不同上下文中的每一个,从相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
16.根据权利要求15所述的编码器,其中,熵编码配置为使用二元算术编码或二元PIPE编码将二元化值的多个段编码到数据流中。
17.根据权利要求15或16所述的编码器,其中,熵编码器配置为根据以下中的一个或更多个,执行针对当前要编码的段的上下文选择: 当前要编码的段所属的二元化值内当前要编码的段的段位置, 语法元素的语法元素类型,该语法元素的整数值被二元化为当前要编码的段所属的二元化值,以及 先前编码到数据流中的一个或更多个段,或其二元化值先前已被编码的语法元素的整数值。
18.根据权利要求15至17中任一项所述的编码器,其中,熵解码器配置为针对当前编码的段,通过从126个概率状态内与针对当前编码的段而选择的上下文相关联的当前概率状态过渡到126个概率状态之中依赖于当前导出的段的新概率状态,来执行概率状态更新。
19.根据权利要求15至18中任一项所述的编码器,其中,熵编码器配置为通过以下操作对当前要编码的段进行二元算术编码:对表示当前概率区间的当前概率区间宽度值进行量化来获得概率区间索引;并且根据与针对当前要编码的段而选择的上下文相关联的当前概率状态,通过使用概率区间索引和概率状态索引对表条目之中的表条目编索引来执行区间再划分,以获得当前概率区间到两个部分区间的再划分。
20.根据权利要求19所述的编码器,其中,熵编码器配置为使用针对当前概率区间宽度值的8比特表示,并且在量化当前概率区间宽度值时获取出所述8比特表示的2个或3个最闻有效位。
21.根据权利要求19或20所述的编码器,其中,熵编码器配置为基于当前要编码的段的整数值,在两个部分区间之间进行选择;使用所选部分区间更新概率区间宽度值和概率区间偏移,并且执行更新的概率区间宽度值和概率区间偏移的再归一化,包括向数据流连续写入比特。
22.根据权利要求15至21中任一项所述的编码器,其中,熵解码器配置为在视频分片的开始处初始化与不同上下文相关联的概率状态。
23.根据权利要求15至22中任一项所述的编码器,其中,熵编码器配置为在视频分片的开始处初始化与不同上下文相关联的概率状态。
24.根据权利要求15至23中任一项所述的编码器,其中,熵编码器配置为通过以下操作来在视频分片开始处初始化与不同上下文相关联的概率状态:单独设置来自数据流的当前分片的量化参数,并且根据当前分片的量化参数的线性方程,初始化与不同上下文相关联的概率状态,其中熵编码器配置为,针对每个分片,从相同相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
25.根据权利要求15至24中任一项所述的编码器,其中,重构器配置为在设置语法元素的整数值时,执行空间和/或时间预测,以获得预测信号;从预测信号和视频中导出预测残差,执行对预测残差的变换,以获得变换系数级,并且使用量化参数对变换系数级进行量化,以获得语法元素包括的量化变换系数级。
26.根据权利要求15至25中任一项所述的编码器,其中,熵编码器配置为针对不同上下文中的每一个,彼此独立地从相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
27.根据权利要求15至26中任一项所述的编码器,其中,熵编码配置为针对不同上下文中的每一个,通过表查找或使用算术运算,从相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
28.根据权利要求15至27中任一项所述的编码器,其中,熵编码器配置为,针对不同上下文中的每一个,通过将前4个比特部分与第一对参数相乘并偏移来导出线性方程的斜率和偏移,并且通过将后4个比特部分与第二对参数相乘并偏移来导出偏移。
29.一种用于从数据流中解码视频的方法,其中,使用语法元素的二元化值将语法元素编码到数据流中,所述方法包括: 根据数据流的先前解码部分,通过在不同上下文之中选择上下文并且更新与不同上下文相关联的概率状态,使用二元熵解码来从数据流中导出二元化值的多个段; 对语法元素的二元化值进行解二元化,以获得语法元素的整数值; 使用量化参数,基于语法元素的整数值来重构视频, 其中导出二元化值的多个段在126个概率状态之间进行区分,并且所述方法包括:根据量化参数的线性方程对与不同上下文相关联的概率状态初始化,并且针对不同上下文中的每一个,从相应8比特初始化值的前4个比特部分和后4个比特部分中导出线性方程的斜率和偏移。
30.一种将视频编码到数据流中的方法,通过使用语法元素的二元化值将语法元素编码到数据流中,所述方法包括: 通过根据量化参数设置语法元素的整数值来表示视频, 对语法元素的整数值进行二元化,来获得语法元素的二元化值, 根据数据流的先前编码部分,通过在不同上下文之中选择上下文并且更新与不同上下文相关联的概率状态,使用二元熵编码来将二元化值的多个段编码到数据流中; 其中,视频的表示在126个概率状态之间进行区分,并且该方法还包括:根据量化参数的线性方程初始化与不同上下文相关联的概率状态,并且针对不同上下文中的每一个,从相应8比特初始化值的前4个比特部分和后4个比特部分导出线性方程的斜率和偏移。
31.一种具有程序代码的计算机程序,程序代码在计算机上运行时执行根据权利要求29至30中任一项所述的方法。
【文档编号】H04N19/70GK103733622SQ201280039832
【公开日】2014年4月16日 申请日期:2012年6月18日 优先权日:2011年6月16日
【发明者】瓦勒日·乔治, 本杰明·布鲁斯, 汉勒·科什弗, 德特勒夫·马尔佩, 唐·源, 马西斯·佩斯, 米沙·斯科曼, 让·斯特格曼, 托马斯·威甘德 申请人:弗劳恩霍夫应用研究促进协会
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1