多带激励语音编码的实现.doc_第1页
多带激励语音编码的实现.doc_第2页
多带激励语音编码的实现.doc_第3页
多带激励语音编码的实现.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

多带激励语音编码的实现时间:2009-05-31 10:26:37来源:现代电子技术作者:侯红芳 张太镒0 引 言语音作为人类交流信息的主要手段之一,在通信系统中占据重要的地位。随着数字通信技术的发展和多样化商业应用的需求,语音信号处理成了数字通信中最重要、最基本的组成之一。虽然现在已经有光纤通信等大容量通信手段,但是,在移动通信、卫星通信、军事通信中,节省带宽仍然非常重要。传统的PCM等占用大量信道带宽的语音编码技术,已远远不能满足现代数字通信的需要。欧美、日本等国一直在努力通过降低语音编码速率来扩大通信系统的容量。在我国,对低速率语音编码技术也有迫切的需要,如保密通信、短波信道、水声信道等对码率要求严格的应用场合。但现有语音编码的国际标准传输速率都较高(一般在8 Kbs以上),而现有的一些低速率语音编码方案的话音质量又不尽人意。因此,如何有效地降低编码速率将一直是重要的研究课题。多带激励语音声码器(Multi-Band Excited,MBE)在2448 Kbs速率上能合成出音质比传统声码器好得多的语音,而且具有较好的自然度和容忍环境噪声的能力,是目前这一速率范围内比较理想的参数编码方案。1 MBE编码(语音分析)11 MBE模型 美国MIT大学林肯实验室1988年提出了多带激励(MBE)语音编码方案。 MBE语音模型如图1所示,把激励频谱分成许多互不交迭的频带,对每一频带分别进行二元清、浊音判决,这就是多带激励的由来。这样就允许特定语音帧的激励信号可以是周期能量(浊音)和噪声能量(清音)的混合,在一定程度上增加了模拟激励的自由度,因而使MBE语音模型能产生高质量的语音,而且使MBE语音模型有更强的抗背景噪声能力。1. 2 参数提取算法MBE语音模型主要参数包括:基音周期;各谐波带清浊音判决信息;各谐波对应谱包络幅度。按照MBE算法原理图(图2),参数提取算法的实现分为如下四个步骤: (1)基音周期粗估 基音周期的粗估采用在时域内进行的方法。因为实际计算中证明,频域中计算量特别大,并不好用。为解决这一问题,本文采用时域自相关函数来估计基音周期的方法,这个方法的计算量比频域法少得多,但只能在基音周期的整数点值上进行。MBE算法就是对每一帧语音信号,在基音周期预估值范围内(一般在P=20147之间),计算误差函数Ep(P),使误差函数最小的频率值P就是基音估计的粗估值P1。误差函数: (2)基音周期细搜索 基音周期的细搜索采用在频域内进行的方法,可以进一步在频域范围内进行非整数基音周期的估计,从而提高基音周期估计的精度。即在粗估基音P1邻域内进行细搜索,确定更精确的基音周期候选值Pt:P1-98,P1-78,P1+78,P1+98。通过上述算法,可以得到真正基音周期P0。 (3)谐波带清浊音判决(UV判决) 研究证明,清音带与浊音带不会频繁交替,而是保持着一定的连续性,这样在编码速率较低时,可以将相邻的几个谐波频带划分在一起,共同进行清浊音判决。本文将相邻的3个谐频带划分在一起,整个频带采用最多分成12个带的方法进行清浊判决。判决阈值采用自适应值,如果拟合误差小于阈值,判为浊音,否则判为清音。 (4)谱幅度估计 确定Uv后,就可以对各谐波的包络幅度做最后的确定:2 MBE解码(语音合成)多带激励模型语音合成的方法大体分为两类,即频域合成法与时域合成法。频域合成法先用收到的参数构成重建语音谱,然后利用傅里叶反变换得到时域序列,相当于分析过程的逆过程。这种方法比较直接,但不能保证合成语音基音周期的平滑变化,特别当帧长比较长的时候会产生基音周期跳变,使合成语音不自然。时域合成法能利用插值实现帧与帧之间基音周期平滑过渡,合成出更自然的语音。因此在实际的MBE算法中都采用这种方法。如图3所示,浊音Sv(n)与清音Su(n)是分开合成的,最后将他们相加,形成完整的合成语音SR(n)。 本文对于浊音部分的语音采用时域合成法,因为该方法可利用插值实现帧与帧之间基音周期的平滑过渡,合成出更自然的语音。而对于清音部分的语音,采用频域短时傅里叶变换法合成,因为带通滤波器在频域中易于实现,用FFT实现,计算复杂度更低。3 静音检测31 概念 研究表明,人们在电话交流时,单向通话的时间通常只占总的通信时间的40或更少,其他约60的时间为聆听对方讲话和通信中静默期。静默期的参数(背景噪声参数)比较简单,用很少的比特数即可表示。如果能准确地判断出语音静音帧,在静音期间,只发送很少的比特数,从理论上来看,语音编码率应该可以降低50左右。 静音检测,又称端点检测(Voice Activation Detec-tion,VAD),其目的是从声音信号流里识别长时间的静音期(背景噪声),使得在不降低业务质量的情况下达到节省带宽资源的作用。32 算法 本文采用了“基于熵的VAD检测法”。熵VAD检测方法是通过对信号幅值分布概率的统计取对数,以得到熵值。如果语音的幅值的绝对值在1O左右变化,则不能统计出所期望的概率。为了便于统计计算,因此在处理16位的语音文件时,不能将其归一化处理,而是通过预处理,使其幅度值分布在-50,+50之间。计算前1020帧信号的熵值的平均值,乘以某个倍数作为阈值。然后将每一帧的熵值与阈值比较,大于阈值,则VAD=1,否则置0。当VAD=1,暂时记为语音的开始点,如果向后连续几帧都判为1,则该点为起始点,否则重新向后搜索。结束点的搜索方法与开始点相同,只不过是向前搜索而已。4 仿真试验41 算法实现的整体流程图 前面已经详细说明了语音帧的编解码过程与算法,对于加入静音检测模块的整体算法流程图(图4),现在简单说明本文采用的静音帧的编解码方法: (1)静音帧编码 当VAD检测结果为0时,为降低编码率,静音帧只发送该静音帧的幅度均值S(n)。 (2)静音帧的解码 在解码端,若VAD判决为0时,即当前帧为静音帧,则生成一均值为0,方差为1的类似白噪声的随机序列u(n),再与编码端发送的静音帧的幅度均值S(n)相乘得到自适应的白噪声序列。42 试验结果原始语音与合成语音时域波形图比较,如图5所示。原始语音与合成语音频谱图比较,如图6所示。43 结果分析 仿真结果表明,基于VAD检测的MBE模型声码器对于语音信号可以很好地区分出语音帧和静音帧。同时,采用VAD检测算法后,对于被检测出的语音帧执行MBE编解码处理,静音帧只传送帧幅度均值,有效地降低了语音编码速率,对于正常语速的通话,本文的编码率可以在原来的基础上减少50左右。从听觉效果上来看,采用VAD检测的MBE算法的合成语音与未采用VAD检测的一般MBE算法的合成语音几乎没有区别,两种方法有较好的主观听觉效果和可懂度。5 结 语 (1)合成波形失真 从仿真试验结果的波形图中可以看出,合成语音波形相对于原始语音波形有一些失真,这与信号处理前的高通滤波器和基音周期粗估前的低通滤波器的设计有关。因为高通滤波器可使输入信号抗工频(5060 Hz)干扰,低通滤波器可减少高频共振峰和外来高频噪声对基音周期提取的影响。因此,滤波器的设计在MBE编码中至关重要,这也就是下步工作中首要解决的问题。 (2)基音粗估后加入基音平滑模块,提高基音准确度、平滑语音 由于噪声的干扰,造成基音周期粗估值的错锁(通常是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论