通信系统中语音编解码对语音增强算法的影响
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通信系统中语音编解码对语音增强算法的影响
叶利剑
【摘要】系统研究了现有语音通信系统中使用的几种语音编解码算法以及主流的
单通道语音增强算法,并将二者相结合,对实际通信系统中的结构进行仿真.研究发现,现有的基于线性预测分析技术的语音编解码算法,在高编码率的情况下对于语音增
强算法的性能不仅不会有损失,反而会在一定程度上改善增强算法带来的语音失真
的情况,提高语音增强算法的效果.
【期刊名称】《电声技术》
【年(卷),期】2011(035)010
【总页数】7页(P68-74)
【关键词】语音编解码;语音增强;仿真
【作者】叶利剑
【作者单位】瑞声声学科技研发(南京)有限公司,江苏南京210093
【正文语种】中文
【中图分类】TN912
1 引言
由于大量环境噪声的存在,通信设备的传声器采集到的语音信号普遍信噪比不够高,因此通过语音增强的方法来提升输入语音的信噪比,改善通信质量已经是通信系统中必备的处理步骤。
对于实际通信系统的语音质量评估,国际电信联盟(ITU-T)
已经制定了相应的标准。
但对于单纯的语音增强算法的降噪效果评价,却没有一个固定的标准。
一般采用的方法有两种:一是计算使用语音增强算法前后的信噪比提升量;另一种是采用ITU-T P.832的主观感知语音评价法计算降噪前后的MOS分,评估增强算法的优劣。
然而,仅仅考察语音增强算法的优劣有可能带来的问题是,当算法用于实际通信系统中时,由于降噪处理之后的语音将经过编码算法,调制到信道并进行传输。
而编码算法对于语音的压缩处理,以及信道传输中的种种干扰,很可能会对语音增强算法的性能带来负面的效应。
因此研究实际通信系统中的“干扰因素”对于语音增强算法的影响是很有必要的。
笔者研究了通信系统中几种常用的编解码算法及语音增强算法。
并将二者结合起来,模拟通信实际流程,研究了语音编码对于增强算法性能的影响。
2 语音编解码算法
现有的通信系统中的语音编码压缩算法,基本都是以线性预测(Linear Prediction,LP)分析为基础的各种改进方法。
线性预测的基本思想是:一个语音信号的抽样值可以用过去若干个取样值的线性组合来逼近。
根据语音信号的生成模型,语音信号S(z)是由激励信号E(z)通过一个线性时不变因果稳定系统V(z)产生输出,这在时域上表现为e(n)和v(n)的卷积,如
图1所示。
LP分析是一种由信号s(n)求取e(n)和v(n)的参数解卷积算法。
它为线性系统V(z)建立一个全极点模型,并按最小均方误差准则,利用已知的s(n)进行
模型参数估计。
估计出来的参数即可确定V(z),再根据S(z)=E(z) V(z)求得E(z)。
这样就完全确定了语音的激励模型和声道模型[1]。
图1 语音信号模型
关于LP分析的解法,在各种语音信号处理参考书中,都有详细介绍,可参考文献[1]。
下面介绍一下几种常见的通信系统中的语音编码算法。
(1)LPC-10
线性预测编码LPC-10在20世纪80年代被美国官方接受成为保密通信的标准算法。
利用该算法合成的语音有较高的可懂度和清晰度,但在生成语音的自然度和抵抗噪声能力方面不够令人满意。
其编码器框图如图2所示,原始语音经过100~3 600 Hz滤波后以8 kHz采样,每个采样点以12 bit量化。
AD变换得到的数字信号以180点为一帧进行编码,
提取语音参数并编码传输。
参数提取分为激励源参数和声道参数两块同时进行,得到基因周期、V/UV判决、增益RMS和声道滤波器反射系数RC等参数。
图2 LPC编码原理
LPC-10算法采用p=10阶线性预测分析滤波器,经过编码后,将10个声道系数、增益RMS、基因周期pitch、清浊音判决V/UV和同步信号Sync编码成每帧54 bit。
因为每帧包含180个采样点,因此总的传输速率为2.4 Kb/s[1]。
LPC-10声码器存在的问题首先是损失了语音的自然度。
在实际的语音残差信号中,相当一部分既非周期脉冲又非随机噪声;或者低频短时周期脉冲,高频段是随机噪声。
这种情况下采用纯粹的二元激励代替余量信号,必然使合成的语音听起来不自然。
而语音谱共振峰位置及带宽估值会对合成语音产生很大的失真。
LPC-10声码器的稳健性很差,当被噪声影响时,会出现不能准确提取基因周期和不能正确判决清浊音的情况,当背景噪声较强时系统性能显著恶化。
此外,对于传输信道中的误码,这种声码器也没有纠错能力。
(2)码激励线性预测(CELP)
码激励线性预测编码(Code-Excited Linear Predic⁃ition,CELP)是Manfred R.Schroeder和Bishnu S.Atal于1985年提出的一种基于合成分析(Analysis By Synthe⁃sis,ABS)和矢量量化的LPC编码技术。
CELP算法的语音帧长为20~
30 ms,综合采用了ABS搜索、感知加权、矢量量化、线性预测等技术。
如图3
是CELP编码器的原理框图,虚线框内是CELP合成器。
图3 CELP编码器原理图
图中,i表示码本中码矢量的标号,g表示增益,下标“s”,“a”分别表示对应随机码本和自适应码本。
将CELP按帧进行LPC分析。
用LPC参数构造合成滤波器。
CELP共有两个码本,一个为自适应码本,其中的码字用来逼近语音的长时周期性(基音)结构;另一个为固定码本(随机码本),其中的码字用来逼近语音经过短时、尝试预测后的残差信号。
从两个码本中搜索出最佳码矢量is,ia,乘以各自的最佳增益gs,ga后相加,其矢量和u+v即为CELP的激励信号源。
将激励信号输入P阶LP合成滤波器1/A(z),得到合成语音Ŝ(n )。
合成语音Ŝ(n)与原始语音s(n)之间的误差经过感觉加权滤波器W(z),得到感觉加权误差e(n)。
将最小均方误差准则(MSPE)作为搜索最佳码矢量及其幅度增益的度量,使MSPE最小的码矢量即为搜索得到的最佳。
在CELP基础上,ITU-T制定了G.729语音编码方案,即8 Kb/s的共轭结构代数码本激励线性预测(Conjugate Structure Algebraic Code Excited Linear
Pre⁃diction,CS-ACELP)编码算法。
CS-ACELP处理的语音是8 kHz采样16 bit量化的PCM信号,编码基于码激励线性预测编码模型,帧长为10 ms(80个采样点)。
通过对语音的分析处理提取出CELP模型的参数,即线性预测系数、自适应码本和固定码本的地址和增益等,其中线性预测系数转化为线谱对(LSP)参数[2]。
另一种应用广泛的以CELP为基础的语音编码算法是3GPP TS26.071通过的自适应多速率编码(Adap⁃tive Multi Rate,AMR),其中自适应的基本概念是以自动判断处理的方式分配信源和信道编码的速率。
实际应用中的语音编码速率取决于信道的条件,它是一个信道质量的函数。
自适应多速率编码处理中,这部分工作是由解码器根据噪声大小等测量参数协助基站来完成的,选择模式,以决定编码速率
的快慢。
原则上在信道较差的时候采用编码速率比较低的编码器,这样就能给信道编码分配更多的比特数来实现纠错,实现更可靠的差错控制,从而有效地抑制错误发生,提高话音质量[3]。
AMR编码基于带宽不同可分为AMR-NB(AMR Narrowband)和 AMR-WB (AMR Wideband)两种。
对于AMR-NB,语音通道的带宽为3.7 MHz,采样
频率为8 000 Hz;而AMR-WB的带宽为7 MHz,采样频率16 000 Hz。
考虑到语音的短时相关性,每帧长度均为20 ms。
以应用较为广泛的窄带AMR为例,此编码器运用了代数码本线性预测(ACELP)混合编码方式,也就是语音信号中既
包括语音特征参数又包括部分波形编码信息,再运用这些特征信息重新合成语音信号的过程。
根据不同速率的要求对特征信息进行取舍,控制这些参数的提取数目,从而得到了以下8种不同的编码速率,混合组成如表1所示的自适应语音编码器。
表1 AMR编码速率
AMR编码器能提供高质量的语音,增强抵抗噪声等干扰带来的信道误差的能力,通过低编码速率灵活配置提高了系统容量,并且编码速率可以根据无线环境和本地容量的需求动态选择不同模式,增强了系统的灵活性和稳健性。
由于这些优点AMR编码器被列为CDMA的标准编解码算法之一。
3 单通道语音增强算法
由于噪声的种类很多,特性并不完全相同,因此针对不同类型噪声采取不同的语音增强方法才能获得最好的降噪效果。
一直以来,人们都在加性噪声的模型上进行研究,提出了各种语音增强算法。
大致可以分为四类:一是基于短时谱分析的方法;二是基于线性代数的子空间方法;三是基于时域滤波的方法;四是其他方法。
基于短时谱分析的语音增强法通过对带噪语音信号进行短时谱分析,在频域计算出一个随时间变化的实数因子,把短时谱和该因子相乘后变换回时域来实现降噪[4]。
根据由短时谱计算衰减因子的方法不同,又可以分为谱减法、维纳滤波器法、基于
统计模型的方法等几类。
短时谱分析方法的优点是计算量适中,易于实时实现,适用信噪比的范围较广,降噪结果的可懂度较好。
但是对背景噪声的消除不够干净,存在“音乐噪声”或残留噪声的现象。
采用子空间方法的语音增强算法大多基于线性代数的原理[5]。
大量实验表明,在
子空间算法中,语音矢量的协方差阵中有很多的零特征值,这表明干净语音信号矢量的能量只分布在它对应空间的某个子集中。
而噪声的方差通常都假设是已知的且严格正定,这表明噪声矢量存在于整个带噪语音信号张成的空间中。
子空间法就是将含噪声语音信号分解为正交的信号加噪声子空间和纯噪声子空间。
对纯净语音信号的估计可以通过将噪声子空间中的信号部分舍弃,只保留信号子空间中的信号,来预测干净的语音以达到降噪的目的[6]。
子空间法的优点是可以有效地去除含噪声语音中的背景噪声,使语音的清晰度和可懂度都有较大的提高,但是计算量较大,因此在实时系统中需要一定的改进[7]。
基于时域滤波的语音增强方法中的代表是卡尔曼滤波器,它的一个显著特点是,用状态空间概念来描述其数学公式,并且,它的解是递归计算的,可以不加修改地应用于平稳和非平稳的环境。
尤其是,其状态的每一次更新估计都由前一次估计和新的输入数据计算得到,因此只需存储前一次估计。
除了不需要储存过去的所有观测数据外,卡尔曼滤波器在计算上比直接根据滤波过程中每一步所有过去数据进行估值的方法都更加有效[8]。
卡尔曼滤波的优点是对于平稳噪声和非平稳噪声都有效,能在不同程度上消除噪声,提高信噪比。
因为它是基于语音生成模型的,在非平稳条件下也可以保证最小均方误差意义下的最优。
其缺点是计算量很大,并且由于假设LPC生成模型的激励源
为白噪声源,因此只能在语音清音段才成立。
实际应用中对语音带来了一定的损失[9]。
另外随着语音信号处理理论和技术的不断发展,近十年间还出现许多新的方法,例
如基于听觉掩蔽效应、小波变换、神经网络等不同的算法。
下面重点介绍两种实际中应用最多的语音增强算法:一种是经典的谱减算法,这种算法的提出到现在已经有近四十年的历史了,相应的改进算法也很多,虽然在效果上不是最好,但由于结构简单,易于实现,所以应用很广泛。
另一种是基于统计模型方法的对数最小均方误差算法(log Minimum Mean Square Error,logMMSE)。
(1)谱减语音增强算法
经典谱减算法的基本思想是在假设加性噪声与短时平稳的语音信号相互独立的条件下,从含噪语音的功率谱中减去噪声功率谱,从而得到较为纯净的语音频谱。
设s(t)为纯净语音信号;n(t)为噪声信号;y(t)为含噪语音信号,则在时域有
由于s(t)和n(t)是相互独立的,并且假设n(t)是零均值的高斯分布噪声。
则转换到频域,写成功率谱形式如下
由于平稳噪声的功率谱在发音前和发音期间可以认为基本没有变化,这样可以通过发音前的所谓“寂静段”(认为在这一段里没有语音只有噪声)来估计噪声的功率谱Pn()k,从而有
式中,γ表示的是衰减因子;os是过减因子,它使得估计出来的噪声更接近真实
的噪声大小。
频域处理过程中只考虑了功率谱的变换,即幅度上的处理。
而最后IFFT变换中需
要借助相位谱来恢复降噪后的语音时域信号。
根据人耳对相位变换不敏感这一特点,可以用原含噪语音信号y()t的相位谱来代替估计之后的语音信号的相位谱,从而
可以得到降噪后的语音时域信号。
基本的谱减算法最大的优点是原理简单,计算量小,缺点在于谱减法是一种最大似然估计,对语音频谱的分布进行假设,而语音频谱分量的幅度对人耳的听觉是最重要的。
最主要的是谱减法进行增强处理后,会带来“音乐噪声”,使听者在听觉效果上产生一定的干扰影响。
(2)基于统计模型的logMMSE方法
基于统计模型的语音增强算法是一个大类,是当前进行语音增强效果最好也是最常用的方法。
统计模型法用各种统计模型和最优化准则对频谱的幅度进行非线性估计,而不是对信号的复频谱进行估计。
这种非线性估计考虑了噪声和语音DFT系数概
率分布函数,并在一些情况下使用了非高斯先验分布[5]。
这些方法其实就是提供
了一个基于概率模型的信噪比和衰减因子的映射关系,更能符合人耳的听觉。
统计模型法利用了不同的非线性估计器从带噪语音频谱的幅度中估算纯净语音信号的幅度,通常有如下几种估计器:最大似然模型、贝叶斯模型、隐马尔科夫模型等,它们的不同之处在于用后验和先验信噪比计算纯净语音信号幅度的公式不同。
logMMSE采用的是贝叶斯模型。
原理是,假定输入的含噪语音幅度谱y是由一个净语音的幅度谱θ决定的。
假设y的概率分布函数是已知的,并受参量θ的影响。
那么数学上就可以找到一个θ的值,使得到y的概率最大,用公式描述为
贝叶斯模型假设θ是一个随机的变量,根据贝叶斯定理对纯净语音的幅度进行估计。
主要思路是,如果已知了关于θ的先验分布,那么就可以在估计的时候应用
这个分布来提高估计的准确性。
最小均方误差估计模型(MMSE)是使纯净语音频谱幅度的估计值和准确值的均
方差最小。
这种模型推导出的增益因子的计算式如下式所示[5]。
式中,G表示衰
减因子大小;γk和ξk分别表示后验和先验信噪比;vk是一个中间变量vk=γk;
I0和I1分别表示0型和1型贝塞尔函数。
MMSE估计模型在数学上与实际语音的幅度谱差别最小,但在主观上却不是最优的。
实验证明,语音幅度谱取对数后计算均方差能更好地实现降噪的效果。
这种模型的推导出的增益因子的计算式如下式所示[5]。
4 语音编码对增强算法的影响
以上分别介绍了一些主要的语音编解码算法和语音增强算法。
实际通信设备中,信号经传声器采集后首先经过降噪处理,由语音增强算法输出后,再进行语音编码,然后经过信道编码等步骤后,发射出去。
而在实际研究增强算法时,一般不会在实际通信设备中进行试验。
所以本节将主要研究语音编码算法对于语音增强算法的影响。
实验采用的语音增强算法有改进的谱减算法、KLT子空间算法和logMMSE算法。
语音编码算法包括LPC-10,CS-ACELP和AMR编码器。
实验采用的音频来自NOISEUS数据库。
NOISEUS是由美国德州大学达拉斯分校(U.T.Dallas)开发的一个语音库。
这个语音库包含了30个IEEE短句。
环境噪声选取了粉红噪声、汽车噪声、街道噪声以及babble噪声,带噪语音的信噪比5 dB。
算法的客观评价,主要基于国际标准3GPP TS 26.077:关于噪声抑制的最小性能要求[10]以及ITU-T P.862(PESQ):语音质量感知评价[11]两种客观测试程序。
测试选取所有30句进行客观打分,分别给出26.077的信噪比增加(SNRI)、噪声衰减(NPLR)以及PESQ-MOS分。
首先对几种编码算法进行PESQ-MOS评分,如表2所列。
表2 语音编码客观评分
对几种降噪算法进行客观评分,其中PESQ评分分别对降噪前后的语音分别进行
一次打分,再计算处理后PESQ分值的提升,以评价算法性能,见表3。
表3 语音增强算法性能评估
其中,DSN=SNRI+NPLR,要求结果应该在-3~3之间,否则语音增强算法中有
音量的变化。
最后将各增强算法处理得出的语音,经过编码及解码算法,得到最终语音再进行客观评分,结果见表4~6。
表4 谱减算法与语音编码结合性能评估
表5 KLT算法与语音编码结合性能评估
表6 logMMSE算法与语音编码结合性能评估
从以上各表格显示的测试结果可得到以下结论:
(1)首先,对于降噪算法的客观评分,各种编码算法对于信噪比增加、噪声衰减量的评分结果都不会有明显影响。
特例是谱减算法通过LPC-10编解码算法后的语音,SNRI和NPLR结果完全错误,这是由于基本的谱减算法破坏了语音信号的参数,比如基音以及一些谐波的破坏,导致解码器生成的语音发生了错误。
(2)从MOS分的结果可见,较低码率的LPC-10和AMR475,AMR515编码
算法会使语音增强效果变差。
经过编解码后的降噪语音的质量甚至比未经处理的含噪声语音还差。
(3)高码率的编码算法对语音增强算法结果不仅不会有损失,甚至会令增强效果有一定的提升。
特别是对子空间的KLT算法,甚至有0.1分以上的MOS分提高。
主观听感实验也与客观评分结果相一致。
主要原因是,语音增强算法抑制噪声的同时,造成了语音谱的损失,而采用LP分析为基础的高码率语音编码算法,提取出的激励源模型和声道模型正好能弥补这一损失,从下图就可以清楚的看出这一点。
图4为原始语音谱图,图5为降噪后的语音谱图,与图4相比高频部分的语音谐
波有了一定的损失,并且在语音间隔有一些残余噪声存在。
而再经过一次语音编解
码后,如图6所示,语音的高次谐波基本被补充完整,而残余噪声也有了一定抑制。
(4)使用现在通用的编码率在8 Kb/s以上的语音编码算法,对于语音增强算法的性能不会造成影响。
5 总结
笔者研究了主要的语音增强算法和语音编解码算法,并重点考察了语音编解码算法对于语音增强算法的影响。
实验结果显示,除了低码率的编解码算法会破坏语音增强的效果。
一般基于LP分析的8 Kb/s码率以上的语音编解码算法不会对语音增强算法的性能造成影响。
特别的,高码率的语音编解码算法还能稍稍改善语音增强带来的语音失真。
参考文献
[1] 张雄伟,陈亮,杨吉斌.现代语音处理技术及应用[M].北京:机械工业出版社,2003.
[2]ITU.ITU-T G.729.Coding if speech at 8kbits/s using conjugate-structure algebraic-code-excited linear pre⁃diction(CS-ACELP)[S].[S.l.]:ITU,2007.
[3]3GPP.3GPP TS 26.090 Adaptive Multi-Rate(AMR)speech codec Transcoding functions[S].[S.l.]:3GPP,2009.
[4]黄苏雨,梁声灼,黄苏园.语音增强方法综述[J].计算机与现代化,2007,23(3):17-20.
[5]LOIZOU P C.Speech enhancement theory and practice[M].[S.l.]:CRC Press,2007.
[6]徐望,丁琦,王炳锡.一种基于信号子空间和听觉掩蔽效应的语音增强算法[J].电声技术,2003(12):41-44.
[7]MARTIN R.Spectral subtraction based on minimum sta⁃tistics[C]//Proc EUSIPCO,1994,1182-1185.
[8]西蒙·赫金.自适应滤波原理[M].4版.北京:电子工业出版社,2003.
[9]王立刚,孟忠祥.改进卡尔曼滤波算法在语音信号处理中的应用[J].电声技术,2009,33(3):77-79.
[10]3GPP.3rd Generation Partnership Project technical specification group services and system aspectsminimum performance requirements for noise suppresser application to the Adaptive Multi-Rat(AMR)speech encoder (Release 7)[S].[S.l.]:3GPP,2007.
[11]ITU-T P.862.Perceptual Evaluation of Speech Quality(PESQ):An objective method for end-to-end speech quality assessment of narrow-band telephone net works and speech codecs[S].[S.l.]:ITU,2001.。