基于上下文的算术解码设备和方法_2

文档序号:9668719阅读:来源:国知局
中确定的上下文的概率 模型来对转义码执行解码。此外,转义码解码单元可使用基于核的编码模式的上下文的概 率模型来对转义码执行解码。
[0087]概率映射单元306可使用当前N元组311的上下文和MSB上下文来映射最终概率模 型。
[0088] MSB解码单元307可使用当前N元组311的上下文和MSB上下文,对当前N元组311的 MSB顺序地执行算术编码。
[0089] LSB解码单元308可以按照比特单元对LSB执行算术编码,直到与等级相应的比特 深度。
[0090] 量化样本产生单元309可使用算术解码的MSB和LSB来产生当前N元组的量化样本。 量化样本产生单元309可按照等级左移MSB值,并提供LSB值以适合比特深度。
[0091] 上下文更新单元310可更新量化样本以对下一N元组进行解码。随后,MSB上下文确 定单元304可针对下一N元组使用更新的量化样本来确定MSB上下文。
[0092] 图4是用于描述根据实施例的N元组、MSB和LSB的示图。
[0093] 在图4的上部,基于时间和频率示出N元组。当前N元组401可指示期望被编码或解 码的N元组。四个邻近N元组402、403、404和405已被编码或解码,并且当确定当前N元组401 的上下文时可被使用。在这种情况下,邻近N元组403、404和405可相应于先前帧,邻近N元组 402可相应于与当前N元组401的帧相同的当前帧。
[0094] 在图4的下部,基于频率索引和比特深度示出MSB和LSB。在这种情况下,MSB可表示 包括符号信息的比特。根据实施例,MSB可被表示为包括符号信息的可用的3比特。将基于系 统的配置来改变MSB的定义。
[0095] 参照图4,LSB可表示具有比MSB更大比特深度的比特。在这种情况下,LSB可具有等 级值。等级值可以是通过上下文的MSB的组合而确定的值,"0"的比特深度可表示位于MSB下 方的LSB』元组可相应于MSB,并可根据频率索引被分为码元。例如,在图4中,N元组可被配 置为四个码元。随后,当前N元组401可根据将被编码或解码的频率来划分这四个码元。在这 种情况下,所述元组可相应于所述码元。在图4中,示出了包括在N元组中的四个码元,然而, 码元的数量可被改变。
[0096]图5示出根据实施例的上下文和概率模型。
[0097] 参照图5,示出了包括了四个码元的当前N元组501以及四个邻近N元组502、503、 504和505。图2和图3的N元组上下文确定单元203和303可使用关于当前N元组501的邻近N元 组502、503、504和505中的每一个的量化谱值,确定当前N元组501的上下文。
[0098]MSB上下文确定单元204和304可从邻近N元组502、503、504和505确定与构成当前N元组501的码元A、B、C和D中的每一个相应的上下文。如上所述,所述码元可表示MSB。例如, MSB上下文确定单元204和304可针对构成当前N元组501的码元,将与先前帧的频率相同的 频率的码元以及当前帧的先前频率的码元确定为上下文。具体地,MSB上下文确定单元204 和304可针对期望被编码或解码的MSB,将与先前帧的频率相同的频率的MSB以及当前帧的 先前频率的MSB确定为上下文。
[0099] 概率映射单元206和306可使用N元组的上下文和MSB上下文来映射最终概率模型。 例如,为了针对当前N元组501的码元A(MSBA)映射概率模型,概率映射单元206和306可将 邻近N元组502、503、504和505(即,当前N元组501的上下文)、邻近N元组504的MSBA0(即, MSBA的上下文)和邻近N元组502的MSBD1映射为概率模型。在图5中示出了构成当前N元组 501的MSB的A、B、C和D中的每一个的概率模型。
[0100]在这种情况下,当与A、B、C和D中的每一个相应的MSB为包括符号信息的高3位时,8 种(-4、-3、_2、_1、0、1、2和3)可被获得作为MSB值。随后,概率映射单兀206和306可将概率值 分配给总共8个MSB值。具体地,概率映射单元206和306可在具有与先前帧相同频率的8种 MSB值(AO、BO、C0和D0)以及当前帧的先前频率的8种MSB值(D1、A、B和C)的条件下,可映射概 率模型。随后,概率表可以是prob[8] [8] [8]。这个概率表可以是prob[64] [8]。
[0101]例如,当具有与先前帧相同频率的MSB值为-4,当前帧的先前频率的MSB值为-3时, 概率模型可被选为pr〇b[-4+4][-3+4]。具体地,选择的概率模型可被配置为?={?(-4),?(_ 3),p(-2),p(-l),p(0),p(l),p(2),p(3)}。因此,当前N元组501的最终的概率表可被配置为 prob[32][64X8]。在这种情况下,概率映射单元206和306可基于Π)或wLPT(TCX)的模式信 息来配置与每一个模式信息相应的概率表。
[0102] 此外,当概率模型中的相同值重叠时,概率映射单元206和306可使用概率模型映 射表以提高存储器的使用效率。概率模型映射表可表示为单独表示的索引。例如,概率模型 映射表可被表示为无符号的短映射[2048 ],无符号的短prob[ 748 ][ 8 ]等。具体地,产生概率 模型映射表的上述表达式的条件的数量为2048,概率模型的总数量为748。因此,无符号的 短[32] [64X8]可以是32X64X8X0.5 = 8192字,当使用概率模型映射表时,获得2048X 0.5+748X0.5 = 4016字,从而减少存储。
[0103]图6是示出根据实施例的MSB解码方法(第一示例)的流程图。
[0104] 在操作S601,算术解码设备101可使用包括在当前N元组中的四个MSB来确定LSB的 比特深度。当对LSB执行解码时,可使用LSB的比特深度。在操作S602,算术解码设备101可针 对所述四个MSB来选择概率模型组。在操作S603,算术解码设备101可针对将被解码的MSB是 否是转义码来选择概率模型,并对MSB执行算术解码。在操作S605,算术解码设备101可针对 MSB是否是转义码,使用表ari_pk_mod_esc[32][2]来执行解码。当在转义码的情况下进行 算术解码时,算术解码设备101可返回到操作604,否则,算术解码设备101可执行操作S606。
[0105] 在操作S607,在ro模式或TCX(wLPT)模式的情况下,算术解码设备101可使用具有 与先前帧相同频率的MSB以及同一帧的先前频率的MSB,来映射MSB码元的概率模型。在操作 S606,算术解码设备101可基于映射的概率模型的结果,对包括在当前N元组中的四个MSB执 行算术解码。
[0106]图7是示出根据实施例的LSB解码方法(第一示例)的流程图。
[0107] 在操作S701,算术解码设备101可设置从MSB的解码得到的比特深度索引(bid)。在 操作S702,算术解码设备101可确定比特深度索引是否小于"N",S卩,LSB的等级。在操作 S703,当比特深度索引小于"N"时,算术解码设备101可基于比特深度索引和MSB的符号来确 定概率模型。在操作S705,当比特深度索引大于"N"时,算术解码设备101可基于MSB的符号 来确定概率模型。接下来,在操作S704,算术解码设备101可以按照LSB的比特单位执行算术 解码,并输出与在相应于MSB的LSB中的比特深度索引相应的比特值(1或0)。在这种情况下, 算术解码设备101可将已被编码或解码的MSB分类为"0"、正值和负值,并对分类的MSB执行 算术解码。
[0108] 例如,当比特深度小于N(5)时,算术解码设备101将比特深度信息用作上下文,否 贝1J,算术解码设备101可仅分类三种情况,即当MSB为"0"、正值和负值。算术解码设备101可 在执行算术解码之后将比特深度索引加1,从而与下一比特深度相应的LSB可被算术解码。
[0109]图8是示出根据实施例的使用符号分类的MSB解码方法的流程图。
[0110] 符号分类可表示仅针对MSB的码元的表达方案被改变。图8的操作S801到S805可对 应于图6的操作S601到S606。
[0111] 在操作S806,当在操作S805将被解码的MSB是转义码时,算术解码设备101可执行 数值算术解码。在这种情况下,在操作S808,算术编码设备100可确定是否需要对MSB的符号 执行解码。在操作S810,当需要对MSB的符号执行解码时,算术编码设备100可对MSB的符号 执行解码。在操作S809,当不需要对MSB的符号执行解码时,算术编码设备100可将符号转换 为MSB值。例如,-4和0是固定值,因而不需要对-4和0的每一个值的符号执行解码。当在操作 S807映射MSB码元的概率模型时可使用转换的MSB值。参照图8,可首先对相同频率索引的 MSB数值进行解码,可对MSB数值的符号执行解码,随后可执行下一频率索引的编码。
[0112] 当对MSB执行解码时,可以按照上面的相同方式使用上下文,或可使用改变的码 元。特别地,当对当前帧的MSB进行解码时,算术解码设备101可使用与先前帧的频率相同频 率的MSB和当前帧的先前频率的MSB两者。在这种情况下,概率模型的数值可以是[32 ][8] [8][5],概率模型的符号可指示[32][8][8][2]。算术解码设备101可使用改变的码元,改变 的码元的概率模型的数值可以是[32] [5] [5] [5],改变的码元的概率模型的符号可指示 [32][5][5][2]〇
[0113]图9是示出根据实施例的使用线谱频率(LSF)的编码方法和解码方法中的每种的 流程图。
[0114] 在wLPT模式中,可使用线性预测编码(LPC)信息来另外确定上下文。在这种情况 下,可将LPC系数转换为对于被量化有效的LSF1SF之间的差可主要与频谱峰值相关,并且 当LSF之间的间隔相对较小时可产生频谱峰值。另外,当LSF之间的间隔较小时,即使在LP滤 波之后的频谱包络很高的概率可能相对较高,因而量化样本的MSB可能相对较大。
[0115] 在图9的上部示出了MSB编码方法的流程图,在图9的下部示出了MSB解码方法的流 程图。
[0116] 在操作S901,算术编码设备100可执行LSF编码。在操作S902,算术编码设备100可 使用从LSF的编码获得的量化LSB,产生与N元组(N-tuple)对应的上下文。在操作S903,算术 编码设备100可使用量化的MDCT频谱和现有上下文两者来确定概率模型。在操作S904,算术 编码设备100可对MSB执行算术编码。算术编码后的MSB和量化LSF可被包括在比特流中。
[0117] 在操作S905,算术解码设备101可对压缩的比特流执行LSG编码。在操作S907,算术 解码设备1 〇 1可使用通过LSF编码获得的量化LSF,产生与N元组对应的上下文。
[0118] 在操作S906,算术解码设备101可使用量化的MDCT频谱和现有上下文两者来确定 概率模型,并对操作S904的MSB执行算术解码。
[0119]当使用LSF确定了上下文时,可能需要改变当前比特流的结构。特别地,当以 acelp_core_mode、lpd_mode、ACELP或TCX数据、LPC数据的顺序来配置当前比特流的结构 时,以acelp_core_mode、lpd_mode、LPC数据、ACELP或TCX数据的顺序来配置改变后的比特 流的结构。
[0120] 图10详细地示出根据实施例的算术编码设备100的第二示例的配置。
[0121] 算术编码设备100包括上下文重设单元1001、上下文映射单元1002、N元组上下文 确定单元1003、MSB上下文确定单元1004、转义码编码单元1005、概率映射单元1006、MSB编 码单元1007、LSB编码单元1008、上下文模式编码单元1009和上下文更新单元1010。
[0122] 与图2的算术编码设备100相比,图10的算术编码设备100还可包括上下文模式编 码单元1009。
[0123]当将被编码的当前帧不是重设帧时,上下文映射单元1002可在当前帧的频谱长度 与先前帧的频谱长度不同的情况下,将先前帧的长度对齐为当前帧的长度。
[0124] 另外,上下文映射单元1002可另外映射先前帧的编码的MSB。
[0125]N元组上下文确定单元1003可使用与将被编码的当前N元组1011(4元组)相邻的邻 近N元组1012、1013、1014和1015的量化谱值,确定关于当前N元组1011上下文。
[0126] 可通过已经被编码的四个邻近N元组1012、1013、1014和1015来对当前N元组1011 进行编码。
[0127] N元组上下文确定单元1003可执行缩减,直到关于当前N元组1011的邻近N元组212 和214中的每一个的量化谱值在-4到3的范围内。随后,N元组上下文确定单元1003可基于执 行缩减的次数来估计lev0。另外,N元组上下文确定单元1003可通过执行按照lev0的缩减 来提取MSB,并重复执行缩减,直到提取的MSB具有从-4到3的范围的值。缩减被额外执行的 次数可确定对转义码执行的编码的次数。
[0128]MSB上下文确定单元1004可针对期望被编码的MSB,从当前N元组1011的邻近N元组 1013和1015确定MSB上下文。特别地,MSB上下文确定单元1004可针对期望被编码的MSB,将 与先前帧的频率相同的频率的MSB和当前帧的先前频率的MSB两者确定为MSB上下文。
[0129]这里,上下文模式编码单元1009可对当对MSB执行编码时将被使用的多个上下文 中的最后被发送的单个上下文模式执行编码。所述多个上下文可表示与将被解码的码元相 邻的MSB。可通过比特封包方案来发送上下文模式,并可通过算术编码方案发送上下文模 式。可每帧执行一次上下文模式的发送。上下文模式编码单元1009可通过分配表示候选数 字的比特来执行比特封包方案。将参照图16进一步描述上下文模式编码单元1009。
[0130]MSB上下文确定单元1004可根据上下文模式选择合适的MSB上下文。
[0131]转义码编码单元1005可使用基于当前N元组1010的上下文的概率模型对转义码执 行编码。特别地,转义码编码单元1005可根据将被解码的MSB是否为转义码执行算术编码, 并且当将被解码的MSB不是转义码时对MSB执行算术编码。根据当对转义码执行编码时使用 的上下文,N元组的上下文和核编码模式(ro或wLPD)的上下文。当将被解码的MSB是转义码 时,可将MSB编码为1,当将被解码的MSB不是转义码时,可将MSB编码为0。当使用转义码对 MSB执行编码时,可通过将lev0的值增加+2单位来更新LSB的比特深度"等级"。
[0132] 概率映射单元1006可使用当前N元组1011的上下文和MSB上下文来映射最终概率 模型。概率映射单元1006可使用映射表和概率表。映射概率模型的过程可以是从概率表获 得当对MSB执行解码时将被应用的概率模型的过程。特别地,当存在用于所有情况的概率模 型时,可减小存储器的大小的负担。因此,为了减小存储器的大小,概率映射单元1006可使 用映射表以获得取决于上下文的概率模型。可通过将概率表的索引分配给与每一个概率的 上下文对应的总排列来配置映射表。可由当对MSB执行解码时使用的所有的概率值配置概 率表。
[0133]MSB编码单元1007可使用当前N元组1010的上下文和MSB上下文对当前N元组的MSB 顺序地执行算术编码。
[0134] LSB编码单元1008可按照比特单位对LSB执行算术编码,直到与等级对应的比特深 度。可按照比特单位执行LSB的编码,LSB编码单元1008可使用表示到MSB的距离的比特深度 信息和MSB的符号信息(正数、负数和零)作为上下文,来对LSB执行算术编码。
[0135] 上下文更新单元1010可更新量化样本以对下一N元组执行编码。随后,MSB上下文 确定单元1004可使用针对N元组的更新的量化样本确定MSB上下文。
[0136]图11详细地示出根据实施例的算术解码设备的第二示例的配置。
[0137] 算术解码设备101包括上下文重设单元1101、上下文映射单元1102、上下文模式解 码单元1103、N元组上下文确定单元1104、MSB上下文确定单元1105、转义码解码单元1106、 概率映射单元1107、MSB解码单元1108、LSB解码单元1109、量化样本产生单元1110和上下文 更新单元1111。与图3的算术解码设备101相比,图11的算术解码设备101还可包括上下文模 式解码单元1103。
[0138] 图2或图11的算术解码设备101可划分MSB和LSB以执行解码。特别地,算术解码设 备101可仅对MSB进行解码,或者对MSB和LSB两者进行解码。
[0139]当将被解码的当前帧不是重设帧时,上下文映射单元1102可在当前帧的频谱长度 不同于先前帧的频谱长度的情况下将先前帧的长度对齐为当前帧的长度。另外,上下文映 射单元1102还可对先前帧的解码后的MSB值执行映射。特别地,上下文映射单元1102可接收 MSB上下文的各种组合的候选,以对接收的候选执行解码,并选择解码结果的比特率最小的 上下文模式,从而对选择的上下文模式执行解码。
[0140]上下文模式解码单元1103可对当执行MSB时使用的多个上下文中最后发送的单个 上下文模式执行解码。所述多个上下文可表示与将被解码的码元相邻的MSB。可通过比特封 包方案来发送上下文模式,并可通过执行算术解码发送上下文模式。可每帧执行一次上下 文模式的发送。上下文模式解码单元1103可通过分配表示候选数字的比特来执行比特封包 方案。将参照图16进一步描述上下文模式解码单元1103。随后,MSB上下文确定单元1104可 根据上下文模式选择合适的MSB上下文。
[0141] N元组上下文确定单元1104可使用与将被解码的当前N元组1112相邻的邻近N元组 (4元组)1113、1114、1115和1116的量化谱值,针对当前N元组1112确定上下文。可通过已经 解码的邻近N元组1113、1114、1115和1116对当前的N元组1112进行解码。
[0142]N元组上下文确定单元1104可执行缩减,直到邻近N元组1114和1116中的每一个的 量化谱值在-4到3的范围内。随后,N元组上下文确定单元1104可基于执行缩减的次数来估 计lev0〇
[0143]MSB上下文确定单元1105可针对将被解码的MSB,从当前N元组1112的邻近N元组 1114和1116确定MSB上下文。特别地,MSB上下文确定单元1105可针对将被解码的MSB,将与 先前帧的频率相同的频率的MSB和当前帧的先前频率的MSB两者确定为MSB上下文。
[0144] 概率映射单元1106可使用当前N元组1112的上下文和MSB上下文映射最终概率模 型。概率映射单元1106可使用映射表和概率表。映射概率模型的过程可以是从概率表获得 当执行MSB时将被应用的概率模型的过程。特别地,当存在用于所有情况的概率模型时,可 减小存储器的大小的负担。因此,为了减小存储器的大小,概率映射单元1106可使用映射表 以获得取决于上下文的概率模型。可通过将概率表的索引分配给与每一个概率的上下文对 应的总排列来配置映射表。可由当对MSB执行解码时使用的所有的概率值配置概率表。
[0145]转义码解码单元1107可使用基于当前N元组1112的上下文的概率模型对转义码执 行解码。特别地,转义码解码单元1107可根据将被解码的MSB是否为转义码执行算术解码, 并且当将被解码的MSB不是转义码时对MSB执行算术解码。根据当对转义码执行解码时使
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1