CN112689960A - 算术编码器、算术解码器、视频编码器、视频解码器、编码方法、解码方法和计算机程序 - Google Patents

算术编码器、算术解码器、视频编码器、视频解码器、编码方法、解码方法和计算机程序 Download PDF

Info

Publication number
CN112689960A
CN112689960A CN201980058433.3A CN201980058433A CN112689960A CN 112689960 A CN112689960 A CN 112689960A CN 201980058433 A CN201980058433 A CN 201980058433A CN 112689960 A CN112689960 A CN 112689960A
Authority
CN
China
Prior art keywords
value
state variable
values
probability
arithmetic
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
CN201980058433.3A
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 CN112689960A publication Critical patent/CN112689960A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4006Conversion to or from arithmetic code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical 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

算术编码器、算术解码器、视频编码器、视频解码器、编码方 法、解码方法和计算机程序
技术领域
根据本发明的实施例创建了算术编码器。
根据本发明的另外实施例创建了算术解码器。
根据本发明的另外实施例创建了视频编码器。
根据本发明的另外实施例创建了视频解码器。
根据本发明的另外实施例创建了用于对多个符号进行编码的方法和用于对多个符号进行解码的方法。
根据本发明的另外实施例创建了对应的计算机程序。
一般而言,根据本发明的实施例使用有限状态机来创建上下文模型更新方法。
背景技术
算术编码和解码被证明为对音频和视频内容的编码和解码以及对其他类型的信息(比如,图片、神经网络系数等)的编码的宝贵工具。本发明的实施例可以用于所有的这些应用。例如,可以利用二进制值(例如,符号)在表示视频或音频内容(或者,其他类型的内容)的二进制序列中的已知出现概率来提高编码效率。具体地,算术编码可以以有效的方式处理“0”和“1”的变化概率,并且可以以微调的方式适应该概率的改变。
然而,为了使算术编码和解码带来最佳的编码效率,重要的是,要有关于“0”和“1”的概率的良好信息,该信息良好地反映实际出现频率。
为了适应于“0”和“1”的概率(或通常,适应于要编码的符号的概率),通常使用一种概念来调整值的总(当前)范围内的区间的边界,以获得区间细分(例如,使得值的整个范围被细分为与不同的二进制值或二进制值的组相关联的区间)。
换言之,关于不同符号(比如,“0”和“1”)的概率的信息用于导出区间大小信息(或等效地,区间大小值),该区间大小信息描述了与符号相关联的区间的宽度(其中,总区间宽度例如可以由于区间重新归一化而取决于编码或解码过程随时间而变化)。
因此,需要用于确定用于区间细分(例如,用于总编码区间的细分)的源统计值(例如,状态变量值)和/或范围值(比如,区间大小值)的概念,该概念在计算效率与可靠性之间提供良好平衡。
发明内容
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的算术编码器,其中,该算术编码器被配置为基于多个状态变量值(si k)(该多个状态变量值例如与由索引k指示的给定上下文模式相关联)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值(例如,二进制值0和1的序列)的统计,其中,该算术编码器被配置为使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure BDA0002965036250000021
并且使用查找表(LUT1)来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure BDA0002965036250000022
以便获得描述用于一个或多个要编码的符号的算术编码的区间大小的所述区间大小信息。
根据本发明的该实施例基于如下思想:如果基于查找表的映射被应用于与不同适应时间常数相关联的状态变量值,则可以在尤其良好的可靠性下获得区间大小信息。换言之,通过将同一查找表应用于描述对不同时间尺度的统计(例如,符号概率)的两个状态变量值,可以以有效方式(因为仅需要一个查找表)但在良好可靠性的情况下(因为在确定区间大小信息时考虑随不同时间尺度的统计)获得区间大小信息。使用查找表的状态变量值的映射可以被视为基于状态变量值来导出区间大小信息的重要且直接的步骤。可选地,一个或多个附加映射和/或映射结果的组合可以在导出区间大小信息时遵循第一状态变量值和第二状态变量值的基于查找表的映射。可选地,可以使用第一状态变量值和第二状态变量值的基于查找表的映射来获得概率值作为中间量。此外,用于从第一状态变量值的基于查找表的映射的结果和从第二状态变量值的基于查找表的映射的结果导出区间大小信息的不同概念是可能的。
总之,根据本发明的该实施例提供基于使用(至少)两个基于查找表的映射的第一状态变量值和第二状态变量值来导出区间大小信息。因此,可以单独地映射与不同适应时间常数相关联的状态变量值,但是使用同一映射规则(由查找表定义),这使得用于确定区间大小信息的资源需求相当地小但仍允许考虑(例如,加权考虑)通过不同适应时间常数或统计计算时间常数获得的多个先前处理(例如,编码或解码)的符号的统计(或者,关于其的统计信息)。
在优选实施例中,该算术编码器被配置为使用查找表将第一状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000031
映射到第一概率值(pk 1)上,并且其中,该算术编码器被配置为使用查找表将第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000032
映射到第二概率值(pk 2)上,并且其中,该算术编码器被配置为使用第一概率值和第二概率值来获得组合概率值(pk)(例如,使用加权求和或使用加权平均)。
使用这样的概念,可以基于第一状态变量值并基于第二状态变量值较容易地导出描述符号概率(例如,符号“1”的概率或符号“0”的概率)的组合概率值。例如,在具有第一灵活性的先前处理(例如,编码或解码)的符号之后的第一状态变量值可以映射到第一概率值上,并且在具有第二灵活性的先前处理(例如,编码或解码)的符号之后的第二状态变量值可以有效地映射到第二概率值上。因此,可以考虑在不同时间尺度上出现的先前处理的符号的趋势,并且仍可以以极有效方式导出组合概率值。第一状态变量值和第二状态变量值允许追踪具有不同适应时间常数的先前处理的符号的趋势,并且可以使用上述概念以资源极高效的方式进行状态变量值到对组合概率值有贡献的“部分”概率值(第一概率值和第二概率值)上的映射。
在优选实施例中,该算术编码器被配置为如果要编码的符号取第一值(例如,“1”),则将该状态变量值改变为第一方向(例如,变得更加正向),并且如果要编码的符号取与第一值不同的第二值(例如,“0”),则将该状态变量值改变为第二方向(例如,变得更加负向)(例如,使得该状态变量值可以取正值和负值),其中,该算术编码器被配置为依据各个状态变量值的绝对值(如果sk i>0,则是sk i,否则是-sk i)(例如,取决于该状态变量值的绝对值的缩放和舍入版本)确定要评估的查找表的条目。
通过使用例如可以取负值和正值的状态变量值(例如,取决于先前处理的符号的历史,并且例如,以针对相反的先前处理的符号的对称方式),并且通过依据各个状态变量值的绝对值而选择查找表的条目,从而甚至可以改善概念的效率。例如,不再有必要具有用于状态变量值的每个可能值(或者,量化值)的查找表的专用条目。相反,可以将查找表的条目双重用于正状态变量值和用于对应的负状态变量值(即,用于具有相等绝对值但相反符号的“反向”状态变量值)二者。因此,查找表的条目的数量可以保持较小,并且可以利用关于相反的先前处理的符号的区间大小信息的确定的“对称性”。
在优选实施例中,该算术编码器被配置为如果第一状态变量值取第一符号(例如,正号),则将第一概率值(pk 1)设置为由查找表提供的值(例如,为
Figure BDA0002965036250000041
并且其中,该算术编码器被配置为如果第一状态变量值取第二符号(例如,负号),则将第一概率值(pk 1)设置为通过从预定值(例如,1)中减去由查找表提供的值而获得的值(例如
Figure BDA0002965036250000042
)。
使用这样的机制,查找表的条目的数量可以保持较小(例如,因为仅基于各个状态变量值的绝对值来选择查找表的条目),同时仍可以获得用于各个状态变量值的相反符号的“互补”概率值。因此,针对确定概率值实现较高程度的资源效率和低计算复杂度。
在优选实施例中,该算术编码器被配置为根据下式来确定两个或更多个概率值pk i
Figure BDA0002965036250000043
其中,LUT1是包含概率值的查找表;其中,
Figure BDA0002965036250000051
是向下舍入算子;其中,sk i是第i个状态变量值;以及其中,ak i是与第i个状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
已发现,这样的计算在计算上有效且使资源需求保持相当地小。
在优选实施例中,该算术编码器被配置为根据下式来确定两个或更多个概率值pk i
Figure BDA0002965036250000052
其中,LUT1是包含概率值的查找表;其中,
Figure BDA0002965036250000053
是向下舍入算子;其中,sk i是第i个状态变量值;以及其中,ak i是与第i个状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
已发现,取决于实际数字表示,这样的计算在一些状况下是有利的。具体地,向下舍入算子被应用于相同运算数,而不管状态变量值的符号。具体地,没有必要去除向下舍入算子的运算数的符号,这会省去一些计算复杂度。相反,取负(negation)仅应用于向下舍入算子的结果,这通常是整数值。因此,应用取负算子的复杂性尤其小。换言之,如本文中所描述的概念也带来尤其低的复杂性。
在优选实施例中,该算术编码器被配置为根据下式来基于多个概率值pk i获得组合概率值pk
Figure BDA0002965036250000054
其中,N为所考虑的概率值的数量(并且可以等于所考虑的状态变量值的数量);以及其中,bk i是加权值(例如,控制各个状态变量值对组合概率值的影响的加权因子)(其中,bk i优选地是von 2的整数值效能,并且其中,两个不同的bk i之间的比率优选地为2的整数值效能)。
通过将不同加权应用于基于不同状态变量值而获得的概率值,可以考虑短期统计和长期统计对组合概率值的不同影响,并且可以获得尤其有意义的组合概率值。
在优选实施例中,该算术编码器被配置为使用二维查找表将第一状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000061
映射到第一子区间宽度值(R*pk 1)上,该二维查找表的条目取决于第一状态变量值(例如,例如使用概率索引i来确定第一查找表条目坐标)并取决于描述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息(例如,R,或者从R中导出的索引j)来寻址(例如,确定第二查找表条目坐标),其中,该算术编码器被配置为使用二维查找表将第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000062
映射到第二子区间宽度值(R*pk 2)上,该二维查找表的条目取决于第二状态变量值(例如,确定第一查找表条目坐标)并取决于描述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息(例如,R)来寻址(例如,确定第二查找表条目坐标),其中,该算术编码器被配置为使用第一子区间宽度值和第二子区间宽度值来获得组合的子区间宽度值(例如,使用加权求和或使用加权平均)。
通过使用这样的反映多个不同概率值与多个不同区间大小值的乘法的二维查找表,可以降低计算复杂度,这是由于可以省去乘法运算。例如,两个索引(行索引和列索引)中的标示二维查找表的条目的一个索引是由各个状态变量值(或者,其缩放和/或舍入版本)定义,并且第二索引由当前(总)编码区间大小确定。因此,基于第一索引和第二索引,可以唯一地识别二维查找表的元素(条目),并且识别的元素通常反映与各个状态变量值相关联的概率值和与第二表索引相关联的编码区间大小的乘积。因此,通过为二维查找表花费一些存储器(这些存储器在一些情况下可以是只读存储器),可以省去执行乘法运算,这就计算资源而言并就能量消耗而言可以是有利的。
在该算术编码器的优选实施例中,二维查找表可表示为如下二者之间的二元乘积:第一一维向量(形成一维查找表)和第二一维向量(Qr2(R)),第一一维向量的条目包括第一状态变量值和第二状态变量值或其缩放和/或舍入版本(
Figure BDA0002965036250000063
|sk|·ak)的值域的不同值区间的概率值;第二一维向量的条目包括用于编码区间大小信息的量化等级。
通过使用这样的三维查找表,可以由该表反映不同对的概率值与编码区间大小之间的乘法运算。因此,通过选择二维查找表的适当元素,可以省去执行乘法运算。此外,可以使用这样的方法以极简单方式获得二维查找表的条目。
在该算术编码器的优选实施例中,二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)而定义的,其中,二维查找表的第一组元素(或者,块;例如,“上半部分”)与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且其中,二维查找表的第二组元素(或者,块;例如,“下半部分”)是基本查找表的元素的缩放和舍入版本。
通过使用这样的方法,可以获得二维查找表的元素的近似索引增加或衰减。例如,通过定义二维查找表的元素,使得二维查找表的第二组元素实质上(例如,除了由舍入引起的偏差以外)是二维查找表的第一组元素的元素的缩放版本,可以获得高度一致的二维查找表。并且,应注意的是,可以容易地使用这样的方法来获得二维查找表的元素。
在该算术编码器的优选实施例中,二维查找表的第二组元素是基本查找表的元素的右移版本。
通过使用这样的方法,二维查找表的元素可以以尤其有效方式获得,这是由于可以极容易地执行右移运算。而且,右移运算引起适当缩放且也可以以极有效方式执行舍入运算。
在该算术编码器的优选实施例中,概率索引(Qp2(pLPS)或i))确定评估二维查找表的第一组元素的元素还是评估二维查找表的第二组元素的元素,其中,概率索引(例如,通过量化概率值(例如,pLPS而获得)的第一范围(例如,在0与μ-1之间)与第一组元素的元素相关联,并且其中,概率索引(例如,通过使用量化函数Qp2(.)来量化概率值(例如,pLPS)而获得)的第二范围(例如,大于或等于μ)与第二组元素的元素相关联。
通过使用这样的概念,可以取决于概率索引来区分应使用第一组元素的元素还是第二组元素的元素,该概率索引例如可以基于各个状态变量值。例如,概率索引(例如可以由最小可能的符号的概率或由整数索引值定义)例如可以使用映射来基于各个状态变量值导出。例如,使用第一状态变量值的映射而获得的第一概率值或使用第二状态变量值的映射而获得的第二概率值可以用于确定应评估二维查找表的哪个元素(并且具体地,确定是评估二维查找表的第一组元素的元素还是二维查找表的第二组元素的元素)。
并且,使用该概念,可以基于基本查找表“在操作中”来确定二维查找表的各个元素,该基本查找表的元素的数量小于表元素的数量,该表元素可以通过概率索引和编码区间大小索引来寻址。
在该算术编码器的优选实施例中,概率索引(i)与第一大小值(例如,μ;其中,该大小值例如描述基本查找表在第一方向上的扩展)之间的除法的除法残差(i%μ)和区间大小索引(例如可以例如使用量化运算Qr2(.)(例如,j)来基于区间大小信息R获得;)确定基本查找表的哪个元素用于获得二维查找表的元素。
通过使用该概念,可以选择基本查找表的适当元素,尽管基本查找表在第一方向上的扩展小于可能的概率索引值的数量。通过评估概率索引与第一大小值(可以描述基本查找表在第一方向上的扩展)之间的除法的除法残差,基本查找表的元素可以重复用于两个或更多个不同概率索引值(例如可以相差第一大小值)。因此,例如在使用不同缩放的情况下,基本查找表的条目可以用于相差第一大小值的两个概率索引值两次。因此,可以利用二维查找表来通常描述概率索引值的演进,其中,在与概率索引值的第一范围内的演进相比时,概率索引值的第二范围内的演进是缩放版本(例如,接受舍入作用)。
在优选实施例中,该算术编码器被配置为根据下式来获得二维查找表(RangTabLPS)的元素:
Figure BDA0002965036250000081
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息(例如,描述当前编码区间大小)相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000091
其中
Figure BDA0002965036250000092
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
通过使用这样的方法,可以尤其是存储器有效的方式获得可以由缩放函数或缩放运算的结果定义的区间大小信息。例如,“BaseTabLPS”查找表可以尤其小,这是由于其第一尺寸μ通常小于与概率信息相关联的表索引i的值的范围,并且由于其第二尺寸λ可以等于由区间大小信息描述的可能的不同区间大小的数量。此外,缩放函数可以以尤其有效方式实现,这是由于由i和μ的商的向下舍入运算定义的不同缩放因子的数量相对较小。例如,如果i与μ之间的除法的范围在0与小于2的最大值之间,则可以仅执行两个不同缩放运算。例如,可以仅存在两个、三个或四个不同缩放选项(取决于i与μ之间的商),并且可以使用具有仅若干预定值的乘法或甚至仅仅使用移位运算有效地实现这些缩放选项。
在该算术编码器的优选实施例中,基于概率表(probTabLPS)来定义二维查找表(RangTabLPS)的元素,其中,概率表描述用于一组多个概率值(例如,由索引i表示)和用于给定(参考)编码区间大小的区间大小,并且其中,使用缩放来从该概率表中导出用于不在该组多个概率值中的概率值和/或用于与该给定编码区间大小不同的编码区间大小的二维查找表的元素。
使用这样的方法,可以利用不同区间大小经常通过缩放而彼此相关,这取决于相关联概率值之间的差和/或取决于相关联编码区间大小之间的差。换言之,如果二维查找表不包括拟合当前所考虑的概率值和/或当前所考虑的编码区间大小的元素,则仍可以获得适当区间大小,其中,相应地缩放二维查找表的另一元素(例如,取决于当前所考虑的概率值和/或取决于当前所考虑的编码区间大小)。
在该算术编码器的优选实施例中,使用取决于编码区间大小(R)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放和使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的第一缩放的结果的第二缩放来获得二维查找表的元素。
因此,可以“在操作中”使用概率表的适当条目并使用适当缩放来获得二维查找表的元素,其中,评估的“概率表”通常明显小于二维查找表。换言之,基于寻址二维查找表的元素的两个索引,选择概率表的适当元素并对其进行缩放。然而,在许多情形下,这样的概念在存储器需求与计算复杂度之间提供了改进的平衡。
在该算术编码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000101
确定在所第二缩放中使用的缩放因子
Figure BDA0002965036250000102
和/或编码区间大小确定第一缩放的乘法缩放因子(Qr2(R))。
使用这样的概念,可以使用仅表示概率索引和编码区间大小索引的二维栅格的(相对较小)部分中的区间大小的小概率表,这可以节省存储器空间。接着可以通过概率表的元素的上述选择并还通过概率表的所选元素的上述二次缩放来获得适当区间大小信息。
在优选实施例中,该算术编码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000103
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小(或者,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000104
其中
Figure BDA0002965036250000105
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
通过使用用于获得二维查找表的适当元素的这样的概念,可以获得存储器要求与计算复杂度之间的极好平衡,该适当元素可以表示区间大小信息或其可以等于区间大小信息。表“probTabLPS”例如可以是一维表,其中,所述表的元素的数量可以小于表索引i的不同可能值的数量。然而,通过对概率表probTabLPS的所选元素和取决于区间大小R的缩放因子Qr2(R)的乘积进行缩放,可以达成良好准确度且可以使得可能的舍入误差相当地小。此外,由于对通过“向下舍入”算子而获得的整数值进行缩放,因此可以使用有效缩放概念,该有效缩放概念可以例如通过整数乘法或整数除法或比特移位运算来定义。因此,计算负荷非常小。
在优选实施例中,该算术编码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000111
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小(或者,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000112
其中
Figure BDA0002965036250000113
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
用于获得区间大小信息的该方法也尤其有效,并且已发现会带来用于区间大小信息的高质量结果(作为第一缩放和第二缩放的结果而获得)。
在该算术编码器的优选实施例中,其中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差
Figure BDA0002965036250000121
确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000122
确定在第一缩放中使用的缩放因子
Figure BDA0002965036250000123
和/或其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
通过取决于上述除法残差而选择概率表(可以是一维概率表)的元素,可以利用除了缩放以外,区间大小在概率索引的不同范围内实质上相似的事实。因此,概率表仅反映概率索引的单一范围内的值,并且使用第一缩放来获得用于概率索引的其他范围的区间大小值。第二缩放使得由概率表表示的值或使用第一缩放基于概率表获得的值适应于编码区间大小,以便进而获得适当区间大小信息。
因此,可以获得存储器消耗、计算复杂度与准确度之间的良好平衡,其中,例如如果适当地选择第一大小值(例如,为二的效能),则可以以在计算上极简单的方式获得除法残差和整数除法结果。
在优选实施例中,该算术编码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000124
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中/是除法运算(例如,提供整数结果);其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小;其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000125
其中
Figure BDA0002965036250000126
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
该计算规则以极有效方式实现之前所提及的概念。
在该算术编码器的优选实施例中,二维查找表可表示为如下二者之间的二元乘积:第一一维向量(形成一维查找表)以及第二一维向量(Qr2(R)),第一一维向量的条目包括第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000131
的值域的不同值区间的概率值;第二一维向量的条目包括用于编码区间大小信息的量化等级。
这样的二维查找表可很好地用于基于状态变量值和基于编码区间大小信息来有效导出区间大小信息。二维查找表内的查找对应于状态变量值到概率值上的映射并也对应于所获得的概率值与编码区间大小的乘法。因此,可以容易地获得可以等于二维查找表的所选条目的区间大小信息,其中,可以取决于各个状态变量值并取决于编码区间大小信息而选择二维查找表的各个元素(其中,各个状态变量值可以确定二维查找表的元素的第一索引,并且其中,编码区间大小信息可以确定第二索引)。
在优选实施例中,该算术编码器被配置为:根据第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000132
来分别计算第一子区间宽度值和第二子区间宽度值(R*pk),所述计算是通过使用其条目包括用于第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000133
的值域的不同值区间的概率值的一维查找表(LUT4)将第一状态变量值和第二状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000134
映射到第一概率值和第二概率值上,并且将描述所述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息量(例如,R)量化到量化等级上;确定一方面第一概率值和第二概率值与量化等级之间的乘积(通过查找预计算的乘积,或者通过乘法);以及使用第一子区间宽度值和第二子区间宽度值来获得组合的子区间宽度值(例如,使用加权求和或使用加权平均)。
已发现,在某一状况下使用这样的方法也极有效。通过仅基于第一状态值(而不考虑第二状态值)来导出第一子区间宽度值并通过仅基于第二状态变量值(而不考虑第一状态变量值)来计算第二子区间宽度值,使用不同适应时间常数而获得的状态变量值的实质上的单独处理是通过大部分处理来维持的。仅在最后阶段,组合第一子区间宽度值和第二子区间宽度值,以获得带来高精确度且避免降级的组合的子区间宽度值,在一些状况下,如果第一状态变量值和第二状态变量值过早地组合,则会出现降级。
在优选实施例中,该算术编码器被配置为通过将逻辑右移应用于编码区间大小信息来执行对编码区间大小信息进行量化。
该概念尤其易于实现,这是由于逻辑右移仅需要最少的计算资源。
在优选实施例中,该算术编码器被配置为通过
Figure BDA0002965036250000141
Figure BDA0002965036250000142
来执行对编码区间大小信息R进行量化,其中u、v和w是参数。
已发现,也可以极易于实现这样的量化。具体地,如果参数u,v和u,v and W被选择为整数值(或者,大于1的整数值),则计算工作极少。
在该算术编码器的优选实施例中,所述一维查找表的所述条目随着所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure BDA0002965036250000143
的增加而单调地减少。
使用一维查找表的单调减少的条目已示出带来了用于区间大小信息的良好结果。
在该算术解码器的优选实施例中,其中,用于第一状态变量值和第二状态变量值或其所述缩放和/或舍入版本
Figure BDA0002965036250000144
的值域的不同值区间大小相等。
使用值区间的这样的相等大小设计允许简单量化。此外,值区间的相等大小设计允许在操作中以中等工作量确定查找表的元素。
在该算术编码器的优选实施例中,其中,用于第一状态变量值和第二状态变量值或其缩放和/或取舍版本
Figure BDA0002965036250000145
的值域的不同值区间大小相等。
使用一维查找表的条目的这样的单调减少,可以以良好准确度表示指数衰减。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的算术编码器,其中,该算术编码器被配置为基于多个状态变量值(si k)(该多个状态变量值例如与由索引k指示的给定上下文模式相关联)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值(例如,二进制值0和1的序列)的统计,其中,该算术编码器被配置为基于多个(各个)状态变量值(si k)来导出组合状态变量值(sk)(例如可以是状态变量值的加权和),并且其中,该算术编码器被配置为使用查找表来映射组合状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000151
以便获得描述用于一个或多个要编码的符号的算术编码的区间大小的所述区间大小信息。
根据本发明的该实施例基于如下思想:如果在使用查找表来执行映射之前确定组合状态变量值,则获得确定区间大小信息的高效率。因此,不再有必要使用两个(或者,更多个)状态变量值来执行单独的查找表查找。相反,单一表查找可以足以确定区间大小信息。具体地,已发现,在执行查找表查找之前的第一状态变量值和第二状态变量值的组合在许多状况下严重地降低了区间大小信息的质量。
在优选实施例中,该算术编码器被配置为确定状态变量值的加权和,以便获得组合状态变量值。
已发现,计算状态变量值的加权和是确定组合状态变量值的有效方式,并且也很好地适合于考虑两个状态变量值的不同相关性,该不同相关性是由在导出状态变量值时所使用的不同适应时间常数引起的。
在优选实施例中,该算术编码器被配置为确定舍入值
Figure BDA0002965036250000152
的总和,以便获得组合状态变量值(sk),该舍入值是通过对状态变量值
Figure BDA0002965036250000153
与相关联的加权值
Figure BDA0002965036250000154
的乘积进行舍入而获得的。
已发现,在执行求和之前执行缩放值的舍入带来了尤其有意义的结果。状态变量值之一的可忽略的贡献通过舍入来消除且不影响组合状态变量值。因此,可以获得高度可靠的结果,并且组合状态变量值通常舍入数值,该整数值很好地适合于充当用于选择查找表的元素的索引。
在优选实施例中,该算术编码器被配置为根据下式来确定组合状态变量值sk
Figure BDA0002965036250000161
其中,sk 2是状态变量值,其中,N是所考虑的状态变量值的数量,
其中
Figure BDA0002965036250000164
为向下舍入算子,其中,dk i是与状态变量值相关联的加权值(例如,控制各个状态变量值对组合状态变量值的影响的加权因子)(其中,dk i优选地是von 2的整数值效能,并且其中,两个不同dk i之间的比率优选地是2的整数值效能)(其中两个不同dk i之间的比率优选地大于或等于8)。
用于导出组合状态变量值的该概念带来了极有意义的组合状态变量值,如之前所解释的。
在优选实施例中,该算术编码器被配置为如果要编码的符号取第一值(例如,“1”),则将该状态变量值改变为第一方向(例如,变得更加正向),并且如果要编码的符号取与第一值不同的第二值(例如,“0”),则将该状态变量值改变为第二方向(例如,变得更加负向)(例如,使得该状态变量值可以取正值和负值),并且其中,该算术编码器被配置为依据组合状态变量值的绝对值(如果sk i>0,则是sk,否则是-sk)(例如,取决于组合状态变量值的绝对值的缩放和舍入版本)确定要评估的查找表的条目。
用于确定状态变量值(例如,用于确定第一状态变量值和用于确定第二状态变量值)的该概念如使用第一状态变量值和第二状态变量值的单独映射的情况下一样,会带来相同优点。
在优选实施例中,该算术编码器被配置为如果组合状态变量值取第一符号(例如,正号),则将概率值(pk)设置为由查找表提供的值(例如,为
Figure BDA0002965036250000162
),并且其中,该算术编码器被配置为如果组合状态变量值取第二符号(例如,负号),则将概率值(pk)设置为通过从预定值(例如,1)中减去由查找表提供的值而获得的值(例如,为
Figure BDA0002965036250000163
用于将组合状态变量值映射到概率值上的该概念是有效的,这是由于可以缩减查找表的大小。具体地,可以缩减查找表的元素的数量,这是由于查找表的同一元素是与给定正组合状态变量值和给定(正)组合状态变量值的负版本相关联。换言之,在给定概念中,组合状态变量值的绝对值确定评估查找表的哪个元素以提供概率值。
然而,通过取决于符号而将概率值设置为由查找表提供的值或为通过从预定值中减去由查找表提供的值而获得的值仍以适当且有效的方式考虑组合状态变量值的符号。因此,可以基于组合状态值以低计算复杂度获得有意义的概率值。
在优选实施例中,该算术编码器被配置为根据下式来确定组合概率值pk
Figure BDA0002965036250000171
其中,LUT2是包含概率值的查找表;其中,
Figure BDA0002965036250000172
是向下舍入算子;其中,sk是组合变量值;以及其中,ak i是与组合状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
基于组合状态变量值sk来确定组合概率值的该概念以在计算上高效的方式实现之前所概述的思想。
在优选实施例中,该算术编码器被配置为根据下式来确定组合概率值pk
Figure BDA0002965036250000173
其中,LUT2是包含概率值的查找表;其中,
Figure BDA0002965036250000174
是向下舍入算子;其中,sk是组合变量值;以及其中,ak i是与组合状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
在该概念中,不存在缩放的组合状态变量值sk的绝对值计算。相反,仅存在“向下舍入”运算,该“向下舍入”运算应用于缩放(“加权”)的组合状态变量值,这可以在一些情形下以比绝对值形成低的工作量实现。取负仅被应用于整数值,该整数值通过加权的组合状态变量值的下舍入(向下舍入算子)获得。然而,取负整数值通常比取负分数值或以浮点表示的值的复杂性低。因此,在此所讨论的概念可以在一些状况下有助于降低复杂性。
在优选实施例中,该算术编码器被配置为使用二维查找表将组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000181
映射到子区间宽度值(R*pk)上,该二维查找表的条目取决于组合状态变量值并取决于描述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息(例如,R)而寻址。
使用该概念,组合状态变量值到组合概率值上的映射和组合概率值与编码区间大小的乘法可以组合为单一查找表查找运算。因此,需要二维查找表,但是省去了乘法运算。可以预计算二维查找表的条目,从而使运行时间的组合负载保持极低。相反,第一表索引可以基于组合状态变量值或其缩放和/或舍入版本来确定,并且第二表索引可以基于编码区间大小信息(例如,使用舍入或量化)来确定。第一步骤索引和第二状态索引可以唯一地标示二维查找表的元素,并且二维查找表的标示元素可以用作子区间宽度值(或者,用作区间大小信息)。因此,获得极有效概念,从而在用于查找表的充足存储器可用的情况下省去计算复杂度。
在该算术编码器的优选实施例中,二维查找表可表示为如下二者之间的二元乘积:第一一维向量(LUT4[...];形成一维查找表)以及第二一维向量(Qr2(R)),第一一维向量的条目包括组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000182
的值域的不同值区间的概率值;第二一维向量的条目包括用于编码区间大小信息的量化等级。
这样的二维查找表带来极好的结果。具体地,该二维查找表的所有元素表示与组合状态变量值相关联的各个概率值和编码区间大小的乘法。因此,本文中所描述的二维查找表消除了对乘法的需求,这可以被视为极具资源效率。
在该算术编码器的优选实施例中,二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)定义的,其中,二维查找表的第一组元素(或者,块;例如,“上半部分”)与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且其中,二维查找表的第二组元素(或者,块;例如,“下半部分”)是基本查找表的元素的缩放和舍入版本。
通过基于基本查找表来定义二维查找表的元素,可以以极简单方式生成二维查找表。此外,由于二维查找表的第二组元素是基本查找表的元素的缩放和舍入版本(同时二维查找表的第一组元素的元素与基本查找表的元素相同或是基本查找表的元素的舍入版本),因此很好地反映了二维查找表的行或列中的元素的指数演进。通过使用二维查找表的元素的第二块实质上是(除了舍入作用以外)二维查找表的元素的第一块的缩放版本的概念,可以反映用于将组合状态变量值映射到区间大小信息上的适当特性。
在该算术编码器的优选实施例中,二维查找表的第二组元素是基本查找表的元素的右移版本。
这允许二维查找表的条目(元素)的简单生成。
已发现,基本查找表的右移元素是组合缩放和舍入运算的极有效概念。
在该算术编码器的优选实施例中,概率索引(Qp2(pLPS)或i)确定评估二维查找表的第一组元素的元素还是评估二维查找表的第二组元素的元素,其中,概率索引(例如,通过量化概率值(例如,pLPS而获得)的第一范围(例如,在0与μ-1之间)与第一组元素的元素相关联,并且其中,概率索引(例如,通过例如使用量化函数Qp2(.)来量化概率值(例如,pLPS)而获得)的第二范围(例如,大于或等于μ)与第二组元素的元素相关联。
通过使用概率索引,可以极有效地选择二维查找表的元素,该概率索引可以根据组合状态变量值直接导出(在不使用概率值作为中间量的情况下)或可以使用基于组合状态变量值的组合概率值而导出。而且,概率索引用于在使用第一组元素的元素与第二组元素的元素之间切换,这允许在操作中有效确定二维查找表的元素。
在该算术编码器的优选实施例中,概率索引(i)与第一大小值(例如,μ;其中,该大小值例如描述基本查找表在第一方向上的扩展)之间的除法的除法残差(i%μ)和区间大小索引(例如,可以例如使用量化运算Qr2(.)(例如,j)来基于区间大小信息R获得;)确定基本查找表的哪个元素用于获得二维查找表的元素。
在优选实施例中,该算术编码器被配置为根据下式来获得二维查找表(RangTabLPS)的元素:
Figure BDA0002965036250000201
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息(例如,描述当前编码区间大小)相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000202
其中
Figure BDA0002965036250000203
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
通过评估除法残差以确定基本查找表的哪个元素用于获得二维查找表的元素,可以在极高效率的情况下在运作中确定二维查找表的元素。具体地,可以通过使用除法残差来反映二维查找表包括基于基本查找表的相同元素的元素的两个或更多个组的事实,该除法残差用于确定基本查找表的哪个元素用于获得二维查找表的元素。换言之,通过考虑所述除法残差很好地反映二维查找表的元素与基本查找表的元素之间的周期性关系,这是由于除法残差随着概率索引增加也是周期性的。
在该算术编码器的优选实施例中,基于概率表(probTabLPS)来定义二维查找表(RangTabLPS)的元素,其中,概率表描述用于一组多个概率值(例如,由索引i表示)和用于给定(参考)编码区间大小的区间大小,并且其中,使用缩放来从该概率表中导出用于不在该组多个概率值中的概率值和/或用于与该给定编码区间大小不同的编码区间大小的二维查找表的元素。
该概念基于与针对状态变量值的单独映射的情况下所描述的对应的概念相同的考虑。
在该算术编码器的优选实施例中,基于概率表(probTabLPS)来定义二维查找表(RangTabLPS)的元素,其中,概率表描述用于一组多个概率值(例如,由索引i表示)和用于给定(参考)编码区间大小的区间大小,并且其中,使用缩放来从该概率表中导出用于不在该组多个概率值中的概率值和/或用于与该给定编码区间大小不同的编码区间大小的二维查找表的元素。
已发现,二维查找表的元素的在这样的运作中确定包括尤其高的资源效率。此外,应注意的是,上文关于在第一状态变量值和第二状态变量值的单独映射的上下文内使用的对应的算法进行的评述也适用。通过使用通常小于(例如,包括较少元素)二维查找表的概率表作为用于确定二维查找表的元素的基础,可获得极高效率。例如,概率表可以表示不同概率值和不同(量化)编码区间大小在显著范围内的映射,并且可以因此帮助避免除了简单缩放以外的乘法(其中“简单”缩放例如可以使用移位运算来实现)。
使用缩放来从概率表中导出用于不在该组多个概率值的一个或多个概率值和用于与给定编码区间大小不同的一个或多个编码区间大小的二维查找表的元素。因此,有极小概率表已经足够了,该极小概率表例如可以仅包括一个行或一个列。所以,概率表的元素的数量甚至可以小于不同的可能概率值的数量(即,小于二维查找表的不同的可能概率索引的数量)。此外,应注意的是,所述缩放取决于概率值和/或取决于编码区间大小。所述缩放例如可以使用极简单机制来执行,如果适当地选择概率表的大小,则如使用比特移位运算那样来执行。当与具有任意变量运算数(例如与二的效能不同)的“常用”乘法时,基于比特移位运算的这样的“简单”缩放运算需要明显较少的计算资源。
在该算术编码器的优选实施例中,使用取决于编码区间大小(R)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放和使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的第一缩放的结果的第二缩放来获得二维查找表的元素。
已发现,二维查找表的元素的这种计算尤其有效。此外,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在该算术编码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000221
确定在第二缩放中使用的缩放因子
Figure BDA0002965036250000222
和/或其中,编码区间大小确定第一缩放的乘法缩放因子(Qr2(R))。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在优选实施例中,该算术编码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000223
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小(或者,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000224
其中
Figure BDA0002965036250000225
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在该算术编码器的优选实施例中,使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放并使用取决于编码区间大小(R)的第一缩放的结果的第二缩放来获得二维查找表的元素。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在该算术编码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差
Figure BDA0002965036250000231
确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000232
确定在第一缩放中使用的缩放因子
Figure BDA0002965036250000233
和/或其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
关于该功能性,也参考了上文对第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论,其中,使用组合状态变量值或组合概率值代替各个单独状态变量值或各个单独概率值。
在优选实施例中,该算术编码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000234
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中/是除法运算(例如,提供整数结果);其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小;其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000235
其中
Figure BDA0002965036250000236
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
关于该功能性,也参考了上文对第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能的讨论,其中,组合状态变量值代替各个状态变量值,并且其中,组合概率值代替各个概率值。
在优选实施例中,该算术编码器被配置为:根据组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000241
来计算子区间宽度值(R*pk),所述计算是通过使用其条目包括用于组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000242
的值域的不同值区间的概率值的一维查找表(LUT4)将组合状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000243
Figure BDA0002965036250000244
映射到组合概率值上,以及将描述在编码符号之前的算术编码的编码区间的大小的编码区间大小信息(例如,R)量化到量化等级上;计算组合概率值与量化等级之间的乘积(通过预计算乘积的查找,或者通过乘法)。
关于该功能性,也参考了上文对第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能的讨论,其中,组合状态变量值代替各个状态变量值,并且其中,组合概率值代替各个概率值。
在优选实施例中,该算术编码器被配置为通过将逻辑右移应用于编码区间大小信息来执行对编码区间大小信息进行量化。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在优选实施例中,该算术编码器被配置为通过
Figure BDA0002965036250000245
Figure BDA0002965036250000246
来执行对编码区间大小信息R进行量化,其中u、v和w是参数。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在该算术编码器的优选实施例中,一维查找表的条目随着组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000247
的增加而单调地减少。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在该算术编码器的优选实施例中,其中,用于组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000248
的值域的不同值区间大小相等。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在该算术编码器的优选实施例中,一维查找表的条目随着组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000251
的增加而以递减速率单调地减少。
关于该功能性,也参考了上文对在第一状态变量值和第二状态变量值的单独映射的上下文中提供的对应的功能性的讨论。
在该算术编码器的优选实施例中,查找表定义了(例如,在+/-10%或+/-20%的公差内的)指数衰减(例如,从0.5下降)。
已发现,指数衰减很好地反映了基于状态变量值来导出区间大小信息的适当关系。而且,可以使用查找表极有效地表示指数衰减,其中,即使在操作中确定查找表的元素在较少工作量下也是可能的。
在优选实施例中,该算术编码器被配置为根据下式来更新多个变量状态值
Figure BDA0002965036250000252
Figure BDA0002965036250000253
其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000254
是一个或多个加权值;其中,
Figure BDA0002965036250000255
是一个或多个加权值,其中,A是
Figure BDA0002965036250000256
Figure BDA0002965036250000257
或或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure BDA0002965036250000258
脱离预定值范围,(例如,考虑到
Figure BDA0002965036250000259
具有大于
Figure BDA00029650362500002510
的值域;即,
Figure BDA00029650362500002511
被准量化到
Figure BDA00029650362500002512
上;对于
Figure BDA00029650362500002513
的极值,
Figure BDA00029650362500002514
可能根据上式由未修改的A修改而脱离其值域;为了避免该情形,与这些极值相对应的条目可以缩减或置零),其中,offset、
Figure BDA00029650362500002515
Figure BDA00029650362500002516
是预定参数(上文阐述了示例)。
已发现,可以以较高计算效率进行状态变量的这样的更新,其中,可以预计算映射表。例如,可以实现状态变量值
Figure BDA00029650362500002517
保持在预定范围内(例如,在预定最小值与预定最大值之间)。此外,使用映射表A的适当选择,可以实现状态变量值很好地适应于先前处理(例如,编码或解码)的符号的统计的描述。而且,应注意的是,可以通过加权值m和n的适当选择来适应各个状态变量值的适应时间常数。因此,在此描述的算法可以有效地用于更新状态变量值
Figure BDA00029650362500002518
在优选实施例中,该算术编码器被配置为通过表查找或以计算方式导出
Figure BDA0002965036250000261
因此,不同概念可以导出更新状态变量值。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的算术编码器,其中,该算术编码器被配置为确定一个或多个状态变量值(s1k,s2k),该一个或多个状态变量值表示多个先前编码的符号值(例如,二进制值0和1的序列)的统计(例如,在多个状态变量值的情况下,为具有不同适应时间常数的统计),并且其中,该算术编码器被配置为基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),该一个或多个状态变量值表示多个先前编码的符号值(例如,二进制值0和1的序列)的统计(例如,在多个状态变量值的情况下,为具有不同适应时间常数的统计),其中,该算术编码器被配置为取决于要编码的符号并使用查找表(A)(例如,在对要编码的符号进行编码之后)来更新第一状态变量值(sk 1)。
根据本发明的该实施例基于如下发现:可以使用查找表以尤其良好的结果来执行用于导出用于算术编码(例如,编码或解码)的区间大小信息的状态变量值的更新,这是因为使用查找表允许状态变量值的更新,状态变量值的更新尤其很好地适应于要编码或要解码的信号的特性。例如,可以容易地使用查找表来表示“旧”状态变量值与更新状态变量值之间的微调关系,同时不需要执行详尽的计算(如例如,对三角函数或指数函数或对数函数等的评估)。因此,使用查找表来实现状态变量值的更新有助于使计算复杂度保持相当小。理想地,除了查找表查找之外,仅使用乘法(或者,简单乘法,例如,比特移位运算)、舍入运算和加法以便基于“旧”状态变量值来获得更新状态变量值。例如,当前处理的符号(例如,要编码的符号或解码的符号)决定对例如基于查找表的映射规则的哪个部分进行评估,以便获得更新状态变量值。
总之,已发现,使用查找表来提供更新状态变量值提供了高灵活性和低计算复杂度二者。
在优选实施例中,该算术编码器被配置为取决于要编码的符号并使用所述查找表(A)(例如,在对要编码的符号进行编码之后)来更新第二状态变量值(sk 2)。
已发现,使用相同查找表来更新第二状态变量是有利的,该第二状态变量值用于更新第一状态变量值。例如,例如可以使用一个或多个缩放因子来考虑关于第一状态变量值和第二状态变量值的适应时间常数的可能差异,该一个或多个缩放因子例如可以应用于选择查找表的元素和/或用于查找表的所选元素的缩放。总之,即使仅单个查找表用于导出两个或更多个状态变量值,但是两个或更多个状态变量值可以适应于表示处理符号值(即,先前编码的符号值或解码的符号值)的不同统计特性。
在优选实施例中,该算术编码器被配置为使用不同适应时间常数来更新第一状态变量值和第二状态变量值。
通过使用不同适应时间常数来更新第一状态变量值和第二状态变量值,先前处理的符号的不同统计特性可以由状态变量值反映。已发现,表示具有不同适应时间常数的处理符号的统计的状态变量值的可用性非常有助于用于符号的算术编码(编码/解码)的区间大小的准确调整。而且,已发现,状态变量值的基于查找表的更新提供极高可靠性和低计算复杂度。
在优选实施例中,该算术编码器被配置为取决于要编码的符号是取第一值还是与第一值不同的第二值选择性地使先前状态变量值增大或减小使用查找表而确定的值。
通过使用这样的方法,可以以递归方式来适应状态变量值,其中,处理符号(例如,要编码的符号或先前编码的符号或先前解码的符号)确定状态变量值的改变的方向(增加或减少)。另一方面,通过所选的查找表条目来确定适应(即,增加或减少)的大小,其中,可以应用缩放。因此,存在用于更新状态变量值的有效机制,提供了较高程度的灵活性且仍资源极高效。
在优选实施例中,该算术编码器被配置为当与先前状态变量值在要编码的符号取第一值的情况下为正相比,在先前状态变量值为负的情况下将先前状态变量值增加相对较大的值;以及其中,所述算术编码器被配置为当与所述先前状态变量值在要编码的符号取与第一值不同的第二值的情况下为负相比,在所述先前状态变量值为正的情况下将所述先前状态变量值减小相对较大的值(这是例如通过查找表的适当选择来获得的)。
使用这样的方法,可以获得状态变量值以指数方式朝向最大正值发展,并且以指数方式朝向最小值发展。朝向(正)最大值和朝向(负)最小值的该近似可以以近似渐进的方式。换言之,当前状态变量值离(正)最大值越远,则朝向(正)最大值的(增加)步长越大,并且当前状态变量值离(负)最小值越远,则朝向(负)最小值的(减小)步长越大。因此,可以使用该概念来近似指数渐进行为。然而,已发现,该概念非常好地适合于状态变量值的更新。具体地,已发现,这样的方法很好地适合于用于确定状态变量值的“无限冲激响应”方法。
在优选实施例中,该算术编码器被配置为如果要编码的符号取第一值,则取决于预定(例如,固定)偏移值(z)与先前计算的第一状态变量值
Figure BDA0002965036250000281
或其缩放和/或舍入版本
Figure BDA0002965036250000282
的总和来确定更新第一状态变量值时评估的查找表的条目的索引;以及其中,该算术编码器被配置为如果要编码的符号取第二值,则取决于预定(例如,固定)偏移值(z)与先前计算的第一状态变量值的取反(乘以-1)版本
Figure BDA0002965036250000283
或其(例如,先前计算的第一状态变量值的取反版本的)缩放和/或舍入版本
Figure BDA0002965036250000284
的总和来确定更新所述第一状态变量值时评估的所述查找表的条目的索引。
使用这样的方法,考虑到当前处理的符号,可以以中等工作量选择查找表的适当条目。先前计算的状态变量值和处理的(编码的或解码的)符号二者确定查找表的条目的选择,并且可以因此确定在与先前计算的状态变量值比较时更新状态变量值增加或减少了多少。例如,偏移值可以确保偏移值与缩放(并且有可能取反,取决于处理符号)的先前计算的状态变量值的总和产生有效的查找表索引,这是由于有效的查找表索引通常是非负的。使用该概念,可以容易地选择适当查找表索引并有效地提供更新状态变量值。
在优选实施例中,该算术编码器被配置为如果要编码的符号取第一值,则取决于预定(例如,固定)偏移值(z)与先前计算的第二状态变量值
Figure BDA0002965036250000291
或其缩放和/或舍入版本
Figure BDA0002965036250000292
的总和来确定更新第二状态变量值时评估的查找表的条目的索引;以及其中,该算术编码器被配置为如果要编码的符号取第二值,则取决于预定(例如,固定)偏移值(z)与先前计算的第二状态变量值的取反(乘以-1)版本
Figure BDA0002965036250000293
或其(例如,先前计算的第二状态变量值的取反版本的)缩放和/或舍入版本
Figure BDA0002965036250000294
的总和来确定更新所述第二状态变量值时评估的所述查找表的条目的索引。
用于更新第二状态变量值的该概念与用于更新第一状态变量值的概念实质上相同,其中例如,相同查找表可以被评估为节省存储器资源,并且其中例如,可以使用在与更新第一状态变量值相比时的不同的缩放值,以从而获得修改的状态变量值更新特性。例如,可以通过使用用于确定更新第一状态变量值和更新第二状态变量值的不同的缩放值来获得用于第一状态变量值和用于状态变量值的不同适应时间常数。
在优选实施例中,该算术编码器被配置为在确定当更新第一状态变量值时评估的查找表的条目的索引时应用第一缩放值(mk 1),以对先前计算的第一状态变量值(sk 1)进行缩放,并且其中,该算术编码器被配置为在确定当更新第二状态变量值时评估的查找表的条目的索引时应用第二缩放值(mk 2),以对先前计算的第二状态变量值(sk 2)进行缩放,其中,第一缩放值与第二缩放值不同(并且其中,第一缩放值和第二缩放值优选地是2的整数效能,并且其中,第一缩放值与第二缩放值之间的比率优选地是2的整数效能,其中该第一缩放值及该第二缩放值最好相差为至少8的因子)。
通过在确定当更新第一状态变量值时评估的查找表的条目的索引时和在确定当更新第二状态变量值时评估的查找表的条目的索引时使用不同的缩放值,可以有效地实现不同适应时间常数,其中,基本状态变量值更新算法和所使用的查找表可以是相同的,并且其中,唯一的显著差异可以是缩放值的选择。这允许实现很大程度上的节省资源。
在优选实施例中,该算术编码器被配置为在更新第一状态变量值时使用第一缩放值(例如,nk 1)对通过查找表的评估而返回的值进行缩放,其中,该算术编码器被配置为在更新第二状态变量值时使用第二缩放值(例如,nk 2)对通过查找表的评估而返回的值进行缩放,其中,第一缩放值与第二缩放值不同。
通过查找表(例如,所选查找表条目)的评估而返回的值的所描述的不同缩放允许在更新第一状态变量值和第二状态变量值时有效地实现不同适应时间常数。此外,这样的缩放允许使用相同查找表以进行更新第状态变量值和进行更新第二状态变量值,这有助于节省存储器资源。
在优选实施例中,该算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000301
Figure BDA0002965036250000302
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000303
是一个或多个加权值;其中,
Figure BDA0002965036250000304
是一个或多个加权值。
已发现,用于状态变量值的这样的更新机制可以以高计算效率实现并提供可靠结果。
在优选实施例中,该算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000305
Figure BDA0002965036250000306
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000307
是一个或多个加权值;其中,
Figure BDA0002965036250000308
是一个或多个加权值。
已发现,用于更新状态变量值的这样的机制可以在一些情形下也是非常有利的。具体地,没有必要使用这样的方法对浮点值进行取反,这在一些实现中在计算上可以是无效的。因此,本发明概念在一些状况下可以带来极佳的资源效率。
在优选实施例中,该算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000311
Figure BDA0002965036250000312
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000313
是一个或多个加权值;其中,
Figure BDA0002965036250000314
是一个或多个加权值。
已发现,该概念在一些实现环境中也带来了尤其高的计算效率和良好准确度。
在优选实施例中,该算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000315
Figure BDA0002965036250000316
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000317
是一个或多个加权值;其中,
Figure BDA0002965036250000318
是一个或多个加权值。
已发现,在一些状况下,该概念还带来了计算效率和可靠性方面的优势。
在该算术编码器的优选实施例中,A的条目随着查找表索引增加而单调地减少。
使用这样的方法,可以达成状态变量值朝向最大值或最小值的近似是单调和/或连续和/或渐近的。例如,可以达成远离各个最大值或最小值的状态变量相对快速地朝向最大值或朝向最小值修改,而较接近于各个最大值或最小值的状态变量值相对较慢地朝向最大值或最小值改变。因此,查找表的条目的上述选择允许最大值或最小值的平稳近似,已发现这非常有助于基于一个或多个状态变量值来导出区间大小信息。
在该算术编码器的优选实施例中,A是
Figure BDA0002965036250000319
Figure BDA0002965036250000321
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure BDA0002965036250000322
脱离预定值范围,(例如,考虑到
Figure BDA0002965036250000323
具有大于
Figure BDA0002965036250000324
的值域;即,
Figure BDA0002965036250000325
被准量化到
Figure BDA0002965036250000326
上;对于
Figure BDA0002965036250000327
的极值,
Figure BDA0002965036250000328
可能根据上式由未修改的A修改而脱离其值域;为了避免该情形,与这些极值相对应的条目可以缩减或置零),其中,offset、
Figure BDA0002965036250000329
Figure BDA00029650362500003210
是预定参数(上文阐述了示例)。
已发现,查找表A的这样的选择带来了状态变量值的尤其有利的行为,该状态变量值是使用所述查找表A来更新的。
在该算术编码器的优选实施例中,查找表的最后一个条目(在第一状态变量值实现延伸到最大可允许值的预定值范围时或第一状态变量值超过预定阈值时)等于零。
通过使用查找表的等于0的最后一个条目,可以容易地避免更新状态变量值超过最大值和/或最小值。
在优选实施例中,该算术编码器被配置为将限幅运算应用于更新状态变量值,以使更新且限幅的状态变量值保持在预定值范围内。
使用这样的机制,可以容易地防止状态变量值超过最小值与最大值之间的预定范围。因此,可以确保状态变量值取“合理的”值。
在优选实施例中,该算术编码器被配置为根据下式将限幅运算应用于更新状态变量值
Figure BDA00029650362500003211
,其中,
Figure BDA00029650362500003212
是用于
Figure BDA00029650362500003213
的最大允许值,并且其中,
Figure BDA00029650362500003214
是用于
Figure BDA00029650362500003215
的最小允许值。
已发现,这样的限幅运算可以以高效方式实现并避免了无效的状态变量值。
在优选实施例中,该算术编码器被配置为应用用于不同的上下文模型的不同的缩放值(例如,使得两个不同的上下文模型之间的缩放值中的至少一个不同)。
使用用于不同的上下文模型的不同的缩放值,可以考虑不同的上下文模型的不同统计特性(可以与不同类型的信息和/或不同类型的比特流语法元素相关联)。通过使用用于不同的上下文模型的不同的缩放值,用于状态变量值的更新程序可以容易地适应于不同的上下文模型而不会根本上改变根本算法。因此,可以以非常有效的方式获得适当缩放值。
在优选实施例中,该算术编码器被配置为获得如在以上实施例之一中定义的区间大小信息。
已发现,用于更新状态变量值的概念可以结合用于导出区间大小信息的上述概念很好地使用。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的算术编码器,其中,该算术编码器被配置为基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前编码的符号值(例如,二进制值0和1的序列)的统计,其中,该算术编码器被配置为使用基本查找表(Base TabLPS)来确定区间大小值(RLPS),(基本查找表的尺寸就概率索引而言小于可能的概率索引i的数量),其中,该算术编码器被配置为确定区间大小值(RLPS),使得如果基于一个或多个状态变量值而获得的概率索引(i)(例如,如i=Qp(pLPS))在第一范围内(例如,小于μ),则确定的区间大小值与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且使得如果概率索引在第二范围内(例如,大于或等于μ),则使用基本查找表的元素的缩放和舍入来获得确定的区间大小值;以及其中,该算术编码器被配置为使用区间大小值(RLPS)来执行一个或多个符号的算术编码。
根据本发明的该实施例基于如下思想:该算术编码器中的区间大小值的确定可以使用“基本查找表”来执行通过重新使用所述基本查找表的元素(一次不使用缩放且一次使用缩放),该基本查找表的尺寸小于与给定的当前编码区间大小相关联的不同区间大小值的数量。因此,可以利用用于算术编码(编码/解码)的与状态变量值的不同范围相关联的区间大小值通过缩放(例如,除了一些舍入作用以外)而实质上不同。因此,可以使用相对较小的“基本查找表”,该基本查找表的条目多次用于不同概率索引(其中,该概率索引可以是基于各个状态变量值而导出的)。
总之,在此描述的概念允许基于一个或多个状态变量值高效地确定区间大小值。
在优选实施例中,该算术编码器被配置为确定区间大小值,使得如果概率索引在第二范围内,则确定的区间大小值(RLPS)是基本查找表的元素的右移版本。
该概念基于如下思想:右移运算在计算上非常有效,并且如果概率索引在第二范围内,则也提供可靠的区间大小值(同时优选地,如果概率索引在第一范围内,则不将移位运算应用于基本查找表的元素)。因此,针对在第一范围内和在第二范围内的“对应的”概率索引提供的区间大小值主要通过比特移位(除了可能的舍入以外)而不同。这通常对于概率索引值的范围或甚至对于完整的“第一范围”(通常包括多于两个不同值)是成立的。此外,应注意的是,右移运算通常对应于通过2的效能的除法。
在优选实施例中,概率索引(Qp2(pLPS))确定查找表的元素是否经被提供作为区间大小值(RLPS),或者查找表的元素是否被缩放并舍入以获得区间大小值(RLPS)。
由于概率索引(或者更具体地,概率索引在第一范围内还是在第二范围内的问题)决定是否应用缩放(并且可选地,舍入)以基于查找表(基本查找表)的元素获得区间大小值,因此算法可以保持非常简单。例如,可以通过概率索引除以预定值或通过概率索引与一个或多个阈值比较很容易地执行概率索引是位于第一范围内还是位于第二范围内的检查。因此,可以基于概率索引容易地决定是否应执行缩放(并且可以选地,舍入)。因此,用于导出区间大小值的概念非常高效。
在该算术编码器的优选实施例中,概率索引(i)与第一大小值(例如,μ;其中,该大小值例如描述基本查找表在第一方向上的扩展)之间的除法的除法残差(i%μ)和区间大小索引(例如,可以例如使用量化运算Qr2(.)来基于区间大小信息或总区间大小信息R获得)确定基本查找表的哪个元素用于获得区间大小值。
通过取决于除法残差并且也取决于区间大小索引而选择基本查找表的条目,可以较容易地评估二维基本查找表,其中,二维基本查找表的元素可以包含与区间大小值的乘法(可以由区间大小索引表示)。因此,可以通过具有二维基本查找表来省去与区间大小值的乘法(其中,除法残差可以用作第一表索引,并且其中,区间大小索引可以充当第二表索引)。此外,使用除法残差作为第一表索引很好地适应于如下事实:基本查找表的元素随着概率索引增加而被循环地选择(因为概率索引的后续范围选择基本查找表的共同范围)。总之,上述实现允许非常简单地存取基本查找表的元素且由于基本查找表的二维性质而有助于避免与区间大小值的乘法。
在优选实施例中,该算术编码器被配置为根据下式来获得所述区间大小值RXPS(例如,RLPS):
Figure BDA0002965036250000351
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息(例如,总区间大小信息R)相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000352
Figure BDA0002965036250000353
其中
Figure BDA0002965036250000354
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
已发现,用于确定构成区间大小信息的区间大小值的这样的概念在计算上高度有效并允许使用相对较小的基本查找表。具体地,可以避免乘法运算。此外,除法残差运算和除法运算也可以以在计算上非常有效的方式实现,例如,在尺寸μ是2的效能的情况下。因此,用于导出区间大小值的所描述的概念允许在计算上的非常高效的实施。
在优选实施例中,该算术编码器被配置为基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前编码的符号值(例如,二进制值0和1的序列)的统计;其中,该算术编码器被配置为基于根据一个或多个状态变量值而导出的(当前)概率值和基于(当前)编码区间大小(R)来使用概率表(Prob TabLPS)确定区间大小值(RLPS),(该概率表的尺寸就概率索引而言小于可能概率索引i的数量),其中,概率表描述了用于一组多个概率值(例如,用于在0与μ-1之间的概率索引)和用于(单一)给定(参考)编码区间大小的区间大小(区间大小值),并且其中,该算术编码器被配置为对概率表(Prob_TabLPS)的元素(例如,取决于当前概率值而选择的元素)进行缩放,以在当前概率值不在该组多个概率值中(例如,与当前概率值相关联的概率索引大于或等于μ)的情况下和/或在当前编码区间大小(R)与给定编码区间大小不同的情况下获得区间大小值(RLPS);以及其中,所述算术编码器被配置为使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术编码。
该概念基于如下思想:与概率值(或者,概率索引)的不同(非重叠)范围相关联的区间大小值实质上通过缩放运算(除了可能的舍入作用以外)相关。也应注意的是,如果适当地选择查找表(概率表)的大小,则缩放运算例如可以以在计算上有效的方式(例如,使用比特移位运算)来实现。因此,可以以较小的计算工作量且也仅使用节省存储器的大小较小的查找表来导出用于算术编码(编码或解码)的区间大小值。
在优选实施例中,该算术编码器被配置为使用取决于(当前)编码区间大小(R)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放和使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组多个概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的第一缩放的结果的第二缩放来获得区间大小值。
通过使用二步乘法或缩放,为了获得区间大小信息,允许使用小概率表。例如,概率表可以仅“直接”覆盖单一编码区间大小和概率值的给定的相对较小范围(可以由“该组多个概率值”表示)。因此,对于任何其他的编码区间大小且对于不包括在“直接”被概率表覆盖的该组多个概率值中的任何概率值,执行缩放,使得获得有意义的且可靠的区间大小值。
在该算术编码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000374
确定在第二缩放中使用的缩放因子
Figure BDA0002965036250000375
和/或其中,编码区间大小(R)确定第一缩放的乘法缩放因子(Qr2(R))。
使用除法残差来确定对概率的哪个元素进行缩放有助于利用概率表的条目随着概率索引增加而重复使用(例如,以循环方式)的事实。使用除法残差表现该事实。而且,在一些状况下可以以极高计算效率计算除法残差,尤其在通过2的效能进行除法的情况下。
此外,通过基于整数除法结果来确定缩放因子允许容易地将缩放因子分配给概率索引值的不同(邻近)范围。此外,在一些状况下可以以在计算上高效的方式计算整数除法结果,尤其在通过2的效能(potency)进行除法的情况下。
此外,取决于编码区间大小而确定乘法缩放因子反映了区间大小值随着编码区间大小而缩放的事实。因此,可以以高效率和高准确度获得区间大小值。
在优选实施例中,该算术编码器被配置为根据下式来获得所述区间大小值RXPS(例如,RLPS):
Figure BDA0002965036250000371
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,i的值的范围通常大于μ);其中,R是区间大小(例如,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000372
其中
Figure BDA0002965036250000373
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
用于确定区间大小值的这样的算法已被发现在计算上是有效的并提供良好质量的结果。概率表可以相对较小,并且缩放函数可以以在计算上有效的方式例如使用一个或多个比特移位运算来实现。
在优选实施例中,该算术编码器被配置为使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放并使用取决于编码区间大小(R)的第一缩放的结果的第二缩放来获得区间大小信息。
在该概念中,在与上述概念相比时,颠倒了第一缩放和第二缩放的处理顺序。然而,基本考虑保持相同。
在优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000381
确定在第一缩放中使用的缩放因子(例如,
Figure BDA0002965036250000382
Figure BDA0002965036250000383
);和/或其中,(当前)编码区间大小(R)确定第二缩放的乘法缩放因子(Qr2(R))。
在该概念中,在与上述概念相比时,颠倒了第一缩放和第二缩放的顺序。然而,基本考虑保持不变。
在优选实施例中,该算术编码器被配置为根据下式来获得所述区间大小值RXPS(例如,RLPS):
Figure BDA0002965036250000384
其中,i是与概率信息相关联的表索引;其中,j是与(当前)区间大小信息相关联的表索引;其中,%是除法残差运算;其中/是除法运算(例如,提供整数结果);其中,probTabLPS[]是所述概率表;其中,μ是概率表中的多个元素(其中,i的取值的范围通常大于μ);其中,R是区间大小(例如,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000391
其中
Figure BDA0002965036250000392
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在该概念中,在与上述实现相比时,颠倒了第一缩放和第二缩放的缩放顺序。然而,基本的根本思想保持不变。
以下,将描述与算术解码有关的多个实施例。然而,与算术解码有关的这些思想背后的思想、考虑和细节与用于算术编码的概念背后的思想、考虑和细节实质上相同。因此,以上解释也以类似的方式适用。然而,要编码的符号值对应于要解码的符号值或先前解码的符号,并且先前编码的符号值对应于先前解码的符号值。此外,对于本领域技术人员而言,编码特征与解码特征之间的对应性是显而易见的,并且从权利要求措辞的比较中也是显而易见的。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的算术解码器,其中,该算术解码器被配置为基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前解码的符号值(例如,二进制值0和1的序列)的统计,其中,该算术解码器被配置为使用基本查找表(Base TabLPS)来确定区间大小值(RLPS),(基本查找表的尺寸就概率索引而言小于可能概率索引i的数量),其中,该算术解码器被配置为确定区间大小值(RLPS),使得如果基于一个或多个状态变量值而获得的概率索引(i)(例如,如i=Qp(pLPS))在第一范围内(例如,小于μ),则确定的区间大小值与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且使得如果概率索引在第二范围内(例如,大于或等于μ),则使用基本查找表的元素的缩放和舍入来获得确定的区间大小值;以及其中,所述算术解码器被配置为使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术解码。
在优选实施例中,该算术解码器被配置为确定区间大小值,使得如果概率索引在第二范围内,则确定的区间大小值(RLPS)是基本查找表的元素的右移版本。
在该算术解码器的优选实施例中,概率索引(Qp2(pLPS))确定查找表的元素是否经被提供作为区间大小值(RLPS),或者查找表的元素是否被缩放并舍入以获得区间大小值(RLPS)。
在该算术解码器的优选实施例中,概率索引(i)与第一大小值(例如,μ;其中,该大小值例如描述基本查找表在第一方向上的扩展)之间的除法的除法残差(i%μ)和区间大小索引(例如,可以例如使用量化运算Qr2(.)来基于区间大小信息或总区间大小信息R获得)确定基本查找表的哪个元素用于获得区间大小值。
在优选实施例中,该算术解码器被配置为根据下式来获得所述区间大小值RXPS(例如,RLPS):
Figure BDA0002965036250000401
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息(例如,总区间大小信息R)相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000402
Figure BDA0002965036250000403
其中
Figure BDA0002965036250000404
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的算术解码器,其中,该算术解码器被配置为基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前解码的符号值(例如,二进制值0和1的序列)的统计,其中,该算术解码器被配置为基于根据一个或多个状态变量值而导出的(当前)概率值和基于(当前)编码区间大小(R)来使用概率表(Prob TabLPS)确定区间大小值(RLPS),(该概率表的尺寸就概率索引而言小于可能概率索引i的数量),其中,概率表描述了用于一组多个概率值(例如,用于在0与μ-1之间的概率索引)和用于(单一)给定(参考)编码区间大小的区间大小(区间大小值),并且其中,该算术解码器被配置为对概率表(Prob_TabLPS)的元素(例如,取决于当前概率值而选择的元素)进行缩放,以在当前概率值不在该组多个概率值中(例如,与当前概率值相关联的概率索引大于或等于μ)的情况下和/或在当前编码区间大小(R)与给定编码区间大小不同的情况下获得区间大小值[RLPS);以及其中,所述算术解码器被配置为使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术解码。
在优选实施例中,该算术解码器被配置为使用取决于(当前)编码区间大小(R)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放和使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组多个概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的第一缩放的结果的第二缩放来获得区间大小值。
在该算术解码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000411
确定在第二缩放中使用的缩放因子
Figure BDA0002965036250000412
和/或其中,编码区间大小(R)确定第一缩放的乘法缩放因子(Qr2(R))。
在优选实施例中,该算术解码器被配置为根据下式来获得所述区间大小值RXPS(例如,RLPS):
Figure BDA0002965036250000413
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,i的值的范围通常大于μ);其中,R是区间大小(例如,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000421
其中
Figure BDA0002965036250000422
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在优选实施例中,该算术解码器被配置为使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放并使用取决于编码区间大小(R)的第一缩放的结果的第二缩放来获得区间大小信息。
在该算术解码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000423
确定在第一缩放中使用的缩放因子(例如,
Figure BDA0002965036250000424
Figure BDA0002965036250000425
);和/或其中,(当前)编码区间大小(R)确定第二缩放的乘法缩放因子(Qr2(R))。
在优选实施例中,该算术解码器被配置为根据下式来获得所述区间大小值RXPS(例如,RLPS):
Figure BDA0002965036250000426
其中,i是与概率信息相关联的表索引;其中,j是与(当前)区间大小信息相关联的表索引;其中,%是除法残差运算;
其中/是除法运算(例如,提供整数结果);其中,probTabLPS[]是所述概率表;其中,μ是概率表中的多个元素(其中,i的取值的范围通常大于μ);其中,R是区间大小(例如,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000427
其中
Figure BDA0002965036250000428
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
以下,将讨论与算术编码有关的一些另外的实施例。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的算术编码器,其中,该算术编码器被配置为确定一个状态变量值(sk),该一个状态变量值表示多个先前编码的符号值的统计,并且其中,该算术编码器被配置为:根据组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000431
来计算用于要编码的符号值的算术编码的子区间宽度值(RLPS),所述计算是通过使用其条目包括用于组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000432
的值域的不同值区间的概率值的一维查找表(probTabLPS[Qp2(...)])将一个状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000433
映射到概率值上;并且将在要编码的符号的算术编码之前描述算术编码的编码区间的大小的编码区间大小信息(例如,R)量化到量化等级(Qr2(R))上;确定概率值与量化等级之间的乘积(通过预计算乘积的查找或通过乘法),其中,该算术编码器被配置为取决于要编码的符号值而执行状态变量值更新。
该实施例基于非常简单的一维查找表可以用于基于组合状态变量值来确定子区间宽度值的发现。通过量化的编码区间大小信息并通过确定概率值与量化值(或者,量化等级)之间的乘积来考虑编码区间大小。因此,可以在中等工作量的情况下获得可靠结果。
在优选实施例中,该算术编码器被配置为基于多个状态变量值(si k)(例如,二进制值0和1的序列)(例如,在多个状态变量值的情况下,为具有不同适应时间常数的统计)来导出作为一个状态变量值(sk)的组合状态变量值(例如可以是状态变量值的加权和),该多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值(例如,二进制值0和1的序列)的统计。
已发现,使用组合状态变量值作为一个状态变量值带来了尤其良好的结果。对不同适应时间常数的考虑允许考虑短时间统计和长时间统计二者,从而使得子区间宽度值尤其可靠。
在优选实施例中,该算术编码器被配置为确定状态变量值的加权和,以便获得组合状态变量值。
组合状态变量值的这样的计算允许考虑短期统计和长期统计对组合状态变量值的不同影响,同时使计算工作量保持相当地少。
在优选实施例中,该算术编码器被配置为确定舍入值
Figure BDA0002965036250000441
的总和,以便获得组合状态变量值(sk),该舍入值是通过对状态变量值
Figure BDA0002965036250000442
与相关联的加权值
Figure BDA0002965036250000443
)的乘积进行舍入而获得的。
在求和之前应用舍入运算会缩减计算工作量并消除了状态变量值与相关联的加权值的极小乘积的影响。因此,增加了可靠性。
在优选实施例中,该算术编码器被配置为根据下式来确定组合状态变量值sk
Figure BDA0002965036250000444
其中,sk 2是状态变量值,其中,N是所考虑的状态变量值的数量,其中
Figure BDA00029650362500004416
为向下舍入算子,其中,dk i是与状态变量值相关联的加权值(例如,控制各个状态变量值对组合状态变量值的影响的加权因子)(其中,dk i优选地是von 2的整数值效能,并且其中,两个不同dk i之间的比率优选地是2的整数值效能)[其中两个不同dk i之间的比率优选地大于或等于8)。
已发现,组合状态变量值的这样的导出是尤其有利的。也参考了上文对用于确定组合状态变量值的对应的概念的解释。
在优选实施例中,该算术编码器被配置为根据下式来确定所述组合状态变量值
Figure BDA0002965036250000445
Figure BDA0002965036250000446
其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000447
是一个或多个加权值;其中,
Figure BDA0002965036250000448
是一个或多个加权值,其中,A是
Figure BDA0002965036250000449
Figure BDA00029650362500004410
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure BDA00029650362500004411
脱离预定值范围,(例如,考虑到
Figure BDA00029650362500004412
具有大于
Figure BDA00029650362500004413
的值域;即,
Figure BDA00029650362500004414
被准量化到
Figure BDA00029650362500004415
上;对于
Figure BDA0002965036250000451
的极值,
Figure BDA0002965036250000452
可能根据上式由未修改的A修改而脱离其值域;为避免该情形,与这些极值相对应的条目可以缩减或置零);其中,offset、
Figure BDA0002965036250000453
Figure BDA0002965036250000454
是预定参数(上文阐述了示例)。
已发现,状态变量值的这样的更新是尤其有利的。也参考了上文对关于用于更新状态变量的该概念的解释。
在优选实施例中,该算术编码器被配置为通过表查找或以计算方式导出
Figure BDA0002965036250000455
关于该概念,参考了以上解释。
在优选实施例中,该算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000456
Figure BDA0002965036250000457
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000458
是一个或多个加权值;其中,
Figure BDA0002965036250000459
是一个或多个加权值。
关于用于更新一个或多个状态变量值的该概念的优点,参考了以上解释。
在优选实施例中,该算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA00029650362500004510
Figure BDA00029650362500004511
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA00029650362500004512
是一个或多个加权值;其中,
Figure BDA00029650362500004513
是一个或多个加权值。
关于用于更新一个或多个状态变量值的该概念的优点,参考了以上解释。
在优选实施例中,该算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA00029650362500004514
Figure BDA00029650362500004515
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000461
是一个或多个加权值;其中,
Figure BDA0002965036250000462
是一个或多个加权值。
关于用于更新一个或多个状态变量值的该概念的优点,参考了以上解释。
在优选实施例中,该算术编码器被配置为通过将逻辑右移应用于编码区间大小信息来执行对编码区间大小信息进行量化。
编码区间大小信息的逻辑右移在计算上是高效的。
在优选实施例中,该算术编码器被配置为通过
Figure BDA0002965036250000463
Figure BDA0002965036250000464
来执行对编码区间大小信息R进行量化,其中u、v和w是参数。
关于编码区间大小信息的该量化的优点,参考了以上讨论。
在该算术编码器的优选实施例中,一维查找表的条目随着一个状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000465
的增加而单调地减少。
关于一维查找表的该结构的优点,参考了以上论述。
在该算术编码器的优选实施例中,其中,用于一个状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000466
的值域的不同值区间大小相等。
关于该概念的优点,参考了以上论述。
在该算术编码器的优选实施例中,一维查找表的条目随着一个状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000467
的增加而以递减速率单调地减少。
关于该概念的优点,参考了以上论述。
在下文中,将描述用于算术解码的概念,这对应于上述用于算术编码的概念。因此,相同解释也适用,并且可选地使用上文所描述的相同细节。然而,应注意的是,算术编码器对应于算术解码器。此外,先前编码的符号值通常对应于先前解码的符号值,并且要编码的符号值可以通常对应于先前解码的符号值(或者,对应于要解码的符号值)。然而,关于特征的对应性,也参考了关于定义相关(或者,对应的)概念的对应的权利要求的比较。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的算术解码器,根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的算术解码器,其中,该算术解码器被配置为基于多个状态变量值(si k)(例如,与给定上下文模型相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值(例如,二进制值0和1的序列)的统计(例如,一个或多个要解码的符号包括某些符号值的概率的估计),其中,该算术解码器被配置为使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure BDA0002965036250000471
并使用查找表(LUT1)来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure BDA0002965036250000472
以便获得描述用于一个或多个要解码的符号的算术解码的区间大小的所述区间大小信息(例如,pk或R*pk)。
在优选实施例中,该算术解码器被配置为使用查找表将第一状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000473
映射到第一概率值(pk 1)上,并且其中,该算术解码器被配置为使用查找表将第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000474
映射到第二概率值(pk 2)上,并且其中,该算术解码器被配置为使用第一概率值和第二概率值来获得组合概率值(pk)(例如,使用加权求和或使用加权平均)。
在优选实施例中,该算术解码器被配置为如果解码的符号取第一值(例如,“1”),则将该状态变量值改变为第一方向(例如,变得更加正向),并且如果解码的符号取与第一值不同的第二值(例如,“0”),则将该状态变量值改变为第二方向(例如,变得更加负向)(例如,使得该状态变量值可以取正值和负值),其中,该算术解码器被配置为取决于各个状态变量值的绝对值(如果sk i>0,则是sk i,否则是-sk i)(例如,取决于该状态变量值的绝对值的缩放和舍入版本)来确定要评估的查找表的条目。
在优选实施例中,该算术解码器被配置为如果第一状态变量值取第一符号(例如,正号),则将第一概率值(pk 1)设置为由查找表提供的值(例如,为
Figure BDA0002965036250000475
),并且其中,该算术解码器被配置为如果第一状态变量值取第二符号(例如,负号),则将第一概率值(pk 1)设置为通过从预定值(例如,1)中减去由查找表提供的值而获得的值(例如,为
Figure BDA0002965036250000481
)。
在优选实施例中,该算术解码器被配置为根据下式来确定两个或更多个概率值pk i
Figure BDA0002965036250000482
其中,LUT1是包含概率值的查找表;其中,
Figure BDA0002965036250000483
是向下舍入算子;其中,sk i是第i个状态变量值;以及其中,ak i是与第i个状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
在优选实施例中,该算术解码器被配置为根据下式来确定两个或更多个概率值pk i
Figure BDA0002965036250000484
其中,LUT1是包含概率值的查找表;其中,
Figure BDA0002965036250000485
是向下舍入算子;其中,sk i是第i个状态变量值;以及其中,ak i是与第i个状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
在优选实施例中,该算术解码器被配置为根据下式来基于多个概率值pk i获得组合概率值pk
Figure BDA0002965036250000486
其中,N为所考虑的概率值的数量(并且可以等于所考虑的状态变量值的数量);以及其中,bk i是加权值(例如,控制各个状态变量值对组合概率值的影响的加权因子)[其中,bk i优选地是von 2的整数值效能,并且其中,两个不同bk i之间的比率优选地为2的整数值效能)。
在优选实施例中,该算术解码器被配置为使用二维查找表将第一状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000487
映射到第一区间宽度值(R*pk 1)上,该二维查找表的条目取决于第一状态变量值并取决于描述算术解码在符号的解码之前的编码区间的大小的编码区间大小信息(例如,R)而寻址。
其中,该算术解码器被配置为使用二维查找表将第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000491
映射到第二区间宽度值(R*pk 2)上,该二维查找表的条目取决于第二状态变量值并取决于描述算术解码在符号的解码之前的编码区间的大小的编码区间大小信息(例如,R)而寻址。其中,所述算术解码器被配置为使用所述第一子区间宽度值和所述第二子区间宽度值来获得组合的子区间宽度值(例如,使用加权求和或使用加权平均)。
在该算术解码器的优选实施例中,二维查找表可表示为如下二者之间的二元乘积:第一一维向量(形成一维查找表)和第二一维向量(Qr2(R)),,第一一维向量的条目包括第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000492
的值域的不同值区间的概率值;第二一维向量的条目包括用于编码区间大小信息的量化等级。
在该算术解码器的优选实施例中,二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)而定义的,其中,二维查找表的第一组元素(或者,块;例如,“上半部分”)与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且其中,二维查找表的第二组元素(或者,块;例如,“下半部分”)是基本查找表的元素的缩放和舍入版本。
在该算术解码器的优选实施例中,二维查找表的第二组元素是基本查找表的元素的右移版本。
在该算术解码器的优选实施例中,概率索引(Qp2(PLPS)或i)确定评估二维查找表的第一组元素的元素还是评估二维查找表的第二组元素的元素,其中,概率索引(例如,通过量化概率值(例如,pLPS而获得)的第一范围(例如,在0与μ-1之间)与第一组元素的元素相关联,并且其中,概率索引(例如,通过例如使用量化函数Qp2(.)来量化概率值(例如,pLPS)而获得)的第二范围(例如,大于或等于μ)与第二组元素的元素相关联。
在该算术解码器的优选实施例中,概率索引(i)与第一大小值(例如,μ;其中,该大小值例如描述基本查找表在第一方向上的扩展)之间的除法的除法残差(i%μ)和区间大小索引(例如,可以例如使用量化运算Qr2(.)(例如,j)来基于区间大小信息R获得;)确定基本查找表的哪个元素用于获得二维查找表的元素。
在优选实施例中,该算术解码器被配置为根据下式来获得二维查找表(RangTabLPS)的元素:
Figure BDA0002965036250000501
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息(例如,描述当前编码区间大小)相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000502
其中
Figure BDA0002965036250000503
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在该算术解码器的优选实施例中,基于概率表(probTabLPS)来定义二维查找表(RangTabLPS)的元素,其中,概率表描述用于一组多个概率值(例如,由索引i表示)和用于给定(参考)编码区间大小的区间大小,并且其中,使用缩放来从该概率表中导出用于不在该组多个概率值中的概率值和/或用于与该给定编码区间大小不同的编码区间大小的二维查找表的元素。
在该算术解码器的优选实施例中,使用取决于编码区间大小(R)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放和使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的第一缩放的结果的第二缩放来获得二维查找表的元素。
在该算术解码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000511
确定在第二缩放中使用的缩放因子
Figure BDA0002965036250000512
和/或其中,编码区间大小确定第一缩放的乘法缩放因子(Qr2(R))。
在优选实施例中,该算术解码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000513
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小(或者,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000514
其中
Figure BDA0002965036250000518
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在该算术解码器的优选实施例中,使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放并使用取决于编码区间大小(R)的第一缩放的结果的第二缩放来获得二维查找表的元素。
在该算术解码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差
Figure BDA0002965036250000515
确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000516
确定在第一缩放中使用的缩放因子
Figure BDA0002965036250000517
和/或其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
在优选实施例中,该算术解码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000521
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中/是除法运算(例如,提供整数结果);其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小;其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000522
其中
Figure BDA0002965036250000523
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在优选实施例中,该算术解码器被配置为:根据第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000524
来分别计算第一子区间宽度值和第二子区间宽度值(R*pk),所述计算是通过使用其条目包括用于第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000525
的值域的不同值区间的概率值的一维查找表(LUT4)将第一状态变量值和第二状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000526
映射到第一概率值和第二概率值上,并且将描述在编码符号之前的算术编码的编码区间的大小的编码区间大小信息(例如,R)量化到量化等级上;确定一方面第一概率值和第二概率值与量化等级之间的乘积(通过查找预计算的乘积,或者通过乘法);以及使用第一子区间宽度值和第二子区间宽度值来获得组合的子区间宽度值(例如,使用加权求和或使用加权平均)。
在优选实施例中,该算术解码器被配置为通过将逻辑右移应用于编码区间大小信息来执行对编码区间大小信息进行量化。
在优选实施例中,该算术解码器被配置为通过
Figure BDA0002965036250000527
Figure BDA0002965036250000528
来执行对编码区间大小信息R进行量化,其中u、v和w是参数。
在该算术解码器的优选实施例中,一维查找表的条目随着第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000531
的增加而单调地减少。
在该算术解码器的优选实施例中,用于第一状态变量值和第二状态变量值或其所述缩放和/或取舍版本
Figure BDA0002965036250000532
的值域的不同值区间大小相等。
在该算术解码器的优选实施例中,一维查找表的条目随着第一状态变量值和第二状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000533
的增加而以递减速率单调地减少。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的算术解码器,其中,该算术解码器被配置为基于多个状态变量值(si k)(该多个状态变量值例如与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值(例如,二进制值0和1的序列)的统计(例如,一个或多个要解码的符号包括某些符号值的概率的估计),其中,该算术解码器被配置为基于多个(各个)状态变量值(sk)来导出组合状态变量值(sk)(该组合变量值例如可以是状态变量值的加权和),并且其中,该算术解码器被配置为使用查找表来映射组合状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000534
以便获得描述用于一个或多个要解码的符号的算术解码的区间大小的所述区间大小信息(例如,pk或R*pk)。
在优选实施例中,该算术解码器被配置为确定状态变量值的加权和,以便获得组合状态变量值。
在优选实施例中,该算术解码器被配置为确定舍入值
Figure BDA0002965036250000535
的总和,以便获得组合状态变量值(sk),该舍入值是通过对状态变量值
Figure BDA0002965036250000536
与相关联的加权值
Figure BDA0002965036250000537
的乘积进行舍入而获得的。
在优选实施例中,该算术解码器被配置为根据下式来确定组合状态变量值sk
Figure BDA0002965036250000541
其中,sk 2是状态变量值,其中,N是所考虑的状态变量值的数量,其中
Figure BDA0002965036250000542
为向下舍入算子,其中,dk i是与状态变量值相关联的加权值(例如,控制各个状态变量值对组合状态变量值的影响的加权因子)(其中,dk i优选地是von 2的整数值效能,并且其中,两个不同dk i之间的比率优选地是2的整数值效能)[其中两个不同dk i之间的比率优选地大于或等于8)。
在优选实施例中,该算术解码器被配置为如果解码的符号取第一值(例如,“1”),则将该状态变量值改变为第一方向(例如,变得更加正向),并且如果解码的符号取与第一值不同的第二值(例如,“0”),则将该状态变量值改变为第二方向(例如,变得更加负向)(例如,使得该状态变量值可以取正值和负值),并且其中,该算术解码器被配置为依据组合状态变量值的绝对值(如果sk i>0,则是sk,否则是-sk)(例如,取决于组合状态变量值的绝对值的缩放和舍入版本)来确定要评估的查找表的条目。
在优选实施例中,该算术解码器被配置为如果组合状态变量值取第一符号(例如,正号),则将概率值(pk)设置为由查找表提供的值(例如,为
Figure BDA0002965036250000543
),并且其中,该算术解码器被配置为如果组合状态变量值取第二符号(例如,负号),则将概率值(pk)设置为通过从预定值(例如,1)中减去由查找表提供的值而获得的值(例如,为
Figure BDA0002965036250000544
在优选实施例中,该算术解码器被配置为根据下式来确定组合概率值pk
Figure BDA0002965036250000545
其中,LUT2是包含概率值的查找表;其中,
Figure BDA0002965036250000546
是向下舍入算子;其中,sk是组合变量值;以及其中,ak是与组合状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
在优选实施例中,该算术解码器被配置为根据下式来确定组合概率值pk
Figure BDA0002965036250000551
其中,LUT2是包含概率值的查找表;其中,
Figure BDA0002965036250000552
是向下舍入算子;其中,sk是组合变量值;以及其中,ak是与组合状态变量值相关联的加权值(例如,使第i个状态变量值的数字范围适用于查找表的条目的数量的加权值)。
在优选实施例中,该算术解码器被配置为使用二维查找表将组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000553
映射到子区间宽度值(R*pk)上,该二维查找表的条目取决于组合状态变量值并取决于描述算术解码在符号的解码之前的编码区间的大小的编码区间大小信息(例如,R)而寻址。
在该算术解码器的优选实施例中,二维查找表可表示为如下二者之间的二元乘积:第一一维向量(LUT4[...];形成一维查找表)和第二一维向量(Qr2(R)),第一一维向量的条目包括组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000554
的值域的不同值区间的概率值;,第二一维向量的条目包括用于编码区间大小信息的量化等级。
在该算术解码器的优选实施例中,二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)而定义的,其中,二维查找表的第一组元素(或者,块;例如,“上半部分”)与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且其中,二维查找表的第二组元素(或者,块;例如,“下半部分”)是基本查找表的元素的缩放和舍入版本。
在该算术解码器的优选实施例中,二维查找表的第二组元素是基本查找表的元素的右移版本。
在该算术解码器的优选实施例中,概率索引(Qp2(pLPS)或i)确定评估二维查找表的第一组元素的元素还是评估二维查找表的第二组元素的元素,其中,概率索引(例如,通过量化概率值(例如,pLPS而获得)的第一范围(例如,在0与μ-1之间)与第一组元素的元素相关联,并且其中,概率索引(例如,通过例如使用量化函数Qp2(.)来量化概率值(例如,pLPS)而获得)的第二范围(例如,大于或等于μ)与第二组元素的元素相关联。
在该算术解码器的优选实施例中,概率索引(i)与第一大小值(例如,μ;其中,该大小值例如描述基本查找表在第一方向上的扩展)之间的除法的除法残差(i%μ)和区间大小索引(例如,可以例如使用量化运算Qr2(.)(例如,j)来基于区间大小信息R获得;)确定基本查找表的哪个元素用于获得二维查找表的元素。
在优选实施例中,该算术解码器被配置为根据下式来获得二维查找表(RangTabLPS)的元素:
Figure BDA0002965036250000561
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息(例如,描述当前编码区间大小)相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000562
其中
Figure BDA0002965036250000563
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在该算术解码器的优选实施例中,基于概率表(probTabLPS)来定义二维查找表(RangTabLPS)的元素,其中,概率表描述用于一组多个概率值(例如,由索引i表示)和用于给定(参考)编码区间大小的区间大小,并且其中,使用缩放来从该概率表中导出用于不在该组多个概率值中的概率值和/或用于与该给定编码区间大小不同的编码区间大小的二维查找表的元素。
在该算术解码器的优选实施例中,使用取决于编码区间大小(R)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放和使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的第一缩放的结果的第二缩放来获得二维查找表的元素。
在该算术解码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差(i%μ)确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000571
确定在第二缩放中使用的缩放因子
Figure BDA0002965036250000572
和/或其中,编码区间大小确定第一缩放的乘法缩放因子(Qr2(R))。
在优选实施例中,该算术解码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000573
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中,/是除法运算;其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小(或者,当前编码区间大小);其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000574
其中
Figure BDA0002965036250000575
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在该算术解码器的优选实施例中,使用取决于与当前概率值(由索引i标示)相关联的元素是否包括在该组概率值中(例如,取决于当前概率值是否位于由概率表覆盖的概率值的范围内)的概率表的所选元素(probTabLPS[i%μ])的(乘法)第一缩放并使用取决于编码区间大小(R)的第一缩放的结果的第二缩放来获得二维查找表的元素。
在该算术解码器的优选实施例中,概率索引(例如,i;例如,表示当前概率值)与第一大小值(例如,μ;其中,该大小值例如描述概率表的扩展)之间的除法的除法残差
Figure BDA0002965036250000576
确定在第一缩放中对概率表的哪个元素进行缩放;和/或其中,概率索引(i)与第一大小值之间的除法的整数除法结果
Figure BDA0002965036250000577
确定在第一缩放中使用的缩放因子
Figure BDA0002965036250000581
和/或其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
在优选实施例中,该算术解码器被配置为根据下式来获得二维查找表的元素RangeTabLPS[i][j]:
Figure BDA0002965036250000582
其中,i是与概率信息相关联的表索引;其中,j是与区间大小信息相关联的表索引;其中,%是除法残差运算;其中/是除法运算(例如,提供整数结果);其中,probTabLPS[]是所述概率表;其中,μ是概率表的元素的数量(其中,I的值的范围通常大于μ);其中,R是区间大小;其中,Qr2(R)是取决于R的缩放因子;其中,Scal(x,y)是缩放函数(例如,被定义为
Figure BDA0002965036250000583
其中
Figure BDA0002965036250000584
是向下舍入运算,其中,a优选地是大于或等于2的常数,并且其中,b优选地是大于或等于1的常数,并且其中,缩放函数优选地使用右移比特移位运算来实现,其中,y确定是否执行x的右移并确定右移多少比特)。
在优选实施例中,该算术解码器被配置为:根据组合变量值或其缩放和/或舍入版本
Figure BDA0002965036250000585
来计算子区间宽度值(R*pk),所述计算是通过使用其条目包括用于组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000586
的值域的不同值区间的概率值的一维查找表(LUT4)将组合状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000587
Figure BDA0002965036250000588
)映射到组合概率值上,并且将描述在编码符号之前的算术编码的编码区间的大小的编码区间大小信息(例如,R)量化到量化等级上;确定组合概率值与量化等级之间的乘积(通过查找预计算的乘积,或者通过乘法)。
在优选实施例中,该算术解码器被配置为通过将逻辑右移应用于编码区间大小信息来执行对编码区间大小信息进行量化。
在优选实施例中,该算术解码器被配置为通过
Figure BDA0002965036250000589
Figure BDA00029650362500005810
来执行对编码区间大小信息R进行量化,其中u,v和w是参数。
在该算术解码器的优选实施例中,一维查找表的条目随着组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000591
的增加而单调地减少。
在该算术解码器的优选实施例中,其中,用于组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000592
的值域的不同值区间大小相等。
在该算术解码器的优选实施例中,一维查找表的条目随着组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000593
的增加而以递减速率单调地减少。
在该算术解码器的优选实施例中,查找表定义了(例如,在+/-10%或+/-20%的公差内的)指数衰减(例如,从0.5下降)。
在优选实施例中,该算术解码器被配置为根据下式来更新多个变量状态值
Figure BDA0002965036250000594
Figure BDA0002965036250000595
其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000596
是一个或多个加权值;其中,
Figure BDA0002965036250000597
是一个或多个加权值,其中,A是
Figure BDA0002965036250000598
Figure BDA0002965036250000599
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure BDA00029650362500005910
脱离预定值范围,(例如,考虑到
Figure BDA00029650362500005911
具有大于
Figure BDA00029650362500005912
的值域;即,
Figure BDA00029650362500005913
被准量化到
Figure BDA00029650362500005914
上;对于
Figure BDA00029650362500005915
的极值,
Figure BDA00029650362500005916
可能根据上式由未修改的A修改而脱离其值域;为避免该情形,与这些极值相对应的条目可以缩减或置零);其中,offset、
Figure BDA00029650362500005917
Figure BDA00029650362500005918
是预定参数(上文阐述了示例)。
在优选实施例中,该算术解码器被配置为通过表查找或以计算方式导出
Figure BDA00029650362500005919
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的算术解码器,其中,该算术解码器被配置为确定一个或多个状态变量值(s1k,s2k),该一个或多个状态变量值表示多个先前解码的符号值(例如,二进制值0和1的序列)的统计(例如,一个或多个要解码的符号包括某些符号值的概率的估计)(例如,在多个状态变量值被确定的情况下,为具有不同适应时间常数的统计),并且其中,该算术解码器被配置为基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),该一个或多个状态变量值表示多个先前解码的符号值(例如,二进制值0和1的序列)的统计(例如,在多个状态变量值被确定的情况下,为具有不同适应时间常数的统计),其中,该算术解码器被配置为取决于解码的符号并使用查找表(A)来更新第一状态变量值(sk1)(例如,在对解码的符号进行解码之后)。
在优选实施例中,该算术解码器被配置为取决于解码的符号并使用所述查找表(A)(例如,在对解码的符号进行解码之后)来更新第二状态变量值(sk 2)。
在优选实施例中,该算术解码器被配置为使用不同适应时间常数来更新第一状态变量值和第二状态变量值。
在优选实施例中,该算术解码器被配置为取决于解码的符号是取第一值还是与第一值不同的第二值将先前状态变量值选择性地增大或减小使用查找表而确定的值。
在优选实施例中,该算术解码器被配置为当与先前状态变量值在解码的符号取第一值的情况下为正相比,在先前状态变量值为负的情况下将先前状态变量值增加相对较大的值;以及其中,该算术解码器被配置为当与先前状态变量值在解码的符号取与第一值不同的第二值的情况下为负相比,在先前状态变量值为正的情况下将先前状态变量值减小相对较大的值(这是例如通过查找表的适当选择来获得的)。
在优选实施例中,该算术解码器被配置为如果解码的符号取第一值,则取决于预定(例如,固定)偏移值(z)与先前计算的第一状态变量值
Figure BDA0002965036250000601
或其缩放和/或舍入版本
Figure BDA0002965036250000602
的总和来确定更新第一状态变量值时评估的查找表的条目的索引;以及其中,该算术解码器被配置为如果解码的符号取第二值,则确定当取决于预定(例如,固定)偏移值(z)与先前计算的第一状态变量值的取反(乘以-1)版本
Figure BDA0002965036250000603
或其(例如,先前计算的第一状态变量值的取反版本的)缩放和/或舍入版本
Figure BDA0002965036250000604
的总和而更新所述第一状态变量值时评估的所述查找表的条目的索引。
在优选实施例中,该算术解码器被配置为如果解码的符号取第一值,则取决于预定(例如,固定)偏移值(z)与先前计算的第二状态变量值
Figure BDA0002965036250000611
或其缩放和/或舍入版本
Figure BDA0002965036250000612
的总和来确定更新第二状态变量值时评估的查找表的条目的索引;以及其中,该算术解码器被配置为如果解码的符号取第二值,则取决于预定(例如,固定)偏移值(z)与先前计算的第二状态变量值的取反(乘以-1)版本
Figure BDA0002965036250000613
或其(例如,先前计算的第二状态变量值的取反版本的)缩放和/或舍入版本
Figure BDA0002965036250000614
的总和来确定更新所述第二状态变量值时评估的所述查找表的条目的索引。
在优选实施例中,该算术解码器被配置为在确定当更新第一状态变量值时评估的查找表的条目的索引时应用第一缩放值(mk 1),以对先前计算的第一状态变量值(sk 1)进行缩放,并且其中,该算术解码器被配置为在确定当更新第二状态变量值时评估的查找表的条目的索引时应用第二缩放值(mk 2),以对先前计算的第二状态变量值(sk 2)进行缩放,其中,第一缩放值与第二缩放值不同(并且其中,第一缩放值和第二缩放值优选地是2的整数效能,并且其中,第一缩放值与第二缩放值之间的比率优选地是2的整数效能,其中该第一缩放值和该第二缩放值最好相差为至少8的因子)。
在优选实施例中,该算术解码器被配置为在更新所述第一状态变量值时使用第一缩放值(例如,nk 1)对通过所述查找表的评估返回的值进行缩放,
其中,该算术解码器被配置为在更新第二状态变量值时使用第二缩放值(例如,nk 2)对通过查找表的评估返回的值进行缩放,其中,第一缩放值与第二缩放值不同。
在优选实施例中,该算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000615
Figure BDA0002965036250000616
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000617
是一个或多个加权值;其中,
Figure BDA0002965036250000618
是一个或多个加权值。
在优选实施例中,该算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000621
Figure BDA0002965036250000622
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000623
是一个或多个加权值;其中,
Figure BDA0002965036250000624
是一个或多个加权值。
在优选实施例中,该算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000625
Figure BDA0002965036250000626
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000627
是一个或多个加权值;其中,
Figure BDA0002965036250000628
是一个或多个加权值。
在优选实施例中,该算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000629
Figure BDA00029650362500006210
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA00029650362500006211
是一个或多个加权值;其中,
Figure BDA00029650362500006212
是一个或多个加权值。
在该算术解码器的优选实施例中,A的条目随着查找表索引增加而单调地减少。
在该算术解码器的优选实施例中,A是
Figure BDA00029650362500006213
Figure BDA00029650362500006214
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure BDA00029650362500006215
脱离预定值范围,(例如,考虑到
Figure BDA00029650362500006216
具有大
Figure BDA00029650362500006217
的值域;即,
Figure BDA00029650362500006218
被准量化到
Figure BDA00029650362500006219
上;对于
Figure BDA00029650362500006220
的极值,
Figure BDA00029650362500006221
可能根据上式由未修改的A修改而脱离其值域;为避免该情形,与这些极值相对应的条目可以缩减或置零);其中,offset、
Figure BDA00029650362500006222
Figure BDA00029650362500006223
是预定参数(上文阐述了示例)。
在该算术解码器的优选实施例中,查找表的最后一个条目(在第一状态变量值实现延伸到最大可允许值的预定值范围时或第一状态变量值超过预定阈值时)等于零。
在优选实施例中,该算术解码器被配置为将限幅运算应用于更新状态变量值,以使更新且限幅的状态变量值保持在预定值范围内。
在优选实施例中,该算术解码器被配置为根据下式将限幅运算应用于更新状态变量值
Figure BDA0002965036250000631
其中,
Figure BDA0002965036250000632
是用于
Figure BDA0002965036250000633
的最大允许值,并且其中,
Figure BDA0002965036250000634
是用于
Figure BDA0002965036250000635
的最小允许值。
在优选实施例中,该算术解码器被配置为应用用于不同的上下文模型的不同的缩放值(例如,使得两个不同的上下文模型之间的缩放值中的至少一个不同)。
在优选实施例中,该算术解码器被配置为获得如在以上实施例之一中定义的区间大小信息。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的算术解码器,其中,该算术解码器被配置为确定一个状态变量值(sk),该一个状态变量值表示多个先前解码的符号值的统计,并且其中,该算术解码器被配置为根据组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000636
来计算用于要解码的符号值的算术解码的子区间宽度值(RLPS),所述计算是通过使用其条目包括用于组合状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000637
的值域的不同值区间的概率值的一维查找表(probTabLPS[Qp2(...)])将一个状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000638
映射到组合概率值上,并且将在要编码的符号值的算术解码之前描述算术编码的编码区间的大小的编码区间大小信息(例如,R)量化到量化等级(Qr2(R))上;确定概率值与量化等级之间的乘积(通过预计算乘积的查找或通过乘法),其中,该算术解码器被配置为取决于要解码的(实际解码)符号值而执行状态变量值更新。
在优选实施例中,该算术解码器被配置为基于多个状态变量值(si k)(例如,二进制值0和1的序列)(例如,在多个状态变量值的情况下,为具有不同适应时间常数的统计)来导出作为一个状态变量值(sk)的组合状态变量值(例如可以是状态变量值的加权和),该多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值(例如,二进制值0和1的序列)的统计。
在优选实施例中,该算术解码器被配置为确定状态变量值的加权和,以便获得组合状态变量值。
在优选实施例中,该算术解码器被配置为确定舍入值
Figure BDA0002965036250000641
的总和,以便获得组合状态变量值(sk),该舍入值是通过对状态变量值
Figure BDA0002965036250000642
与相关联的加权值
Figure BDA0002965036250000643
的乘积进行舍入而获得的。
在优选实施例中,该算术解码器被配置为根据下式来确定组合状态变量值sk
Figure BDA0002965036250000644
其中,sk 2是状态变量值,其中,N是所考虑的状态变量值的数量,其中
Figure BDA00029650362500006418
为向下舍入算子,其中,dk i是与状态变量值相关联的加权值(例如,控制各个状态变量值对组合状态变量值的影响的加权因子)(其中,dk i优选地是von 2的整数值效能,并且其中,两个不同dk i之间的比率优选地是2的整数值效能)[其中两个不同dk i之间的比率优选地大于或等于8)。
在优选实施例中,该算术解码器被配置为根据下式来确定所述组合状态变量值
Figure BDA0002965036250000645
Figure BDA0002965036250000646
其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000647
是一个或多个加权值;其中,
Figure BDA0002965036250000648
是一个或多个加权值,其中,A是
Figure BDA0002965036250000649
Figure BDA00029650362500006410
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure BDA00029650362500006411
脱离预定值范围,(例如,考虑到
Figure BDA00029650362500006412
具有大于
Figure BDA00029650362500006413
的值域;即,
Figure BDA00029650362500006414
被准量化到
Figure BDA00029650362500006415
上;对于
Figure BDA00029650362500006416
的极值,
Figure BDA00029650362500006417
可能根据上式由未修改的A修改而脱离其值域;为避免该情形,与这些极值相对应的条目可以缩减或置零);其中,offset、
Figure BDA0002965036250000651
Figure BDA0002965036250000652
是预定参数(上文阐述了示例)。
在优选实施例中,该算术解码器被配置为通过表查找或以计算方式导出
Figure BDA0002965036250000653
在优选实施例中,该算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000654
Figure BDA0002965036250000655
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA0002965036250000656
是一个或多个加权值;其中,
Figure BDA0002965036250000657
是一个或多个加权值。
在优选实施例中,该算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA0002965036250000658
Figure BDA0002965036250000659
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA00029650362500006510
是一个或多个加权值;其中,
Figure BDA00029650362500006511
是一个或多个加权值。
在优选实施例中,该算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure BDA00029650362500006512
Figure BDA00029650362500006513
其中A是查找表(例如,包括整数值),其中,z是预定(常数)偏移值;其中,
Figure BDA00029650362500006514
是一个或多个加权值;其中,
Figure BDA00029650362500006515
是一个或多个加权值。
在优选实施例中,该算术解码器被配置为通过将逻辑右移应用于编码区间大小信息来执行对编码区间大小信息进行量化。
在优选实施例中,该算术解码器被配置为通过
Figure BDA00029650362500006516
Figure BDA00029650362500006517
来执行对编码区间大小信息R进行量化,其中u、v和w是参数。
在该算术解码器的优选实施例中,一维查找表的条目随着一个状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000661
的增加而单调地减少。
在该算术解码器的优选实施例中,其中,用于一个状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000662
的值域的不同值区间大小相等。
在该算术解码器的优选实施例中,一维查找表的条目随着一个状态变量值或其缩放和/或舍入版本
Figure BDA0002965036250000663
的增加而以递减速率单调地减少。
根据本发明的实施例创建了一种视频编码器,其中,该视频编码器被配置为对多个视频帧进行编码,其中,该视频编码器包括根据以上实施例之一的算术编码器,该算术编码器基于表示视频内容的二进制值的序列来提供编码的二进制序列。
应注意的是,本文中所论述的算术编码器很好地适用于视频编码器内。在该情况下,要编码的符号和/或先前编码的符号可以是视频比特流的符号。例如,要编码的符号和/或先前编码的符号可以表示辅助信息或控制信息的比特和/或表示视频内容的编码的变换系数的比特。换言之,要编码的符号和/或先前编码的符号可以表示信息中的任一者,该信息包括到用于表示视频内容的比特流中。然而,应注意的是,可以针对不同“上下文”(即,针对不同类型的信息)单独地确定状态变量值。例如,仅与给定类型的信息(例如,具体类型的辅助信息)相关联的比特可以促成用于获得给定组合状态变量值的给定状态变量值或状态变量值的给定集合。因此,也可以针对不同上下文(即,针对与不同类型的信息(例如,辅助信息)相关联的符号值的编码)单独地导出区间大小信息。
根据本发明的实施例创建了一种视频解码器,其中,该视频解码器被配置为对多个视频帧进行解码,其中,该视频解码器包括根据以上实施例之一的算术解码器(120;220),该算术解码器用于(例如,基于解码的符号值)基于二进制序列的编码的表示(211)来提供解码的二进制序列。
视频解码器基于与视频编码器相同的考虑。因此,以上解释也适用,其中,编码的符号或要编码的符号对应于解码的符号。
此外,应注意的是,根据本发明的另外的实施例创建了相应的方法和计算机程序。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的方法,其中,该方法包括基于多个状态变量值(si k)(该多个状态变量值例如与由索引k指示的给定上下文模式相关联)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值(例如,二进制值0和1的序列)的统计,其中,该方法包括使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure BDA0002965036250000671
并且使用查找表(LUT1)来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure BDA0002965036250000672
以便获得描述用于一个或多个要编码的符号的算术编码的区间大小的所述区间大小信息。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的方法,其中,该方法包括基于多个状态变量值(si k)(该多个状态变量值例如与由索引k指示的给定上下文模式相关联)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值(例如,二进制值0和1的序列)的统计,其中,该方法包括基于多个(各个)状态变量值(si k)来导出组合状态变量值(sk)(例如可以是状态变量值的加权和),并且其中,该方法包括使用查找表来映射组合状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000673
以便获得描述用于一个或多个要编码的符号的算术编码的区间大小的所述区间大小信息。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的方法,其中,该方法包括确定一个或多个状态变量值(sk 1,sk 2),该一个或多个状态变量值表示多个先前编码的符号值(例如,二进制值0和1的序列)的统计(例如,在多个状态变量值的情况下,为具有不同适应时间常数的统计),并且其中,该方法包括基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),该一个或多个状态变量值表示多个先前编码的符号值(例如,二进制值0和1的序列)的统计(例如,在多个状态变量值的情况下,为具有不同适应时间常数的统计),其中,该方法包括取决于要编码的符号并使用查找表(A)(例如,在对要编码的符号进行编码之后)来更新第一状态变量值(sk 1)。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的方法,其中,该方法包括基于多个状态变量值(si k)(该多个状态变量值例如与由索引k指示的给定上下文模式相关联)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值(例如,二进制值0和1的序列)(例如,对一个或多个要解码的符号包括某些符号值的概率的估计))的统计,其中,该方法包括使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure BDA0002965036250000681
并且使用查找表(LUT1)来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure BDA0002965036250000682
以便获得描述用于一个或多个要解码的符号的算术解码的区间大小的所述区间大小信息。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的方法,其中,该方法包括基于多个状态变量值(si k)(该多个状态变量值例如与由索引k指示的给定上下文模式相关联)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),该多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值(例如,二进制值0和1的序列)(例如,一个或多个要解码的符号包括某些符号值的概率的估计)的统计,其中,该方法包括基于多个(各个)状态变量值(si k)来导出组合状态变量值(sk)(例如可以是状态变量值的加权和),并且其中,该方法包括使用查找表来映射组合状态变量值(sk)或其缩放和/或舍入版本
Figure BDA0002965036250000683
以便获得描述用于一个或多个要解码的符号的算术解码的区间大小的所述区间大小信息。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的方法,其中,该方法包括确定一个或多个状态变量值(sk 1,sk 2),该一个或多个状态变量值表示多个先前解码的符号值(例如,二进制值0和1的序列)的统计(例如,一个或多个要解码的符号包括某些符号值的概率的估计)(例如,在多个状态变量值被确定的情况下,为具有不同适应时间常数的统计),并且其中,该方法包括基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),该一个或多个状态变量值表示多个先前解码的符号值(例如,二进制值0和1的序列)的统计(例如,在多个状态变量值被确定的情况下,为具有不同适应时间常数的统计),其中,该方法包括取决于解码的符号并使用查找表(A)来更新第一状态变量值(sk 1)。
根据本发明的实施例创建了一种由根据以上实施例之一的编码器和解码器执行的方法。
根据本发明的实施例创建了一种当计算机程序在计算机上运行时执行根据以上实施例之一的方法的计算机程序。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的方法,其中,该方法包括基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前编码的符号值(例如,二进制值0和1的序列)的统计;其中,该方法包括使用基本查找表(BaseTabLPS)来确定区间大小值(RLPS),(基本查找表的尺寸就概率索引而言小于可能概率索引i的数量),其中,该方法包括确定区间大小值(RLPS),使得如果基于一个或多个状态变量值而获得的概率索引(i)(例如,如i=Qp(pLPS))在第一范围内(例如,小于μ),则确定的区间大小值与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且使得如果概率索引在第二范围内(例如,大于或等于μ),则使用基本查找表的元素的缩放和舍入来获得确定的区间大小值;以及其中,所述方法包括使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术编码。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行编码的方法,其中,该方法包括基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前编码的符号值(例如,二进制值0和1的序列)的统计;其中,该方法包括基于根据一个或多个状态变量值而导出的(当前)概率值和基于(当前)编码区间大小(R)来使用概率表(Prob TabLPS)确定区间大小值(RLPS),(该概率表的尺寸就概率索引而言小于可能概率索引i的数量),其中,概率表描述了用于一组多个概率值(例如,用于在0与μ-1之间的概率索引)和用于(单一)给定(参考)编码区间大小的区间大小(区间大小值),并且其中,该方法包括对概率表(Prob_TabLPS)的元素(例如,取决于当前概率值而选择的元素)进行缩放,以在当前概率值不在该组多个概率值中(例如,与当前概率值相关联的概率索引大于或等于μ)的情况下和/或在当前编码区间大小(R)与给定编码区间大小不同的情况下获得区间大小值[RLPS);以及其中,所述方法包括使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术编码。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的方法,其中,该方法包括基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前解码的符号值(例如,二进制值0和1的序列)的统计;其中,该方法包括使用基本查找表(BaseTabLPS)来确定区间大小值(RLPS),(基本查找表的尺寸就概率索引而言小于可能概率索引i的数量),其中,该方法包括确定区间大小值(RLPS),使得如果基于一个或多个状态变量值而获得的概率索引(i)(例如,如i=Qp(pLPS))在第一范围内(例如,小于μ),则确定的区间大小值与基本查找表的元素相同或是基本查找表的元素的舍入版本,并且使得如果概率索引在第二范围内(例如,大于或等于μ),则使用基本查找表的元素的缩放和舍入来获得确定的区间大小值;以及其中,该方法包括使用区间大小值(RLPS)来执行一个或多个符号的算术解码。
根据本发明的实施例创建了一种用于对具有符号值(例如,二进制值)的多个符号进行解码的方法,其中,该方法包括基于一个或多个状态变量值(si k)(例如,与给定上下文模式相关联,由索引k指示)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS),该一个或多个状态变量值表示(例如,具有不同适应时间常数的)多个先前解码的符号值(例如,二进制值0和1的序列)的统计;其中,该方法包括基于根据一个或多个状态变量值而导出的(当前)概率值和基于(当前)编码区间大小(R)来使用概率表(Prob TabLPS)确定区间大小值(RLPS),(该概率表的尺寸就概率索引而言小于可能概率索引i的数量),其中,概率表描述了用于一组多个概率值(例如,用于在0与μ-1之间的概率索引)和用于(单一)给定(参考)编码区间大小的区间大小(区间大小值),并且其中,该方法包括对概率表(Prob_TabLPS)的元素(例如,取决于当前概率值而选择的元素)进行缩放,以在当前概率值不在该组多个概率值中(例如,与当前概率值相关联的概率索引大于或等于μ)的情况下和/或在当前编码区间大小(R)与给定编码区间大小不同的情况下获得区间大小值(RLPS);以及其中,该方法包括使用区间大小值(RLPS)来执行一个或多个符号的算术解码。
根据本发明的实施例创建了一种当计算机程序在计算机上运行时执行根据以上实施例之一的方法的计算机程序。
上述方法基于与上述装置相同的考虑。然而,应注意的是,该方法可以可选地由本文中所描述的(也关于装置的)任何特征、功能和细节补充。该方法可以可选地由所述特征、功能和细节单独或组合地补充。对于计算机程序也是如此。
附图说明
随后将参考附图来描述根据本发明的实施例,在附图中:
图1示出了根据本发明的实施例的用于对数据流中的图片进行预测性编码的装置的示意性框图;
图2示出了根据本发明的实施例的解码器的示意性框图;
图3示出了重构信号与预测残差和预测信号的组合之间的关系的示意性表示;
图4示出了根据本发明的实施例的算术编码器的示意性框图;
图5示出了根据本发明的实施例的算术解码器的示意性框图;
图6示出了根据本发明的实施例的用于确定区间大小信息的概念的示意性表示;
图7示出了根据本发明的实施例的用于确定区间大小信息的概念的示意性表示;
图8示出了根据本发明的实施例的用于确定区间大小信息的概念的示意性表示;
图9示出了根据本发明的实施例的用于确定区间大小信息的概念的示意性表示;
图10a和图10b示出了根据本发明的实施例的用于确定区间大小信息的概念的示意性表示;
图11示出了根据本发明的实施例的用于确定区间大小信息的概念的示意性表示;
图12示出了根据本发明的实施例的用于确定一个或多个更新状态变量的概念的示意性表示;
图13示出了根据本发明的实施例的用于确定区间大小值的概念的示意性表示;
图14示出了根据本发明的实施例的用于确定区间大小值的概念的示意性表示;
图14示出了根据本发明的实施例的用于确定区间大小值的概念的示意性表示;
图15示出了根据本发明的实施例的用于确定区间大小值的概念的示意性表示;
图16示出了根据本发明的实施例的视频解码器的示意性表示;以及
图17示出了根据本发明的实施例的视频解码器的示意性表示。
具体实施方式
1.根据图1的编码器
对附图的以下描述以呈现对基于块的预测性编解码器的编码器(图1)和解码器(图2)的描述开始,该基于块的预测性编解码器用于对视频的图片进行编码以便形成其中可以构建本发明的实施例的编码帧架的示例。关于图1至图3描述了各个编码器和解码器。在下文中,呈现了对本发明的概念的实施例的描述以及关于如何可以将这样的概念分别构建到图1和图2的编码器和解码器中的描述,尽管通过后续图4和之后描述的实施例也可以用于形成并不根据图1和图2的编码器和解码器下层的编码帧架来操作的编码器和解码器。
根据本发明的实施例可以包括如关于图1和图2所描述的视频编码器和视频解码器。而且,本文中所公开的概念中的任一者例如可以在如参考图1和图2所描述的熵编码器34或熵解码器50中使用。
图1示出了用于示例性地使用基于变换的残差编码将图片12预测性编码到数据流14中的装置。使用附图标记10来指示装置或编码器。图2示出了对应的解码器20,即,被配置为也使用基于变换的残差解码对来自数据流14的图片12′进行预测性解码的装置20,其中,撇号已被用于指示通过解码器20重构的图片12′就通过预测残差信号的量化而引入的编码损失而言从最初通过装置10编码的图片12偏离。图1和图2示例性地使用基于变换的预测残差编码,尽管本申请的实施例不限于此类预测残差编码。对于关于图1和图2所描述的其他细节也是如此,如将在下文中所概述的。
编码器10被配置为使预测残差信号经过空间至频谱变换并将由此获得的预测残差信号编码到数据流14中。同样地,解码器20被配置为对来自数据流14的预测残差信号进行解码并使由此获得的预测残差信号经过频谱至空间变换。
内部地,编码器10可以包括生成预测残差24的预测残差信号形成器22,以便测量预测信号26与初始信号(即,与图片12)的偏差。预测残差信号形成器22例如可以是从初始信号中(即,从图片12中)减去预测信号的减法器。编码器10接着进一步包括变换器28,该变换器使预测残差信号24经过空间至频谱变换以获得谱域预测残差信号24′,该谱域预测残差信号接着通过也由编码器10包括的量化器32而经过量化。将由此量化的预测残差信号24″编码到比特流14中。为此,编码器10可以可选地包括熵编码器34,该熵编码器将经过变换和量化的预测残差信号熵编码到数据流14中。预测信号26由编码器10的预测级36基于编码到数据流14中且可从数据流14中解码的预测残差信号24″生成。为此,如图1中所示,预测级36可以内部地包括:解量化器38,对预测残差信号24″进行解量化,以便获得频谱域预测残差信号24″′,该谱域预测残差信号除了量化损失以外对应于信号24′;解量化器之后的逆变换器40,使后一预测残差信号24″′经过反变换,即,频谱至空间变换,以获得除了量化损失以外对应于原始预测残差信号24的预测残差信号24″″。预测级36的组合器42接着诸如通过相加来重组合预测信号26与预测残差信号24″″,以便获得重构信号46,即,原始信号12的重构。重构信号46可以对应于信号12′。预测级36的预测模块44接着通过使用例如空间预测(即,帧内图片预测)和/或时间预测(即,帧间图片预测)来基于信号46生成预测信号26。
2.根据图2的解码器
同样,如图2中所示,解码器20可以内部地由与预测级36相对应并以与预测级36相对应的方式互连的组件组成。具体地,解码器20的熵解码器50可以对来自数据流的量化频谱域预测残差信号24″进行熵解码,在此之后以上文关于预测级36的模块描述的方式互连和操作的解量化器52、逆变换器54、组合器56和预测模块58基于预测残差信号24″来恢复重构信号,使得如图2中所示,组合器56的输出产生重构信号,即,图片12′。
尽管上文并未具体描述,但是容易明白的是,编码器10可以诸如根据一些优化方案(例如,以最优化一些速率和失真相关准则(即,编码成本)的方式)设定一些编码参数,包括例如预测模式、运动参数等。例如,编码器10和解码器20和对应模块44、58可以分别支持不同预测模式,诸如帧内编码模式和帧间编码模式。编码器和解码器在这些预测模式类型之间切换的粒度可以对应于图片12和12′分别划分为编码片段或编码块的细分。在这些编码片段的单元中,例如,图片可以被细分为帧内编码块和帧间编码块。帧内编码块是基于如下文更详细地概述的各个块的空间已编码/解码邻域来预测的。可以存在包括方向性或角度帧内编码模式在内的若干种帧内编码模式,并为各个帧内编码的片段选择帧内编码模式,根据该帧内编码模式,通过沿着特定于各个方向性帧内编码模式的某个方向,将邻域的样本值外插到相应的帧内编码的片段中来填充各个片段。帧内编码模式可以例如还包括一种或多种其他模式,例如DC编码模式和/或平面帧内编码模式,根据DC编码模式,对各个帧内编码的块的预测将DC值分配给各个帧内编码的片段内的所有样本,根据平面帧内编码模式,各个块的预测被近似或确定为由二维线性函数描述的在各个帧内编码块的样本位置上的样本值的空间分布,其中基于相邻样本来驱动由二维线性函数定义的平面的斜率和偏移。与其比较,例如可以在时间上预测帧间编码块。对于帧间编码块,运动向量可以在数据流内被用信号通知,运动向量指示图片12所属的视频的先前编码图片的部分的空间位移,先前编码/解码图片在数据流处被取样以便获得用于各个帧间编码块的预测信号。这意味着,除了通过数据流14包括的残差信号编码(诸如,表示量化频谱域预测残差信号24′’的熵编码变换系数水平)之外,数据流14可以已将其编码在用于将编码模式指派到各种块的编码模式参数、用于一些块的预测参数(诸如,用于帧间编码片段的运动参数),并且可选地,另外的参数(诸如,用于控制和发信号通知图片12和12′分别划分为片段的细分的参数)。解码器20使用这些参数以与编码器相同的方式细分图片,以将相同预测模式指派给片段,并且以执行相同预测以产生相同预测信号。
3.根据图3的功能性
图3说明了一方面的重构信号(即,重构图片12′)与另一方面的在数据流14中用信号通知的预测残差信号24””和预测信号26的组合之间的关系。如上所述,该组合可以是相加。预测信号26在图3中被说明为图片区域划分为使用阴影线示例性指示的帧内编码块和非阴影示例性指示的帧间编码块的细分。所述细分可以是任何细分,诸如图片区域划分为正方形块或非正方形块的行和列的常规细分,或者来自树根块的图片12划分为多个具有不同大小的叶块的多分树细分,诸如四分树细分等,其中,图3中说明了其混合,在图3中,图片区域首先被细分为树根块的行和列,接着根据递归多分树细分而另外被细分为一个或多个叶块。
再次,数据流14可以具有其中对于帧内编码块80编码的帧内编码模式,其指派若干所支持的帧内编码模式之一给相应的帧内编码块80。对于帧间编码块82,数据流14可以具有在其中编码的一个或多个运动参数。一般而言,帧间编码块82并不受限于在时间上编码。备选地,帧间编码块82可以是超出当前图片12(诸如,图片12所属的视频的先前编码的图片,或者在编码器和解码器分别是可调式编码器和解码器的情况下,另一视图的图片或分层式下层)自身的根据先前编码的部分预测的任何块。
图3中的预测残差信号24””也被说明为图片区域划分为块84的细分。这些块可以被称作变换块,以便将其与编码块80和82区分开。实际上,图3示出了编码器10和解码器20可以使用图片12和图片12′分别划分为块的两种不同的细分,即,划分为编码块80和82的一个细分和划分为变换块84的另一个细分。两种细分可能是相同的,即每个编码块80和82可以同时形成变换块84,但是图3示出了如下情况,其中例如到变换块84的细分形成到编码块80、82的细分的扩展,以便块80和82的两个块之间的任何边界都覆盖两个块84之间的边界,或者换句话说,每个块80、82与变换块84之一重合,或者与变换块84的集群重合。然而,也可以独立于彼此确定或选择细分,使得变换块84备选地跨越块80、82之间的块边界。就细分为变换块84而言,相似陈述因此如同关于细分为块80、82所提出的陈述而成立,即,块84可以是图片区域划分为块(具有或不具有为行和列的配置)的常规细分的结果、图片区域的递归多分树细分的结果,或者其组合或任何其他类别的分块。顺便指出,要注意,块80、82和84不限于正方形、矩形或任何其他的形状。
图3进一步说明了预测信号26与预测残差信号24””的组合直接产生重构信号12′。然而,应注意的是,多于一个预测信号26可以根据备选实施例与预测残差信号24””组合以产生图片12′。
在图3中,变换块84应具有以下重要性。变换器28和逆变换器54以这些变换块84为单位执行其变换。例如,许多编解码器将某种DST或DCT用于所有变换块84。一些编解码器允许跳过变换,使得对于变换块84中的一些变换块84,直接在空间域中对预测残差信号进行编码。然而,根据下述实施例,编码器10和解码器20被以其支持若干变换的方式来配置。例如,由编码器10和解码器20支持的变换可以包括:
οDCT-II(或者,DCT-III),其中,DCT代表离散余弦变换
οDST-IV,其中,DST代表离散正弦变换
οDCT-IV
οDST-VII
ο恒等变换(IT)
自然地,虽然变换器28将支持这些变换的所有正向变换版本,但是解码器20或逆变换器54将支持其对应的后向或逆版本:
ο逆DCT-II(或者,逆DCT-III)
ο逆DST-IV
ο逆DCT-IV
ο逆DST-VII
ο恒等变换(IT)
后续描述提供了关于可以由编码器10和解码器20支持的变换的更多细节。在任何情况下,应注意的是,所支持变换的集合可以仅包括一种变换,诸如一种频谱至空间或空间至频谱变换。
如上所述,已呈现了图1至图3作为示例,在该示例中,可以实现下文进一步描述的本发明概念,以便形成根据本申请的编码器和解码器的特定示例。就此而言,图1和图2的编码器和解码器可以分别表示下文所描述的视频编码器和解码器的可能实现。然而,图1和图2仅仅是示例。根据本申请的实施例的编码器可以使用下文更详细地概述的概念来执行图片12的基于块的编码,并且与诸如图1的编码器的不同之处例如在于根据本申请的实施例的编码器并非视频编码器,而是静止图片编码器,在于根据本申请的实施例的编码器不支持帧间预测,或者在于细分为块80以不同于图3中的所例示的方式执行。同样地,根据本申请的实施例的解码器可以使用下文进一步概述的编码概念对来自数据流14的图片12′执行基于块的解码,但是与例如图2的解码器20的不同之处可以在于根据本申请的实施例的解码器并非视频解码器,而是静止图片解码器,在于根据本申请的实施例的解码器不支持帧内预测,或者在于根据本申请的实施例的解码器以不同于关于图3所描述的方式将图片12′细分为块,和/或在于根据本申请的实施例的解码器不从变换域中而从例如空间域中的数据流14中导出预测残差。
4.根据图4的算术编码器
图4示出了根据本发明的实施例的算术编码器的示意性框图。
根据图4的算术编码器400例如可以在视频编码器中使用。然而,可选地,算术编码器400也可以在音频编码器、图像编码器、用于对神经网络的系数进行编码的编码器等中使用。
算术编码器400被配置为接收要编码的符号410,其中,要编码的符号410可以由符号值表示。此外,编码器400通常也接收上下文信息412,该上下文信息例如可以描述哪种类型的信息由要编码的符号410表示。例如,上下文信息412可以由上下文索引k表示,该上下文索引例如描述要编码的符号410描述哪种类型的辅助信息或符号410对哪种类型的变换系数进行编码。
此外,算术编码器400被配置为提供比特流420,该比特流表示要编码的符号410或表示要编码的符号410的序列。
算术编码器400包括算术编码核或算术编码器核430,该算术编码核或算术编码器核430接收要编码的符号410并基于要编码的符号来提供比特流420。算术编码核或算术编码器核430通常接收区间大小信息,该区间大小信息例如可以表示符号(例如,可能最小符号)映射到的子区间(来自总编码区间)的大小。此外,算术编码核或算术编码器核也提供编码区间大小信息434,该编码区间大小描述了当前编码区间大小(例如,编码区间的总大小)。应注意的是,编码区间大小434可以取决于编码的符号410(或者较精确而言,取决于编码的符号410的序列)随时间而变化。
编码区间大小例如可以由于在算术编码过程中执行的重新缩放运算而改变。例如,算术编码核例如可以执行如高效视频编码(HEVC)标准(H.265)中所描述的功能性。
算术编码器400也包括编码区间大小确定或编码区间大小确定器440。编码区间大小确定440接收要编码的符号410,或者至少接收一个或多个先前编码的符号,并且优选地(而非必须)也接收上下文信息412。此外,区间大小确定440接收编码区间大小信息434。区间大小确定440基于编码区间大小信息、要编码的符号410(或者,至少一个或多个先前编码的符号)和可选的上下文信息412来提供供算术编码核430使用的区间大小信息432。
关于根据图4的概念的功能性,应注意的是,区间大小确定440用于(连续地,例如针对每个新的要编码的符号)更新区间大小信息432。在该更新中,考虑先前编码的符号的统计。此外,也考虑由算术编码430提供的编码区间大小信息434,这是由于区间大小信息432应优选地被提供为与编码区间大小信息434处于适当关系。在该上下文,编码区间大小信息434例如可以表示(总)编码区间(可以由不定期发生的编码区间的重新归一化引起)的当前大小,而区间大小信息432例如可以描述与特定符号(例如,与最小可能的符号)相关联的整个(总)编码区间内的部分的大小。因此,区间大小信息通常小于编码区间大小信息434,这是由于编码区间大小信息434表示编码区间的总大小,而区间大小信息434表示与特定符号相关联的编码区间的部分的大小。因此,区间大小信息432通常随着编码区间大小信息434缩放(其中,所述缩放可以可选地包括某种程度上的非线性行为,以避免编码将非常低效的情形)。
进一步地来说,通过确定适当区间大小信息432,考虑到编码区间(由编码区间大小信息434表示)的总大小和先前编码的符号的统计(以及上下文),可以有效的方式执行算术编码,其中,考虑先前编码的符号的统计有助于改进编码效率。
然而,应注意的是,根据图4的算术编码器400可以在如本文中所公开的任何信号编码器中(例如,在视频编码器中)使用。此外,应注意的是,根据图4的算术编码器400可以可选地由本文中所描述的特征、功能性和细节中的任意一种补充。具体地,区间大小确定440可以单独地以及以组合方式两者使用本文中所公开的概念中的任何概念。
总之,根据图4的算术编码器400可以可选地由本文中所公开的特征、功能性和细节中的任意一种单独地以及以组合方式补充。
5.根据图5的算术解码器
图5示出了根据本发明的实施例的算术解码器500的示意性框图。算术解码器500被配置为接收比特流510(可以对应于比特流420)并基于该比特流提供解码的符号520(或者,在解码的符号520的序列中)。通常,解码的符号520可以对应于要编码的符号410。通常,算术编码器400和算术解码器500可以当结合在一起时执行无损编码和解码,使得由算术编码器400编码的符号410提供比特流420,该比特流当通过算术解码器500解码时允许“完美的”重构,使得解码的符号520对应于编码的符号410。
算术解码器500包括算术解码核或算术解码器核530,该算术解码核或算术解码器核530接收比特流并基于该比特流来提供解码的符号520。算术解码核530通常提供可以实质上对应于编码区间大小信息434的编码区间大小信息532,并且接收可以对应于区间大小信息432的区间大小信息534。算术解码器500也包括编码区间大小确定或编码区间大小确定器540,该编码区间大小确定或编码区间大小确定器540被配置为基于编码区间大小信息532并且也基于一个或多个解码的符号520来提供由算术解码核530使用的区间大小信息534。此外,编码区间大小确定540可以可选地使用上下文信息550,该上下文信息可以描述哪种类型的信息由当前考虑的解码的符号520表示。因此,编码区间大小确定540可以针对多个不同的“上下文”(即,针对多个不同类型的解码信息(或者,不同类型的要解码的信息))确定区间大小信息534。
算术解码核530例如可以确定由比特流510表示的值处于总编码区间(其大小由编码区间大小信息描述)当中的哪个子区间,并且因此决定哪个符号由比特流表示。例如,由区间大小信息534描述总编码区间的子区间的大小。例如,区间大小信息534可以描述与特定符号(例如,最小可能的符号)相关联的总编码区间的子区间的大小。此外,应注意的是,编码区间大小(例如,总编码区间的大小)可以由于重新归一化而不定期(或者,甚至对于每个解码的符号)改变。
总之,算术解码500用于基于比特流510来提供解码的符号520,其中,先前解码的符号的历史(或者更精确地,先前解码的符号的统计)用于(动态地)调整与要解码的符号相关联的区间大小(其中,调整后的区间大小由区间大小信息534描述)。此外,应注意的是,区间大小确定540例如可以与区间大小确定440实质上相同。并且,应注意的是,区间大小确定540可以包括本文中所公开的功能性中的任何功能性。因此,用于确定区间大小的概念中的任何概念可以用于区间大小确定540。
应注意的是,本文中所描述的算术解码器500可以在本文中所描述的解码器中的任何解码器(例如,音频解码器或视频解码器)中使用。然而,算术解码器500也可以用于对神经网络的图像或系数进行解码。
一般而言,本文中所描述的算术解码器500可以可选地由本文中所公开的特征、功能性和细节中的任何一种单独地并且以组合方式补充。
6.根据图6的用于确定区间大小信息的概念
图6示出了用于确定区间大小信息的概念的示意性表示,该区间大小信息例如可以在根据图4的算术编码器400或根据图5的算术解码器500中使用。可以以区间大小确定的形式或以区间大小确定器的形式实现的概念600例如可以用于实现区间大小确定或区间大小确定器440,和/或可以用于实现区间大小确定或区间大小确定器540。
区间大小确定600例如可以接收一个或多个符号值610,该一个或多个符号值可以对应于要编码的符号410或可以对应于先前编码的符号,或者可以对应于一个或多个先前解码的符号520。此外,区间大小确定600可以可选地接收上下文信息612,该上下文信息例如可以采用上下文模型索引k的形式。此外,区间大小确定600可以提供区间大小信息620,该区间大小信息例如可以对应于区间大小信息432或其可以对应于区间大小信息534。
考虑符号值610并可选地考虑上下文信息612,区间大小确定包括状态变量更新640,该状态变量更新基于一个或多个先前确定的状态变量644来提供一个或多个更新状态变量642。状态变量更新640也可以考虑一个或多个其他参数,该一个或多个其他参数例如可以是静态的或其例如可以取决于上下文信息而适应于各个上下文。例如,状态变量更新640可以考虑一个或多个加权因子,即,
Figure BDA0002965036250000821
和/或
Figure BDA0002965036250000822
状态变量更新640可以可选地也考虑“偏移”(例如,z)和查找表(例如,A)。此外,状态变量更新640可以响应于用信号通知应执行状态变量初始化的信息而可选地被初始化为起始值。在状态变量初始化的情况下,可以忽略先前确定的状态变量值644,并且“更新的”状态变量642可以被设置为初始值,初始值例如可以是预定的。
此外,区间大小确定600包括区间大小确定核,该区间大小确定核基于更新状态变量(或者,状态变量值)620来确定区间大小信息620。此外,区间大小确定核650例如可以考虑编码区间大小信息652,其例如可以对应于编码区间大小信息432或对应于编码区间大小信息532。
因此,区间大小确定核650可以基于描述编码区间的总大小的编码区间大小信息652并基于关于先前编码的或先前解码的符号的统计的信息来提供区间大小信息,该区间大小信息描述了与特定符号相关联的子区间的大小,该先前编码或先前解码的符号的统计的信息由一个或多个更新状态变量642表示。
然而,应注意的是,区间大小确定600可以在本文中所描述的算术编码器和算术解码器中使用。此外,区间大小确定600可以由本文中所公开的特征、功能性和细节中的任何一种补充。具体地,状态变量更新可以使用本文中所公开的概念中的任何概念。此外,区间大小确定核也可以使用本文中所公开的概念中的任何概念。
应注意的是,用于状态变量更新的本文中所描述的概念中的任何概念可以可选地与用于本文中所公开的区间大小确定核的概念中的任何概念组合。本文中所公开的特征、功能性和细节中的任何一种可以可选方式单独地以及以组合方式被引入到概念600中。应注意的是,关于基于一个或多个更新状态变量642来确定区间大小信息620而公开的特征、功能性和细节中的任何一种可以独立于关于状态变量更新所描述的特征、功能性和细节中的任何一种来使用。
7.根据图7的区间大小确定概念
图7示出了区间大小确定概念700的示意性表示。具体地,图7示出了可以采用“区间大小确定核”的功能性的概念。换言之,根据图7的概念700适合于基于更新状态变量以及也基于编码区间大小信息来提供区间大小信息。然而,根据图7的概念700可以以区间大小确定或区间大小确定器实现。
可以被视为“区间大小确定核”的区间大小确定700接收更新状态变量710,该更新状态变量例如可以对应于更新状态变量642。此外,区间大小确定700接收编码区间大小信息712,该区间大小信息例如可以对应于编码区间大小信息652。可选地,区间大小确定700也使用上下文信息,这是由于区间大小确定700的功能性可以取决于上下文来调整。例如,上下文信息可以采取上下文模型索引k的形式。因此,在区间大小确定700中使用的具体功能性或参数可以取决于如由上下文模型索引k表示的实际上下文而变化。
区间大小确定700提供区间大小信息720,该区间大小信息可以对应于区间大小信息620。
因此,区间大小确定700例如可以代替图6中所描述的区间大小确定核650。
在下文中,将描述区间大小确定核700的一些细节。
应注意的是,区间大小确定核700包括可以被视为备选方案的第一处理路径730和第二处理路径750。第一处理路径730包括(可选的)缩放/舍入732,其中,第一更新状态变量(例如,
Figure BDA0002965036250000841
)被缩放和/或舍入。例如,缩放因子
Figure BDA0002965036250000842
可以用于第一更新状态变量(值)的缩放。例如,所述缩放可以是与缩放因子相乘。例如,所述舍入可以是向下舍入到下一整数值的舍入,该整数值小于或等于缩放的结果。相似地,第一处理路径730可以包括第二(可选的)缩放/舍入734,该第二(可选的)缩放/舍入例如可以包括通过相应的缩放因子(例如,
Figure BDA0002965036250000844
)来缩放第二更新状态变量(例如,
Figure BDA0002965036250000843
),并且其也可包括向下舍入到下一整数值的舍入,该整数值小于或等于缩放的结果。因此,可以获得第一缩放和舍入状态变量733以及第二缩放和舍入状态变量735。此外,第一处理路径730可以包括基于第一查找表的映射736,该第一处理路径接收第一缩放和/或舍入的更新状态变量733且其进一步接收量化的编码区间大小信息762。例如,基于第一查找表的映射736可以使用二维查找表来获得第一区间大小贡献737。相似地,第一信号处理路径730可以包括基于第二查找表的映射738,该第一信号处理路径可以接收第二缩放和/或舍入的更新状态变量735和量化的编码区间大小信息762并基于该第二缩放和/或舍入的更新状态变量和量化的编码区间大小信息来提供第二区间大小贡献739。
例如,基于第一查找表的映射736可以使用二维查找表,其中,第一查找表索引可以通过缩放和/或舍入的第一更新状态变量733来确定,并且其中,第二查找表索引可以通过量化的编码区间大小信息762来确定。例如,第一缩放和/或舍入的更新状态变量733可以取某一范围(例如,从0到最大值,或者从1到最大值,或者在作为第一表索引的可接受范围内)内的整数值。相似地,量化的区间大小信息762可以采用整数值的形式,该整数值可以充当第二表索引。例如,量化的编码区间大小信息762可以采用在0与最大值之间或在1与最大值之间的范围内(或者,在可充当第二表索引的任何值的范围内)的整数值的形式。换言之,第一缩放和/或舍入的更新状态变量733和量化的编码区间大小信息762两者均用作表索引以选择在基于查找表的映射736中使用的查找表的元素。因此,提供所使用的查找表的条目作为第一区间大小贡献737。
然而,可以相同方式执行基于第二查找表的映射738,其中,缩放和/或舍入的第二更新状态变量735和量化的编码区间大小信息762用作两个索引(例如,i和j)以用于选择在基于第二查找表的映射738中使用的查找表的条目。因此,获得了第二区间大小贡献739。
第一区间大小贡献737和第二区间大小贡献739可以在组合740中组合,从而获得组合区间大小贡献742。组合区间大小贡献742可以直接充当区间大小信息720,或者可以使用后处理(例如,固定缩放或舍入等)从组合区间大小贡献742中导出区间大小信息720。
总之,在使用第一处理路径730时,可以通过组合两个或更多个基于查找表的映射736、738的结果来获得区间大小信息720,其中,基于各个更新状态变量并基于编码区间大小信息来确定要使用的查找表的各个条目。因此,可以以非常有效的方式获得区间大小信息720。
然而,备选地,可以执行如第二信号处理路径750中所示出的处理。由第二信号处理路径执行的处理在计算上更为有效,其代价为略微降低了准确度。例如,第二信号处理路径750包括组合751,其中,将第一更新状态变量与第二更新状态变量(和可选的附加更新状态变量)组合,从而获得组合的更新状态变量751a。第二处理路径750也包括可选的缩放/舍入752,该缩放/舍入例如可以对应于缩放/舍入732、734。因此,缩放/舍入750提供了缩放和/或舍入的组合的更新状态变量733,该缩放和/或舍入的组合的更新状态变量用于选择基于查找表的映射756中的元素。基于查找表的映射756优选地是二维映射,其中,通过组合的更新状态变量751a或其缩放和/或舍入版本753来确定查找表的第一索引,并且其中,通过量化的编码区间大小信息762来确定二维查找表的第二索引。因此,基于查找表的映射756提供了区间大小贡献757,该区间大小贡献可以用作区间大小信息752,或者从该区间大小贡献可以通过可选的后处理(例如,缩放)来导出区间大小信息720。
总之,区间大小确定核700被配置为基于更新状态变量710并考虑编码区间大小信息712来获得区间大小信息720。在第一信号处理路径720中使用基于查找表的映射以确定两个或更多个区间大小贡献737、739,该两个或更多个区间大小贡献用于导出区间大小信息720。在备选的第二信号处理路径750中使用基于查找表的映射756以确定区间大小贡献757或区间大小信息720。通过使用考虑更新状态变量和编码区间大小信息712二者的基于查找表的映射以确定查找表的索引,可以实现尤其有效的计算,其中,可以省去乘法运算。
应注意的是,根据图7的区间大小确定核700可以在本文中所描述的算术编码器和算术解码器中的任何一种中使用。此外,区间大小确定核700可以可选地由本文中所公开的特征、功能性和细节中的任何一种单独地以及以组合方式补充。
8.根据图8的区间大小确定核
图8示出了根据本发明的实施例的区间大小确定核800的示意性框图。根据图8的区间大小确定核800可以在本文中所公开的音频编码器和音频解码器中的任何一种中使用。
区间大小确定核800接收更新状态变量810以及也接收编码区间大小信息812。更新状态变量810例如可以对应于更新状态变量710或对应于更新状态变量642。编码区间大小信息812例如可以对应于编码区间大小信息712或编码区间大小信息652或编码区间大小信息532或编码区间大小信息434。此外,区间大小确定核800提供了区间大小信息820,该区间大小信息可以对应于区间大小信息720或区间大小信息620或区间大小信息534或区间大小信息432。
区间大小确定核800例如可以包括概率值832的确定830。概率值832例如可以基于一个或多个更新状态变量810来获得,并且例如可以描述要编码的符号(例如“0”或“1”)的概率。区间大小确定核830还包括较不可能符号(或者,最小可能的符号)的概率的确定840,该确定可以提供描述较不可能符号或最小可能的符号的概率的概率值842。区间大小确定核800也包括量化850,该量化对概率值842进行量化以获得量化的概率值852。此外,区间大小确定核800也包括量化860,该量化对编码的区间大小信息进行量化以获得量化的编码区间大小信息862。区间大小确定核800也包括映射870,该映射接收量化的概率值852和量化的编码区间大小信息862并将量化的概率值852和量化的编码区间大小信息862二者映射到区间大小信息820上。
在下文中,将描述关于区间大小确定核800的功能性的一些细节。
概率值832的确定830例如可以包括第一信号处理路径880或第二信号处理路径890。应注意的是,信号处理路径880、890可以被视为备选方案。第一信号处理路径880包括第一映射882,该第一映射例如使用查找表将第一更新状态变量810映射到第一概率值883上。第一信号处理路径880也包括第二映射884,该第二映射例如使用查找表将第二更新状态变量810映射到第二概率值885上。第一信号处理路径880也包括组合886,该组合例如可以被配置为例如使用线性组合将第一概率值883与第二概率值885组合,在该线性组合中不同缩放可以应用于第一概率值883和第二概率值885(并且其中,可选地,可以使用量化)。因此,组合886提供了概率值832。
备选地,可以使用第二信号处理路径890。第二信号处理路径890包括组合892,该第二信号路径接收两个或更多个更新状态变量810,并且其基于两个或更多个更新状态变量来提供组合的更新状态变量893(例如,使用线性组合)。此外,第二信号处理路径890包括映射894,该映射例如使用查找表将组合的更新状态变量893映射到概率值832上。
因此,可以使用第一信号处理路径880或使用第二信号处理路径890来获得概率值832,该第一信号处理路径和第二信号处理路径可以被视为两个不同备选方案。第一信号处理路径会带来稍微增加的复杂性,这是由于存在两个映射882、884,并且也带来稍微增加的准确度。相比之下,第二信号处理路径890仅包括单一映射并因此稍微较不复杂,其代价是准确度稍微降低。
在较不可能的符号的概率的确定850中,例如可以通过从概率值832和该概率值的补充(1减去概率值)当中选择较小值来确定较不可能的符号的概率。因此,获得了描述较不可能的符号的概率的概率值842。该概率值842例如使用量化函数Qp(.)或Qp2(.)在量化850中进行量化。因此,获得量化的概率值或概率索引i 852并在映射870中使用。
编码区间大小信息812的量化860例如可以提供量化的编码区间大小值862或量化的编码区间大小索引j。然而,在一些情况下,可以获得量化的编码区间大小值Qr(R)和编码区间大小索引j两者,该量化的编码区间大小值和编码区间大小索引两者例如可以在映射860中使用。映射860例如可以使用映射机制,该机制基于本文中所描述的查找表RangeTabLPS,和/或该机制可以基于本文中所描述的查找表BaseTabLPS和/或该机制可以使用本文中所描述的查找表ProbTabLPS。可选地,本文中所描述的缩放函数Scal(.)也可以在映射870中使用。
换言之,可以存在许多不同的映射,这些映射可以用于基于量化的概率值或概率索引852并且基于量化的编码区间大小862和/或编码区间大小索引j来导出区间大小信息820。
作为补充说明,应注意的是,量化850例如可以将概率值842(或者备选地,如果省去确定840,则是概率值832)映射到整数值上。备选地,量化850可以将值842(或者备选地,如果可选地省去确定840,则是值832)映射到数值分辨率比概率值832或概率值842低的值上。然而,优选地,量化的概率值852采用概率索引(例如,i)的形式,即,整数表示的形式,其可以用作指代查找表(例如,RangeTabLPS)的条目的表索引。
量化860可以带来不同结果。编码区间大小信息812例如可以量化到量化的编码区间大小信息862中,该量化的编码区间大小信息包括比编码区间大小信息812低的分辨率。换言之,编码区间大小信息812的值的区间可以被映射到量化的编码区间大小信息862的各个量化值上,其中,该量化例如可以是线性或非线性的。备选或另外地,编码区间大小信息可以被映射到编码区间大小索引j上,即,被映射到连续的整数值范围上,该编码区间大小索引可以直接用作用于选择查找表的条目的表索引。然而,应注意,在一些情况下,可以使用被量化为不同值的量化的编码区间大小信息以及被量化为不同索引j(即,量化为整数值)的量化的编码区间大小信息二者。
如上所述,可以使用本文中所描述的不同概念来进行映射870。
总之,区间大小确定核800可以在本文中所描述的算术编码器和算术解码器中的任何一种中使用。此外,区间大小确定核800可以可选地由本文中所公开的特征、功能性和细节中的任何一种中单独地并且以组合方式补充。
9.根据图9的区间大小确定核
图9示出了区间大小确定核900的示意性框图,该区间大小确定核可在本文中所公开的算术编码器和算术解码器中的任何一种中使用。
区间大小确定核900被配置为接收状态变量值910并提供区间大小信息920。一般而言,区间大小确定核900被配置为基于多个状态变量值910针对一个或多个要编码的符号值的算术编码(或者,针对一个或多个要解码的符号值的算术解码)来导出区间大小信息920,该多个状态变量值表示具有不同调整时间常数的多个先前编码的符号值的统计。区间大小确定核900包括可选的第一缩放和/或舍入930,其中,第一状态变量(可以是更新状态变量)被缩放和/或舍入。区间大小确定核900也包括可选的第二缩放和/或舍入934,其中,第二状态变量被缩放和/或舍入。因此,可选的第一缩放和/或舍入提供了第一缩放和/或舍入的状态变量932,并且可选的第二缩放和/或舍入934提供了第二缩放和/或舍入的状态变量934。
区间大小确定核900也包括使用查找表的第一映射940。第一映射940使用查找表(例如,查找表LUT1或定义用于多个不同值R的R.LUT1的二维查找表)来映射第一状态变量或第一状态变量的缩放和/或舍入版本932。因此,通过第一映射940获得了第一概率值942。区间大小确定核900也包括使用查找表(例如,使用查找表LUT1或定义用于多个不同值R的R.LUT1的二维查找表)映射第二状态变量或其缩放和/或舍入版本934的第二映射950。因此,通过第二映射950基于第二状态变量值或基于其缩放和/或舍入版本934获得了第二概率值952。
最终,基于第一概率值942以及基于第二概率值952获得了区间大小信息920。
然而,应注意的是,第一概率值942和第二概率值952的确定应仅被视为可以使用第一映射940和第二映射950来获得这些量的示例。相比之下,可以也使用第一映射940和第二映射950来导出其他量,如例如,对区间大小信息920的贡献。
然而,应注意的是,图9中所描述的区间大小确定核900可以在本文中所公开的算术编码器或算术解码器中的任何一种中使用。此外,应注意的是,区间大小确定核900可以可选地由本文中所描述的特征、功能性和细节中的任一者单独地并以组合方式补充。
10.根据图10a和图10b的区间大小确定
图10a示出了用于确定区间大小信息的概念的示意性表示,该区间大小信息可以在例如区间大小确定核中使用。
正如所看出的,图10a的概念接收多个状态变量值1010a、1010b,该多个状态变量值可以对应于状态变量值910并且其可以是更新状态变量值。此外,概念1000提供了区间大小信息1020,该区间大小信息可以对应于区间大小信息920。概念1000包括第一映射1040,该第一映射将第一状态变量值1010a(或者,其缩放和/或舍入版本)映射到可以对应于第一概率值942的第一概率值1042上。此外,概念1000包括第二映射1050,该第二映射将第二状态变量值1010b(或者,其缩放和/或舍入版本)映射到第二概率值1052上。此外,概念1000包括第一概率值1042与第二概率值1052的组合,其中,例如可以使用等式(7)来执行该组合。因此,组合1060提供了组合概率值1062。此外,概念1000包括组合概率值1062的乘法1070,其中,可以通过编码区间大小值R来进行该乘法。因此,基于组合概率值1062a与编码区间大小值R之间的乘法1070获得了区间大小信息1020。区间大小信息1020例如可以描述与较不可能符号相关联或与最小可能的符号相关联的编码区间的大小(或者备选地,与较可能符号相关联或与最可能符号相关联的编码区间的大小)。可选地,概念1000可以包括用于导出较不可能符号或最小可能的符号的概率的机制(例如,在组合1060与乘法1070之间),或者可以包括基于乘法1070的结果来导出与较不可能符号相关联或与最小可能的符号相关联的区间大小信息的机制。
因此,根据图10a的概念1000可以实现如关于图9所描述的功能性。
应注意的是,概念1000可以在本文中所公开的算术编码器或算术解码器中的任何中使用。
而且,概念1000可以可选地由本文中所公开的特征、功能性和细节中的任一者单独地并以组合方式补充。
图10b示出了基于第一状态变量值1082a和第二状态变量值1082b来提供区间大小信息1084的概念1080的示意性框图。概念1080包括将第一状态变量值1082a或其缩放和/或量化版本映射1085a到第一区间大小贡献1086a上。此外,概念1080包括第二映射1085b,该第二映射将第二状态变量值1082b或其缩放和/或量化版本映射到第二区间大小贡献1086b上。
第一映射1085a和第二映射1085b例如可以使用二维查找表来执行所述映射。二维查找表例如可以定义编码区间大小信息R的量化值与用于多个不同值R的一维查找表(例如LUT1)之间的乘积。换言之,在映射1085a中使用的二维查找表的各行或各列可以定义如本文中所描述的查找表LUT1和与所述行或列相关联的各个编码区间大小值之间的乘积。在第二映射1085b中使用的二维查找表也可如此,其中,所述查找表可以与在第一映射1085a中使用的查找表相同或可以与该查找表不同。此外,应注意的是,编码区间大小信息可以在第一映射1085a和第二映射1085b中使用,以选择二维查找表的适当元素(其中,例如,第一查找表索引可以基于各个状态变量值,并且其中,第二查找表索引可以基于其编码区间大小值(或者量化版本Qr(R))。
因此,可以以极低计算复杂度获得区间大小信息1084。此外,应注意的是,适当处理可以插入在映射1085a、1085b与其中组合了区间大小贡献1086a、1086b的组合1088之间,以确定对与较不可能符号或最小可能的符号相关联的区间的区间大小的贡献。然而,备选地,后处理可以可选地在组合1088之后插入,以基于区间大小贡献1086a、1086b的组合1088的结果来确定用于最小可能的符号或用于较不可能符号的区间大小。
总之,根据图10b的概念1080可以用于基于状态变量值1082a、1082b并也取决于编码区间大小信息或编码区间大小值来导出区间大小信息1086。
此外,应注意的是,概念1080可以在本文中所公开的算术编码器或算术解码器中的任一者中使用。
此外,应注意的是,图10b的概念1080可以可选地由本文中所公开的特征、功能性和细节中的任一者单独地并以组合方式补充。
11.根据图11的区间大小确定核
图11示出了根据本发明的实施例的区间大小确定核1100的示意性框图。
区间大小确定核接收多个(通常是,更新的)状态变量值1110并基于该多个状态变量值来提供区间大小信息1120。一般而言,区间大小确定核1100被配置为基于多个状态变量值1110来导出用于一个或多个要编码的符号的算术编码(或者,用于一个或多个要解码的符号值的算术解码)的区间大小信息,该多个状态变量值表示具有不同调整时间常数的多个先前编码的(或者,先前解码的)符号值的统计。区间大小确定核1100包括组合/组合器1130,该组合/组合器被配置为基于多个状态变量值1110来导出组合状态变量值1132。可选地,区间大小确定核1100包括缩放和/或舍入1140,该缩放和/或舍入对组合状态变量值1132进行缩放和/或舍入以获得缩放和/或舍入的组合状态变量值1142。此外,区间大小确定核1100包括基于查找表的映射1150,该映射被配置为使用查找表来映射组合状态变量值1132或其缩放和/或舍入版本1142,以便获得描述区间大小(例如,与具体符号相关联的区间的大小,例如,如较低有效符号或较高有效符号)的区间大小信息以进行算术编码/解码。然而,可选地,后处理1160可以用于基于基于查找表的映射1150的结果1152来导出区间大小信息1120。
应注意的是,区间大小确定核1100可以在本文中所公开的算术编码器和算术解码器中的任一者中使用。此外,应注意的是,区间大小确定核11可以可选地由本文中所公开的特征、功能性和细节中的任一者补充。
12.根据图12的状态变量更新
图12示出了根据本发明的实施例的状态变量更新的示意性框图。状态变量更新1200(也可以被视为状态变量更新器)被配置为接收符号值1210,该符号值可以是要编码的符号的符号值或先前解码的符号的符号值(或者,先前编码的符号的符号值)。此外,状态变量更新1200可被配置为接收一个或多个先前确定的状态变量值1212并提供一个或多个更新状态变量值1220。具体地,状态变量更新1200可以被配置为取决于符号值(例如,表示要编码的符号或先前编码的符号或先前解码的符号)并使用查找表来更新第一状态变量值。换言之,状态变量更新1210可以包括基于查找表的状态变量更新或基于查找表的状态变量更新器1230。因此,可以基于对应的先前确定的状态变量值并考虑符号值来提供更新状态变量值,该符号值基于要编码的符号或基于先前编码的符号或基于先前解码的符号。
因此,状态变量更新1200可以提供一个或多个更新状态变量值。如果要确定多个更新状态变量值,则可以针对每个状态变量值单独地执行基于查找表的状态变量更新(然而,其中,可以使用可能具有不同缩放参数和/或量化功能性的相同机制和/或相同查找表)。
然而,在此描述的状态变量更新1200可以在本文中所公开的算术编码器和算术解码器中的任一者中使用。然而,应注意的是,状态变量更新1200可以可选地由本文中所公开的特征、功能性和细节中的任一者单独地并以组合方式补充。
13.根据图13的区间大小确定核
图13示出了根据本发明的实施例的区间大小确定核1300的示意性框图。
区间大小确定核接收一个或多个状态变量值1310,该一个或多个状态变量值例如可以是更新状态变量值。此外,区间大小确定核基于一个或多个状态变量值1310来提供区间大小值1320。
区间大小确定核包括查找表评估机制1330,该查找表评估机制接收概率索引1332,其可以基于一个或多个状态变量值1310,并且其提供区间大小值1320。
例如,可以使用概率索引推导1340(可以包括缩放和/或舍入和/或量化)来根据一个或多个(更新)状态变量值导出概率索引1332。
例如,可以在如本文中所公开的算术编码器或算术解码器中确定一个或多个更新状态变量值1310,并且可以表示多个先前编码的符号值的统计。
一般而言,区间大小确定核1300被配置为使用基本查找表1350来确定区间大小值1320。查找表评估机制可以被配置为确定区间大小值1320,使得如果基于一个或多个状态变量值而获得的概率索引1332是在第一范围内,则确定的区间大小值与基本查找表1350的元素或基本查找表1350的元素的舍入版本相同,并且使得如果概率索引1332是在第二范围内,则使用基本查找表1350的元素的缩放1360(并且可选的,舍入)来获得确定的区间大小值。因此,区间大小值1320可以用于执行一个或多个符号的算术编码或算术解码。
换言之,可以根据例如如图8中所示的一个或多个(更新)状态变量值(第一信号处理路径880或第二信号处理路径890,结合可选的确定840和量化850)来导出的概率索引1332可以用于决定是“按原样”还是通过缩放1360(其可通过概率索引1332确定)来使用基本查找表的条目。
换言之,概率索引1332可以决定选择基本查找表1350的哪个元素(如以示意性方式在附图标记1370处所指示的),并且决定是否执行基本查找表1350的该所选条目的缩放(如在附图标记1380处象征性地示出的)。例如,可以通过概率索引1332的一个或多个最低有效比特来确定基本查找表的条目的选择1370,并且可以基于概率索引1332的一个或多个最高有效比特来进行是否执行缩放1360的决策。然而,而非评估比特组,可以通过概率索引1332除以预定值的除法的除法残差来确定基本查找表1350的条目的选择,并且可以取决于当前所考虑的概率索引值位于多个范围当中的哪个范围的确定来进行是否执行缩放1360的决策。
此外,应注意的是,可选地,可以在选择基本查找表1350的条目(例如,如果基本查找表是二维表)时考虑编码区间大小信息(例如,R)。在另一可选的备选方案中,编码区间大小信息(例如,R)可以用于确定是否应执行取决于编码区间大小信息的额外缩放(例如,应用于基本查找表的所选条目),以便获得区间大小值1320。
然而,应注意的是,在此描述的区间大小确定核1300可以在本文中所公开的算术编码器和算术解码器中的任一者中使用以导出区间大小值。
此外,应注意的是,区间大小确定核1300可以可选地由本文中所公开的特征、功能性和细节中的任一者补充。
14.区间大小确定核
图14示出了根据本发明的实施例的区间大小确定核1400的示意性框图。
区间大小确定核1400接收一个或多个状态变量值1410,该一个或多个状态变量值例如可以是更新状态变量值。此外,区间大小确定核1400基于一个或多个状态变量值1410来提供区间大小值1420。
区间大小确定核1400包括查找表评估机制1430,该查找表评估机制接收概率索引1432,其可以基于一个或多个状态变量值1410,并且其提供区间大小信息或区间大小值1420。
例如,可以使用概率索引推导1440来根据一个或多个(更新)状态变量值导出概率索引1432。
例如,可以在如本文中所公开的算术编码器或算术解码器中确定该一个或多个更新状态变量值1410,并且可以表示多个先前编码的符号值和/或多个先前解码的符号值的统计。
一般而言,区间大小确定核1400被配置为基于根据一个或多个状态变量值1410而导出的概率值(例如,概率索引1432)并基于编码区间大小(例如,由编码区间大小信息1412描述)来使用概率表(例如,ProbTabLPS)确定区间大小值1420。例如,概率表1450描述用于一组多个不同概率值(或者,概率索引1432)和用于给定编码区间大小(例如,用于单一给定参考编码区间大小)的区间大小。如图14中可见,概率索引1432例如可以用于选择概率表中的哪个元素应用作提供区间大小值1420的基础。换言之,概率索引1432确定概率表的元素的选择以用于进一步处理。此外,确定概率索引1432,通过该值在缩放1460中对概率表的所选条目进行缩放。一般而言,区间大小确定核可以被配置为在当前概率值并非一组多个概率值的情况下和/或在当前编码区间大小与给定(参考)编码区间大小不同的情况下,对概率表的元素或条目(例如,取决于当前概率值或概率索引1432而选择的元素)进行缩放。换言之,可以使用缩放1460从概率表1450的所选条目中导出区间大小值1420,其中,该缩放可以取决于概率值或概率索引1432以及编码区间大小信息1412二者。
例如,概率表1450的条目可以与单一编码区间大小以及与概率值或概率索引的给定范围相关联(其中,该范围通常可以覆盖三个或甚至更多个不同概率值或概率索引,其中,概率表的条目的数量优选地可以是二的效能效应(potency),以便利计算操作)。如果编码区间大小1412不同于与概率表1450的条目相关联的参考编码区间大小,则缩放1460例如可以对概率表1460的所选条目进行缩放。换言之,如果实际编码区间大小1412与参考编码区间大小(例如,与概率表1450的条目相关联的编码区间大小)不同,则缩放1460可以考虑该偏差(至少在参考编码区间大小与实际编码区间大小1410之间的偏差超过用于量化编码区间大小的量化区间的大小的情况下)。此外,缩放1460也可考虑概率值或概率索引1432是否位于与概率表1450的条目相关联的概率值或概率索引的范围的外部。例如,如果概率表1450的条目与概率索引的第一范围相关联但实际概率索引1432位于不与概率索引的第一范围重叠的索引的第二范围内,则缩放1460可以考虑该发现并应用附加缩放(除了基于实际编码区间大小与参考编码区间大小的偏差的缩放之外)。
总之,如果概率值或概率索引1432位于提供概率表条目所针对的该组多个概率值内,并且如果实际编码区间大小1412等于参考编码区间大小(或者,被量化为等于参考编码区间大小的值),则区间大小确定核1400可以提供概率表1450的所选条目作为区间大小值1420。另一方面,如果概率值或概率索引1432位于提供概率表条目所针对的“该组多个概率值”外部,和/或如果实际编码区间大小1412与参考编码区间大小偏离(例如,偏离了使得实际编码区间大小被量化为不同值),则缩放1460对概率表1450的所选条目进行缩放,以便获得区间大小值1420。
因此,可以使用相对较小的查找表1450来获得区间大小值1420,该查找表例如可以是一维概率表,该一维概率表的条目的数量小于不同的可能概率值或概率索引值的数量(例如,至少是2的因子)。
然而,应注意的是,区间大小确定核1400可以可选地由本文中所描述的特征、功能性和细节中的任一者补充。此外,应注意的是,区间大小确定核1400可以可选地在本文中所公开的算术编码器或算术解码器中的任一者中使用,并且也在本文中所公开的视频编码器或视频解码器中的任一者中使用。
15.根据图15的区间大小确定核
图15示出了根据本发明的实施例的区间大小确定核1500的示意性框图。
区间大小确定核1500被配置为接收一个或多个状态变量值,该一个或多个状态变量值例如可以是更新状态变量值。例如,一个或多个状态变量值1510可以包括组合状态变量值。此外,区间大小确定核1500被配置为提供区间大小值1520,该区间大小值例如可以是子区间宽度值,例如,RLPS
区间大小确定核1500包括可选的映射和/或舍入,该映射和/或舍入用于确定一个状态变量值,该状态变量值表示多个先前处理的(例如,先前编码的或先前解码的)符号值的统计。一般而言,算术编码器被配置为根据组合状态变量值(例如,根据一个更新的组合状态变量值1510)或根据其缩放和/或舍入版本来计算子区间宽度值(例如,区间大小值1520)来对要编码或要解码的符号值进行算术编码或算术解码。区间大小确定核1500包括例如一维查找表1550,该一维查找表用于将一个状态变量值(例如,组合状态变量值)或其缩放和/或舍入版本映射到概率值上。例如,一维查找表1550的条目包括用于组合状态变量值的值域的不同值区间的概率值。此外,区间大小确定核包含量化1560,该量化被配置为将描述(例如,在要编码的符号值的算术编码之前,或在要解码的符号值的算术解码之前)的算术编码或算术解码的编码区间的大小的编码区间大小信息1512量化到量化等级上。因此,提供了量化的编码区间大小信息1562。此外,存在缩放/乘法1570,该缩放/乘法确定概率值与量化等级(或者更精确而言,量化的编码区间大小信息1562)之间的乘积(例如,使用预计算乘积的查找,或者使用乘法)。例如,通过取决于状态变量值或其缩放和/或舍入版本选择一维查找表1550的条目来提供概率值。该概率值1552接着可以取决于(量化)编码区间大小信息1562(即,取决于“量化等级”)缩放,其中,该缩放可以对应于概率值与量化等级之间的乘积的确定。因此,以有效方式提供了区间大小值1520,其中,使用一维查找表是足够的。
然而,应注意的是,在此描述的区间大小确定核1500可以可选地由本文中所描述的特征、功能性和细节中的任一者单独地并以组合方式补充。此外,应注意的是,区间大小确定核1500现在可以在本文中所描述的算术编码器和算术解码器中的任一者中使用,也可以在本文中所描述的视频编码器及视频解码器中的任一者中使用。
16.根据图16的视频解码器
图16示出了根据本发明的实施例的视频解码器1600的示意性框图。
视频解码器1600被配置为接收编码的视频信息,并且基于该编码的视频信息来提供解码的视频信息(或者,解码的视频内容)。
编码的视频信息1610(可以被视为视频比特流)例如可以包括切片类型信息,并且也可以包括二进制序列的编码表示。可选地,编码的视频信息1610可以包括附加信息,然而,附加信息对于本发明并非是必要的。
一般而言,视频解码器被配置为对多个视频帧(例如,视频帧序列)进行解码,并且视频解码器例如可以被配置为对被细分为一组一个或多个切片(优选地,被细分为多个切片)的视频帧进行解码。该视频解码器例如可以被配置为评估切片类型信息,以选择用于解码切片的操作模式(例如可以由“视频重构”块1680执行),其中该切片类型信息包括在编码的视频信息1610中,且其指示使用独立编码模式还是使用单预测性模式还是使用双预测性模式来对切片进行编码,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的像素的一个块对像素块的预测,在双预测性模式中,存在基于一个或多个先前帧的像素的两个或更多个块对像素块的预测。
视频解码器1600包括算术解码器1620,该算术编码器例如被配置为基于二进制序列的编码表示来提供解码的二进制序列1622(以供“视频重构”块使用),该编码表示包括在编码的视频信息1610中。该算术解码器优选地包括第一源静态值确定1630和第二源统计值确定1640。因此,算术解码器1620被配置为:使用第一窗大小(或者,使用第一时间常数)来确定第一源统计值1632(例如,第一状态变量值)(其中例如,可以使用如本文中所描述的状态变量更新);并且使用第二窗大小(或者,使用第二时间常数)来确定第二源统计值1642(例如,第二状态变量值)(其中例如,可以使用如本文中所描述的状态变量更新)。该算术解码器可选地也包括组合器1650。因此,该算术解码器可被配置为基于第一源静态值并基于第二源统计值来确定组合的源统计值1652(例如,组合状态变量值)。
此外,算术解码器1620优选地包括范围值确定1660(例如可以包括本文中所描述的区间大小确定核或如本文中所描述的区间大小确定中的任一者)。因此,该算术解码器可以被配置为基于组合的源统计值1652(或者,基于第一统计值和第二源统计值)来确定用于区间细分的一个或多个范围值(或者,如本文中所描述的区间大小信息),该区间细分用于将二进制序列的编码表示(包括在编码的视频信息1610中)映射到解码的二进制序列1622(由视频重构块1680使用)上。
优选地,算术解码器1620也包括算术解码核1670(例如可以是块或单元),该算术解码核从范围值确定1660接收一个或多个范围值1662,并且其使用这些范围值从包括在编码的视频信息1610中的编码的二进制序列中导出解码的二进制序列1622。
此外,该视频解码器例如可以包括视频重构块(或者,单元)1680,该视频重构块(或者,单元)接收解码的二进制序列1622并基于解码的二进制序列1622来提供解码的视频内容1612(可能考虑如切片类型信息的附加控制信息)。
总之,算术解码器1600接收编码的视频信息1610并执行二进制序列的编码表示的算术解码,以导出解码的二进制序列1622。该算术解码利用关于解码的二进制序列1622中的二进制值的概率的知识。算术解码核1670通过依赖于定义区间细分的范围值1662来考虑关于解码的二进制序列1622内的二进制值的概率(或者,估计的概率)的该知识。简言之,算术解码核可以使用范围值1662来定义不同区间(例如,在0与1之间,或者在一系列整数值的范围内)。例如,算术解码核可以将二进制序列的编码表示解译为位于使用范围值定义的区间中的一个区间中的数的表示。通过识别由二进制序列的编码表示所表示的数位于区间中的哪一个中,算术解码核1670可以推断已使用二进制序列的编码表示对哪个比特或哪个比特序列进行了编码。
然而,应注意的是,算术解码核1670的该解释仅应被视为非常简短且一般的解释。关于算术解码核的细节例如可以见于标准H.264和H.265中。然而,也可以从该文献中看出不同概念(用于算术解码核的操作),并且算术解码核的细节与本发明并非特别相关。
然而,为了获得合适的范围值(允许高比特率效率),算术解码器1620(或者一般而言,视频解码器)使用不同窗大小来确定两个源统计值1632、1642(其中,“窗大小”定义解码的二进制序列1622的多个解码的二进制值上的平滑化的程度)。此外,为了增加提供给算术解码核1670的范围值的可靠性,第一源统计值1632和第二源统计值1642在一些实施例中被组合为组合的源统计值1652。
因此,可以说视频解码器1600提供了高效率,因为由算术解码核1670使用的范围值良好地适应于比特值(例如,解码的二进制序列1622内的比特值“0”和“1”)的实际概率。
作为附加备注,应注意的是,也可以修改视频解码器1600。在备选实现中,第二源统计值确定1640可以由提供的固定值(可以独立于解码的二进制序列,但是可以取决于一个或多个参数)替换。在该情况下,算术解码器可选地被配置为将第一源统计值1632与固定的非零值组合以便获得组合的源统计值1652。已发现,这样的简化在一些情况下会带来良好的结果,并且例如可以避免组合的源统计值的不适当的强烈变化。换言之,通过将固定的贡献引入到组合的源统计值的确定中,可以实现组合的源统计值可以不再很大程度地偏离该固定值。因此,如果偶然地在解码的二进制序列1622内存在相同的比特值的较长序列,则对解码的二进制序列的统计内的一些“后见之明”可以用于避免编码效率的强降级。
作为附加备注,应注意的是,算术解码器(和算术解码器的各个块)的功能性可以通常也被视为全部视频解码器的功能性。换言之,在本文中被描述为算术解码器的功能性的功能性也可以由视频解码器的其他块执行。
此外,应注意的是,根据图1的视频解码器1600可以由本文中所描述的特征、功能性和细节中的任一者单独地并以组合方式补充。
17.根据图17的视频解码器
图17示出了根据本发明的实施例的视频解码器1700的示意性框图。
视频解码器1700被配置为接收编码的视频信息1710(例如,视频比特流),并且基于该编码的视频信息来提供解码的视频内容1712(例如,视频帧序列)。编码的视频信息1710例如可以包括切片类型信息,如本文中所描述的那样。编码的视频信息1710可以还包括配置信息,该配置信息也可以被视为控制信息。此外,编码的视频信息1710可以包括二进制序列的编码表示。
在图17中,示出了视频解码器1700的两个主要块,即,算术解码器1720和视频重构1780。然而,应注意的是,视频解码器的功能性的分布不受固定块结构约束,但是也可以在广泛范围内进行修改。而且,应注意的是,视频解码器的实际实现可以具有本领域技术人员熟知的附加块和/或功能性。
算术解码器1720接收二进制序列的编码表示1711。然而,算术解码器(或者,可以在算术解码器外部的控制块)可以可选地接收切片类型信息和配置信息(或者,控制信息)。具体地,可选地考虑了切片类型信息和配置信息或控制信息中的一些或全部,算术解码器1720基于二进制序列的编码表示1711将解码的二进制序列1722提供给视频重构1780。
在下文,将更详细地描述算术解码器1720的功能性。算术解码器包括算术解码核1770,该算术解码核接收二进制序列的编码表示1711并提供解码的二进制序列1722。算术解码核确定二进制序列的编码表示1711表示解码的二进制序列1722的哪些比特值。出于该目的,算术解码核1770检查由二进制序列的编码表示1711表示的数位于多个数的范围的哪个区间中。取决于由二进制序列的编码表示1711所表示的数位于多个(至少两个)区间中的哪个区间的决策,而识别解码的二进制序列1722的某一比特值或比特值的组或符号。
出于导出解码的二进制序列1722的目的,算术解码核接收关于区间的信息,该关于区间的信息通常对应于比特值的概率的一些程度。在当前情况下,算术解码核1770接收用于区间细分的“范围值”或“区间大小信息”1762(即,用于定义要由算术解码核1770使用的数范围的区间的范围值1762)。具体地,应注意的是,算术解码核1770例如可以与在根据标准H.264的视频编码器/解码器中使用或在根据标准H.265的视频编码器/解码器中使用的算术解码核相似或相同。然而,应注意的是,也可以使用用于实现算术解码核1770的不同方法。
鉴于以上论述,显而易见的是,算术解码器1720的一项重要的功能性是提供定义用于算术解码核1770的区间细分的范围值或区间大小信息1762。一般而言,可选地,考虑定义例如初始化值、“窗大小”、“窗大小调整”等的参数的一些控制信息,算术解码器1720根据解码的二进制序列1722的先前解码的二进制值来导出这些范围值1762。
在算术解码器1700中,使用了两个源统计值确定块(或者,单元)1730、1740(例如可以对应于本文中所描述的状态变量更新)。例如,第一源统计值确定块1730接收解码的二进制序列1722的一个或多个先前解码的二进制值(或者,符号值)(也以xt标示),并且基于该一个或多个先前解码的二进制值来提供第一源统计值1732(可以对应于本文中所描述的第一状态变量值)。第一源统计值确定块例如可以接收一些配置信息(如常数或变量BITSa),该配置信息定义用于表示源统计值1732的比特的数量,以及常数或变量na,其定义要由源统计值确定块1730使用的“窗大小”,和/或本文中所描述的任何其他参数。例如,第一源统计值确定块1730可以以递归方式确定第一源统计值1732,其中,窗大小na或参数ni k在第一源统计值或第一状态变量值1732的确定中确定解码的二进制序列1722的最近解码的二进制值的加权。
例如,第一源统计值确定块1730的功能性与具有某一个窗大小的滑动平均值的形成相似,除了使用引入一些“无限冲激响应”特性的递归算法的事实以外。因此,第一源统计值1732没有精确表示滑动窗求和运算或滑动窗平均运算的结果,而相反,应被视为“虚拟滑动窗”运算,这是由于结果非常相似。
此外,第二源静态值确定块1740在与第一源静态值确定块1730相比时执行相似操作。然而,第二源统计值确定块1740通常使用不同参数(例如,不同窗长度nb和/或不同比特数参数BITSb或不同参数ni k),并且因此提供了第二源统计值或第二状态变量值1742,这通常与第一源统计值或第一状态变量值1732不同。例如,源统计值1732、1742之一可以是短期(或者,较短期)平均源统计值,并且源统计值1732、1742之一可以是长期(或者,较长期)平均源统计值。
应注意的是,源统计值确定块1730、1740例如可以执行如针对本文中的状态变量更新解释的功能性。此外,应注意的是,在一些实施例中,不同计算规则也可以用于源统计值确定块1730、1740中。
算术解码器1720可选地还包括组合的源统计值确定块(或者,单元)250,该组合的源统计值确定块(或者,单元)被配置为接收第一源统计值1732和第二源统计值1742。源统计值组合块1750基于第一源统计值和第二源统计值来提供组合的源统计值1752。例如,源统计值组合块1750可以形成第一源统计值1732的总和或平均值和第二源统计值1742的总和或平均值,从而获得组合的源统计值1752。
然而,在导出组合的源统计值1752时,源统计值组合块1750也可以将不同加权应用于第一源统计值1732和第二源统计值1742,其中,不同加权甚至可以在切片内或在不同切片之间变化。
例如,源统计值组合块1750可以执行组合751或组合892的功能性。然而,该功能性的变化也是可能的。
例如,在一个(备选)实施例中,源统计值组合块1750将第一统计值中的仅一个与固定值组合,从而获得组合的源统计值或组合状态变量值1752。这样的概念可以是有利的,以避免组合的源统计值1752与解码的二进制序列1722内的二进制值的预期概率偏离过多。
算术解码器1720被配置为基于组合的源统计值或组合状态变量值1752或备选地基于两个或更多个状态变量值来导出用于区间细分的范围值1762(将被提供给算术解码核1770)。
该处理步骤例如可以被视为“范围值确定”。例如,范围值确定可以包括可选的值处理1766,该值处理接收组合的源统计值1752并基于该组合的源统计值来提供概率值或状态索引值。例如,值处理1766可以将组合的源统计值1752的值的范围映射到0与1之间的范围上,或者到0与0.5之间的范围上,或者到整数索引值上。
可选地,值处理1766可以提供信息1767,该信息可以是指示下一解码值(例如,解码的二进制序列1722的解码值)更可能取值“1”还是更可能取值“0”的二进制信息。可选地,算术解码器(或者,范围值确定)可以包括映射表1769。例如,映射表1769可以接收标示表条目的索引值(例如,pStateIdx)。因此,映射表1769可以提供与由索引值(例如,pStateIdx)标示的所述表项目对应的一个或多个范围值1762。因此,通过导出“状态索引值”(例如,pStateIdx)并通过基于状态索引值来评估映射表,可以基于组合的源静态值1752来提供用于区间细分的一个或多个范围值。
映射表1769例如可以具有与在标准H.264或标准H.265中描述的映射表相同的结构。然而,可选地,映射表的内容可以适应于视频解码器的具体细节。具体地,映射表的条目可以适于在具体视频解码器中预期的统计性质。
然而,应注意的是,例如可以使用参考图4至图15中的任何附图描述的区间大小确定或使用区间大小确定核或使用状态变量更新来根据本文中所公开的任何概念执行基于一个或多个状态变量值或基于组合状态变量值来导出区间大小信息。
并且,应注意的是,在此所述的算术解码核可以对应于本文中所公开的任何算术解码核。
算术解码器(或者一般而言,视频解码器)也包括控制块1790,该控制块可以接收控制信息或配置信息,并且其可以基于该控制信息或配置信息来调整用于提供范围值的参数(并且可能也有其他参数,例如,由算术解码核1770使用的附加参数)。例如,控制块1790可以接收可以包括在编码的视频信息1710中的切片类型信息、“cabac init flag”、“ws_flag”和“ctu_ws_flag”中的一个或多个。
此外,控制1790例如可以取决于控制信息而调整窗大小参数na、nb或ni k,和/或比特大小参数BITSa、BITSb。具体地,控制块1790也可以考虑当前上下文模型。关于该问题,应注意的是,对于要解码的已解码的二进制序列1722的每个比特(或者,比特组),可以决定要使用哪个上下文模型。例如,要使用哪个上下文模型的决策可以基于哪个类型的信息(解码参数、变换系数等)由各个比特(或者,比特组)表示的事实。例如,控制块1790可以被配置为识别已解码的二进制序列1722的语法,从而识别接下来将对哪个语法元素(或者,语法元素的哪个部分,例如,最高有效比特还是最低有效比特等)进行解码。因此,可进行不同的上下文模型之间的选择。而且,应注意的是,可以取决于上下文模型而选择窗大小参数和/或比特大小参数和/或任何其他的参数。此外,也应注意,源统计值1732、1742或组合的源统计值1752可以与具体上下文模型相关联,使得不同源统计值或组合的源统计值(或者,状态变量值或组合状态变量值)可以用于不同的上下文模型。例如,可以基于已使用各个上下文模型解码的已解码的二进制序列1722的已解码的二进制值选择性地提供与某一上下文模型相关联的源统计值。换言之,可以针对不同的上下文模型进行单独的独立处理和关于参数na、nb、ni k、BITSa、BITSb等的单独(可能独立)决策。
关于控制单元1790的功能性,应注意的是,控制单元例如可以根据下文所述的机制来确定参数na、nb、ni k、BITSa、BITSb。例如,可以取决于切片类型信息和/或取决于cabacinit flag和/或取决于ws_flag和/或取决于ctu_ws_flag而选择窗大小参数na、nb、ni k。并且,在一些实施例中,可以取决于一些配置信息而选择比特大小参数BITSa、BITSb。然而,在其他实施例中,比特大小参数可以是固定的。关于用于参数的调整的机制,例如,对以下论述进行参考。
现在参考视频重构块1780,应注意的是,视频重构块1780通常接收解码的二进制序列1722以及也接收配置信息的至少一些元素。例如,视频重构1780可以基于解码的二进制序列1722来重构整数参数和/或浮点参数和/或图像数据。例如,可以存在定义解码的二进制序列的某一比特或部分应如何映射到整数参数上或映射到浮点参数上或映射到图像数据(例如,变换系数等)上的映射规则。因此,视频重构块1780重构用于根据已解码的二进制序列1722来重构视频帧的信息。接着,视频重构块可以基于重构信息(根据已解码的二进制序列1722而导出)来生成图像信息。
例如,视频重构1780可以包括与在标准H.264或标准H.265中描述的相同的功能性。然而,其他方法也可以用于视频重构,该等方法适应于基于解码的二进制序列(并且有可能基于附加配置信息或控制信息)来提供解码的视频内容。因此,视频重构1780提供了解码的视频内容1712,该解码的视频内容可以采用视频帧序列的形式。
总之,已提供根据本发明的实施例的视频解码器的概述。然而,应注意的是,存在用于功能块(例如,用于源统计值确定块1730、1740,用于源统计值组合块1750,用于值处理块1766,用于映射表1769,以及用于算术解码核1770)的不同实现。而且,对于视频重构块1780和控制块1790,不同实施是可能的。
然而,也应注意,本文中所描述的功能块可以由在本申请中全部公开的特征、功能性和细节中的任一者补充。并且,应注意的是,本申请内公开的特征、功能性和细节可以单独地或以组合方式引入,从而扩展视频解码器1700的功能性。
18.另外的实施例
在下文中,将描述根据本发明的另外的实施例。
除了其他特征、功能性和细节之外,将描述使用有限状态机的上下文模型更新方法,该上下文模型更新方法可以单独地或与本文中所公开的所有特征、功能性和细节组合地使用。
引言
在下文中,将在例如章节“根据状态变量来导出概率估计”和“更新状态变量”和“优选实施例”中描述不同的本发明的实施例和方面。
然而,在任何其他的章节中描述的特征、功能性和细节也可以可选地被引入到根据本发明的实施例中。
并且,在上文提及的章节中描述的实施例可以单独地使用,并且也可以由另一章节中的特征、功能性和细节中的任一者补充。
而且,应注意的是,本文中所描述的个别方面可以单独地或组合地使用。因此,可以将细节添加到所述各个方面中的每一方面,而不将细节添加到所述方面中的另一者。
具体地,在权利要求中也描述了实施例。权利要求中所描述的实施例可以可选地由如本文中所描述的特征、功能性和细节中的任一者单独地和组合地补充。
也应注意,本公开内容明确地或隐含地描述了可在视频编码器(用于提供输入视频信号的编码表示的装置)中使用并可以在视频解码器(基于视频信号的编码表示来提供视频信号的解码表示的装置)中使用的特征。因此,本文中所描述的特征中的任一者可以用于视频编码器的上下文和视频解码器的上下文。
此外,本文中所公开的与方法相关的特征和功能性也可以在装置(被配置为执行这样的功能性)中使用。此外,本文中关于装置所公开的任何特征和功能性也可以用于对应的方法中。换言之,可以通过关于装置所描述的特征和功能性中的任一者来补充本文中所公开的方法。
并且,本文中所描述的特征和功能性中的任一者可以在硬件或软件中实现,或者使用硬件与软件的组合来实现,如将在章节“实现备方案”中描述的那样。
前言
上下文模型更新是通过提供使编码引擎适应于基础源统计的可能性的有效二进制算术熵编码器的关键特征。
在本发明中,每个上下文模型配备有例如独立概率估计级,该独立概率估计级为符号序列的每个符号提供用于熵编码或解码的概率估计。该上下文模型更新方法的基本概念在于维护每个上下文模型的一个或多个状态变量,该一个或多个状态变量共同地表示当前概率估计。为了适应于符号序列的统计,频繁地更新上下文模型的状态变量(例如,在状态变量更新中)。例如,在每个符号的编码之后。
除了其他方面之外,本发明包括两个关键方面。第一方面解决了根据状态变量来导出概率估计(或者,区间大小信息)的方式。第二方面解决了在出现符号之后更新状态变量的方式。这些方面可以可选地组合地使用。
本发明可以可选地与二进制算术编码引擎组合,并且也与任何其他熵编码引擎组合,该任何其他熵编码引擎需要用于要编码或解码的二进制符号的各个概率估计。例如,本发明也可以与PIPE编码概念组合。
实现细节
将熵编码或解码应用视为例如采用一个或多个上下文模型c1,...,cM(M≥1)的视频压缩算法,其中要编码或解码的大部分二进制符号明确地与上下文模型之一相关联。为了对这样的二进制符号进行编码或解码,相关联的上下文模型ck提供了熵编码级,其中,二进制符号的概率估计pk是“1”。为了产生良好的压缩效率,通过对二进制符号进行熵编码所产生的比特流的部分应接近用于“1”的-log2 pk和用于“0”的-log2(1-pk)。
对于每个上下文模型ck,通过N≥1来维持一个或多个状态变量
Figure BDA0002965036250001091
(或者,状态变量值)。每个状态变量
Figure BDA0002965036250001092
被实现为例如带符号的整数值并表示概率值
Figure BDA0002965036250001093
上下文模型c_k的概率估计pk应被定义为例如上下文模型的所有状态变量的概率值
Figure BDA0002965036250001094
的加权和。
状态变量优选地应但不必须具有以下性质:
1.如果
Figure BDA0002965036250001095
Figure BDA0002965036250001096
2.用于
Figure BDA0002965036250001101
的较大值对应于较大
Figure BDA0002965036250001102
3.
Figure BDA0002965036250001103
因此,负的状态变量可以对应于
Figure BDA0002965036250001104
一般而言,可以针对每个上下文模型的每个状态变量指定不同函数P(·)。
概要1
本发明允许在许多情形中非常有效地使用比特移位运算。当x是整数且y是2的幂时,可以通过简单比特移位运算来实现表达式
Figure BDA0002965036250001108
当x为负时,在针对x采用二的补数表示时,这也成立。
概要2
可以在无进一步通知的情况下以固定或浮点算术来实现储存非整数数字(例如,概率值、加权因子、查找表元素等)的任何变量。这引入了对于本发明的每个特定实现可以不同的舍入运算。
用于使状态变量与概率值相关联的示例性配置
存在使状态变量与概率值相关联的许多适用方式,即,实现P(·)的方式。例如,可以通过下式来实现与HEVC的概率估计器相当的状态表示:
Figure BDA0002965036250001105
Figure BDA0002965036250001106
是加权因子。
α是参数,其中0<α<1。
为了实现与HEVC相当的配置,设定了α≈0.949217,并且对于所有i和所有k,
Figure BDA0002965036250001107
该示例性配置应给出关于可以如何定义状态变量的一些见解。一般而言,不必定义P(·),因为其不直接使用,如将见于下文中。反而,其经常是由于本发明的各个部分的实际实现而产生的。
状态变量的初始化
在通过上下文模型对第一符号进行编码或解码之前,可选地通过可以针对压缩应用优化的合理值来初始化所有状态变量。
根据状态变量来导出概率估计
对于对符号进行编码或解码,概率估计是根据上下文模型的状态变量而导出的。在下文中呈现了两个备选方法。方法1比方法2产生更准确的结果,但是也具有更高的计算复杂度。
方法1
该方法由两个步骤组成。首先,上下文模型的每个状态变量
Figure BDA0002965036250001111
被转换为概率值
Figure BDA0002965036250001112
其次,概率估计pk被导出作为概率值
Figure BDA0002965036250001113
的加权和。
步骤1:
采用查找表LUT1用于例如根据等式(1)将状态变量
Figure BDA0002965036250001114
转换为对应的概率值
Figure BDA0002965036250001115
Figure BDA0002965036250001116
LUT1是包含概率值的查找表;
Figure BDA0002965036250001117
是使
Figure BDA0002965036250001118
适应于LUT1的大小的加权因子。
例如可以通过块882和884来执行该步骤。
步骤2:
例如根据下式来根据概率值
Figure BDA0002965036250001119
导出概率估计pk
Figure BDA00029650362500011110
Figure BDA00029650362500011111
是控制各个状态变量的影响的加权因子。
例如可以通过块886来执行该步骤。
方法2
在下文中呈现了用于根据状态变量来导出概率估计的备选方法。该备选方法产生了较不准确的结果且具有较低的计算复杂度。首先,例如根据下式来导出状态变量的加权和sk
Figure BDA00029650362500011112
Figure BDA0002965036250001121
是控制每个状态变量的影响的加权因子。
例如可以通过块892来执行该步骤。
其次,例如根据下式来从状态变量sk的加权和导出概率估计pk
Figure BDA0002965036250001122
LUT2是包含概率估计的查找表。
ak是将sk适应于LUT2的大小的加权因子。
例如可以通过块894来执行该步骤。
对方法1和方法2的可选修改
对于软件实现,其可以在尽可能多的运算可移位到查找表中的情况下增加产出率。这在等式(1)通过下式替换的情况下对于方法1变得更简单:
Figure BDA0002965036250001123
对于方法2,等式(2)通过下式替换:
Figure BDA0002965036250001124
对于两个等式,该修改使得可以将情况差异整合到查找表中,这仅需要如前所述的元素的数量的二倍。然而,为了实现高产出率,缩减运算的数量同时增加的查找表大小的相关性可以较低这样可能有所帮助。
在本发明中,在无进一步通知的情况下,用于方法1和方法2的可选修改可以可选地应用于方法1和方法2的所有应用。
与CABAC的二进制算术编码引擎(M编码器)的组合(可选的)
CABAC的M编码器采用2D查找表以替换编码区间的区间细分所需的乘法。使R是在二进制符号的算术编码之前的编码区间。R应例如在区间[256,510]中。要编码的符号与上下文模型ck相关联,该上下文模型用于导出概率估计pk以进行二进制算术编码或解码。需要分别导出两个子区间R·pk和R·(1-pk)的宽度。例如,CABAC的M编码器(充当示例)通过采用2D查找表来避免这些乘法。回顾一下,概率估计pk是符号为1的估计的概率。然而,M编码器使用两个符号0或1的较小概率的概率来导出其子区间宽度RLPS。概率较高的符号RMPS的子区间宽度接着可以容易地通过从R减去RLPS而导出。
要注意的是,RLPS可以不降至低于取决于M编码器实现的预定义最小可允许值。例如,该最小可允许值可以是2、3或4。对于文本的其余部分,应假设的是,在将RLPS重复地增加1(如果有的话),直至其至少与预定最小可允许值一样大为止。这对应于限幅运算并可以被实现为单独的计算步骤。将该步骤直接并入到在下文中呈现的方法(如调整查找表值)中的一些中可以是可能的。
概率较低的符号pLPS的概率被给定为:
pLPS=min(pk,1-pk)。
例如,查找表RangeTabLPS可以具有8×32或8×16个元素,用于R的所允许的值被量化到8个单元且pLPS被量化到32或16个单元。然后,
RLPS=RangeTabLPS[Qp(pLPS)][Qr(R)]。
Qp(·)和Qr(·)分别是用于pLPS和R的量化函数。
备选方案1
备选地,查找表probTabLPS可以具有32或16个元素,用于R的所允许的值被量化到8或16个单元且pLPS被量化到32或16个单元。接着,
Figure BDA0002965036250001131
Qp2(·)和Qr2(·)分别是用于pLPS和R的量化函数。
通常期望的是,可以容易地实现两个量化函数。只要适当地选择RangeTabLPS的元素,即可以使用任意量化函数。
这可以用于本发明。
回顾一下,有必要采用查找表LUT1或LUT2以导出用于上下文模型的概率估计。这些查找表可以并入于RangeTabLPS中(或者一般而言,并入于与M编码器的查找表不同的2维查找表中)。
代替方法1和方法2中的计算概率估计,例如,针对
Figure BDA0002965036250001147
的给定值直接计算子区间宽度,如下:
对于方法1,在等式(1)和等式(7)的二边乘以R,从而产生
Figure BDA0002965036250001141
Figure BDA0002965036250001142
接下来,用包含用于不同量化值Qr(R)的期望数的预计算乘积R·LUT1的2D查找表来替换R·LUT1。(实施例的实际实现的示例)
所得2D查找表例如可以在块736和738中使用。
对于方法2,在等式(2)二边乘以R,从而产生
Figure BDA0002965036250001143
接下来,用包含用于不同量化值Qr(R)的期望数的预计算乘积R·LUT2的2D查找表来替换R·LUT2(实施例的实际实现的示例)。在LUT3是这样的2D查找表的情况下,等式(8)变为
Figure BDA0002965036250001144
如可从等式(9)看出的那样,LUT3将例如RangeTabLPS和LUT2并入在一个单一查找表中。
LUT3或等式(9)例如可以在块756中使用。
备选地,LUT3可以由LUT4(1D)和根据被呈现为备选方案1的方案的乘法运算替换。
Figure BDA0002965036250001145
函数Qr2(R)例如可以被定义为
Figure BDA0002965036250001146
其中u、v和w取决于压缩应用。
例如,u=5,v=1以及w=3。
与上下文模型ck相关联的二进制符号的算术编码接着仅需要导出根据等式(10)的状态变量sk的加权和并执行等式(9)以便导出子区间宽度R·pk
相同论证适用于方法1。
在下文中,呈现了有效地实现RangeTabLPS(或者,用于导出区间大小信息)的另外的(可选的、备选的)方式。代替储存整个查找表,根据需要在操作中计算元素。出于该目的,应定义新的查找表BaseTabLPS。其包含可以用于通过采用简单运算来导出RangeTabLPS的每个元素的值。
一般而言,例如,可以在块870中评估RangeTabLPS[i][j],其中,例如可以使用BaseTabLPS和对应的缩放函数Scal(x,y)(使用BaseTabLPS的实施例)或使用ProbTabLPS和对应的缩放函数Scal(x,y)(使用ProbTabLPS的实施例)(预先或在操作中(on-the-fly))来获得RangeTabLPS的条目。
在优选实施例(例如,使用BaseTabLPS的实施例)中,BaseTabLPS应具有大小μ·λ且大小μ′·λ的RangeTabLPS应根据BaseTabLPS来如下生成:
Figure BDA0002965036250001151
Scal(x,y)是缩放函数。例如,μ=16,λ=8,μ′=32,
Figure BDA0002965036250001152
Figure BDA0002965036250001153
并且
BaseTabLPS[16][8]={
{125,140,156,171,187,203,218,234,},
{108,121,135,148,162,175,189,202,},
{94,105,117,129,141,152,164,176,},
{81,91,101,111,121,131,141,151,},
{71,79,88,97,106,115,124,133,},
{61,68,76,83,91,99,106,114,},
{53,59,66,72,79,86,92,99,},
{46,51,57,63,69,74,80,86,},
{40,45,50,55,60,65,70,75,},
{35,39,43,48,52,56,61,65,},
{31,34,38,42,46,50,54,58,},
{27,30,33,37,40,43,47,50,},
{24,27,30,33,36,39,42,45,},
{21,23,26,28,31,34,36,39,},
{18,20,22,24,27,29,31,33,},
{16,18,20,22,24,26,28,30,},
}。(示例)
换言之,例如,RangeTabLPS的上半部分由BaseTabLPS的值组成(或者,包含这些值),其中,向下舍入运算被应用于每个元素。例如,RangeTabLPS的下半部分由BaseTabLPS的值组成(或者,包含这些值),其中,每个元素被除以8(或者,被除以另一数字),(可选地)接着是向下舍入运算,其对应于例如右移位3。
该方法仅需要储存小于RangeTabLPS的BaseTabLPS,并且该方法利用RangeTabLPS的行中的值例如随着行增加而指数地衰减的事实。指数衰减取决于参数α。
在另一示例(例如,使用BaseTabLPS的另一实施例)中,μ=4,λ=8,μ′=32,
Figure BDA0002965036250001161
并且
BaseTabLPS[4][8]={
{121,136,151,166,181,196,211,226,},
{100,112,125,137,150,162,175,187,},
{83,93,103,114,124,134,145,155,},
{70,78,87,96,105,113,122,131,}
}。(示例)
如果选择α,则可以使用该配置,使得RangeTabLPS的行的值每四行减半。要注意的是,BaseTabLPS中的值例如可以仅从相关联的RangeTabLPS中提取。
该方法涉及BaseTabLPS可以(可选地)与在等式(11)和相关联的优选实施例中定义的备选方案1组合。备选方案1可以被看作用于根据一个常数和计算运算(用于各行)来导出RangeTabLPS的行的方法。由于BaseTabLPS包含例如RangeTabLPS的缩放行(忽略舍入),所以可以应用备选方案1以导出BaseTabLPS。
在优选实施例中(例如,在另一实施例中,例如,在使用ProbTabLPS的实施例中),定义了大小为μ的probTabLPS。大小为μ·λ的BaseTabLPS应例如根据probTabLPS来生成,如下:
Figure BDA0002965036250001171
Figure BDA0002965036250001172
例如,μ=16,λ=8,μ′=32,
Figure BDA0002965036250001173
R∈[256..510],
Figure BDA0002965036250001174
并且
probTabLPS[16]={
125,
108,
94,
81,
71,
61,
53,
46,
40,
35,
31,
27,
24,
21,
18,
16,
}。(示例)
接着,在先前方法之后,可以根据BaseTabLPS来计算RangeTabLPS。要注意的是,例如可以通过计算BaseTabLPS的相关联值并接着应用缩放函数Scal(x,y)来在操作中计算RangeTabLPS的每个值:
Figure BDA0002965036250001181
该方法仅需要储存小于BaseTabLPS且因此小于RangeTabLPS的probTabLPS。
在相同论证之后,BaseTabLPS的一个列例如可以用于通过仅忽略BaseTabLPS和RangeTabLPS的所有其他的列来仅导出RangeTabLPS的一列。RangeTabLPS的所导出的列接着例如可以用于通过采用根据等式(11)的备选方案1来导出RangeTabLPS的其余列。
在优选实施例中,定义了大小为μ的probTabLPS。大小为μ′·λ的RangeTabLPS应根据probTabLPS来生成,如下:
Figure BDA0002965036250001182
要注意的是,
Figure BDA0002965036250001183
(示例)
更新状态变量(发明方面)
在符号的编码或解码之后,可以更新上下文模型的一个或多个状态变量,以便追踪符号序列的统计行为。这例如可以在块640中进行。
该更新例如如下地进行:
Figure BDA0002965036250001184
A是储存整数值的查找表。
Figure BDA0002965036250001185
Figure BDA0002965036250001186
是控制更新“灵活性”的加权因子。
z是偏移量,该偏移量确保仅使用非负值来存取查找表A。
如下文将讨论的那样,查找表中的值可以被选择为使得
Figure BDA0002965036250001187
保持在特定给定区间中。
备选地,可以引入在等式(3)的每次执行之后进行的限幅运算,例如,如下:
Figure BDA0002965036250001191
Figure BDA0002965036250001192
是用于
Figure BDA0002965036250001193
的最大允许值
Figure BDA0002965036250001194
是用于
Figure BDA0002965036250001195
的最小允许值
为了相对于压缩应用优化查找表A,也可以用计算运算来替换由查找表A的值近似的所假设的函数。例如,
Figure BDA0002965036250001196
其中
Figure BDA0002965036250001197
Figure BDA0002965036250001198
是控制概率更新行为的参数。
要注意的是,创建查找表A的该方式不包含如上所述的限幅运算。现在,可以通过评估等式7中的
Figure BDA0002965036250001199
offset的不同组合的压缩效率并随后以期望的值
Figure BDA00029650362500011910
Figure BDA00029650362500011911
进行取样来优化查找表A。
特定编码器或解码器应用具有使用计算运算还是使用等效表(包含通过计算运算导出的值)的选择。
在用于优化用于视频压缩上下文的查找表A中,使用了可能配置的以下范围:
Figure BDA00029650362500011912
offset={24,25...211}
Figure BDA00029650362500011913
Figure BDA00029650362500011914
Figure BDA00029650362500011915
Figure BDA00029650362500011916
Figure BDA00029650362500011917
Figure BDA00029650362500011918
对等式(3)的可选修改
两个可选修改可以应用于等式(3),以便在优化的软件实现中实现较高产出率。
对于第一可选修改,等式(3)用下式替换:
Figure BDA00029650362500011919
对于第二可选修改,等式(3)用下式替换:
Figure BDA0002965036250001201
对于第一可选修改和第二可选修改,等式(3)用下式替换:
Figure BDA0002965036250001202
通过采用第一可选修改和第二可选修改的组合,将情况差异整合到查找表A中成为可能,这仅需要如前所述的元素的数量的两倍。然而,为了实现高产出率,缩减运算的数量同时增加的查找表大小的相关性可以较低可能有所帮助。
在本发明中,在无进一步通知之情况下,两个可选修改(单独地或组合地)可以应用于等式3的所有应用。
优选实施例(细节是可选的)
在优选实施例中,使用了以下配置:
上下文模型M的数量取决于压缩应用。
方法2用于根据状态变量来导出概率估计。
等式(3)用于更新状态变量。
不使用根据等式(6)的可选的限幅。
N=2
Figure BDA0002965036250001203
Figure BDA0002965036250001204
LUT2={0.5000,0.4087,0.3568,0.3116,0.2721,0.2375,0.2074,0.1811,0.1581,0.1381,0.1206,0.1053,0.0919,0.0803,0.0701,0.0612,0.0534,0.0466,0.0407,0.0356,0.0310,0.0271,0.0237,0.0207,0.0180,0.0158,0.0138,0.0120,0.0105,0.0092,0.0080,0.0070}
ak=2-7
A={165,146,128,110,94,79,66,54,43,34,26,20,15,11,8,5,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0}
Figure BDA0002965036250001211
Figure BDA0002965036250001212
Figure BDA0002965036250001213
Figure BDA0002965036250001214
z=16
在对符号进行编码之前,
Figure BDA0002965036250001215
应使用来自区间[-127,127]的值初始化,并且
Figure BDA0002965036250001216
应使用来自区间[-2047,2047]的值初始化。
对于该配置,等式(3)可以被写为:
Figure BDA0002965036250001217
Figure BDA0002965036250001218
Figure BDA0002965036250001219
处于区间[-127,127]中时,等式(4)产生用于
Figure BDA00029650362500012110
的保持在相同区间中的更新值,而不管要编码的符号值如何。
Figure BDA00029650362500012111
处于区间[-2047,2047]中时,等式(5)产生用于
Figure BDA00029650362500012112
的保持在相同区间中的更新值,而不管要编码的符号值如何。
因此,
Figure BDA00029650362500012113
例如可以通过8比特带符号的整数值来实现,并且
Figure BDA00029650362500012114
可以通过12比特带符号的整数来实现。
两个等式均在对1进行编码之后增加状态变量(增加到至多某一最大值)且在对0进行编码之后减小状态变量(减小到至少某一最小值)。然而,与等式(5)增加或减小
Figure BDA00029650362500012115
相比,等式(4)倾向于将
Figure BDA00029650362500012116
增加或减小更大量。换言之,
Figure BDA00029650362500012117
较快适应先前编码的符号,而
Figure BDA00029650362500012118
较慢适应先前编码的符号。
在另一优选实施例中,使用与先前的优选实施例相同的配置,但是第一可选修改和第二可选修改被应用于等式(3),从而产生:
Figure BDA00029650362500012119
Figure BDA0002965036250001221
Figure BDA0002965036250001222
要注意的是,查找表LUT2和A通常针对特定压缩应用而被优化。
当查找表A被优化时,以下配置与等式(7)一起使用:
Figure BDA0002965036250001223
offset=210
Figure BDA0002965036250001224
Figure BDA0002965036250001225
Figure BDA0002965036250001226
Figure BDA0002965036250001227
Figure BDA0002965036250001228
Figure BDA0002965036250001229
这导致A={161,147,133,119,105,91,77,63,49,35,29,23,17,13,9,5,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0}。
要注意的是,A已经被限幅,因此最后一个值等于0而不是4。
在另一优选实施例中,除了以下方面之外,该配置与先前的优选实施例相同:
在等式(3)的每次执行之后,利用以下参数使用根据等式(6)的限幅:
Figure BDA00029650362500012210
Figure BDA00029650362500012211
Figure BDA00029650362500012212
Figure BDA00029650362500012213
查找表A包含以下值:
A={165,146,128,110,94,79,66,54,43,34,26,20,15,11,8,5,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4}
要注意的是,仅改变查找表A的最后一个元素,并且现在,A的第二半中的所有值具有值4,这样可以有效地实现。
设想,查找表在第一个4之后被截断,并且用于该表的存取索引被限幅为最后一个表元素(实施例的可选修改)。
该技巧可以可选地被采用为用于查找表A的不同版本,只要该表末尾处的元素的数字具有相同值即可。
在另一优选实施例中,除了以下方面之外,该配置与先前的优选实施例相同:
使用具有大小为32的备选方案1
LUT4={114,100,87,75,66,58,51,45,40,35,31,27,24,21,18,16,14,13,11,10,9,8,7,7,5,5,4,4,3,3,2,2}
Figure BDA0002965036250001231
在另一优选实施例中,该配置与先前的优选实施例相同。
LUT4={114,100,87,75,66,58,51,45,40,35,31,27,24,21,18,16,14,13,11,10,9,8,7,7,5,5,4,4,3,3,2,2}
Figure BDA0002965036250001232
在另一优选实施例中,除了以下方面之外,该配置与先前的优选实施例相同:
使用具有大小为16的备选方案1
LUT4={107,82,63,48,38,29,22,17,13,11,8,7,5,4,3,2}
Figure BDA0002965036250001233
在另一优选实施例中,该配置与先前的优选实施例相同。
LUT4={107,82,63,48,38,29,22,17,13,11,8,7,5,4,3,2}
Figure BDA0002965036250001234
在另一优选实施例中,使用了以下配置:
上下文模型M的数量取决于压缩应用。
方法2用于根据状态变量来导出概率估计。
等式(3)用于更新状态变量。
不使用根据等式(6)的可选的限幅。
N=1
Figure BDA0002965036250001235
LUT2={0.5000,0.4280,0.3855,0.3472,0.3127,0.2817,0.2537,0.2285,0.2058,0.1854,0.1670,0.1504,0.1355,0.1220,0.1099,0.0990,0.0892,0.0803,0.0723,0.0651,0.0587,0.0529,0.0476,0.0429,0.0386,0.0348,0.0313,0.0282,0.0254,0.0229,0.0206,0.0186}
ak=2-2
A={26,23,20,18,15,13,11,9,7,6,5,4,3,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0}
Figure BDA0002965036250001241
Figure BDA0002965036250001242
z=16
在对符号进行编码之前,
Figure BDA0002965036250001243
应可选地使用用来自区间[-127,127]的值初始化。
在另一优选实施例中,使用方法2且针对不同的上下文模型不同地设置参数
Figure BDA0002965036250001244
和ak,以便获得用于不同的上下文模型的不同的概率更新行为。
在另一优选实施例中,使用方法1且针对不同的上下文模型不同地设置参数
Figure BDA0002965036250001245
Figure BDA0002965036250001246
以便获得用于不同的上下文模型的不同的概率更新行为,在另一优选实施例中,当使用方法1或方法2时,N=1且针对不同的上下文模型不同地设置参数
Figure BDA0002965036250001247
以便获得用于不同的上下文模型的不同的概率更新行为。
当查找表A被优化时,以下配置与等式(7)一起使用:
Figure BDA0002965036250001248
offset=210
Figure BDA0002965036250001249
Figure BDA00029650362500012410
Figure BDA00029650362500012411
Figure BDA00029650362500012412
Figure BDA00029650362500012413
Figure BDA00029650362500012414
这导致A={225,203,181,159,137,115,93,71,49,35,29,23,17,13,9,5,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,}.
要注意的是,A已经被限幅,因此最后一个值等于0而不是4。
在另一优选实施例中,当使用方法1或方法2时,N=2且针对不同的上下文模型不同地设置参数
Figure BDA0002965036250001251
Figure BDA0002965036250001252
以便获得用于不同的上下文模型的不同的概率更新行为。
当查找表A被优化时,以下配置与等式(7)一起使用:
Figure BDA0002965036250001253
offset=210
Figure BDA0002965036250001254
Figure BDA0002965036250001255
Figure BDA0002965036250001256
Figure BDA0002965036250001257
Figure BDA0002965036250001258
Figure BDA0002965036250001259
这导致A={165,151,137,123,109,95,81,67,53,39,29,23,17,13,9,5,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,}.
备选地,在该实施例中
Figure BDA00029650362500012510
也是期望的配置,这导致A={157,143,129,115,101,87,73,59,45,35,29,23,17,13,9,5,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0}。要注意的是,A已经被限幅,因此最后一个值等于0而不是4。
19.实现备选方案:
尽管在装置的上下文中描述了一些方面,但是显而易见的是,这些方面也表示对应方法的描述,其中,块或设备对应于方法步骤或方法步骤的特征。类似地,方法步骤的上下文所描述的方面也表示对应设备的对应块或项目或特征的描述。可以由(或者,使用)硬件装置(比如,微处理器、可编程计算机或电子电路)执行方法步骤中的一些或全部。在一些实施例中,可以由这样的装置执行最重要的方法步骤中的一个或多个。
取决于某些实现要求,可以在硬件中或在软件中实现本发明的实施例。可以使用其上已存储有电子可读控制信号的数字存储介质(例如,软盘、DVD、蓝光、CD、ROM、PROM、EPROM、EEPROM或闪存)来执行所述实现,该电子可读控制信号与可编程计算机系统协作(或者,能够与之协作),使得相应方法得以执行。因此,数字存储介质可以是计算机可读的。
根据本发明的一些实施例包括具有电子可读控制信号的数据载体,该电子可读控制信号能够与可编程计算机系统协作,使得本文中所述的方法之一得以执行。
通常,本发明的实施例可以被实现为具有程序代码的计算机程序产品,当该计算机程序产品在计算机上运行时,程序代码可操作地用于执行方法之一。程序代码例如可以存储在机器可读载体上。
其他实施例包括存储在机器可读载体上的计算机程序,该计算机程序用于执行本文所述的方法之一。
换言之,本发明方法的实施例因此是具有程序代码的计算机程序,该程序代码用于在计算机程序在计算机上运行时执行本文所述的方法之一。
因此,本发明方法的另一实施例是包括记录在其上的计算机程序的数据载体(或者数字存储介质或计算机可读介质),该计算机程序用于执行本文所述的方法之一。数据载体、数字存储介质或记录介质通常是有形的和/或非瞬时性的。
因此,本发明方法的另一实施例是表示计算机程序的数据流或信号序列,所述计算机程序用于执行本文所述的方法之一。数据流或信号序列可以例如被配置为通过数据通信连接(例如,通过互联网)进行传送。
另一实施例包括处理装置,例如,计算机或可编程逻辑器件,所述处理装置被配置为或适于执行本文所述的方法之一。
另一实施例包括其上安装有计算机程序的计算机,该计算机程序用于执行本文所述的方法之一。
根据本发明的另一实施例包括被配置为向接收机(例如,以电子方式或以光学方式)传送计算机程序的装置或系统,该计算机程序用于执行本文所述的方法之一。接收器可以是例如计算机、移动设备、存储设备等。装置或系统可以例如包括用于向接收器传送计算机程序的文件服务器。
在一些实施例中,可编程逻辑器件(例如,现场可编程门阵列)可以用于执行本文中所描述的方法的功能中的一些或全部。在一些实施例中,现场可编程门阵列可以与微处理器协作以执行本文中所描述的方法中之一。通常,方法优选地由任意硬件装置来执行。
本文中所描述的装置可以使用硬件装置、或者使用计算机、或者使用硬件装置和计算机的组合来实现。
本文中所描述的装置或本文描述的装置的任何组件可以至少部分地在硬件和/或软件中实现。
本文中所描述的方法可以使用硬件装置、或者使用计算机、或者使用硬件装置和计算机的组合来执行。
本文中所描述的方法或本文描述的装置的任何组件可以至少部分地由硬件和/或由软件执行。
本文中所描述的实施例对于本发明的原理仅是说明性的。应当理解的是,本文中所描述的布置和细节的修改和变形对于本领域其他技术人员将是显而易见的。因此,旨在仅由所附专利权利要求的范围来限制而不是由借助对本文的实施例的描述和解释所给出的具体细节来限制。

Claims (225)

1.一种用于对具有符号值的多个符号(24”;410)进行编码的算术编码器(34;400),
其中,所述算术编码器被配置为基于多个状态变量值(si k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值的统计,
其中,所述算术编码器被配置为使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure FDA0002965036240000011
以及使用所述查找表(LUT1)来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure FDA0002965036240000012
以便获得描述用于一个或多个要编码的符号的算术编码的区间大小的所述区间大小信息。
2.根据权利要求1所述的算术编码器,
其中,所述算术编码器被配置为使用所述查找表将所述第一状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000013
映射到第一概率值(pk 1)上,以及
其中,所述算术编码器被配置为使用所述查找表将所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000014
映射到第二概率值(pk 2)上,以及
其中,所述算术编码器被配置为使用所述第一概率值和所述第二概率值来获得组合概率值(pk)。
3.根据权利要求1至2之一所述的算术编码器,
其中,所述算术编码器被配置为如果要编码的符号取第一值,则将所述状态变量值改变为第一方向,并且如果要编码的符号取与所述第一值不同的第二值,则将所述状态变量值改变为第二方向,
其中,所述算术编码器被配置为依据各个状态变量值的绝对值确定要评估的所述查找表的条目。
4.根据权利要求3所述的算术编码器,
其中,所述算术编码器被配置为如果所述第一状态变量值取第一符号,则将第一概率值(pk 1)设置为由所述查找表提供的值,以及
其中,所述算术编码器被配置为如果所述第一状态变量值取第二符号,则将所述第一概率值(pk 1)设置为通过从预定值中减去由所述查找表提供的值而获得的值。
5.根据权利要求1至4之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定两个或更多个概率值pk i
Figure FDA0002965036240000021
其中,LUT1是包含概率值的查找表;
其中,
Figure FDA0002965036240000022
是向下舍入算子;
其中,sk i是第i个状态变量值;以及
其中,ak i是与所述第i个状态变量值相关联的加权值。
6.根据权利要求1至4之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定两个或更多个概率值pk i
Figure FDA0002965036240000023
其中,LUT1是包含概率值的查找表;
其中,
Figure FDA0002965036240000024
是向下舍入算子;
其中,sk i是第i个状态变量值;以及
其中,ak i是与所述第i个状态变量值相关联的加权值。
7.根据权利要求1至6之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来基于多个概率值pk i获得组合概率值pk
Figure FDA0002965036240000031
其中,N是所考虑的概率值的数量;以及
其中,bk i是加权值。
8.根据权利要求1至7之一所述的算术编码器,
其中,所述算术编码器被配置为使用二维查找表将所述第一状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000032
映射到第一子区间宽度值(R*pk 1)上,取决于所述第一状态变量值并取决于描述所述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息来寻址所述二维查找表的条目,
其中,所述算术编码器被配置为使用二维查找表将所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000033
映射到第二子区间宽度值(R*pk 2)上,取决于所述第二状态变量值并取决于描述所述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息来寻址所述二维查找表的条目,
其中,所述算术编码器被配置为使用所述第一子区间宽度值和所述第二子区间宽度值来获得组合的子区间宽度值。
9.根据权利要求8所述的算术编码器,
其中,所述二维查找表能够被表示为如下二者之间的二元积:
第一一维向量和第二一维向量(Qr2(R)),
其中,第一一维向量的条目包括用于所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000034
的值域的不同值区间的概率值;以及
第二一维向量的条目包括用于所述编码区间大小信息的量化等级。
10.根据权利要求8所述的算术编码器,其中,所述二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)定义的,
其中,所述二维查找表的第一组元素与所述基本查找表的元素相同,或者是所述基本查找表的元素的舍入版本,以及
其中,所述二维查找表的第二组元素是所述基本查找表的元素的缩放和舍入版本。
11.根据权利要求10所述的算术编码器,
其中,所述二维查找表的第二组元素是所述基本查找表的元素的右移版本。
12.根据权利要求10或11所述的算术编码器,
其中,概率索引(Qp2(pLPS);i)确定评估所述二维查找表的第一组元素的元素还是所述二维查找表的第二组元素的元素,
其中,概率索引的第一范围与所述第一组元素的元素相关联,以及
其中,概率索引的第二范围与所述第二组元素的元素相关联。
13.根据权利要求12所述的算术编码器,
其中,所述概率索引(i)与第一大小值之间的除法的除法残差(i%μ)和区间大小索引确定所述基本查找表的哪个元素用于获得二维查找表的所述元素。
14.根据权利要求9至13之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述二维查找表(RangTabLPS)的元素:
Figure FDA0002965036240000041
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,Scal(x,y)是缩放函数。
15.根据权利要求8所述的算术编码器,
其中,所述二维查找表(RangTabLPS)的元素是基于概率表(probTabLPS)定义的,
其中,所述概率表描述用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,用于不在所述一组多个概率值中的概率值和/或用于与所述给定编码区间大小不同的编码区间大小的所述二维查找表的元素是使用缩放从所述概率表中导出的。
16.根据权利要求15所述的算术编码器,
其中,通过如下操作获得了所述二维查找表的元素:
-使用取决于所述编码区间大小(R)的所述概率表中的所选元素(probTabLPS[i%μ])的第一缩放,以及
-使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述第一缩放的结果的第二缩放。
17.根据权利要求16所述的算术编码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000051
确定在所述第二缩放中使用的缩放因子
Figure FDA0002965036240000052
和/或
其中,所述编码区间大小确定所述第一缩放的乘法缩放因子(Qr2(R))。
18.根据权利要求15或16或17所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000053
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
19.根据权利要求15所述的算术编码器,
其中,所述二维查找表的元素是使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述概率表的所选元素(probTabLPS[i%μ])的第一缩放和使用取决于所述编码区间大小(R)的所述第一缩放的结果的第二缩放而获得的。
20.根据权利要求19所述的算术编码器,
其中,概率索引与第一大小值之间的除法的除法残差
Figure FDA0002965036240000064
确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000062
确定在所述第一缩放中使用的缩放因子
Figure FDA0002965036240000063
和/或
其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
21.根据权利要求15或19或20所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000061
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
22.根据权利要求8至21之一所述的算术编码器,
其中,所述二维查找表能够被表示为如下二者之间的二元积:
第一一维向量和第二一维向量(Qr2(R)),
其中第一一维向量的条目包括用于所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000071
的值域的不同值区间的概率值;以及
第二一维向量的条目包括用于所述编码区间大小信息的量化等级。
23.根据权利要求1至22之一所述的算术编码器,
其中,所述算术编码器被配置为:
通过如下操作来根据所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000072
分别计算第一子区间宽度值和第二子区间宽度值(R*pk):
使用其条目包括用于所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000073
的值域的不同值区间的概率值的一维查找表(LUT4)将所述第一状态变量值和所述第二状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000074
映射到第一概率值和第二概率值上,以及
将描述所述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息量化到量化等级上;
确定一方面的所述第一概率值和所述第二概率值与所述量化等级之间的乘积,以及
使用所述第一子区间宽度值及所述第二子区间宽度值来获得组合的子区间宽度值。
24.根据权利要求23所述的算术编码器,
其中,所述算术编码器被配置为通过将逻辑右移应用于所述编码区间大小信息来对所述编码区间大小信息进行量化。
25.根据权利要求23所述的算术编码器,
其中,所述算术编码器被配置为通过
Figure FDA0002965036240000075
2-w来对所述编码区间大小信息R进行量化,其中u、v和w是参数。
26.根据权利要求24至25中的任一项所述的算术编码器,
其中,所述一维查找表的所述条目随着所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000076
的增加而单调地减少。
27.根据权利要求23至26中的任一项所述的算术编码器,
其中,用于所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000081
的所述值域的不同值区间大小相等。
28.根据权利要求27所述的算术编码器,
其中,所述一维查找表的所述条目随着所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000082
的增加而以递减速率单调地减少。
29.一种用于对具有符号值的多个符号(24”;410)进行编码的算术编码器(34;400),
其中,所述算术编码器被配置为基于多个状态变量值(si k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值的统计,
其中,所述算术编码器被配置为基于所述多个状态变量值(si k)来导出组合状态变量值(sk;751a;893;1132),以及
其中,所述算术编码器被配置为使用查找表来映射所述组合状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000083
以便获得描述用于一个或多个要编码的符号的所述算术编码的区间大小的所述区间大小信息。
30.根据权利要求29所述的算术编码器,
其中,所述算术编码器被配置为确定状态变量值的加权和,以便获得所述组合状态变量值。
31.根据权利要求29或30所述的算术编码器,
其中,所述算术编码器被配置为确定舍入值
Figure FDA0002965036240000084
的总和,以便获得所述组合状态变量值(sk),所述舍入值是通过对状态变量值
Figure FDA0002965036240000085
与相关联的加权值
Figure FDA0002965036240000086
的乘积进行舍入而获得的。
32.根据权利要求29至31之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定所述组合状态变量值sk
Figure FDA0002965036240000091
其中,sk 2是状态变量值,
其中,N是所考虑的状态变量值的数量,
其中,
Figure FDA0002965036240000092
是向下舍入算子;
其中,dk i是与所述状态变量值相关联的加权值。
33.根据权利要求29至32之一所述的算术编码器,
其中,所述算术编码器被配置为如果要编码的符号取第一值,则将所述状态变量值改变为第一方向,并且如果要编码的符号取与所述第一值不同的第二值,则将所述状态变量值改变为第二方向,以及
其中,所述算术编码器被配置为依据所述组合状态变量值的绝对值确定要评估的所述查找表的条目。
34.根据权利要求33所述的算术编码器,
其中,所述算术编码器被配置为如果所述组合状态变量值取第一符号,则将概率值(pk)设置为由所述查找表提供的值,以及
其中,所述算术编码器被配置为如果所述组合状态变量值取第二符号,则将所述概率值(pk)设置为通过从预定值中减去由所述查找表提供的值而获得的值。
35.根据权利要求29至34之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定组合概率值pk
Figure FDA0002965036240000093
其中,LUT2是包含概率值的查找表;
其中,
Figure FDA0002965036240000094
是向下舍入算子;
其中,sk是组合变量值;以及
其中,ak是与所述组合状态变量值相关联的加权值。
36.根据权利要求29至34之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定组合概率值pk
Figure FDA0002965036240000101
其中,LUT2是包含概率值的查找表;
其中,
Figure FDA0002965036240000102
是向下舍入算子;
其中,sk是组合变量值;以及
其中,ak是与所述组合状态变量值相关联的加权值。
37.根据权利要求29至36之一所述的算术编码器,
其中,所述算术编码器被配置为使用二维查找表将所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000103
映射到子区间宽度值(R*pk)上,取决于所述组合状态变量值并取决于描述所述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息来寻址所述二维查找表的条目。
38.根据权利要求37所述的算术编码器,
其中,所述二维查找表能够被表示为如下二者之间的二元积:
第一一维向量和第二一维向量(Qr2(R)),
其中,第一一维向量的条目包括用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000104
的值域的不同值区间的概率值;以及
第二一维向量的条目包括用于所述编码区间大小信息的量化等级。
39.根据权利要求37所述的算术编码器,
其中,所述二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)定义的,
其中,所述二维查找表的第一组元素与所述基本查找表的元素相同,或者是所述基本查找表的元素的舍入版本,以及
其中,所述二维查找表的第二组元素是所述基本查找表的元素的缩放和舍入版本。
40.根据权利要求39所述的算术编码器,
其中,所述二维查找表的第二组元素是所述基本查找表的元素的右移版本。
41.根据权利要求39或40所述的算术编码器,
其中,概率索引(Qp2(pLPS);i)确定评估所述二维查找表的所述第一组元素的元素还是所述二维查找表的所述第二组元素的元素,
其中,概率索引的第一范围与所述第一组元素的元素相关联,以及
其中,概率索引的第二范围与所述第二组元素的元素相关联。
42.根据权利要求41所述的算术编码器,
其中,所述概率索引(i)与第一大小值之间的除法的除法残差(i%μ)和区间大小索引确定所述基本查找表的哪个元素用于获得二维查找表的所述元素。
43.根据权利要求38至42之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述二维查找表(RangTabLPS)的元素:
Figure FDA0002965036240000111
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,Scal(x,y)是缩放函数。
44.根据权利要求37所述的算术编码器,
其中,所述二维查找表(RangTabLPS)的元素是基于概率表(probTabLPS)定义的,
其中,所述概率表描述用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,用于不在所述一组多个概率值中的概率值和/或用于与所述给定编码区间大小不同的编码区间大小的所述二维查找表的元素是使用缩放从所述概率表中导出的。
45.根据权利要求44所述的算术编码器,
其中,通过如下操作获得了所述二维查找表的元素:
-使用取决于所述编码区间大小(R)的所述概率表中的所选元素(probTabLPS[i%μ])的第一缩放,以及
-使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述第一缩放的结果的第二缩放。
46.根据权利要求45所述的算术编码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000122
确定在所述第二缩放中使用的缩放因子
Figure FDA0002965036240000123
和/或
其中,所述编码区间大小确定所述第一缩放的乘法缩放因子(Qr2(R))。
47.根据权利要求44或45或46所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000121
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
48.根据权利要求44所述的算术编码器,
其中,所述二维查找表的元素是使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述概率表的所选元素(probTabLPS[i%μ])的第一缩放和使用取决于所述编码区间大小(R)的所述第一缩放的结果的第二缩放而获得的。
49.根据权利要求48所述的算术编码器,
其中,概率索引与第一大小值之间的除法的除法残差
Figure FDA0002965036240000131
确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000135
确定在所述第一缩放中使用的缩放因子
Figure FDA0002965036240000136
和/或
其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
50.根据权利要求44或48或49所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000132
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
51.根据权利要求29至50之一所述的算术编码器,
其中,所述算术编码器被配置为:通过如下操作来根据所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000133
计算子区间宽度值(R*pk):
使用其条目包括用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000134
的值域的不同值区间的概率值的一维查找表(LUT4)将所述组合状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000141
映射到组合概率值上,以及
将描述在编码符号之前的所述算术编码的编码区间的大小的编码区间大小信息量化到量化等级上;
确定所述组合概率值与所述量化等级之间的乘积。
52.根据权利要求51所述的算术编码器,
其中,所述算术编码器被配置为通过将逻辑右移应用于所述编码区间大小信息来对所述编码区间大小信息进行量化。
53.根据权利要求51所述的算术编码器,
其中,所述算术编码器被配置为通过
Figure FDA0002965036240000142
Figure FDA0002965036240000143
来对所述编码区间大小信息R进行量化,其中,u、v和w是参数。
54.根据权利要求51至53中的任一项所述的算术编码器,
其中,所述一维查找表的所述条目随着所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000144
的增加而单调地减少。
55.根据权利要求51至54中的任一项所述的算术编码器,
其中用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000145
的所述值域的不同值区间大小相等。
56.根据权利要求55所述的算术编码器,
其中,所述一维查找表的所述条目随着所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000146
的增加而以递减速率单调地减少。
57.根据权利要求29至56之一所述的算术编码器,
其中,所述查找表定义了指数衰减。
58.根据权利要求29至57之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来更新所述多个变量状态值
Figure FDA0002965036240000147
Figure FDA0002965036240000148
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000149
是一个或多个加权值;
其中,
Figure FDA00029650362400001410
是一个或多个加权值,
其中,A是
Figure FDA0002965036240000151
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure FDA0002965036240000152
脱离预定值范围,
其中offset、
Figure FDA0002965036240000153
Figure FDA0002965036240000154
是预定参数。
59.根据权利要求58所述的算术编码器,
被配置为通过表查找或以计算方式导出
Figure FDA0002965036240000155
60.一种用于对具有符号值的多个符号(24”;410)进行编码的算术编码器(34;400),
其中,所述算术编码器被配置为确定一个或多个状态变量值(s1 k,s2 k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742),所述一个或多个状态变量值表示多个先前编码的符号值的统计,以及
其中,所述算术编码器被配置为基于所述一个或多个状态变量值(si k)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述一个或多个状态变量值表示多个先前编码的符号值的统计,
其中,所述算术编码器被配置为取决于要编码的符号并使用查找表(A)来更新第一状态变量值(sk 1)。
61.根据权利要求60所述的算术编码器,
其中,所述算术编码器被配置为取决于要编码的符号并使用所述查找表(A)来更新第二状态变量值(sk 2)。
62.根据权利要求60或61所述的算术编码器,
其中,所述算术编码器被配置为使用不同适应时间常数来更新所述第一状态变量值和所述第二状态变量值。
63.根据权利要求60或权利要求61或权利要求62所述的算术编码器,
其中,所述算术编码器被配置为取决于要编码的符号是取第一值还是与所述第一值不同的第二值选择性地使先前状态变量值增大或减小使用所述查找表确定的值。
64.根据权利要求60至63之一所述的算术编码器,
其中,所述算术编码器被配置为:当与先前状态变量值在要编码的符号取第一值的情况下为正相比,在所述先前状态变量值为负的情况下将所述先前状态变量值增加相对较大的值;以及
其中,所述算术编码器被配置为:当与先前状态变量值在要编码的符号取与第一值不同的第二值的情况下为负相比,在所述先前状态变量值为正的情况下将所述先前状态变量值减小相对较大的值。
65.根据权利要求60至64之一所述的算术编码器,
其中,所述算术编码器被配置为:如果要编码的符号取第一值,则取决于预定偏移值(z)与先前计算的第一状态变量值
Figure FDA0002965036240000161
或其缩放和/或舍入版本
Figure FDA0002965036240000162
的总和来确定更新所述第一状态变量值时要评估的所述查找表的条目的索引;以及
其中,所述算术编码器被配置为:如果要编码的符号取第二值,则取决于预定偏移值(z)与先前计算的第一状态变量值的取反版本
Figure FDA0002965036240000163
或其缩放和/或舍入版本
Figure FDA0002965036240000164
的总和来确定更新所述第一状态变量值时要评估的所述查找表的条目的索引。
66.根据权利要求60至65之一所述的算术编码器,
其中,所述算术编码器被配置为如果要编码的符号取第一值,则取决于预定偏移值(z)与先前计算的第二状态变量值
Figure FDA0002965036240000165
或其缩放和/或舍入版本
Figure FDA0002965036240000166
的总和来确定更新所述第二状态变量值时要评估的所述查找表的条目的索引;以及
其中,所述算术编码器被配置为如果要编码的符号取第二值,则取决于预定偏移值(z)与先前计算的第二状态变量值的取反版本
Figure FDA0002965036240000167
或其缩放和/或舍入版本
Figure FDA0002965036240000168
的总和来确定更新所述第二状态变量值时要评估的所述查找表的条目的索引。
67.根据权利要求60至66之一所述的算术编码器,
其中,所述算术编码器被配置为当确定在更新所述第一状态变量值时要评估的所述查找表的条目的索引时应用第一缩放值(mk 1),以对所述先前计算的第一状态变量值(sk 1)进行缩放,以及
其中,所述算术编码器被配置为当确定在更新所述第二状态变量值时要评估的所述查找表的条目的索引时应用第二缩放值(mk 2),以对所述先前计算的第二状态变量值(sk 2)进行缩放,
其中,所述第一缩放值与所述第二缩放值不同。
68.根据权利要求60至67之一所述的算术编码器,
其中,所述算术编码器被配置为在更新所述第一状态变量值时使用第一缩放值对通过所述查找表的评估返回的值进行缩放,
其中,所述算术编码器被配置为在更新所述第二状态变量值时使用第二缩放值对通过所述查找表的评估返回的值进行缩放,
其中,所述第一缩放值与所述第二缩放值不同。
69.根据权利要求60至68之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000171
Figure FDA0002965036240000172
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000173
是一个或多个加权值;
其中,
Figure FDA0002965036240000174
是一个或多个加权值。
70.根据权利要求60至68之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000175
Figure FDA0002965036240000176
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000177
是一个或多个加权值;
其中,
Figure FDA0002965036240000178
是一个或多个加权值。
71.根据权利要求60至68之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000181
Figure FDA0002965036240000182
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000183
是一个或多个加权值;
其中,
Figure FDA0002965036240000184
是一个或多个加权值。
72.根据权利要求60至68之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000185
Figure FDA0002965036240000186
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000187
是一个或多个加权值;
其中,
Figure FDA0002965036240000188
是一个或多个加权值。
73.根据权利要求69至72之一所述的算术编码器,
其中,A的所述条目随着查找表索引增加而单调地减少。
74.根据权利要求69或70或71或72和73所述的算术编码器,
其中,A是
Figure FDA0002965036240000189
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure FDA00029650362400001810
脱离预定值范围,
其中offset、
Figure FDA00029650362400001811
Figure FDA00029650362400001812
是预定参数。
75.根据权利要求60至74之一所述的算术编码器,
其中,所述查找表的最后一项等于零。
76.根据权利要求60至75之一所述的算术编码器,
其中,所述算术编码器被配置为将限幅运算应用于所述更新状态变量值,以使更新且限幅的状态变量值保持在预定的值范围内。
77.根据权利要求76所述的算术编码器,
其中,所述算术编码器被配置为根据下式将限幅运算应用于所述更新状态变量值:
Figure FDA0002965036240000191
其中,
Figure FDA0002965036240000192
是用于
Figure FDA0002965036240000193
的最大允许值,以及
其中,
Figure FDA0002965036240000194
是用于
Figure FDA0002965036240000195
的最小允许值。
78.根据权利要求60至77之一所述的算术编码器,
其中,所述算术编码器被配置为针对不同的上下文模型应用不同的缩放值。
79.根据权利要求60至78之一所述的算术编码器,
其中,所述算术编码器被配置为获得如权利要求1至55之一中所定义的所述区间大小信息。
80.一种用于对具有符号值的多个符号(24”;410)进行编码的算术编码器(34;400),
其中,所述算术编码器被配置为基于一个或多个状态变量值(si k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述一个或多个状态变量值表示多个先前编码的符号值的统计,
其中,所述算术编码器被配置为使用基本查找表(Base TabLPS)来确定所述区间大小值(RLPS),
其中,所述算术编码器被配置为确定所述区间大小值(RLPS),使得如果基于所述一个或多个状态变量值而获得的概率索引(i;852;1332;1432;1532)在第一范围内,则确定的区间大小值与所述基本查找表的元素相同或是所述基本查找表的元素的舍入版本,并且使得如果所述概率索引在第二范围内,则确定的区间大小值是使用所述基本查找表的元素的缩放和舍入而获得的;以及
其中,所述算术编码器被配置为使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术编码。
81.根据权利要求80所述的算术编码器,
其中,所述算术编码器被配置为确定所述区间大小值,使得如果所述概率索引在所述第二范围内,则确定的区间大小值(RLPS)是所述基本查找表的元素的右移版本。
82.根据权利要求80或81所述的算术编码器,
其中,所述概率索引(Qp2(pLPS))确定所述查找表的元素是否被提供为所述区间大小值(RLPS),或者所述查找表的元素是否被缩放并舍入以获得所述区间大小值(RLPS)。
83.根据权利要求80至82之一所述的算术编码器,
其中,所述概率索引(i)与第一大小值之间的除法的除法残差(i%μ)和区间大小索引确定所述基本查找表的哪个元素用于获得所述区间大小值。
84.根据权利要求80至83之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述区间大小值RXPS
Figure FDA0002965036240000201
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,Scal(x,y)是缩放函数。
85.一种用于对具有符号值的多个符号(24”;410)进行编码的算术编码器(34;400),
其中,所述算术编码器被配置为基于一个或多个状态变量值(si k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述一个或多个状态变量值表示多个先前编码的符号值的统计,
其中,所述算术编码器被配置为基于从所述一个或多个状态变量值导出的概率值(733,735;832,842,852;932,934)和基于编码区间大小(R;434;532;712;812;1362;1460;1512)使用概率表(Prob TabLPS)来确定所述区间大小值(RLPS),
其中,所述概率表描述用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,所述算术编码器被配置为如果当前概率值不在所述一组多个概率值中和/或如果当前编码区间大小(R)与所述给定编码区间大小不同,则对所述概率表(Prob_TabLPS)的元素进行缩放以获得所述区间大小值(RLPS);以及
其中,所述算术编码器被配置为使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术编码。
86.根据权利要求85所述的算术编码器,
其中,所述算术编码器被配置为通过以下操作来获得区间大小值:
-使用取决于所述编码区间大小(R)的所述概率表中的所选元素(probTabLPS[i%μ])的第一缩放,以及
-使用取决于与当前概率值相关联的元素是否包括在所述一组多个概率值中的所述第一缩放的结果的第二缩放。
87.根据权利要求86所述的算术编码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000211
确定在所述第二缩放中使用的缩放因子
Figure FDA0002965036240000212
和/或
其中,所述编码区间大小(R)确定所述第一缩放的乘法缩放因子(Qr2(R))。
88.根据权利要求86或87所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述区间大小值RXPS
Figure FDA0002965036240000213
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
89.根据权利要求85所述的算术编码器,
其中,所述算术编码器被配置为通过以下操作来获得区间大小值:
-使用取决于与当前概率值相关联的元素是否包括在所述概率值中的所述概率表的所选元素(probTabLPS[i%μ])的第一缩放;
-使用取决于所述编码区间大小(R)的所述第一缩放的结果的第二缩放。
90.根据权利要求89所述的算术编码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000221
确定在所述第一缩放中使用的缩放因子;
和/或
其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
91.根据权利要求89或90所述的算术编码器,
其中,所述算术编码器被配置为根据下式来获得所述区间大小值RXPS
Figure FDA0002965036240000222
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
92.一种用于对具有符号值的多个符号(24”;520;1622;1722)进行解码的算术解码器(50;500;1620;1720),
其中,所述算术解码器被配置为基于一个或多个状态变量值(si k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述一个或多个状态变量值表示多个先前解码的符号值的统计,
其中,所述算术解码器被配置为使用基本查找表(Base TabLPS)来确定所述区间大小值(RLPS),
其中,所述算术解码器被配置为确定所述区间大小值(RLPS),使得如果基于所述一个或多个状态变量值而获得的概率索引(i;852;1332;1432;1532)在第一范围内,则确定的区间大小值与所述基本查找表的元素相同或是所述基本查找表的元素的舍入版本,并且使得如果所述概率索引在第二范围内,则确定的区间大小值是使用所述基本查找表的元素的缩放和舍入而获得的;以及
其中,所述算术解码器被配置为使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术解码。
93.根据权利要求92所述的算术解码器,
其中,所述算术解码器被配置为确定所述区间大小值,使得如果所述概率索引在所述第二范围内,则确定的区间大小值(RLPS)是所述基本查找表的元素的右移版本。
94.根据权利要求92或93所述的算术解码器,
其中,所述概率索引(Qp2(pLPS))确定所述查找表的元素是否被提供为所述区间大小值(RLPS),或者所述查找表的元素是否被缩放并舍入以获得所述区间大小值(RLPS)。
95.根据权利要求92至94之一所述的算术解码器,
其中,所述概率索引(i)与第一大小值之间的除法的除法残差(i%μ)和区间大小索引确定所述基本查找表的哪个元素用于获得所述区间大小值。
96.根据权利要求92至95之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述区间大小值RXPS
Figure FDA0002965036240000241
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,Scal(x,y)是缩放函数。
97.一种用于对具有符号值的多个符号(24”;520;1622;1722)进行解码的算术解码器(50;500;1620;1720),
其中,所述算术解码器被配置为基于一个或多个状态变量值(si k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述一个或多个状态变量值表示多个先前解码的符号值的统计,
其中,所述算术解码器被配置为基于从所述一个或多个状态变量值导出的概率值和基于编码区间大小(R;434;532;712;812;1362;1460;1512)使用概率表(Prob TabLPS)来确定所述区间大小值(RLPS),
其中,所述概率表描述用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,所述算术解码器被配置为如果当前概率值不在所述一组多个概率值中和/或如果当前编码区间大小(R)与所述给定编码区间大小不同,则对所述概率表(Prob_TabLPS)的元素进行缩放以获得所述区间大小值(RLPS);以及
其中,所述算术解码器被配置为使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术解码。
98.根据权利要求97所述的算术解码器,
其中,所述算术解码器被配置为通过以下操作来获得区间大小值:
-使用取决于所述编码区间大小(R)的所述概率表中的所选元素(probTabLPS[i%μ])的第一缩放,以及
-使用取决于与当前概率值相关联的元素是否包括在所述一组多个概率值中的所述第一缩放的结果的第二缩放。
99.根据权利要求98所述的算术解码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000251
确定在所述第二缩放中使用的缩放因子
Figure FDA0002965036240000252
和/或
其中,所述编码区间大小(R)确定所述第一缩放的乘法缩放因子(Qr2(R))。
100.根据权利要求98或99所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述区间大小值RXPS
Figure FDA0002965036240000253
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
101.根据权利要求97所述的算术解码器,
其中,所述算术解码器被配置为通过以下操作来获得区间大小值:
-使用取决于与当前概率值相关联的元素是否包括在所述概率值中的所述概率表的所选元素(probTabLPS[i%μ])的第一缩放;
-使用取决于所述编码区间大小(R)的所述第一缩放的结果的第二缩放。
102.根据权利要求101所述的算术解码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000261
确定在所述第一缩放中使用的缩放因子;
和/或
其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
103.根据权利要求101或102所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述区间大小值RXPS
Figure FDA0002965036240000262
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
104.一种用于对具有符号值的多个符号(24”;410)进行编码的算术编码器(34;400),
其中,所述算术编码器被配置为确定一个状态变量值(sk),所述一个状态变量值表示多个先前编码的符号值的统计,以及
其中,所述算术编码器被配置为:通过如下操作来根据组合状态变量值或其缩放和/或舍入版本
Figure FDA0002965036240000271
计算用于要编码的符号值的算术编码的子区间宽度值(RLPS;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762):
使用其条目包括用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000272
的值域的不同值区间的概率值的一维查找表(probTabLPS[Qp2(…)])将所述一个状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000273
映射到概率值(pi k;pk;pLPS;Qp(pLPS))上,以及
将描述在所述要编码的符号值的所述算术编码之前的所述算术编码的编码区间的大小的编码区间大小信息(R;434;532;712;812;1362;1460;1512)量化到量化等级(Qr2(R);762;862)上;
确定所述概率值与所述量化等级之间的乘积,
其中,所述算术编码器被配置为取决于所述要编码的符号值而执行状态变量值更新。
105.根据权利要求104所述的算术编码器,
其中,所述算术编码器被配置为基于多个状态变量值(si k)来导出组合状态变量值作为所述一个状态变量值(sk),所述多个状态变量值表示具有不同适应时间常数的所述多个先前编码的符号值的统计。
106.根据权利要求105所述的算术编码器,
其中,所述算术编码器被配置为确定状态变量值的加权和,以便获得所述组合状态变量值。
107.根据权利要求105或106所述的算术编码器,
其中,所述算术编码器被配置为确定舍入值
Figure FDA0002965036240000281
的总和,以便获得所述组合状态变量值(sk),所述舍入值是通过对状态变量值
Figure FDA0002965036240000282
与相关联的加权值
Figure FDA0002965036240000283
的乘积进行舍入而获得的。
108.根据权利要求105至107之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定所述组合状态变量值sk
Figure FDA0002965036240000284
其中,sk 2是状态变量值,
其中,N是所考虑的状态变量值的数量,
其中,
Figure FDA0002965036240000285
是向下舍入算子;
其中,dk i是与所述状态变量值相关联的加权值。
109.根据权利要求105至108之一所述的算术编码器,
其中,所述算术编码器被配置为在执行所述状态变量值更新时根据下式来更新所述多个状态变量值
Figure FDA0002965036240000286
Figure FDA0002965036240000287
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000288
是一个或多个加权值;
其中,
Figure FDA0002965036240000289
是一个或多个加权值,
其中,A是
Figure FDA00029650362400002810
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure FDA00029650362400002811
脱离预定值范围,
其中offset、
Figure FDA00029650362400002812
Figure FDA00029650362400002813
是预定参数。
110.根据权利要求109所述的算术编码器,
被配置为通过表查找或以计算方式导出
Figure FDA00029650362400002814
111.根据权利要求104至108之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA00029650362400002815
Figure FDA0002965036240000291
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000292
是一个或多个加权值;
其中,
Figure FDA0002965036240000293
是一个或多个加权值。
112.根据权利要求104至108之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000294
Figure FDA0002965036240000295
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000296
是一个或多个加权值;
其中,
Figure FDA0002965036240000297
是一个或多个加权值。
113.根据权利要求104至108之一所述的算术编码器,
其中,所述算术编码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000298
Figure FDA0002965036240000299
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA00029650362400002910
是一个或多个加权值;
其中,
Figure FDA00029650362400002911
是一个或多个加权值。
114.根据权利要求104至110中的任一项所述的算术编码器,
其中,所述算术编码器被配置为通过将逻辑右移应用于所述编码区间大小信息来对所述编码区间大小信息进行量化。
115.根据权利要求104至110中的任一项所述的算术编码器,
其中,所述算术编码器被配置为通过
Figure FDA00029650362400002912
2-w来对所述编码区间大小信息R进行量化,其中u、v和是参数。
116.根据权利要求104至115中的任一项所述的算术编码器,
其中,所述一维查找表的所述条目随着所述一个状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000301
的增加而单调地减少。
117.根据权利要求104至116中的任一项所述的算术编码器,
其中,用于所述一个状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000302
的所述值域的不同值区间大小相等。
118.根据权利要求117所述的算术编码器,
其中,所述一维查找表的所述条目随着所述一个状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000303
的增加而以递减速率单调地减少。
119.一种用于对具有符号值的多个符号进行解码的算术解码器,
其中,所述算术解码器被配置为基于多个状态变量值(si k)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),所述多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值的统计,
其中,所述算术解码器被配置为使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure FDA0002965036240000304
以及
使用所述查找表来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure FDA0002965036240000305
以便获得描述用于一个或多个要解码的符号的所述算术解码的区间大小的所述区间大小信息。
120.根据权利要求119所述的算术解码器,
其中,所述算术解码器被配置为使用所述查找表将所述第一状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000306
映射到第一概率值(pk 1)上,以及
其中,所述算术解码器被配置为使用所述查找表将所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000307
映射到第二概率值(pk 2)上,以及
其中,所述算术解码器被配置为使用所述第一概率值和所述第二概率值来获得组合概率值(pk)。
121.根据权利要求119至120之一所述的算术解码器,
其中,所述算术解码器被配置为:如果解码的符号取第一值,则将所述状态变量值改变为第一方向,并且如果解码的符号取与所述第一值不同的第二值,则将所述状态变量值改变为第二方向,
其中,所述算术编码器被配置为依据各个状态变量值的绝对值确定要评估的所述查找表的条目。
122.根据权利要求121所述的算术解码器,
其中,所述算术解码器被配置为如果所述第一状态变量值取第一符号,则将第一概率值(pk 1)设置为由所述查找表提供的值,以及
其中,所述算术解码器被配置为如果所述第一状态变量值取第二符号,则将所述第一概率值(pk 1)设置为通过从预定值中减去由所述查找表提供的值而获得的值。
123.根据权利要求119至122之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定两个或更多个概率值pk i
Figure FDA0002965036240000311
其中,LUT1是包含概率值的查找表;
其中,
Figure FDA0002965036240000312
是向下舍入算子;
其中,sk i是第i个状态变量值;以及
其中,ak i是与所述第i个状态变量值相关联的加权值。
124.根据权利要求119至122之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定两个或更多个概率值pk i
Figure FDA0002965036240000313
其中,LUT1是包含概率值的查找表;
其中,
Figure FDA0002965036240000314
是向下舍入算子;
其中,sk i是第i个状态变量值;以及
其中,ak i是与所述第i个状态变量值相关联的加权值。
125.根据权利要求119至124之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来基于多个概率值pk i获得组合概率值pk
Figure FDA0002965036240000321
其中,N是所考虑的概率值的数量;以及
其中,bk i是加权值。
126.根据权利要求119至125之一所述的算术解码器,
其中,所述算术解码器被配置为使用二维查找表将所述第一状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000322
映射到第一子区间宽度值(R*pk 1)上,取决于所述第一状态变量值并取决于描述所述算术解码在符号的解码之前的编码区间的大小的编码区间大小信息来寻址所述二维查找表的条目,
其中,所述算术解码器被配置为使用二维查找表将所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000323
映射到第二子区间宽度值(R*pk 2)上,取决于所述第二状态变量值并取决于描述所述算术解码在符号的解码之前的编码区间的大小的编码区间大小信息来寻址所述二维查找表的条目,
其中,所述算术解码器被配置为使用所述第一子区间宽度值和所述第二子区间宽度值来获得组合的子区间宽度值。
127.根据权利要求126所述的算术解码器,
其中,所述二维查找表能够被表示为如下二者之间的二元积:
第一一维向量和第二一维向量(Qr2(R)),
其中,第一一维向量的条目包括用于所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000324
的值域的不同值区间的概率值;以及
第二一维向量的条目包括用于所述编码区间大小信息的量化等级。
128.根据权利要求126所述的算术解码器,
其中,所述二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)定义的,
其中,所述二维查找表的第一组元素与所述基本查找表的元素相同,或者是所述基本查找表的元素的舍入版本,以及
其中,所述二维查找表的第二组元素是所述基本查找表的元素的缩放和舍入版本。
129.根据权利要求128所述的算术解码器,
其中,所述二维查找表的第二组元素是所述基本查找表的元素的右移版本。
130.根据权利要求128或129所述的算术解码器,
其中,概率索引(Qp2(pLPS);i)确定评估所述二维查找表的所述第一组元素的元素还是所述二维查找表的第二组元素的元素,
其中,概率索引的第一范围与所述第一组元素的元素相关联,以及
其中,概率索引的第二范围与所述第二组元素的元素相关联。
131.根据权利要求130所述的算术解码器,
其中,所述概率索引(i)与第一大小值之间的除法的除法残差(i%μ)和区间大小索引确定所述基本查找表的哪个元素用于获得二维查找表的所述元素。
132.根据权利要求126至131之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述二维查找表(RangTabLPS)的元素:
Figure FDA0002965036240000331
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,Scal(x,y)是缩放函数。
133.根据权利要求126所述的算术解码器,
其中,所述二维查找表(RangTabLPS)的元素是基于概率表(probTabLPS)而定义的,
其中,所述概率表描述用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,用于不在所述一组多个概率值中的概率值和/或用于与所述给定编码区间大小不同的编码区间大小的所述二维查找表的元素是使用缩放从所述概率表中导出的。
134.根据权利要求133所述的算术解码器,
其中,通过如下操作获得了所述二维查找表的元素:
-使用取决于所述编码区间大小(R)的所述概率表中的所选元素(probTabLPS[i%μ])的第一缩放,以及
-使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述第一缩放的结果的第二缩放。
135.根据权利要求134所述的算术解码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000341
确定在所述第二缩放中使用的缩放因子
Figure FDA0002965036240000342
和/或
其中,所述编码区间大小确定所述第一缩放的乘法缩放因子(Qr2(R))。
136.根据权利要求133或134或135所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000343
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
137.根据权利要求133所述的算术解码器,
其中,所述二维查找表的元素是使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述概率表的所选元素(probTabLPS[i%μ])的第一缩放和使用取决于所述编码区间大小(R)的所述第一缩放的结果的第二缩放而获得的。
138.根据权利要求137所述的算术解码器,
其中,概率索引与第一大小值之间的除法的除法残差
Figure FDA0002965036240000351
确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000352
确定在所述第一缩放中使用的缩放因子
Figure FDA0002965036240000353
和/或
其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
139.根据权利要求133或137或138所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000354
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
140.根据权利要求119至139之一所述的算术解码器,
其中,所述算术解码器被配置为通过如下操作来根据所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000361
分别计算第一子区间宽度值和第二子区间宽度值(R*pk):
使用其条目包括用于所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000362
的值域的不同值区间的概率值的一维查找表(LUT4)将所述第一状态变量值和所述第二状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000363
映射到第一概率值和第二概率值上,以及
将描述所述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息量化到量化等级上;
确定一方面的所述第一概率值和所述第二概率值与所述量化等级之间的乘积,以及
使用所述第一子区间宽度值及所述第二子区间宽度值来获得组合的子区间宽度值。
141.根据权利要求140所述的算术解码器,
其中,所述算术解码器被配置为通过将逻辑右移应用于所述编码区间大小信息来对所述编码区间大小信息进行量化。
142.根据权利要求140所述的算术解码器,
其中,所述算术解码器被配置为通过
Figure FDA0002965036240000364
Figure FDA0002965036240000365
来对所述编码区间大小信息R进行量化,其中u、v和w是参数。
143.根据权利要求140至142中的任一项所述的算术解码器,
其中,所述一维查找表的所述条目随着所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000366
的增加而单调地减少。
144.根据权利要求140至143中的任一项所述的算术解码器,
其中,用于所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000367
的所述值域的不同值区间大小相等。
145.根据权利要求144所述的算术解码器,
其中,所述一维查找表的所述条目随着所述第一状态变量值和所述第二状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000368
的增加而以递减速率单调地减少。
146.一种用于对具有符号值的多个符号(24”;520;1622;1722)进行解码的算术解码器(50;500;1620;1720),
其中,所述算术解码器被配置为基于多个状态变量值(si k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk;432;534;620;720;820;820;1020;1084;1120;1320;1420;1520;1662;1762),所述多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值的统计,
其中,所述算术解码器被配置为基于所述多个状态变量值(si k)来导出组合状态变量值(sk),以及
其中,所述算术解码器被配置为使用查找表来映射所述组合状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000371
以便获得描述用于一个或多个要解码的符号的所述算术解码的区间大小的所述区间大小信息。
147.根据权利要求146所述的算术解码器,
其中,所述算术解码器被配置为确定状态变量值的加权和,以便获得所述组合状态变量值。
148.根据权利要求146或权利要求147所述的算术解码器,
其中,所述算术解码器被配置为确定舍入值
Figure FDA0002965036240000372
的总和,以便获得所述组合状态变量值(sk),所述舍入值是通过对状态变量值
Figure FDA0002965036240000373
与相关联的加权值
Figure FDA0002965036240000374
的乘积进行舍入而获得的。
149.根据权利要求146至148之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定所述组合状态变量值sk
Figure FDA0002965036240000375
其中,sk 2是状态变量值,
其中,N是所考虑的状态变量值的数量,
其中,
Figure FDA0002965036240000381
是向下舍入算子;
其中,dk i是与所述状态变量值相关联的加权值。
150.根据权利要求146至149之一所述的算术解码器,
其中,所述算术解码器被配置为如果解码的符号取第一值,则将所述状态变量值改变为第一方向,并且如果解码的符号取与所述第一值不同的第二值,则将所述状态变量值改变为第二方向,以及
其中,所述算术解码器被配置为依据组合状态变量值的绝对值确定要评估的所述查找表的条目。
151.根据权利要求150所述的算术解码器,
其中,所述算术解码器被配置为如果所述组合状态变量值取第一符号,则将概率值(pk)设置为由所述查找表提供的值,以及
其中,所述算术解码器被配置为如果所述组合状态变量值取第二符号,则将所述概率值(pk)设置为通过从预定值中减去由所述查找表提供的值而获得的值。
152.根据权利要求146至151之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定组合概率值pk
Figure FDA0002965036240000382
其中,LUT2是包含概率值的查找表;
其中,
Figure FDA0002965036240000383
是向下舍入算子;
其中,sk是组合变量值;以及
其中,ak是与组合的状态变量相关联的加权值。
153.根据权利要求146至151之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定组合概率值pk
Figure FDA0002965036240000384
其中,LUT2是包含概率值的查找表;
其中,
Figure FDA0002965036240000385
是向下舍入算子;
其中,sk是组合变量值;以及
其中,ak是与所述组合状态变量值相关联的加权值。
154.根据权利要求146至152之一所述的算术解码器,
其中,所述算术解码器被配置为使用二维查找表将所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000391
映射到子区间宽度值(R*pk)上,取决于所述组合状态变量值并取决于描述所述算术解码在符号的解码之前的编码区间的大小的编码区间大小信息来寻址所述二维查找表的条目。
155.根据权利要求154所述的算术解码器,
其中,所述二维查找表能够被表示为如下二者之间的二元积:
第一一维向量和第二一维向量(Qr2(R)),
其中,第一一维向量的条目包括用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000392
的值域的不同值区间的概率值;以及
第二一维向量的条目包括用于所述编码区间大小信息的量化等级。
156.根据权利要求154所述的算术解码器,
其中,所述二维查找表(RangTabLPS)的元素是基于基本查找表(Base TabLPS)定义的,
其中,所述二维查找表的第一组元素与所述基本查找表的元素相同,或者是所述基本查找表的元素的舍入版本,以及
其中,所述二维查找表的第二组元素是所述基本查找表的元素的缩放和舍入版本。
157.根据权利要求156所述的算术解码器,
其中,所述二维查找表的第二组元素是所述基本查找表的元素的右移版本。
158.根据权利要求156或157所述的算术解码器,
其中,概率索引(Qp2(pLPS);i)确定评估所述二维查找表的所述第一组元素的元素还是所述二维查找表的所述第二组元素的元素,
其中,概率索引的第一范围与所述第一组元素的元素相关联,以及
其中,概率索引的第二范围与所述第二组元素的元素相关联。
159.根据权利要求158所述的算术解码器,
其中,所述概率索引(i)与第一大小值之间的除法的除法残差(i%μ)和区间大小索引确定所述基本查找表的哪个元素用于获得二维查找表的所述元素。
160.根据权利要求154至159之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述二维查找表(RangTabLPS)的元素:
Figure FDA0002965036240000401
其中,BaseTabLPS是尺寸为μ×λ的基本查找表;
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,Scal(x,y)是缩放函数。
161.根据权利要求154所述的算术解码器,
其中,所述二维查找表(RangTabLPS)的元素是基于概率表(probTabLPS)定义的,
其中,概率表描述了用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,用于不在所述一组多个概率值中的概率值和/或用于与所述给定编码区间大小不同的编码区间大小的所述二维查找表的元素是使用缩放从所述概率表中导出的。
162.根据权利要求161所述的算术解码器,
其中,通过如下操作获得了所述二维查找表的元素:
-使用取决于所述编码区间大小(R)的所述概率表中的所选元素(probTabLPS[i%μ])的第一缩放,以及
-使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述第一缩放的结果的第二缩放。
163.根据权利要求162所述的算术解码器,
其中,概率索引与第一大小值之间的除法的除法残差(i%μ)确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000411
确定在所述第二缩放中使用的缩放因子
Figure FDA0002965036240000412
和/或
其中,所述编码区间大小确定所述第一缩放的乘法缩放因子(Qr2(R))。
164.根据权利要求161或162或163所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000413
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
165.根据权利要求161所述的算术解码器,
其中,所述二维查找表的元素是使用取决于与当前概率值相关联的元素是否包括在所述一组概率值中的所述概率表的所选元素(probTabLPS[i%μ])的第一缩放和使用取决于所述编码区间大小(R)的所述第一缩放的结果的第二缩放而获得的。
166.根据权利要求165所述的算术解码器,
其中,概率索引与第一大小值之间的除法的除法残差
Figure FDA0002965036240000414
确定在所述第一缩放中对所述概率表的哪个元素进行缩放;
和/或
其中,所述概率索引(i)与所述第一大小值之间的除法的整数除法结果
Figure FDA0002965036240000421
确定在所述第一缩放中使用的缩放因子
Figure FDA0002965036240000422
和/或
其中,所述编码区间大小(R)确定所述第二缩放的乘法缩放因子(Qr2(R))。
167.根据权利要求161或165或166所述的算术解码器,
其中,所述算术解码器被配置为根据下式来获得所述二维查找表的元素RangeTabLPS[i][j]:
Figure FDA0002965036240000423
其中,i是与概率信息相关联的表索引;
其中,j是与区间大小信息相关联的表索引;
其中,%是除法残差运算;
其中,/是除法运算;
其中,probTabLPS[]是所述概率表;
其中,μ是所述概率表中的元素的数量;
其中,R是区间大小;
其中,Qr2(R)是取决于R的缩放因子;
其中,Scal(x,y)是缩放函数。
168.根据权利要求146至167之一所述的算术解码器,
其中,所述算术解码器被配置为:通过如下操作来根据所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000424
计算子区间宽度值(R*pk):
使用其条目包括用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000425
的值域的不同值区间的概率值的一维查找表(LUT4)将所述组合状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000426
映射到组合概率值上,以及
将描述所述算术编码在符号的编码之前的编码区间的大小的编码区间大小信息量化到量化等级上;
确定所述组合概率值与所述量化等级之间的乘积。
169.根据权利要求168所述的算术解码器,
其中,所述算术解码器被配置为通过将逻辑右移应用于所述编码区间大小信息来对所述编码区间大小信息进行量化。
170.根据权利要求168所述的算术解码器,
其中,所述算术解码器被配置为通过
Figure FDA0002965036240000431
Figure FDA0002965036240000432
来对所述编码区间大小信息R进行量化,其中u、v和w是参数。
171.根据权利要求168至170中的任一项所述的算术解码器,
其中,所述一维查找表的所述条目随着所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000433
的增加而单调地减少。
172.根据权利要求168至171中的任一项所述的算术解码器,
其中,用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000434
的所述值域的不同值区间大小相等。
173.根据权利要求172所述的算术解码器,
其中,所述一维查找表的所述条目随着所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000435
的增加而以递减速率单调地减少。
174.根据权利要求146至173之一所述的算术解码器,
其中,所述查找表定义了指数衰减。
175.根据权利要求146至174之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来更新所述多个变量状态值
Figure FDA0002965036240000436
Figure FDA0002965036240000437
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000438
是一个或多个加权值;
其中,
Figure FDA0002965036240000439
是一个或多个加权值,
其中,A是
Figure FDA00029650362400004310
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure FDA00029650362400004311
脱离预定值范围,
其中offset、
Figure FDA00029650362400004312
Figure FDA00029650362400004313
是预定参数。
176.根据权利要求175所述的算术解码器,
被配置为通过表查找或以计算方式导出
Figure FDA00029650362400004314
177.一种用于对具有符号值的多个符号(24”;520;1622;1722)进行解码的算术解码器(50;500;1620;1720),
其中,所述算术解码器被配置为确定一个或多个状态变量值(s1 k,s2 k;642,644;710;810;910;1010a,1010b;1082a,1082b;1110;1210;1310;1410;1510;1632,1642;1732,1742),所述一个或多个状态变量值表示多个先前解码的符号值的统计,以及
其中,所述算术解码器被配置为基于所述一个或多个状态变量值(si k)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),所述一个或多个状态变量值表示多个先前解码的符号值的统计,
其中,所述算术解码器被配置为取决于解码的符号并使用查找表(A)来更新第一状态变量值(sk 1)。
178.根据权利要求177所述的算术解码器,
其中,所述算术解码器被配置为取决于解码的符号并使用所述查找表(A)来更新第二状态变量值(sk 2)。
179.根据权利要求177或178所述的算术解码器,
其中,所述算术解码器被配置为使用不同适应时间常数来更新所述第一状态变量值和所述第二状态变量值。
180.根据权利要求177或权利要求178或权利要求179所述的算术解码器,
其中,所述算术解码器被配置为取决于解码的符号是取第一值还是与所述第一值不同的第二值选择性地使先前状态变量值增大或减小使用所述查找表确定的值。
181.根据权利要求177至180之一所述的算术解码器,
其中,所述算术解码器被配置为:当与先前状态变量值在解码的符号取第一值的情况下为正相比,在所述先前状态变量值为负的情况下将所述先前状态变量值增加相对较大的值;以及
其中,所述算术解码器被配置为:当与先前状态变量值在解码的符号取与第一值不同的第二值的情况下为负相比,在所述先前状态变量值为正的情况下将所述先前状态变量值减小相对较大的值。
182.根据权利要求177至181之一所述的算术解码器,
其中,所述算术解码器被配置为:如果解码的符号取第一值,则取决于预定偏移值(z)与先前计算的第一状态变量值
Figure FDA0002965036240000451
或其缩放和/或舍入版本
Figure FDA0002965036240000452
的总和来确定更新所述第一状态变量值时要评估的所述查找表的条目的索引;以及
其中,所述算术解码器被配置为:如果解码的符号取第二值,则取决于预定偏移值(z)与先前计算的第一状态变量值的取反版本
Figure FDA0002965036240000453
或其缩放和/或舍入版本
Figure FDA0002965036240000454
的总和来确定更新所述第一状态变量值时要评估的所述查找表的条目的索引。
183.根据权利要求177至182之一所述的算术解码器,
其中,所述算术解码器被配置为如果解码的符号取第一值,则取决于预定偏移值(z)与先前计算的第二状态变量值
Figure FDA0002965036240000455
或其缩放和/或舍入版本
Figure FDA0002965036240000456
的总和来确定更新所述第二状态变量值时要评估的所述查找表的条目的索引;以及
其中,所述算术解码器被配置为如果解码的符号取第二值,则取决于预定偏移值(z)与先前计算的第二状态变量值的取反版本
Figure FDA0002965036240000457
或其缩放和/或舍入版本
Figure FDA0002965036240000458
的总和来确定更新所述第二状态变量值时要评估的所述查找表的条目的索引。
184.根据权利要求177至183之一所述的算术解码器,
其中,所述算术解码器被配置为当确定在更新所述第一状态变量值时要评估的所述查找表的条目的索引时应用第一缩放值(mk 1),以对先前计算的第一状态变量值(sk 1)进行缩放,以及
其中,所述算术解码器被配置为当确定在更新所述第二状态变量值时要评估的所述查找表的条目的索引时应用第二缩放值(mk 2),以对先前计算的第二状态变量值(sk 2)进行缩放,
其中,所述第一缩放值与所述第二缩放值不同。
185.根据权利要求177至184之一所述的算术解码器,
其中,所述算术解码器被配置为在更新所述第一状态变量值时使用第一缩放值对通过所述查找表的评估返回的值进行缩放,
其中,所述算术解码器被配置为在更新所述第二状态变量值时使用第二缩放值对通过所述查找表的评估返回的值进行缩放,
其中,所述第一缩放值与所述第二缩放值不同。
186.根据权利要求177至185之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000461
Figure FDA0002965036240000462
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000463
是一个或多个加权值;
其中,
Figure FDA0002965036240000464
是一个或多个加权值。
187.根据权利要求177至185之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000465
Figure FDA0002965036240000466
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000467
是一个或多个加权值;
其中,
Figure FDA0002965036240000468
是一个或多个加权值。
188.根据权利要求177至185之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000469
Figure FDA00029650362400004610
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA00029650362400004611
是一个或多个加权值;
其中,
Figure FDA00029650362400004612
是一个或多个加权值。
189.根据权利要求177至185之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000471
Figure FDA0002965036240000472
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000473
是一个或多个加权值;
其中,
Figure FDA0002965036240000474
是一个或多个加权值。
190.根据权利要求186至189之一所述的算术解码器,
其中,A的所述条目随着查找表索引增加而单调地减少。
191.根据权利要求186至190之一所述的算术解码器,
其中,A是
Figure FDA0002965036240000475
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure FDA0002965036240000476
脱离预定值范围,
其中offset、
Figure FDA0002965036240000477
Figure FDA0002965036240000478
是预定参数。
192.根据权利要求177至191之一所述的算术解码器,
其中,所述查找表的最后一个条目等于零。
193.根据权利要求177至192之一所述的算术解码器,
其中,所述算术解码器被配置为将限幅运算应用于所述更新状态变量值,以使更新且限幅的状态变量值保持在预定值范围内。
194.根据权利要求193所述的算术解码器,
其中,所述算术解码器被配置为根据下式将限幅运算应用于所述更新状态变量值:
Figure FDA0002965036240000479
其中,
Figure FDA00029650362400004710
是用于
Figure FDA00029650362400004711
的最大允许值,以及
其中,
Figure FDA00029650362400004712
是用于
Figure FDA00029650362400004713
的最小允许值。
195.根据权利要求177至194之一所述的算术解码器,
其中,所述算术解码器被配置为针对不同的上下文应用不同的缩放值。
196.根据权利要求177至195之一所述的算术解码器,
其中,所述算术解码器被配置为获得如权利要求119至155之一中所定义的所述区间大小信息。
197.一种用于对具有符号值的多个符号(24”;520;1622;1722)进行解码的算术解码器(50;500;1620;1720),
其中,所述算术解码器被配置为确定一个状态变量值(sk),所述一个状态变量值表示多个先前解码的符号值的统计,以及
其中,所述算术解码器被配置为:通过如下操作来根据组合状态变量值或其缩放和/或舍入版本
Figure FDA0002965036240000481
计算用于要解码的符号值的算术解码的子区间宽度值(RLPS):
使用其条目包括用于所述组合状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000482
的值域的不同值区间的概率值的一维查找表(probTabLPS[Qp2(…)])将所述一个状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000483
映射到组合概率值上,以及
将描述所述算术编码在所述要编码的符号值的算术解码之前的编码区间的大小的编码区间大小信息量化到量化等级(Qr2(R))上;
确定所述概率值与所述量化等级之间的乘积,
其中,所述算术解码器被配置为取决于所述要解码的符号而执行状态变量值更新。
198.根据权利要求197所述的算术解码器,
其中,所述算术解码器被配置为基于多个状态变量值(si k)来导出组合状态变量值作为所述一个状态变量值(sk),所述多个状态变量值表示具有不同适应时间常数的所述多个先前解码的符号值的统计。
199.根据权利要求198所述的算术解码器,
其中,所述算术解码器被配置为确定状态变量值的加权和,以便获得所述组合状态变量值。
200.根据权利要求198或权利要求199所述的算术解码器,
其中,所述算术解码器被配置为确定舍入值
Figure FDA0002965036240000484
的总和,以便获得所述组合状态变量值(sk),所述舍入值是通过对状态变量值
Figure FDA0002965036240000485
与相关联的加权值
Figure FDA0002965036240000486
的乘积进行舍入而获得的。
201.根据权利要求198至200之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定所述组合状态变量值sk
Figure FDA0002965036240000491
其中,sk 2是状态变量值,
其中,N是所考虑的状态变量值的数量,
其中,
Figure FDA0002965036240000492
是向下舍入算子;
其中,dk i是与所述状态变量值相关联的加权值。
202.根据权利要求198至201之一所述的算术解码器,
其中,所述算术解码器被配置为在执行所述状态变量值更新时根据下式来更新所述组合状态变量值
Figure FDA0002965036240000493
Figure FDA0002965036240000494
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000495
是一个或多个加权值;
其中,
Figure FDA0002965036240000496
是一个或多个加权值,
其中,A是
Figure FDA0002965036240000497
或仅仅针对其自变量的一个或多个极值通过零设置或量值缩减而从该式偏离以避免更新后的
Figure FDA0002965036240000498
脱离预定值范围,
其中offset、
Figure FDA0002965036240000499
Figure FDA00029650362400004910
是预定参数。
203.根据权利要求202所述的算术解码器,
被配置为通过表查找或以计算方式导出
Figure FDA00029650362400004911
204.根据权利要求197至203之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA00029650362400004912
Figure FDA00029650362400004913
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000501
是一个或多个加权值;
其中,
Figure FDA0002965036240000502
是一个或多个加权值。
205.根据权利要求197至201之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000503
Figure FDA0002965036240000504
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000505
是一个或多个加权值;
其中,
Figure FDA0002965036240000506
是一个或多个加权值。
206.根据权利要求197至201之一所述的算术解码器,
其中,所述算术解码器被配置为根据下式来确定一个或多个更新状态变量值
Figure FDA0002965036240000507
Figure FDA0002965036240000508
其中,A是查找表,
其中,z是预定偏移值;
其中,
Figure FDA0002965036240000509
是一个或多个加权值;
其中,
Figure FDA00029650362400005010
是一个或多个加权值。
207.根据权利要求197至206中的任一项所述的算术解码器,
其中,所述算术解码器被配置为通过将逻辑右移应用于所述编码区间大小信息来对所述编码区间大小信息进行量化。
208.根据权利要求197至206中的任一项所述的算术解码器,
其中,所述算术解码器被配置为通过
Figure FDA00029650362400005011
2-w来对所述编码区间大小信息R进行量化,其中u、v和w是参数。
209.根据权利要求197至208中的任一项所述的算术解码器,
其中,所述一维查找表的所述条目随着所述一个状态变量值或其所述缩放和/或舍入版本
Figure FDA00029650362400005012
的增加而单调地减少。
210.根据权利要求197至209中的任一项所述的算术解码器,
其中,用于所述一个状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000511
的所述值域的不同值区间大小相等。
211.根据权利要求210所述的算术解码器,
其中,所述一维查找表的所述条目随着所述一个状态变量值或其所述缩放和/或舍入版本
Figure FDA0002965036240000512
的增加而以递减速率单调地减少。
212.一种视频编码器(10),
其中,所述视频编码器被配置为对多个视频帧(12)进行编码,
其中,所述视频编码器包括根据权利要求1至79或权利要求104至118或权利要求80至91之一所述的算术编码器(34;400),所述算术编码器基于表示视频内容的二进制值序列(410)来提供编码的二进制序列(420)。
213.一种视频解码器(20;1600;1700),
其中,所述视频解码器被配置为对多个视频帧(12')进行解码,
其中,所述视频解码器包括根据权利要求119至196或权利要求197至211或权利要求92至103之一所述的算术解码器(50;500;1620;1720),所述算术解码器基于二进制序列的编码表示(14;510;1610;1710)提供解码的二进制序列(24”,520;1622;1722)。
214.一种用于对具有符号值的多个符号进行编码的方法,
其中,所述方法包括基于多个状态变量值(si k)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),所述多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值的统计,
其中,所述方法包括使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure FDA0002965036240000513
以及
使用所述查找表(LUT1)来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure FDA0002965036240000514
以便获得描述用于一个或多个要编码的符号的所述算术编码的区间大小的所述区间大小信息。
215.一种用于对具有符号值的多个符号进行编码的方法,
其中,所述方法包括基于多个状态变量值(si k)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),所述多个状态变量值表示具有不同适应时间常数的多个先前编码的符号值的统计,所述多个先前编码的符号值例如是二进制值0和1的序列,
其中,所述方法包括基于所述多个状态变量值(si k)来导出组合状态变量值(sk),以及
其中,所述方法包括使用查找表来映射所述组合状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000521
以便获得描述用于一个或多个要编码的符号的所述算术编码的区间大小的所述区间大小信息。
216.一种用于对具有符号值的多个符号进行编码的方法,
其中,所述方法包括确定一个或多个状态变量值(s1 k,s2 k),所述一个或多个状态变量值表示多个先前编码的符号值的统计,以及
其中,所述方法包括基于所述一个或多个状态变量值(si k)来导出用于一个或多个要编码的符号值的算术编码的区间大小信息(pk,R*pk),所述一个或多个状态变量值表示多个先前编码的符号值的统计,
其中,所述方法包括取决于要编码的符号并使用查找表(A)来更新第一状态变量值(sk 1)。
217.一种用于对具有符号值的多个符号进行解码的方法,
其中,所述方法包括基于多个状态变量值(si k)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),所述多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值的统计,
其中,所述方法包括使用查找表(LUT1)来映射第一状态变量值(sk 1)或其缩放和/或舍入版本
Figure FDA0002965036240000522
以及
使用所述查找表(LUT1)来映射第二状态变量值(sk 2)或其缩放和/或舍入版本
Figure FDA0002965036240000523
以便获得描述用于一个或多个要解码的符号的所述算术解码的区间大小的所述区间大小信息。
218.一种用于对具有符号值的多个符号进行解码的方法,
其中,所述方法包括基于多个状态变量值(si k)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),所述多个状态变量值表示具有不同适应时间常数的多个先前解码的符号值的统计,
其中,所述方法包括基于所述多个状态变量值(si k)来导出组合状态变量值(sk),以及
其中,所述方法包括使用查找表来映射所述组合状态变量值(sk)或其缩放和/或舍入版本
Figure FDA0002965036240000531
以便获得描述用于一个或多个要解码的符号的所述算术解码的区间大小的所述区间大小信息。
219.一种用于对具有符号值的多个符号进行解码的方法,
其中,所述方法包括确定一个或多个状态变量值(s1 k,s2 k),所述一个或多个状态变量值表示多个先前解码的符号值的统计,以及
其中,所述方法包括基于所述一个或多个状态变量值(si k)来导出用于一个或多个要解码的符号值的算术解码的区间大小信息(pk,R*pk),所述一个或多个状态变量值表示多个先前解码的符号值的统计,
其中,所述方法包括取决于解码的符号并使用查找表(A)来更新第一状态变量值(sk 1)。
220和221.分别由根据权利要求104和197所述的编码器和解码器执行的方法。
220.一种计算机程序,用于当所述计算机程序在计算机上运行时执行根据权利要求214至221之一所述的方法。
221.一种用于对具有符号值的多个符号进行编码的方法,
其中,所述方法包括基于一个或多个状态变量值(si k)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS),所述一个或多个状态变量值表示多个先前编码的符号值的统计,
其中,所述方法包括使用基本查找表(Base TabLPS)来确定所述区间大小值(RLPS),
其中,所述方法包括确定所述区间大小值(RLPS),使得如果基于所述一个或多个状态变量值而获得的概率索引(i)在第一范围内,则确定的区间大小值与所述基本查找表的元素相同或是所述基本查找表的元素的舍入版本,并且使得如果所述概率索引在第二范围内,则确定的区间大小值是使用所述基本查找表的元素的缩放和舍入而获得的;以及
其中,所述方法包括使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术编码。
222.一种用于对具有符号值的多个符号进行编码的方法,
其中,所述方法包括基于一个或多个状态变量值(si k)来导出用于一个或多个要编码的符号值的算术编码的区间大小值(RLPS),所述一个或多个状态变量值表示多个先前编码的符号值的统计,
其中,所述方法包括基于从所述一个或多个状态变量值导出的概率值和基于编码区间大小(R)使用概率表(Prob TabLPS)来确定所述区间大小值(RLPS),
其中,所述概率表描述用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,所述方法包括:如果当前概率值不在所述一组多个概率值中和/或如果当前编码区间大小(R)与所述给定编码区间大小不同,则对所述概率表(Prob_TabLPS)的元素进行缩放以获得所述区间大小值(RLPS);以及
其中,所述方法包括使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术编码。
223.一种用于对具有符号值的多个符号进行解码的方法,
其中,所述方法包括基于一个或多个状态变量值(si k)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS),所述一个或多个状态变量值表示多个先前解码的符号值的统计,
其中,所述方法包括使用基本查找表(Base TabLPS)来确定所述区间大小值(RLPS),
其中,所述方法包括确定所述区间大小值(RLPS),使得如果基于所述一个或多个状态变量值而获得的概率索引(i)在第一范围内,则确定的区间大小值与所述基本查找表的元素相同或是所述基本查找表的元素的舍入版本,并且使得如果所述概率索引在第二范围内,则确定的区间大小值是使用所述基本查找表的元素的缩放和舍入而获得的;以及
其中,所述方法包括使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术解码。
224.一种用于对具有符号值的多个符号进行解码的方法,
其中,所述方法包括基于一个或多个状态变量值(si k)来导出用于一个或多个要解码的符号值的算术解码的区间大小值(RLPS),所述一个或多个状态变量值表示多个先前解码的符号值的统计,
其中,所述方法包括基于从所述一个或多个状态变量值导出的概率值和基于编码区间大小(R)使用概率表(Prob TabLPS)来确定所述区间大小值(RLPS),
其中,所述概率表描述用于一组多个概率值并用于给定编码区间大小的区间大小,以及
其中,所述方法包括:如果当前概率值不在所述一组多个概率值中和/或如果当前编码区间大小(R)与所述给定编码区间大小不同,则对所述概率表(Prob_TabLPS)的元素进行缩放以获得所述区间大小值(RLPS);以及
其中,所述方法包括使用所述区间大小值(RLPS)来执行一个或多个符号的所述算术解码。
225.一种计算机程序,用于当所述计算机程序在计算机上运行时执行根据权利要求223至226之一所述的方法。
CN201980058433.3A 2018-07-06 2019-07-05 算术编码器、算术解码器、视频编码器、视频解码器、编码方法、解码方法和计算机程序 Pending CN112689960A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
EP18182308 2018-07-06
EP18182308.9 2018-07-06
EP18196400 2018-09-24
EP18196400.8 2018-09-24
EP18248294 2018-12-28
EP18248294.3 2018-12-28
PCT/EP2019/068188 WO2020008075A1 (en) 2018-07-06 2019-07-05 Arithmetic encoders, arithmetic decoders, video encoder, video decoder, methods for encoding, methods for decoding and computer program

