第31卷总第8O期 西北民族大学学报(自然科学版) Vo1.31,No.4 2 0 1 0年1 2月 Journal of N0rthw t University for Nationalities(Natural Science) Dec,2010 几种不同基频提取算法的比较研究 马海隆,高 璐,于 (西北民族大学中国民族信息技术研究院,甘肃兰州730030) 、涛 —瓢 虑 拳 [摘要】基频提取算法一直是语音信号处理领域的研究热点,文章将当前的多种基频提取算法分为时域、频域以 及时频混合三个方面,并分别对其中的A.MDF算法、线性预测残差倒谱算法以及小波变换的基频提取算法进行了比较 研究,对三种算法分别在如何准确判定语音波形的谷值点、语音信号突变以及语音的消噪等不同的语音信号处理角度进 行了阐述,并在分析其优缺点后,提出将多种基频检测方法结合能更好地促进基音周期检测的准确性. [关键词]基频提取;AJ F;倒谱;线性预测残差;・1-波变换 [中图分类号】TP391;H214 [文献标识码]A [文章编号]1009—2102(2010}04—0059一O5 0引言 所谓基音就是指发浊音时声带振动的周期性,其倒数称之为基音频率,简称基频.基频是语音信号 处理中非常重要的参数之一,一个好的基频提取算法对于高质量的语音合成、语音识别等语音信号处理 方面的研究都具有十分重要的意义….同时,声音三要素中的音高大小也取决于声音基频的高低,基音 的变化模式成为声调,因此,基频提取算法对于语言的声调研究也是较为重要的一项工作.但基频提取 算法也存在一定的困难,主要包括:①声门激励信号并不是一个完全的周期序列.语音的头、尾部并不 具有声带振动那样的周期性,特别是清音和浊音之间的过渡帧很难判断它们是否是周期性的.②很难 从语音信号中去除声道的影响直接取出仅和声带振动有关的激励信号.③由于语音信号本身是准周期 性的,在浊音段很难精确地确定每个基音周期的起止位置,同时,波形的峰、过零也受到共振峰结构和噪 声等的影响.④基音周期变化范围大,给基音检测带来一定的困难 j. 自20世纪60年代以来,人们已经提出了许多经典的基频提取的算法,大致可以分为三类:①时域 分析算法,如自相关法(AcF),短时平均幅度差法(AMDF)等.②频域分析算法,如倒谱法(Cl弹)等.③ 时频结合的分析算法,如小波分析算法等.随着现代信息处理方法的发展,基频提取算法也在不断的改 进,在研究过程中发现,这些算法都具有不同的优缺点,文章对时域中的AMDF算法、频域中的倒谱法 以及小波分析法分别进行阐述,比较研究,以便能够全面地掌握基频提取算法的性能,为今后的研究打 下良好的基础. 1短时平均幅度差算法 短时平均幅度差算法是时域算法的一种,相比于频域法和时频混合法来说,时域法提取基音周期的 算法简单,计算量小. 自相关算法是时域算法中较早提出的一种算法,但这种方法的复杂度是随信号的采样率的提高成 平方增加的,而人们为了提高精度增大采样率,因此算法的实现需要较高的硬件支持,同时,当基频超过 [收稿日期】2010—10—22 [作者简介】马海隆(1977一),男(回族),甘肃临夏人,主要从事中文信息处理研究 一59— 帧长一半时,自相关法的精度会下降.本文主要针对时域法中的另一种算法——短时平均幅度差 (AMDF)算法进行相关阐述. ‘ 1.1算法描述 为了避免短时自相关函数的乘法运算,研究人员采用了一个简单方法就是利用差值,因此,产生了 短时AMDF. N一1-k I (k)= } (m)一 (m+k)l m=0 显然,在上式中,F (是)的计算只需要加减法和绝对值的运算,运算量远远小于自相关法.为了避 免由于k值变化过大而引起的判断结果不准确,研究人员对上式进行了改进,产生了变长度的AMDF (LV~AMDF). ’ 通过对浊音的LV—AMDF的分析可以发现,对于一般的平稳性不好的浊音段语音,在它的短时周 期谷值特性中,除起始零点外,第一周期谷点大多就是全局最低谷点,因此,这时以全局最低谷点作为基 音周期计算点,一般不会发生检测错误.但对于周期性和平稳性都较好的浊音语音段来说,Lv— AMDF的方法常会出现的第一周期谷点并不是全局最低谷点,最低谷值点也不一定是基音周期所在 点,在这种情况下,若以全局最低谷点作为基音周期计算点就会产生严重的检测错误【引. 本文所阐述的是一种改进的AMDF方法,它通过预测谷值范围、循环AMDF和线性变换三步骤的 有效组合,解决了上述的问题,实现了精确的基音检测. 1.2算法实现 1.2.1预判谷值范围 为了避免上述谷值点的判断错误,先对AMDF的所有波谷做一个预检测,找到最小谷值所在点N (N为抽样点的标记)和最小谷值的大小arIl 根据最小谷值的大小确定门限值 ,一般B和0tmin成一个 线性的关系.定出门限后就可以预先滤除一部分的毛刺谷值. 1.2.2循环Lv—AMDF 为了克服平均幅度差函数的峰值幅度随滞后时间的增加而逐渐下降的现象,将窗长增加,这种相当 于采用了两个不同长度的语音帧来计算平均幅度差函数.这种做法的不好之处在于使整个函数的趋势 呈上升趋势,当语音的下一帧为静音段或者清音是,信号幅度骤变,仍会出现下降,因此使用循环的 AMDF算法来解决这一问题,循环AMDF函数(CAMDF)采取类似于循环卷积的方式实现. 通过这种类似循环卷积的方法,突出了AMDF中基音周期的波谷特性,对基音检测的准确性提供 了很大的方便. 1 2:3线性变换 虽然通过预判谷值、CAMDF的方法已经使基音周期的波谷特性得到了较大改善,但第一波谷仍是 较为繁琐的. 根据这些特点对CAMDF函数中的最小谷值作如下的线性变换,以某一直线AB为基准线,以直线 AB与CAMDF函数对应各点之差值作为线性变换结果,由此得到修正的循环平均幅度差函数 (MCAMDF).这一变换的目的是对CAMDF的各个周期谷点的深度作线性缩减,同时将原函数的峰、谷 点反转.直线AB的斜率必须为负值,以实现原函数中离原点越远的谷点其深度缩减越多的线性变换. 1.3 小结 MCAMDF算法通过简单的线性变换,实现了“以全局最低谷点作为基音周期计算点”的简单算法, 与LV—AMDF算法相比有明显的改进,在纯音或较高信噪比的情况下,大大降低了错误判断率. 2倒谱法 倒谱法计算基音周期是频域法中较为常用的一种方法,该方法是将语音信号变换到频域中来估计 基音周期.本文中介绍了一种基于线性预测残差倒谱的基音检测的方法,该方法使基音峰值点更加清 一60— 晰,可提高基音检测的精度. 2.1算法基本思想 基于LPC预测残差的倒谱基音检测算法的基本思想是:在对输入语音分帧加窗后,首先对分帧语 音进行LPC分析,得到预测系数口 ,并由此构成逆滤波器A(z).然后将原分帧语音通过逆滤波器滤 波,获得预测残差信号,再对预测残差信号作DFT、取对数后,将多的信号的高频分量置零;最后将此信 号作IDFT,得到原信号的倒谱,最终根据所得倒谱中的基音信息检测瑚基音周期.其流程图如下所示: 图1 基于LPC预测残差的倒谱基频提取算法流程图 2.2算法实现 2.2.1倒谱分析 根据语音信号产生的模型,语音信号s( )是有声门脉冲激励e( )经声道响应口( )滤波而得.而 一个信号的倒谱定义为信号频谱模的自然对数的逆傅里叶变换,则其倒谱为: (n)= DEF{In fDFTC S(扎)]f. 设三者的倒谱分别为 ( )、 (n)、 (品)则有: ( ): ( )+ (磊). 在倒谱域中基音信息与声道信息可以认为是相对分离的.采用简单的逆滤波方法分离出声门脉冲 激励e( )和声道H向应 ( ),根据声门脉冲激励e( )及其倒谱特征即可求得基音周期. 由于过渡音中的周期激励信号能量降低和类噪激励信号干扰含噪语音中的噪声干扰,反映基音信 息的倒谱峰,在过渡音和含噪语音中会变得不清晰甚至完全消失.因此,要对语音信号中的声道响应信 息、类噪激励和噪声加以适当的抑制,从而可改善倒谱基音检测算法的检测结果.本文阐述的倒谱法就 是采用线性预测残差技术来改善倒谱法的检测结果. 2.2.2线性预测残差 在语音信号的线性预测编码(LPC)分析中,语音信号s(n)可以表示为: 三 ( )=一> s(扎一i)+G e( ). 1 对输入语音进行线性预测分析获得预测系数n ,并根据预测系数构成逆滤波器A( ): 土 A(z)=1一> 口 一 ,口0=1. 1 . 将原始语音通过逆滤波器A(z)进行逆滤波,则可获得线性预测残差(预测余量)信号.理论上讲, 线性预测残差信号中已不包含声遭响应信息,但却包含完整的激励信息.对线性预测残差信号进行倒 谱分析,并且残差信号具有非常清晰的谐波结构,与原始语音信号的频谱相比将可获得更为清晰精确的 一61— 基音信息【引. 2.3 小结 基于LPC预测残差的倒谱基频提取算法是频域中倒谱法的一种,文中利用预测残差信号进行基音 周期估计,其优点在于残差信号的谱接*坦,同时共振峰效应在残差信号中也被去除,使共振峰不会 影响到基音周期的估计. 为了改善基音检测算法,一些基于倒谱的改进算法被提出来,例如统计检测的思想方法、非线性声 道系数模型的思想、倒谱与单边ACF相结合的方法、结合谐波积谱等等,有待于进一步的学习研究. 3小波变换法 随着信息化技术的发展,单纯的时域基频算法或者频域上的算法都无法满足基频检测的准确性要 求.在这种情况下,将小波变换法应用于语音信号的处理成为一种必然趋势.小波变换法是时频混合 算法中的一种方法,具有良好的时频局部分析能力,非常适合于探测信号中的突变,并且具有良好的消 噪能力. 3.1算法描述 利用小波变换算法来实现基频提取的原理:当信号中有突变点时,其小波变换将在该点附近表现为 局部最大,且对于信号中真正的突变,小波变换时信号的不连续性在不同分辨率层有传递性.人在发声 时,由于声门瞬时闭合,对声道形成较强冲击,从而在语音信号中引起一次蜕变.通过小波变换可检测 出语音信号的这一蜕变,即相当于检测出声门闭合时刻,而相邻两次的声门闭合之间的时间长度的倒数 即为该处基频,因此求相邻两次突变的时间间隔的倒数就可得到基频. 3.2算法实现 由小波变换理论知道,如果选取的小波函数是一个光滑函数的一阶或者二阶导数,即选取的小波函数为: ( ): , ( ): , 其中, ( )是满足关系式i ( )d =1且 (z)=Ol南}的光滑函数. 记 ( )= I÷j,则对一个实函数,( )∈L (R),定义其以下的小波变换: Ⅳ )=f ㈩=, [s ]= 鲁 , W2f( , ㈤=, [s ] 圳. 可见 厂(t)、 ,(t)、分别正比于,(t)经过 (t)变换后得到的函数的一阶导数和二阶导数,而 函数一阶导数的极值点对应其二阶导数的零点,同时也是函数本身的拐点,而一阶导数绝对值的最大值 对应于函数的突变点,因此Ⅳ ,(t)得幅值极大点对应f(x)的突变点,而W2f(t)得零点则与f* ( )的拐点相一致.研究者就是利用了小波变换的这一特性来进行语音信号突变点的检测的 】. 3.3 小结 将小波变换法应用于语音的基频检测虽然有其不可忽略的优点,同时也具有一定的缺陷,例如,小 波变换的方法对于某些信号检测时阈值难以确定,因此,研究者逐渐地将小波变换法与语音信号波形本 身信息相结合的方法来检测语音信号的基音周期,不仅克服了小波变换方法中的缺陷,也克服了纯粹利 用波形信息进行检测时的干扰问题,减小了计算量. 另外,也有研究者利用了小波变换算法在语音的消噪处理上的优势,将语音信号的时域波形信息和 小波变换相结合的方法来提取语音信号的基音周期. 4结论 基音周期是语音的一个非常重要的特征参数之一,描述了语音激励源的一个重要特征,在语音编 一62— 码、语音合成、说话人识别、语音识别和音乐检索等方面有着广泛的应用,是语音研究的一个重要阶段. 文章从基频提取算法的基本算法思想、算法的实现、算法的优缺点等方面对时域的AMDF算法、频域的 倒谱法以及时频混合的小波变换算法几种经典的基频提取算法进行了比较分析,文中所列举的各个方 法从判定语音波形的谷值点、语音信号突变以及语音的消噪等多个不同角度进行了阐述. 由于语音信号的非平稳性以及声门激励波形并不是一个完全的周期序列,也并没有一个能在任何 情况下都较为满意的基频提取算法,因此,在今后的研究当中适当地将两种或两种以上的基频提取算法 相结合,提出一系列改进的基频检测方法,为语音信号处理方面的研究提供依据. 参考文献: [1]钱博等.一种基于线性预测残差倒谱的基音检测算法[J].计算机工程与应用,2007. [2]陈洪立.一种基音周期估计方法[J].江西通信科技,2004. [3]成新民等.一种改进的AMDF求取语音基音的方法[J].微电子学与计算机,2005,(22). [4]郭淑妮等.基于线性预测残差倒谱的基音检测[J].电脑与电信,2008. [5]李炳照等.一种小波变换与时域波形相结合的基音周期检测方法[J].电声技术,2001,(9) Design and Implementation of Breathing Signal Analysis Platform MA Hai—long,GAo Lu,YU Hong—zhi (Information Institute,Northwest University for Nationalities,Lanzhou 730030,Chirm) [Abstract]The algorithm of pitch extraction is the research focus of speech signal processing.The algorithm of extracting pitch frequency has been divided into time domain,frequency domain,time and frequency combined domain.A comparative research on the AMDF algorithm,Linear Prediction Residual cepstrum,Wavelet Transform respectively has been made.These three domains were elaborated from the perspective how to judge the valley point of speech wave,speech signal mutation,noise elimination of speech signa1.By analyzing the merits and demerits of various methods,this paper put forwards that combining all methods of pitch frequency detection would contribute to the accuracy of pitch detection. 【Key words]pitch extraction;AMDF;Linear Prediction Residual;cepstrum;Wavelet TransfoFin (上接第58页) Implementation of Pitch Detection Based on ACF by Matlab MA Xiao—min,ZHENG Wen—si,CHEN Qi (Research Departmentl,Information Institute2,Northwest University for Nationalitise,Lanzhou 730030,China) [Abstract】Many further studies have been done on the basis of analyzing the autocorrelation algorithm in this paper.A band—pass filter and a tri—level clipping module Was adopted to improve the detection which took the accuracy and the detection rate into account.Based on Matlab and processing a specific voice,the estimation method was designed,more accurate voice pitch period of the voice sound has been obtained.The experiments showed that the method was simple and elective. 【Key words】Matlab;pitch detection;autocorrelation function;tri—level clipping 一63—