频域包络的矢量量化方法和装置制造方法

文档序号:2826068阅读:117来源:国知局
频域包络的矢量量化方法和装置制造方法
【专利摘要】本发明实施例提出了频域包络的矢量量化方法和装置。其中,所述方法包括:将一帧中的N个频域包络划分为N1个矢量,其中N1个矢量中的每一个矢量包括M个频域包络;采用第一码本对N1个矢量中的第一矢量进行量化,以获得第一矢量量化的码字,其中第一码本被划分为2B1个部分;根据第一矢量量化的码字,确定量化后的第一矢量与第一码本的2B1个部分中的第i个部分相关联;根据第i个部分的码本确定第二码本;基于第二码本,对N1个矢量中第二矢量进行量化。本发明实施例通过将频域包络划分为多个具有更少维数的矢量,能够使用较少比特数的码本对频域包络矢量进行矢量量化,不但能够降低矢量量化的复杂度,并且能够保证矢量量化的效果。
【专利说明】频域包络的矢量量化方法和装置

【技术领域】
[0001]本发明涉及编解码领域,特别地,涉及频域包络的矢量量化方法和装置。

【背景技术】
[0002]通常,将输入信号的一帧中的所有频点或者部分频点的值求平均能量再开根号就获得了这些频点的频域包络。
[0003]目前,编解码器中对频域包络进行量化的方法通常是指简单的标量量化或者矢量量化。但是,当一些特殊的情况,例如需要在一帧中求出很多个频域包络同时对于用于量化频域包络的比特数也存在一定限制时,如果每个频域包络都采用标量量化则会耗费大量比特。
[0004]对于现有的矢量量化方法而言,包括以下步骤:(1)将需要量化的频点根据矢量的维数划分成若干个矢量;(2)预先使用大量的矢量样本根据每个矢量量化的比特数B训练出一个2~B长度的码本,即这个码本有2~B个矢量,这些矢量是根据大量矢量样本事先训练好的;(3)用需要量化的矢量A与码本中的每个矢量进行比较,找出与矢量A最接近的矢量B ; (4)这个矢量B在码本中的位置索引即为矢量A的量化值。因此,如果全部频域包络组合在一起做矢量量化则需要很大的码本,导致复杂度的提升。
[0005]如何设计一种简单有效的频域包络矢量量化方法同时又能保证量化质量是亟需解决的问题。


【发明内容】

