logo资料库

AMBE算法及其实现方式.doc

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
AMBEA 算法及其实现方式 在数字移动通信系统中, 语音编码部分是很重要的一个环节, 它的性能直接关系到整个移动通信系统的工作质量。首先综述在以数 字集群为代表的移动通信系统开发的背景下, 语音编码的概念、分类 和发展情况, 并介绍目前世界上常见移动通信系统所用的语音编码 方案, 从而明确语音编码算法的比较对象。今天我就自己手头了解的 一些知识对AMBE算法进行初步的概括: 1.MBE算法的概念 AMBE是基于MBE技术的低比特率、高质量的改进语音压缩算法, 该技术在低比特率压缩系统中能提供极优的语音质量, 却对指令执 行速度和存储器容量的要求大大降低, 在背景噪声和信道误码方面 也有极强的鲁棒性, 比基于线性预测编码的CELP、RELP、VESLP、 LPC-10等要优越。那么了解AMBE之前我们先来了解下MBE算法: MBE编码算法是用基音谐波处的谱抽样来表示短时谱,并且在谐 波间隔频段上分别进行清/浊音判决。合成端用一组正弦波合成谱, 用噪声谱的傅立叶反变换来合成清音谱。这种算法提出了一种由正弦 模型引出的频域模型—多带激励模型。 MBE模型如图1所示。首先按基音各谐波频率, 将一帧语音的频谱 分成若干个谐波带,再以若干个谐波带为一组进行分带, 分别对各带 进行清浊(V/U)判决, 总的激励信号由各带激励信号相加构成。对于 浊音带, 用以基音周期为周期的脉冲序列谱作为激励信号谱对于清 音带, 则使用白噪声谱作为激励信号谱。时变数字滤波器的作用是确 定各谐波带的相对幅度和相位, 起到了将这种混合的激励信号谱映 射成语音谱的作用。这种模型使合成语音谱同原语音谱在细致结构上 能够拟合得很好, 其合成端的语音质量必然较高。
2.AMBE算法实现形式 2.1AMBE编码的基本方式 AMBE 编码的基本方法为:首先将输入的每帧 160 个数字话音取 样点分成交叠的段,经模型分析后得出该帧的模型参数。编码器量化 这些模型参数,加上纠错码,然后以 4.8kbps 的数据流发送。解码 器接收比特流,重构模型参数,在利用这些产生合成的语音信息。流 程如图 2 所示。 图 2 AMBE语音编解码 由此可知,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)判决。 因此,激励信号是周期信号能量(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,v4,设输出的5 个向量组为:u0,u1,u2,u3,u4,则 v0=u0·G0 vi=ui·gH ,for 1≤i≤3 v4=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 (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-2000 DVSI公司的AMBE-2000语音编码芯片是一种非常灵活、高性能、 单片的语音压缩编码器它提供了在低数据速率时出色的语音质量,也 提供了一个实时、全双工的备有标准AMBE语音压缩软件算法设置的设 备。DVSI享有专利权的AMBE语音压缩技术已经被证明是与同之前的 ECELP,CELP,RELP,VSELP,MELP, MP-MLQ,LPC-10和其他压缩技术有更 好的性能[2]。AMBE语音压缩算法在全世界有着广泛的应用,其中也包 括下一代数字移动通信系统的应用。AMBE-2000语音编码器在选择语 音和FEC(前向纠错)数据速率上提供了很高的灵活性。用户可以以
50bps为增量全速地从2.0kbps到9.6kbps单独地选择这些参数。对于 更高的差错速率信道,用户将被分配更大百分比的FEC编码全比特速 率。AMBE-2000语音编码在每秒2.4kbps的低速下能保持自然声音质量 和语音的可性性。AMBE算法的低复杂性允许它被完全地集成到一个低 价格、低功耗的集成电路—AMBE-2000语音编码芯片中。 在最简易模型中,AMBE-2000被看作两个分离元件:编码器和解码 器。编码器接收8kHz采样语音数据流(16-bit线性、8-bitμ率,或 8-bitμ率)并以所期望的速率将数据流输出信道。相反地, 解码器接 收信道数据流,合成语音流。对AMBE-2000编、解码器接口的时间控制 是完全异步的。语音接口是外围的A/D-D/A芯片。输入输出语音数据 流必须是相同的格式(16-bit线性,8-bitA率,或s-bitμ率)。信道接 口是普通的8或16位微处理器或其它相应的在AMBE-2000信道格式和 被设计的系统信道格式中能体现其基本功能的外围元件。 2.2 AMBE-1000 AMBE-1000 是DVSI 公司开发的基于AMBE 算法的一种高性能的 多速率语音编码/解码芯片,非常适合于数字语音通信及处理的场合。 本文基于AMBE-1000设计了一个语音压缩系统,该系统具有设计简便、 语音编码速率可变、音质良好、功耗小等优点,可应用于多种需要。 AMBE-1000是基于AMBE 算法的语音编码/解码芯片,其语音编码/ 解码速率可以在2400~9600bps 之间以50bits的间隔变化。在芯片内 部有相互独立的语音编码和解码通道,可同时完成语音的编码和解码 任务;并且所有的编码和解码操作都在芯片内部完成,不需要外扩的 存储器.AMBE-1000最基本的组成部分就是一个编码器和一个解码器, 两者相互独立。编码器接收8kHz采样的语音数据流(16bit线性,8bit A律,8bit u律)并以一定的速率输出信道数据。相反,解码器接收 信道数据并合成语音数据流。编码器和解码器接口的时序是完全异步 的。AMBE-1000采用A/D-D/A芯片作为语音信号的接口。送往解码器用 于控制的数据和语音数据是不同的。输入输出的语音数据流的格式必
须是相同的(16bit 线性的,8bit A 律,8bitu律),信道接口采用8 位或16位的微控制器。其工作原理如下图: AMBE-2000 声码器不同于 AMBE-1000,AMBE-2000 只有串行接口 模式,没有并行接口模式。 3.AMBE 算法与其它算法的优势 3.1 编码速率和占用带宽 从编码速率和占用带宽角度来看, 由于波形编码为了能够获得 较高的重建语音质量, 所以直接对时域波形或在变换域进行编码,所 以压缩比较低, 编码速率一般较高。而目前比较常用的一些语音压缩 算法, 比如CELP、数字集群TETRA标准里用的ACELP编码、MOTORLA的 IDEN标准所用的编码都属于混合编码。这些编码方式将波形编码的优 点与参量编码的优点结合起来, 使语音质量有了明显的提高, 但是 它们的编码速率一般都在4.8kbps以上,试图更大幅度地降低这些编 码方式的压缩速率, 如降到4kbps以下, 由于没有足够的比特表示激 励矢量, 余量信号的量化将产生较大的误差,那么话音质量将会急剧 下降。MBE和CELP区别在于如果允许码率提高, 则CELP编码器可令人 信服地重现精确的原始语音,而MBE类编码器则不能,因其仅仅捕获了 一些参数。这是混合编码性能特点介于波形编码与参数编码之间的一 个必然结果。 3.2算法时延 在算法时延方面, 波形编码的时延非常小, 一般为零点几个毫 秒,4.8kbps的CELP编码时延为30ms,基于CELP算法的其他编码方案也 多数在几或二十毫秒左右,VSELP编码时延相对较高。4.8kbps的AMBE 算法时延为32ms,MBE类编码处适中水平,小于VSELP编码,但大于CELP 和CE-ACEL编码。 3.3编码原理方面
在编码原理方面, MBE类与CELP类编码的一个主要差别在于MBE将 每一语音段分割成不同的频带并对每一频带进行清浊音判决, 这使 得实际语音段的激励信号成为周期〔浊音〕和类噪声(清音)能量的混 合。这样, 在激励信号模型中增加的自由度使得MBE语音模型产生出 比常规语音模型更高质量的语音, 甚至在速率低至2.4kbps时仍可维 持语音的可理解度和自然度。此外, 它使得MBE语音模型在存在背景 噪声时鲁棒性强。 线性预测声码器的固有问题是线性预测模型在没有附加的预测 残余时不产生高质量的语音, 预测残余可看作纠错信号, 它纠正线 性预测模型中的不精确度。线性预测类的各种编码方式之间的主要差 别是生成和传输预测残余的方式。常用的方法是将残余分成小片或矢 量, 然后通过搜寻码本来找出最接近匹配的码矢量。但搜寻一个合理 尺寸的码本是一项计算量很大的任务。因此CELP算法及基于CELP算法 的其他编码方案的算法复杂度很高、数据存储量大是一个极为明显的 劣势。MBE类的声码器不需要码本, 运算量要小得多。
分享到:
收藏