Publications (1)

Publication Number Publication Date
CN112689960A true CN112689960A (zh) 2021-04-20

Family

ID=67253872

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980058433.3A Pending CN112689960A (zh) 2018-07-06 2019-07-05 算术编码器、算术解码器、视频编码器、视频解码器、编码方法、解码方法和计算机程序

Country Status (7)

Country Link
US (2) US11431352B2 (zh)
EP (1) EP3818637A1 (zh)
JP (2) JP2021532698A (zh)
KR (1) KR20210032413A (zh)
CN (1) CN112689960A (zh)
TW (2) TWI827010B (zh)
WO (1) WO2020008075A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489979A (zh) * 2021-05-28 2021-10-08 杭州博雅鸿图视频技术有限公司 熵编码方法、装置、电子设备及存储介质
CN113938273A (zh) * 2021-09-30 2022-01-14 湖南遥昇通信技术有限公司 可对抗量并行计算攻击的对称加密方法以及系统

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4029259A1 (en) * 2019-11-08 2022-07-20 Google LLC Probability estimation for entropy coding
WO2023049292A1 (en) * 2021-09-22 2023-03-30 Beijing Dajia Internet Information Technology Co., Ltd. Methods and devices for decoder-side intra mode derivation
WO2023129680A1 (en) * 2021-12-29 2023-07-06 Beijing Dajia Internet Information Technology Co., Ltd. Methods and devices on probability calculation for context-based adaptive binary arithmetic coding
WO2023137540A1 (en) * 2022-01-19 2023-07-27 The Governing Council Of The University Of Toronto System and method for off-chip data compression and decompression for machine learning networks

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69319505T2 (de) * 1992-07-31 1998-12-17 Canon Kk Einrichtung und Verfahren zur Bildkodierung
JP3184670B2 (ja) * 1992-07-31 2001-07-09 キヤノン株式会社 画像符号化装置
US5587710A (en) * 1995-03-24 1996-12-24 National Semiconductor Corporation Syntax based arithmetic coder and decoder
US6894628B2 (en) * 2003-07-17 2005-05-17 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Apparatus and methods for entropy-encoding or entropy-decoding using an initialization of context variables
EP1995974B1 (en) * 2005-12-05 2015-05-20 Huawei Technologies Co., Ltd. Method for realizing arithmetic coding
MX2012008075A (es) * 2010-01-12 2013-12-16 Fraunhofer Ges Forschung Codificador de audio, decodificador de audio, metodo para codificar e informacion de audio, metodo para decodificar una informacion de audio y programa de computacion utilizando una modificacion de una representacion de un numero de un valor de contexto numerico previo.
US9871537B2 (en) * 2011-10-27 2018-01-16 Qualcomm Incorporated Mapping states in binary arithmetic coder for video coding
JP6121172B2 (ja) 2012-01-24 2017-04-26 西川ゴム工業株式会社 目地のシール構造

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489979A (zh) * 2021-05-28 2021-10-08 杭州博雅鸿图视频技术有限公司 熵编码方法、装置、电子设备及存储介质
CN113938273A (zh) * 2021-09-30 2022-01-14 湖南遥昇通信技术有限公司 可对抗量并行计算攻击的对称加密方法以及系统
CN113938273B (zh) * 2021-09-30 2024-02-13 湖南遥昇通信技术有限公司 可对抗量并行计算攻击的对称加密方法以及系统