[0006]本发明提出了频域包络的矢量量化方法和装置,旨在解决由于码本的比特数不够多而频域包络的数量较多所引起的量化精度不够或者复杂度过高的问题。
[0007]—方面,提出了一种频域包络的矢量量化方法,包括:将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,N1、N、M为正整数,且M大于或等于2,N大于NI ;采用B比特的第一码本对所述NI个矢量中的第一矢量进行量化,以获得所述第一矢量量化的码字,其中所述第一码本被划分为2B1个部分,B为正整数且大于或等于2,BI为正整数且大于或等于I ;根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,其中i为正整数,i大于或等于I且小于或等于2B1 ;根据所述第i个部分的码本确定所述第二码本;基于所述第二码本,对所述NI个矢量中第二矢量进行量化。
[0008]结合第一方面,在第一方面的第一实施方式中,所述根据所述第i个部分的码本确定第二码本包括:采用所述第一码本中的第i个部分作为第二码本,其中所述第一码本中的第i个部分的比特数为B-Bl。
[0009]结合第一方面,在第一方面的第二实施方式中,所述根据所述第i个部分的码本确定第二码本包括:采用预先训练的码本作为第二码本,其中所述预先训练的码本的比特数与所述第一码本中的第i个部分的比特数相同,均为B-B1。
[0010]结合第一方面或其第一、第二实施方式,在第一方面的第三实施方式中,当BI为I时,所述根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联包括:当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的前半部分,确定量化后的第一矢量与所述第一码本的所述前半部分相关联;或者当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的后半部分,确定量化后的第一矢量与所述第一码本的所述后半部分相关联。
[0011]结合第一方面或其第一、第二实施方式,在第一方面的第四实施方式中,当M为2且BI为I时,所述根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联包括:确定与所述码字对应的量化后的第一矢量的第一个值与第二个值的比值是否在预定范围;当确定所述比值在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联;或者当确定所述比值不在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联。
[0012]结合第一方面或其第一至第四实施方式,在第一方面的第五实施方式中,所述将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络:当所述一帧包括M个子帧,且所述M个子帧中每个子帧包括NI个包络,其中M与NI的乘积为N,将所述M个子帧中的每个子帧中对应的包络组合成一个矢量从而得到NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络。
[0013]第二方面,提出了一种频域包络的矢量量化装置,包括:矢量划分单元,用于将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,N1、N、M为正整数,且M大于或等于2,N大于NI ;第一量化单元,用于采用B比特的第一码本对所述矢量划分单元所划分的所述NI个矢量中的第一矢量进行量化,以获得所述第一矢量量化的码字,其中所述第一码本被划分为2B1个部分,B为正整数且大于或等于2,BI为正整数且大于或等于I ;第一确定单元,用于根据所述第一量化单元量化的所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,其中i为正整数,i大于或等于I且小于或等于2B1 ;第二确定单元,用于根据所述第一确定单元确定的所述第i个部分的码本确定所述第二码本;第二量化单元,用于基于所述第二确定单元确定的所述第二码本,对所述NI个矢量中第二矢量进行量化。
[0014]结合第二方面,在第二方面的第一实施方式中,所述第二确定单元具体用于:采用所述第一码本中的第i个部分作为第二码本,其中所述第一码本中的第i个部分的比特数为 B-Bl。
[0015]结合第二方面,在第二方面的第二实施方式中,所述第二确定单元具体用于:采用预先训练的码本作为第二码本,其中所述预先训练的码本的比特数与所述第一码本中的第i个部分的比特数相同,均为B-Bl。
[0016]结合第二方面或其第一、第二实施方式,在第二方面的第三实施方式中,当BI为I时,所述第一确定单元具体用于:当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的前半部分,确定量化后的第一矢量与所述第一码本的所述前半部分相关联;或者当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的后半部分,确定量化后的第二矢量与所述第一码本的所述后半部分相关联。
[0017]结合第二方面或其第一、第二实施方式,在第二方面的第四实施方式中,当M为2且BI为I时,所述第一确定单元具体用于:确定所述码字对应的量化后的第一矢量的第一个值与第二个值的比值是否在预定范围;当确定所述比值在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联;或者当确定所述比值不在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联。
[0018]结合第二方面或其第一至第四实施方式,在第二方面的第五实施方式中,所述矢量划分单元具体用于:当所述一帧包括M个子帧,且所述M个子帧中每个子帧包括NI个包络,其中M与NI的乘积为N,将所述M个子帧中的每个子帧中对应的包络组合成一个矢量从而得到NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络。
[0019]本发明实施例通过将频域包络划分为多个具有更少维数的矢量,能够使用较少比特数的码本对频域包络矢量进行矢量量化,不但能够降低矢量量化的复杂度,并且能够保证矢量量化的效果。

【专利附图】

【附图说明】
[0020]为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是根据本发明实施例的频域包络的矢量量化方法的流程图。
[0022]图2是根据本发明实施例的频域包络的矢量量化装置的结构示意图。
[0023]图3是实现本发明实施例的频域包络的矢量量化方法的编解码器。

