资源描述:
《ambe算法及其实现方式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、AMBEA算法及其实现方式在数字移动通信系统中,语音编码部分是很重要的一个环节,它的性能直接关系到整个移动通信系统的工作质量。首先综述在以数字集群为代表的移动通信系统开发的背景下,语音编码的概念、分类和发展情况,并介绍目前世界上常见移动通信系统所用的语音编码方案,从而明确语音编码算法的比较对象。今天我就自己手头了解的一些知识对AMBE算法进行初步的概括:1.MBE算法的概念AMBE是基于MBE技术的低比特率、高质量的改进语音压缩算法,该技术在低比特率压缩系统中能提供极优的语音质量,却对指令执行速度和存储器容量的要求大大降低,在背景噪声和信道误码方面也有极
2、强的鲁棒性,比基于线性预测编码的CELP、RELP、VESLP、LPC-10等要优越。那么了解AMBE之前我们先来了解下MBE算法:MBE编码算法是用基音谐波处的谱抽样来表示短时谱,并且在谐波间隔频段上分别进行清/浊音判决。合成端用一组正弦波合成谱,用噪声谱的傅立叶反变换来合成清音谱。这种算法提出了一种由正弦模型引出的频域模型—多带激励模型。MBE模型如图1所示。首先按基音各谐波频率,将一帧语音的频谱分成若干个谐波带,再以若干个谐波带为一组进行分带,分别对各带进行清浊(V/U)判决,总的激励信号由各带激励信号相加构成。对于浊音带,用以基音周期为周期的脉冲
3、序列谱作为激励信号谱对于清音带,则使用白噪声谱作为激励信号谱。时变数字滤波器的作用是确定各谐波带的相对幅度和相位,起到了将这种混合的激励信号谱映射成语音谱的作用。这种模型使合成语音谱同原语音谱在细致结构上能够拟合得很好,其合成端的语音质量必然较高。2.AMBE算法实现形式2.1AMBE编码的基本方式AMBE编码的基本方法为:首先将输入的每帧160个数字话音取样点分成交叠的段,经模型分析后得出该帧的模型参数。编码器量化这些模型参数,加上纠错码,然后以4.8kbps的数据流发送。解码器接收比特流,重构模型参数,在利用这些产生合成的语音信息。流程如图2所示。图
4、2AMBE语音编解码由此可知,AMBE算法的实现步骤可分为五步,即模型分析、量化、纠错(FEC)、重建及合成。下面简要说明一下这五个步骤。1、模型分析MBE算法模型:设输入信号S(n),定义窗口化的语音信号为:Sω(n)=S(n)·W(n)设Sω(n)是激励eω(n)经过线性滤波器hω(n)的响应,则Sω(n)=hω(n)*eω(n)将帧分成两类:话音和非话音。对于话音eω(n)是周期脉冲序列,各脉冲间的距离为脉冲周期P0;对于非话音:eω(n)为白噪声。MBE将激励信号谱分成若干段,再对每一段进行话音/非话音(V/UV)判决。因此,激励信号是周期信号能
5、量(V)和噪声能量(UV)之和。2、量化在编码之前,必须对谱高Ml(1≤l≤L)进行量化。量化的过程为:先由预测的谱高得出预测的留数Tl(1≤l≤L),然后将其分成8段,对每一段进行离散余弦变换(DTC),得到增益矢量Ri(1≤i≤L)和高阶DTC相关系数Cik。量化器的输出就是编码器的输出,包括基带频率,不同频率的话音/非话音判决门限和谱高[1]。3、纠错由于帧长为20ms,传输速率为4.8kbps,所以每帧有96个比特。在AMBE算法中,72比特用来量化模型参数,而其余24比特用于前向纠错(FEC)。将72比特分为5个向量组:v0,v1,v2,v3,
6、v4,设输出的5个向量组为:u0,u1,u2,u3,u4,则v0=u0·G0vi=ui·gH,for1≤i≤3v4=u4其中,gG和gH分别为[24,12]格雷(Golay)码和[15,11]汉明(Hamming)码的生成器。这样u0为24比特,u1,u2,u3均为15比特,u4为27比特,总的输出为96比特。4、重建解码时,需要重建谱高Ml(1≤l≤L)首先,必须由b0计算出L:ω0=2π/(b0+20)L=0.9254(π/ω0+0.25)然后,解码和重建得到谱高。解码和重建类似量化和编码的逆过程:第一步先要将谱高分为8段,根据L决定每段的长度J1(
7、1≤i≤8)。这些段中的元素用Cik(1≤i≤8,表示段号,2≤k≤Ji,表示段内的元素号)表示。每一段的第一个元素设为解码增益Ri,其余元素为高阶DCT相关系数。5、合成解码断输入的比特经过重建以后,得到的一系列模型参数包括基带频率ω0,不同频率的话音/非话音(V/UV)判决门限vk和谱高Ml。然后将这些模型参数合成话音。话音合成算法将每一组模型参数分为话音谱(V)和非话音谱(UV),用话音合成算法和非话音合成算法分别对这两部分进行话音合成,将话音谱的能量合成产生话音信号suv(n),而非话音谱的能量则合成产生非话音信号suv(n)。2.2AMBE-2
8、000DVSI公司的AMBE-2000语音编码芯片是一种非常灵活、高性能、单片的