Also Published As

Publication number Publication date
US20230134365A1 (en) 2023-05-04
US20210126650A1 (en) 2021-04-29
TWI827010B (zh) 2023-12-21
EP3818637A1 (en) 2021-05-12
TWI765164B (zh) 2022-05-21
TW202017373A (zh) 2020-05-01
KR20210032413A (ko) 2021-03-24
US11431352B2 (en) 2022-08-30
JP2021532698A (ja) 2021-11-25
TW202306384A (zh) 2023-02-01
JP2023021214A (ja) 2023-02-10
WO2020008075A1 (en) 2020-01-09

Similar Documents

Publication Publication Date Title
CN112689960A (zh) 算术编码器、算术解码器、视频编码器、视频解码器、编码方法、解码方法和计算机程序
CN109997361B (zh) 用于视频译码的低复杂度符号预测
JP6814780B2 (ja) 動きベクトル差のエントロピー符号化
JP6636909B2 (ja) データ符号化及び復号化
KR102314801B1 (ko) 비디오 압축에서의 엔트로피 코딩을 위한 선택적 혼합
US8736467B2 (en) Adaptive binarization for arithmetic coding
KR102617187B1 (ko) 비디오 디코더, 비디오 인코더, 비디오 컨텐츠를 디코딩하기 위한 방법, 비디오 컨텐츠를 인코딩하기 위한 방법, 컴퓨터 프로그램 및 비디오 비트스트림
KR20080012333A (ko) 매크로블록 레벨 레이트 제어
JP6476900B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
KR20100102386A (ko) 레지듀얼 값 분포에 적응적인 부호표 선택에 기초한 영상 부호화, 복호화 방법 및 장치
CN109417622B (zh) 使用简单本地预测器的改进的有效性标志译码的方法和装置
KR20120105412A (ko) 산술 코딩 및 디코딩을 위한 방법들
US11979584B2 (en) Arithmetic encoders and decoders, video encoders and decoders, methods for encoding or decoding symbols, and methods for encoding or decoding video content
Sharabayko et al. Entropy-based intra-coding RDO estimation for HEVC
JP2024063203A (ja) ビデオデコーダ、ビデオエンコーダ、ビデオコンテンツを復号化する方法、ビデオコンテンツを符号化する方法、コンピュータプログラム、およびビデオビットストリーム
CN115066896A (zh) 具有模式全局设置的基于矩阵的帧内预测

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