双脉冲激励的线性测编码
技术领域
本发明属于信号编码领域。具体讲是语音编码领域;尤其是专为改进激励信号编码。
背景技术
传统来讲,所有的参数化语音编码方法常常都是利用语音信号本身的冗余,来减少必须传输的信息量,并估算语音信号短时段内的参数。这种冗余首先起因于语音波形周期性的重复和频谱包络慢变过程。
不同形式语音波形的冗余对应于不同类型的语音信号,如浊声和清声。就浊声语音而言,语音信号基本上是周期性的;然而,这种周期性在语音段中是变化的,且周期波形在语音段之间缓慢变化。低比特率的语音编码可以很大地受益于这种周期性。浊声周期称为基音周期(pitch),这种基音周期性预测被命名为长项预测。至于清音,其信号更像一个随机噪声,周期性也较小。
在任何情况下,参数编码通过分割频谱包络和语音段的激励来减少语音段的冗余。频谱包络慢变过程被描述成线性预测(也称作短项预测)。低比特率的语音编码也同样受益于短项预测。这种编码的优点就来自于参数的慢速变化。然而,在几毫秒内这些参数值有很大变化的可能性很小。因此,在8k Hz或16k Hz采样时,语音编码算法是将10~30毫秒语音段作为一帧。而20毫秒是最常用的帧长。在较近期的知名国际标准中,诸如G.723、G.729、EFR、AMR,编码激励线性预测技术(CELP)已经被广泛采用;通常编码激励线性预测技术(CELP)被理解为是编码激励、长项预测和短项预测各技术的综合。利用编码激励线性预测技术(CELP)的语音编码算法在语音压缩领域已经相当流行。
图1显示CELP初始语音编码器,利用综合分析法,综合语音102和原始语音101之间的加权误差109被减到最小,即最小化113。W(z)是加权滤波器110。它对误差信号111进行加权滤波处理。1/B(z)是长项预测滤波器105,1/A(z)是短项预测滤波器,标为103。编码激励108,又被称作固化码本(fixed codebook)激励,在通过线性滤波器前乘于增益Gc(标为106)。短项预测线性滤波(标为103)通过分析原始信号101完成,并由一个线性预测系数集合表示:
加权滤波器(110)涉及和用到上面的短项预测滤波。一个典型的加权滤波器可表示为:
其中β<α,0<β<1,0<α≤1。长项预测(105)取决于基音周期和基音周期增益;对基音周期的估计基于原始信号、残留信号或者加权原始信号。长项预测函数可表示为:
B(z)=1-β·z-Pitch (3)
编码激励(108)通常由类似脉冲的信号或类似噪音的信号构成,这些信号可用数学方法实时产生或者存到码本中。最后,将编码激励指数,量化的增益指数,量化的长项预测参数指数和量化的短项预测参数指数传到解码器中。
图2显示初始的语音解码器,在综合语音后添加后处理单元207。解码器由编码激励201、长项预测203、短项预测205、后期处理207等几个单元组成。除后期处理单元,其它都和图1中的编码器定义相同。后期处理单元由短项后期处理和长项后期处理组成。
图3显示基本的CELP编码器。它和图1的唯一不同之处在于用含有过去的综合激励304的自适应码本307来实现长项预测。语音的基音周期信息用来产生相应的自适应激励分量。这一激励分量将乘于一增益Gp(标为305)(也称作周期增益)。两个由增益控制幅度的激励分量在通过短项预测滤波器(标为303)前被加到一起。这两个增益变量(Gp和Gc306)需量化,然后送到解码器。自适应码本307激励分量和固化码本308激励分量加在一起产生总的激励e(n)。
图4显示基本的CELP解码器,它完全对应于图3中的编码器,但在综合语音407后添加了后处理单元408。这个解码器除自适应码本外,其它类似于图2。解码器也由几个单元组成,包括编码激励402、自适应码本401、短项预测406和后期处理408。除了后期处理单元,每个单元都和图3中的编码器有相同的定义。
固化码本激励308的产生方式有一个很长历史。编码激励产生的设计受三个主要因素的影响。第一个是感性质量;第二个是计算的复杂性;第三个是所需存储空间的大小。
在下一节中将给出三个现有典型模型,和一个不同于三个现有模型的新的激励模型,相比较而言,这种新模型在感性质量、计算量和存储需求方面都有优点。
发明内容
本发明的目的是提出了一个双脉冲激励的线性测编码模型;它适用于中高比特率语音编解码,能够提高质量并降低复杂性的双脉冲激励的线性测编码。
本发明的双脉冲激励的线性测编码,可以为语音信号或普通信号进行编解码,其特征在于编解码系统包含激励或固化码本激励;激励或固化码本激励包含多个脉冲对,称作双脉冲模型;双脉冲模型意思是每对脉冲包含两个相互毗邻的脉冲。
所述双脉冲模型可以是CELP编码技术的一部分。
所述每对脉冲的位置是从一个有限的候选位置集合中选出的最佳位置,并将其位置指数送到解码器;每对脉冲的候选幅值可设计为有高通效应和/或低通效应;每对脉冲的幅值有一定的变化,使得每对脉冲的候选位置可以限制在一个相对较小的范围内,从而降低了查找最佳脉冲对的计算复杂性并极小化了局部误差。
所述每对脉冲的幅值可以产生不同的高通效应;
所述每对脉冲的幅值可以产生不同的低通效应;
所述每对脉冲的幅值可以产生不同的高通效应和低通效应。
所述每对脉冲的幅值有着充分的可变性。
所述脉冲中至少有一对脉冲的候选位置集合可覆盖{0,1,2,3,4,5,6,7}。
所述每对脉冲的最佳位置和幅值可以联合查找。
本发明的双脉冲激励的线性测编码,由于每一对脉冲的两个脉冲都互相毗邻。每对脉冲只需送一个脉冲位置指数到解码器,这就节省了给所有脉冲位置编码的编码位数比特数。每对脉冲的幅值具有有限的模式数量。因为两个脉冲相互毗邻,不同的幅值组合就可以产生不同的高通和/或低通效应。由于幅值有着充分的可变性,因此便可以在一个较小的范围内设置每对脉冲的候选位置,从而降低查找最佳位子的复杂性。适用于中高比特率语音编解码。
附图说明
图1是初始CELP语音编码器方框图;
图2是初始CELP语音解码器方框图;
图3是基本的CELP编码器方框图;
图4是基本的CELP解码器方框图;
图5是由随机噪音激励501组成的初始激励模型图;
图6是另一种基于脉冲的知名激励模型图,称作多脉冲激励;
图7是一种变型的脉冲激励模型图(也称作ACELP激励模型或二元激励模型);
图8是建议的双脉冲激励模型图。
具体实施方式
结合附图对本发明作进一步描述如下:
以下的描述包括了相关的编码激励线性预测技术CELP的详细信息。同时,熟悉相关技术的人会发现本方法可以实践于其它各种不同的语音编码技术算法中,而非只局限于本文所讨论的应用。此外,为了突出本发明的特性,本文对一些本技术领域内的一般性知识细节并没有讨论。
本文附图及其附带说明也只是针对本发明的一些举例。为了简明扼要,其它应用本发明的相关方法的实体将不一一详细叙述或给出图示。
图3举了一个能说明本发明的编码器示例。参照图3和图4,对短项预测滤波器303的总激励是由二个分量组成。一个来自于自适应码本307。另一个来自于编码激励108;编码激励又被称作固化码本(fixed codebook)激励。长项预测在浊音编码中扮演着重要角色,这是由于浊音的强周期性。同时,相邻的语音基音周期非常相似,这就导致下面表达式中激励的基音周期增益Gp 305数值上很高。编码激励分量无论对浊音还是清音都很重要。组合后的总激励可表达为:
e(n)=Gp·ep(n)+Gc·ec(n) (4)
上式中ep(n)是以n为取样序数的一个子帧,它从包含过去激励304的自适应码本307得来;ec(n)来自于作用于当前激励的编码激励码本308(又叫固化码本fixed codebook)。对于浊音,ep(n)的作用更显著,周期增益Gp 305是一个1附近的值。一般情况下激励每一子帧更新一次。典型的帧长为20毫秒;子帧长为5毫秒。
固化码本激励308的产生方式有一个很长历史。编码激励产生的设计受三个主要因素的影响。第一个是感性质量;第二个是计算的复杂性;第三个是所需存储空间的大小。下面将给出三个现有典型模型,和一个不同于三个现有模型的新的激励模型。
图5显示由随机噪音激励501组成的初始激励模型。该噪音激励可以产生高质量的清音语音,但浊音语音的质量却不尽人意。由于假定每个取样均为非零态,因此搜索最佳噪音矢量的计算就相当复杂。理论上,所有噪音候选矢量都需要存储,以便选择最佳的噪音矢量,并将其指数发送到解码器。
图6显示另一种基于脉冲的知名激励模型,称作多脉冲激励,其中每个可能脉冲的脉冲位置和幅度都需要编码并发送到解码器。该脉冲激励可以产生高质量的浊音语音,但是此模型需要相对较高的比特率来对所有可能的脉冲位置和脉冲幅度进行编码。
图7显示一种变型的脉冲激励模型(也称作ACELP激励模型或二元激励模型),其中每个脉冲位置指数都需要发送到解码器;但除了需要发送到解码器的幅度符号(+1或-1)外,所有幅度都赋予常数值1。由于幅度是常数,因此节省了对幅度进行编码的比特数,还节省了搜索最佳脉冲位置的计算量。同样由于幅度是常数,需要对最佳二进制矢量进行更多的全局搜索,这在比特率增加时可能会降低效率。这是目前最流行的一种激励模型,应用于多个国际标准中,例如,ITU G.729。
本发明将给出一个不同于上述三个现有模型的新的激励模型,相比较而言,这种新模型在感性质量、计算量和存储需求方面都有优点。这种新模型在此称为双脉冲激励模型。
从图8显示的双脉冲激励模型中可以看到每对脉冲的两个脉冲相互毗邻,且仅需要向解码器发送一个位置指数,与发送两个脉冲位置相比,在对位置进行编码时可以节省编码位数(比持数)。假设子帧长度有40个取样;下面示例给出6对脉冲的候选位置(即每对脉冲的第一个脉冲位置):
第1对脉冲的候选位置:
0,1,2,3,4,5,6,7
第2对脉冲的候选位置:
6,7,8,9,10,11,12,13
第3对脉冲的候选位置:
12,13,14,15,16,17,18,19
第4对脉冲的候选位置:
18,19,20,21,22,23,24,25
第5对脉冲的候选位置:
25,26,27,28,29,30,31,32
第6对脉冲的候选位置:
32,33,34,35,36,37,38,39
这组示例中,每对脉冲的位置编码需要3位(比持),并且要向解码器发送最佳位置指数。
每对脉冲的幅值有有限的模式数量。幅值模式指数要送到解码器。下面的例子为每对脉冲给出4组幅值模式(P1,P2):
(1.,-0.2),(0.5,-0.2),(1.,-0.85),(0.5,-0.85)
这组示例中,每对脉冲的幅值编码需要2位(比持),将最佳幅值编码送到解码器。因为两个脉冲相互比邻,不同的脉冲组合就可以产生不同的高通和低通效应。图8中脉冲对801和804有低通效应;脉冲对802和803有高通效应。因此在设计语音编码时,如果高通效应要加强,脉冲对幅值的候选组合可以包含更多的高通模式,反之如果低通效应要加强,脉冲对幅值的候选组合可以包含更多的低通模式。
由于幅值不是常数,它们就有能量上的变化。这就使得可以在小范围内为每对脉冲指派合适的候选位置,而且可以在小范围内查找最佳双脉冲组合并极小化加权误差。例如,在位置集{0,1,2,3,4,5,6,7}中查找的复杂度要低于位置集{0,5,10,15,20,25,30,35}中查找的复杂度。每对脉冲的最佳位置和幅值可以进行联合查找。
本发明可以有其他具体的不偏离其精髓或本质特征的表现形式。文中所述的实例也只是具有说明性的而非严格限制性的意义。因此,较前面的叙述,后面的附加权利要求更明显地体现了本发明的范围。全部与权利要求的意义等价的变化都包含在这权利要求的范围内。