【具体实施方式】
[0024]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
[0025]本发明实施例针对在频域包络进行矢量量化时总比特数受限的情况,根据需要编码的频域包络的特点,利用子帧间各个频域包络相关性等关系,提出了一种简单而又节省比特同时也能保证量化效果的频域包络的矢量量化方法。本发明实施例的矢量量化方法均针对一帧包含多个频域包络的情况。
[0026]以下将参照图1描述根据本发明实施例的频域包络的矢量量化方法。该矢量量化方法包括以下步骤。
[0027]SlOl,将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,N1、N、M为正整数且大于或等于2,N大于NI。
[0028]例如,首先将一帧中的N个频域包络分为NI个M维矢量,于是NI XM=N。然后,对NI个矢量进行矢量量化。这样,由于维数减少,要达到合理的量化精度,单个矢量所需的比特数也不用太多,矢量量化的复杂度也同时减少。
[0029]当一帧包括M个子帧,且所述M个子帧中每个子帧包括NI个包络,其中M与NI的乘积为N,为了减少维数,还可以将所述M个子帧中的每个子帧中对应的包络组合成一个矢量。这里,对应的包络可以是对应位置的包络。例如,在该M个子帧中,每个子帧的第一个包络组合为第一矢量,每个子帧的第二个包络组合为第二矢量,依此类推。最后,得到NI个矢量,其中每个矢量包括M个频域包络。
[0030]一般地,对于不同的频域包络特性,可以采用不同的矢量组合方式:其一,当同一子帧有多于两个频域包络时,同时子帧数比较少,比如只有两个子帧时,则可以将不同子帧的同一个频域包络进行组合,这样得到多个2维矢量;其二,当存在多于两个子帧时,也可以将每个子帧的第一个频域包络组合成第一个矢量,每个子帧的第J个频域包络组合成第J个矢量。
[0031]S102,采用第一码本对所述NI个矢量中的第一矢量进行量化,以获得所述第一矢量量化的码字,其中所述第一码本的B比特被划分为2B1个部分,B为正整数且大于或等于2,BI为正整数且大于或等于I。
[0032]例如,对第一矢量进行矢量量化需要的比特数为B,那么需要训练得到一个具有2~B码字的第一码本。由于这NI个频域包络矢量属于同一帧,因此可以根据这些矢量的前后关系对NI个矢量的码本的顺序进行调整,从而根据前面的矢量的量化结果,估计出后续矢量的范围,减少对后续矢量进行矢量量化所需的比特数。
[0033]容易理解,若将第一码本分为2个部分,之后采用第一码本的其中一个部分对后续矢量进行量化,则量化后续矢量的码本只有B-1个比特;若将第一码本分为4个部分,之后采用第一码本的其中一个部分对后续矢量进行量化,则量化后续矢量的码本只有B-3个比特;依次类推。也就是说,可以使用较小的码本对频域包络矢量进行矢量量化,而且能够降低矢量量化的复杂度以及保证矢量量化的效果。
[0034]S103,根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,其中i为正整数,i大于或等于I且小于或等于2B1。
[0035]例如,当BI为I时,第一码本被划分为2个部分。因此,将量化后的第一矢量与第一码本中的每个矢量进行比较,找出第一码本中的与第一矢量最接近的矢量,该矢量在第一码本中的位置索引即为第一矢量的量化值。
[0036]当确定该第一矢量的量化值位于第一码本的前半部分,则确定所述第一矢量量化的码字属于所述第一码本的所述2个部分中的前半部分,即确定量化后的第一矢量与所述第一码本的前半部分相关联,可以采用第一码本的前半部分作为第二码本;否则,确定所述第一矢量量化的码字属于所述第一码本的所述2个部分中的后半部分,即确定量化后的第一矢量与所述第一码本的后半部分相关联,可以采用第一码本的后半部分作为第二码本。
[0037]或者,例如,当M为2且BI为I时,第一码本被划分为2个部分,且每个矢量是2维的。因此,将量化后的第一矢量与第一码本中的每个矢量进行比较,找出第一码本中的与第一矢量最接近的矢量,该矢量在第一码本中的位置索引即为第一矢量的量化值。
[0038]然后,确定所述码字对应的量化后的第一矢量的第一个值与第二个值的比值是否在预定范围;当确定所述比值在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联;或者当确定所述比值不在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联。这里,预定范围是根据经验预先设定的一个阈值范围。
[0039]假设二维矢量的第一码本为{(al, bl),(a2, b2),(a3, b3),(a4, b4)},其中(al,bl)的码字(也即(al,bl)在第一码本中的位置索弓丨)为1,(a2, b2)的码字为2,(a3, b3)的码字为3,(a4,b4)的码字为4。码字就是码本中的每个矢量在码本中对应的位置索弓I。若确定第一矢量量化后的码字为3,也就是说,所述码字对应的量化后的第一矢量为(a3,b3)。接着,将第一个值a3与第二个值b3的比值与预定范围[a,b]进行比较,若在该范围内,则确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联,可以采用第一码本的前半部分作为第二码本,否则确定所述量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联,可以采用第一码本的后半部分作为第二码本。
[0040]S104,根据所述第i个部分的码本确定第二码本。
[0041]例如,如上所述,可以采用所述第一码本中的第i个部分作为第二码本,其中所述第一码本中的第i个部分的比特数为B-Bl。或者,例如,可以采用预先训练的码本作为第二码本,其中所述预先训练的码本的比特数与所述第一码本中的第i个部分的比特数相同,均为B-Bl。
[0042]也就是说,第二矢量的码本都可以直接根据第一个矢量的量化码本取其一部分来确定。实际操作中,根据不同编解码器的要求,也可以重新训练一个或者多个只有第一码本的部分码字的码本(具有B-Bl比特)作为第二个及后续矢量的码本,从而达到减少量化比特数和优化量化质量的效果。
[0043]S105,基于所述第二码本,对所述NI个矢量中第二矢量进行量化。
[0044]例如,可以基于第一个矢量量化的结果确定的第二码本对第二个以及后续的矢量进行量化。也就是,采用B比特的第一码本对所述NI个矢量中的第一个矢量进行量化,以获得所述第一个矢量量化的码字;然后,确定所述第一个矢量量化的码字属于所述第一码本的所述2B1个部分中的第i个部分;再根据所述第i个部分的码本确定第二码本;最后,采用所述第二码本,对所述NI个矢量中除第一个矢量之外的其他矢量进行量化。
[0045]或者,例如,也可以基于第一个矢量量化的结果确定的第二码本对第二个矢量进行量化,然后再基于第二个矢量量化的结果确定的第三码本对第三个矢量进行量化,以此类推。
[0046]由此可见,本发明实施例通过将频域包络划分为多个具有更少维数的矢量,能够使用较小的码本对频域包络矢量进行矢量量化,不但能够降低矢量量化的复杂度,并且能够保证矢量量化的效果。
[0047]在一种实施方式中,当BI为I时,在步骤S103的确定所述第一个矢量量化的码字属于所述第一码本的所述2B1个部分中的第i个部分,并在步骤S104中根据所述第i个部分的码本确定第二码本具体包括:
[0048]确定所述第一个矢量量化的码字是否属于所述第一码本的所述2个部分中的第一部分,例如前半部分;
[0049]当确定所述第一个矢量量化的码字属于所述第一码本的所述2个部分中的前半部分,则确定量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联,进一步确定第二码本为所述第一码本的前半部分;或者
[0050]当确定所述第一个矢量量化的码字不属于所述第一码本的所述2个部分中的前半部分,则确定量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联,进一步确定第二码本为所述第一码本的后半部分。
[0051]此时,第_■码本只需B-1个比特。
[0052]在另一实施方式中,当M为2且BI为I时,在步骤103的根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,并在步骤S104中根据所述第i个部分的码本确定第二码本具体包括:
[0053]确定所述码字对应的量化后的第一个矢量(二维矢量)的前一个值与后一个值的比值是否在预定范围;
[0054]当确定所述比值在预定范围,则确定量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联,进一步确定第二码本为所述第一码本的前半部分;或者
[0055]当确定所述比值不在预定范围,则确定量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联,进一步确定第二码本为所述第一码本的后半部分。
[0056]此时,第二码本只需B-1个比特。
[0057]在上述两个实施方式中,示例性地描述了具有B个比特的第一码本被分为2个部分的情况,这也是比较容易实现的实施方式。应理解,本发明实施例中的第一码本并不限于仅被分为2个部分,还可以是4个部分、8个部分,甚至更多的2的整数次方个部分。一般而言,若第一码本被分为越多的部分,确定出的第二码本的准确性则越低,从而可能影响量化精度。因此,通常可以结合实际能使用的比特数来考虑BI的取值,即将第一码本分成几个部分可以保证量化质量。
[0058]以下给出了一些具体实施例,详细描述根据本发明实施例的频域包络的矢量量化方法。
[0059]第一具体实施例。若一帧中包括N个频域包络,该帧划分为NI个子帧,每个子帧里有相同的频域包络数M,那么每个子帧的频域包络(共M个频域包络)打包在一起作为一个矢量,则有NI个矢量:
[0060]首先,利用事先训练并排序好的2~B个码字的第一码本A,对第一个矢量用B比特进行量化,量化结果为ind(l);
[0061]然后,判断量化结果ind(l)在第一码本A中的位置是否在前半部分:
[0062]若是,则采用码本A的前半部分的码字作为新码本(即第二码本,包括B-1个比特),对第二个及后续矢量用B-1比特进行量化;
[0063]否则,若不是,则采用码本A的后半部分的码字作为新码本(即第二码本,包括B-1个比特),对第二个及后续矢量用B-1比特进行量化。
[0064]由此可见,该第一具体实施例首先对总码本(例如,第一码本)进行排序,然后结合第一个矢量的量化结果,估计后续矢量的量化结果,然后缩小码本范围对后续矢量进行量化。
[0065]第二具体实施例。如果矢量是2维的时候,还可以采用本具体实施例的方法:
[0066]首先,利用事先训练并排序好的2~B个码字的第一码本A,对第一个矢量用B比特进行量化,量化结果为ind(l);
[0067]然后,判断第一个矢量量化后的两个值的比值,即将量化后的第一个矢量的前一个值除以后一个值,判断是否在事先给定的范围[a,b]内:
[0068]若是,则采用第一码本A的前半部分的码字作为新码本(即第二码本,包括B-1个比特),对第二个及后续矢量用B-1比特进行量化;
[0069]否则,若不是,则采用第一码本A的后半部分的码字作为新码本(即第二码本,包括B-1个比特),对第二个及后续矢量用B-1比特进行量化。
[0070]由此可见,本具体实施例是根据二维向量的特点,估计后续矢量的量化结果,然后缩小码本范围对后续矢量进行量化。
[0071]以下将结合图2描述根据本发明实施例的频域包络的矢量量化装置。
[0072]在图2中,频域包络的矢量量化装置20包括矢量划分单元21、第一量化单元22、第一确定单元23、第二确定单元24和第二量化单元25。其中:
[0073]矢量划分单元21用于将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,N1、N、M为正整数,且M大于或等于2,N大于NI ;
[0074]第一量化单元22用于采用B比特的第一码本对所述矢量划分单元21所划分的所述NI个矢量中的第一矢量进行量化,以获得所述第一矢量量化的码字,其中所述第一码本被划分为2B1个部分,B为正整数且大于或等于2,BI为正整数且大于或等于I ;
[0075]第一确定单元23用于根据所述第一量化单元22量化的所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,其中i为正整数,i大于或等于I且小于或等于2B1 ;
[0076]第二确定单元24用于根据所述第一确定单元23确定的所述第i个部分的码本确定所述第二码本;
[0077]第二量化单元25用于基于所述第二确定单元24确定的所述第二码本,对所述NI
个矢量中第二矢量进行量化。
[0078]具体地,第二确定单元24可以用于采用所述第一码本中的第i个部分作为第二码本,其中所述第一码本中的第i个部分的比特数为B-B1。或者,第二确定单元24可以用于采用预先训练的码本作为第二码本,其中所述预先训练的码本的比特数与所述第一码本中的第i个部分的比特数相同,均为B-Bl。。
[0079]具体地,当BI为I时,第一确定单元23可以用于当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的前半部分,则确定量化后的第一矢量与所述第一码本的所述前半部分相关联;或者当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的后半部分,则确定量化后的第一矢量与所述第一码本的所述后半部分相关联。
[0080]或者,当M为2且BI为I时,第一确定单元23可以用于确定所述码字对应的量化后的第一矢量的第一个值与第二个值的比值是否在预定范围;当确定所述比值在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联;或者当确定所述比值不在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联。
[0081]具体地,矢量划分单元21还可以用于:当所述一帧包括M个子帧,且所述M个子帧中每个子帧包括NI个包络,其中M与NI的乘积为N,将所述M个子帧中的每个子帧中对应的包络组合成一个矢量从而得到NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络。
[0082]本发明实施例通过将频域包络划分为多个具有更少维数的矢量,能够使用较少比特数的码本对频域包络矢量进行矢量量化,不但能够降低矢量量化的复杂度,并且能够保证矢量量化的效果。
[0083]图3示出了实现本发明实施例的频域包络的矢量量化方法的编解码器。该编解码器30包括处理器31和存储器32。其中,处理器31用于将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,N1、N、M为正整数,且M大于或等于2,N大于NI ;采用B比特的第一码本对所述NI个矢量中的第一矢量进行量化,以获得所述第一矢量量化的码字,其中所述第一码本被划分为2B1个部分,B为正整数且大于或等于2,BI为正整数且大于或等于I ;根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,其中i为正整数,i大于或等于I且小于或等于2B1 ;根据所述第i个部分的码本确定所述第二码本;基于所述第二码本,对所述NI个矢量中第二矢量进行量化。存储器32用于存储处理器31执行上述方法的指令。
[0084]具体而言,当所述一帧包括M个子帧,且所述M个子帧中每个子帧包括NI个包络,其中M与NI的乘积为N,处理器31可以将所述M个子帧中的每个子帧中对应的包络组合成一个矢量从而得到NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络。
[0085]处理器31可以采用所述第一码本中的第i个部分作为第二码本,其中所述第一码本中的第i个部分的比特数为B-Bl ;或者,采用预先训练的码本作为第二码本,其中所述预先训练的码本的比特数与所述第一码本中的第i个部分的比特数相同,均为B-B1。
[0086]当BI为I时,处理器31可以根据所述第一矢量量化的码字属于所述第一码本的所述2个部分中的前半部分,确定量化后的第一矢量与所述第一码本的所述前半部分相关联;或者根据所述第一矢量量化的码字属于所述第一码本的所述2个部分中的后半部分,确定量化后的第一矢量与所述第一码本的所述后半部分相关联。或者,当M为2且BI为I时,处理器31可以根据所述与所述码字对应的量化后的第一矢量第一个值与第二个值的比值是否在预定范围,确定量化后的第一矢量与所述第一码本的所述前半部分或后半部分相关联;当确定所述比值在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联;或者当确定所述比值不在预定范围,确定所述第二码本与所述第一码本的所述2个部分中的后半部分相关联。
[0087]由此可见,本发明实施例通过将频域包络划分为多个具有更少维数的矢量,能够使用较少比特数的码本对频域包络矢量进行矢量量化,不但能够降低矢量量化的复杂度,并且能够保证矢量量化的效果。
[0088]应理解,本发明的每个权利要求所叙述的方案也应看做是一个实施例,并且是权利要求中的特征是可以结合的,如本发明中的判断步骤后的执行的不同分支的步骤可以作为不同的实施例。
[0089]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0090]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0091]在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0092]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0093]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0094]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0095]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【权利要求】
1.一种频域包络的矢量量化方法,其特征在于,包括: 将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,N1、N、M为正整数,且M大于或等于2,N大于NI ; 采用B比特的第一码本对所述NI个矢量中的第一矢量进行量化,以获得所述第一矢量量化的码字,其中所述第一码本被划分为2B1个部分,B为正整数且大于或等于2,BI为正整数且大于或等于I ; 根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,其中i为正整数,i大于或等于I且小于或等于2B1 ; 根据所述第一码本的第i个部分的码本确定第二码本; 基于所述第二码本,对所述NI个矢量中第二矢量进行量化。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第i个部分的码本确定第二码本包括: 采用所述第一码本中的第i个部分作为第二码本,其中所述第一码本中的第i个部分的比特数为B-Bl。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第i个部分的码本确定第二码本包括: 采用预先训练的码本作为第二码本,其中所述预先训练的码本的比特数与所述第一码本中的第i个部分的比特数相同,均为B-Bl。
4.根据权利要求1至3中任一项所述的方法,其特征在于,当BI为I时,所述根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联包括: 当所述第一矢量量化的码字属于所述第一码本的2个部分中的前半部分,确定量化后的第一矢量与所述第一码本的所述前半部分相关联, 当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的后半部分,确定量化后的第一矢量与所述第一码本的所述后半部分相关联。
5.根据权利要求1至3中任一项所述的方法,其特征在于,当M为2且BI为I时,所述根据所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联包括: 确定与所述码字对应的量化后的第一矢量的第一个值与第二个值的比值是否在预定范围; 当确定所述比值在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联, 当确定所述比值不在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,包括: 当所述一帧包括M个子帧,且所述M个子帧中每个子帧包括NI个包络,其中M与NI的乘积为N,将所述M个子帧中的每个子帧中对应的包络组合成一个矢量从而得到NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络。
7.一种频域包络的矢量量化装置,其特征在于,包括: 矢量划分单元,用于将一帧中的N个频域包络划分为NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络,N1、N、M为正整数,且M大于或等于2,N大于NI ; 第一量化单元,用于采用B比特的第一码本对所述矢量划分单元所划分的所述NI个矢量中的第一矢量进行量化,以获得所述第一矢量量化的码字,其中所述第一码本被划分为2B1个部分,B为正整数且大于或等于2,BI为正整数且大于或等于I ; 第一确定单元,用于根据所述第一量化单元量化的所述第一矢量量化的码字,确定量化后的第一矢量与所述第一码本的所述2B1个部分中的第i个部分相关联,其中i为正整数,i大于或等于I且小于或等于2B1 ; 第二确定单元,用于根据所述第一确定单元确定的所述第i个部分的码本确定第二码本; 第二量化单元,用于基于所述第二确定单元确定的所述第二码本,对所述NI个矢量中第二矢量进行量化。
8.根据权利要求7所述的装置,其特征在于,所述第二确定单元具体用于: 采用所述第一码本中的第i个部分作为第二码本,其中所述第一码本中的第i个部分的比特数为B-Bl。
9.根据权利要求7所述的装置,其特征在于,所述第二确定单元具体用于: 采用预先训练的码本作为第二码本,其中所述预先训练的码本的比特数与所述第一码本中的第i个部分的比特数相同,均为B-Bl。
10.根据权利要求7至9中任一项所述的装置,其特征在于,当BI为I时,所述第一确定单元具体用于: 当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的前半部分,确定量化后的第一矢量与所述第一码本的所述前半部分相关联;或者 当所述第一矢量量化的码字属于所述第一码本的所述2个部分中的后半部分,确定量化后的第二矢量与所述第一码本的所述后半部分相关联。
11.根据权利要求7至9中任一项所述的装置,其特征在于,当M为2且BI为I时,所述第一确定单元具体用于: 确定所述码字对应的量化后的第一矢量的第一个值与第二个值的比值是否在预定范围; 当确定所述比值在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的前半部分相关联;或者 当确定所述比值不在预定范围,确定所述量化后的第一矢量与所述第一码本的所述2个部分中的后半部分相关联。
12.根据权利要求7至11中任一项所述的装置,其特征在于,所述矢量划分单元具体用于: 当所述一帧包括M个子帧,且所述M个子帧中每个子帧包括NI个包络,其中M与NI的乘积为N,将所述M个子帧中的每个子帧中对应的包络组合成一个矢量从而得到NI个矢量,其中所述NI个矢量中的每一个矢量包括M个频域包络。
【文档编号】G10L19/02GK104282308SQ201310279924
【公开日】2015年1月14日 申请日期:2013年7月4日 优先权日:2013年7月4日
【发明者】胡晨, 苗磊, 刘泽新 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1