热心网友

一种自适应预测栅格编码量化语音编码算法李太杰, 胡光锐摘 要:提出了一种新的基于自适应预测栅格编码量化算法的话音压缩模型。论述了在均方误差意义上最优量化器的设计原理,并在研究栅格编码量化算法的基础上,探讨了模型的编、译码器的工作原理,其中着重研究了扩展的量化器的集合划分和卷积码栅格图的支路标注问题。根据计算机模拟结果,论证了模型的有效性和可行性。关键词:语音编码;方差估计;线性预测;栅格编码量化中图分类号:TN 911   文献标识码:A  随着通信技术和数字信号处理技术的发展,语音压缩技术越来越受到重视。目前,中、低速率的语音编码普遍采用混合编码,其中波形编码起着关键作用。然而普通的波形编码算法在编码率低于16 kb/s时,性能急剧下降,如何改善波形编码在中速率时的性能,正日益被人们所关注。因此,本文在栅格编码量化算法[1]的基础上,提出了一种自适应预测栅格编码量化(APTCQ)算法模型,它基于集合划分方法[2],使用一个具有扩展的量化电平的结构性码书,以获得较低的编码率。1 APTCQ算法模型1。1 训练部分  训练过程如图1所示。由于语音信号样本间存在着相关性,为了减小量化器的动态范围,首先采用线性预测(LP)技术去除样本间的相关性。对得到的残差序列,利用自适应方差估计[3]进行归一化以进一步缩小信号样本幅度的动态范围,最后对归一化残差序列进行训练,得到在均方误差意义上最优的量化器——Lloyd-Max量化器。 图1 训练过程Fig。1 Training processLP部分传递函数为      (1)式中,αi(i=1,…,p)为预测系数。滤波器输出序列e(n)可近似看作服从拉普拉斯分布的白噪声。方差估计的表达式为      (2)这是一种一码字有记忆方差估计,一般来说,它具有偏估计。式(2)右边第一项表示前一样本方差估计对当前方差估计的贡献,第二项表示前一信号样本对当前信号样本方差估计的贡献。方差估计随输入样本值的改变而迅速改变,从而可以跟踪输入信号的快速变化。因此,这是一种瞬时自适应。    由于残差信号近似呈拉普拉斯分布,样本幅度值又大部分集中于零值附近,为了加快训练过程的收敛,可以设置一门限幅度。当信号样本幅度大于此门限幅度时,令其等于门限幅度。另外,信号幅度近似呈对称分布,可以只对正(或负)量阶进行训练。训练过程参见文献[4]。1。2 编码部分  在TCM中,为了在每个码元间隔内传输2m个符号中的一个,传统的2m个点的信号星座将被加倍(达到2m+1个),并被分成2+1个子集。其中正整数≤m。用编码率为/(+1)的卷积码对输入的 bit进行扩展,用来确定当前码元间隔内的信道符号取自哪个子集,剩下的(m-)bit用来在所选子集中从2m-个信道符号中选出一个。假设信道存在加性高斯白噪声干扰,用Viterbi译码寻找和发送序列不同和概率最小的符号序列。对应于信源编码,给定一种卷积码,可以将信源序列看作一个带噪序列,用Viterbi算法寻找与其最接近的序列。因此,从编码调制公式得到的所有可允许的信道序列集合与其对应的Viterbi算法编码器,可用作信源空间和相应的信源编码器。  在本模型中,编码率为2 bit/样本,即m=2。采用(2,1)卷积码,即=1。相应的量化器量阶总数为8,并被分为4个子集D0、D1、D2、D3。为了使量化误差最小,子集内元素间的距离应为最大。因此,子集划分图如图2所示,在坐标轴上自左至右量阶值逐渐变大。图2 子集划分Fig。2 Set partition  这样,APTCQ编码器的编码算法如下。设待编码的数据序列为X={x1,x2,…,xn},编码过程处于第i步,称终止于第k个结点(时刻i-1)的路径为幸存路径k。设ki-j(k=1,…,N;j=1,2,…)是k上xi-j的近似值(编码值),其中N是栅格状态数。令ki|i-1表示当前数据的预测值,给定ki|i-j(j=1,2,…)。令dki=(xi-ki|i-1)/i为k上的归一化预测残差,其中,(ki)2=α(ki-1)2+β(ki-1)2。最后,令ρi-1(X,k)为k上的失真。在所有Ungerboeck幅度调制栅格中,有两条标注着子集名字的支路进入和离开每个结点。这里标注离开结点k且进入结点l的支路上的子集为Dkl,对这样的每个子集,做一次标量量化,以确定最靠近dki的元素,称之为kl。除了这个通过标量量化选择的元素外,子集中其他的元素被丢弃。然后,下面的每个结点都有两条支路进入。当下一个结点是l时,这两条支路被标注为k1l和k2l,其中k1和k2是这两条支路出发的结点。最后有ρi(X,l)=mink∈{k1,k2}[ρi-1(X,k)+(dki-kl)2]  (3)    li=k′i|i-1+k′lki  (4)式中k′是使ρi(X,l)取得最小值的那个k值。这个循环过程直到数据序列的终点。  在编码过程中,有两种形式的输出序列:第一种是比特序列,用来确定到达每个结点的路径(或子集);第二种是符号序列,用来确定在每个结点所选子集中的某个元素,这两个序列被送到接收端用于译码。这种形式的编码提高了系统的抗噪声性能。卷积码的状态转移示于图3。 图3 状态转移Fig。3 State transition1。3 译码部分  译码部分的框图如图4所示。译码部分的工作原理是:首先用卷积码对比特序列进行扩展,用于确定量化器符号空间中相应的子集,符号序列在所确定的子集中选取合适的元素。然后,将所确定的元素乘以其方差估计后送入标准DPCM解码器,得到重建语音序列。DPCM解码器的转移函数为V(z)=pi=1αiz-i。其中αi(i=1,2,…,p)为训练过程的预测系数。图4 译码框图Fig。4 Decoder diagram2 实验结果  本文在微机上模拟了上述APTCQ编、译码算法。所用的数字语音序列是通过TMS320C25数字处理系统得到的。抽样率为8 kHz,每个语音样本用12 bit线性表示。所采用的卷积码的状态转移如图3所示。自适应参数α=0。85,β=0。25。采用三阶预测器的预测系数为α1=-1。74,α2=1。22,α3=0。30。在Viterbi算法中数据序列长度为64,卷积码初始状态为(0,0)。当采用PTCQ算法时,平均分段信噪比为10。41 dB,而采用APTCQ算法时为14。91 dB。非正式试听表明其主观质量有明显的提高。3 结 论  本文在对PTCQ算法进行研究的基础上,对其进行了改进,得到如下结论:  (1) 自适应方差估计的引进不仅提高了整体的处理效果,而且大大提高了小信号的质量。  (2) 模拟实验表明,在同等速率的情况下,APTCQ算法比PTCQ算法重建语音质量更好。  (3) 由于在编码过程中采用了TCQ技术,系统抗干扰能力比对应的DPCM系统要好。作者简介:李太杰(1974~),男,博士生。 作者单位:李太杰, 胡光锐  (上海交通大学 电子工程系,上海 200030)。