计算机工程
Computer Engineering
1999年　第25卷　第9期　Vol.25 No.9  1999



一种实用的汉语基音提取方法
周江扬　柴佩琪
　　摘　要：提出一种基于语音短时自相关函数的基音提取实用方法．根据汉语语音短时能量和过零率相结合来精确定位汉语音节的韵母基音周期起点，进而提取基音周期．经过大量的测试，结果与手工提取的精度一致．
　　关键词：基音周期；自相关；短时能量；短时过零率
A Practical Algorithm on Pitch Extract of Chinese Syllabe
Zhou Jiangyang Chai Peiqi
(Computer Enginnering Dept. of Tongji Univ., Shang hai 200090)
　　Abstract　In this paper, a practical algorithm is presented. We can get the precise beginning point of voiced part of Chinese syllable in terms of short-time average energy and average zero-crossing rate of Chinese syllabe and extract the pitch period using traditional short-time auto-correlation function. The result is credible through a large sum of vocabulary.
　　Key words　Pitch period; Auto-correlation; Short-time energy; Short-time Zero-crossing rate
1　问题的提出
　　在汉语文语转换系统的研究中，需要建立一个比较好的韵律模型。所谓韵律模型，就是为需转换的文本中的每个字、词、短语、句规划目标的音高、音长，字之间、词之间的停顿模型、重音模型等。而音高音长是影响汉语自然度的重要因素[1]，是主要的韵律参数，因此确定正确的音高模型是汉语文语转换系统中的一个极为重要的问题。由于汉语词汇以双音节词为主，据统计占汉语总词汇量的80%以上。在实时拼接中主要涉及前后音节之间如何调节，以符合它们自然的发音规律，因此研究双音节词的音高模型是有意义的，吴宗济[2]给出了二音节的基本调型。在实际应用中，需用将这些音高模型数字化，而且由于语音是时变的，不同人的声音特征是不同的，在收集语音音高模型数据时，一个快速且可信的基音提取工具是十分必要的。国内使用的较多的是SFS这种分析软件[3]，这种工具是无法拥有的。本文作者在进行汉语文语转换系统的研究中，开发了这种分析软件。作者应用传统的自相关函数法，结合短时能量和短时过零率进行基音提取，并对此法进行了改进。结果表明本文的方法具有比较高的精度，与手工提取精度相当。
2　汉语基音提取方法及其实现
2.1自动提取汉语基音
　　(1) 汉语基音周期起点的确定
　　汉语音节是由声、韵母组成，在自动提取基音时首先要解决的是基音周期标记的起点问题。汉语的声母大多是清辅音：b、d、g、 p 、t 、k 、z 、zh 、j、 c 、ch 、q 、f 、s、 sh、 x、 h ，剩下的是浊辅音：m、 n、 r、 l、w。浊辅音和元音相似，它们与元音结合的情况如图1所示。浊辅音和元音之间没有明确的分界，仅根据短时能量比较难区别，这就给确定基音周期标记的起点带来了困难。

图1　"参谋"的波形
　　从清音、浊音的过零率的分布看，清音的短时平均过零
率大于浊音的短时平均过零率[4]，因此，可以借助于短时平均过零率来进一步判断清音和浊音的分界点。本文在确定浊音段起点时，分粗分、细分二级定位。具体算法如图2所示。本算法短时窗取矩形窗，窗长200点，帧与帧之间的帧移为50点。



图2　自动确定起点算法的流程图
　　对于大多数清辅音，只要粗分即可确定起点。本文中，细分时n取3。
　　通过对大量词的短时平均能量和过零率的研究发现：辅音和元音的边界，主要由辅音段的特性决定。在计算短时平均能量和过零率时，选的窗长应足够小。对一些发音短促的辅音计算所得的平均过零率是不可用来作为判断依据，如：b、d、g这些不送气的塞音，见图3，此时可考虑用短时平均能量判断。通过实验，发现对p、k这两个辅音，大多数情况下能量区别不明显，而过零率变化明显。由于辅音发音的长短对平均能量和过零率的计算直接相关，因此，当辅音发音短促时，会出现一些误判断，但是改进后的算法，通过中值平滑后，是可以去除这些"野点"的。

图3　"baituo"的平均能量和过零率
1.2 基于自相关函数的基音提取算法
　　找出基音周期起点后即可进行基音周期提取。具体算法如图4。

图4　基音提取的流程图
　　传统的方法用长度固定的窗对语音信号进行分帧，然后估计每一帧的基音周期。由于汉语是有声调变化的，它的基音周期改变的范围比较大，再用固定的窗长去计算自关函数和其他短时参数，不足以反映语音的短时特性。本文采用同步改变窗长的办法，即取前一帧估计所得到周期的3倍作为该帧的窗长，因为在相邻的语音帧之间，基音周期改变是有限。
　　另外，在求相关函数峰值时，主要确定第一峰值的位置。每一帧与后续第二帧之间的帧移(Ts)也不宜取固定长度。本文取前一帧估计的基音周期。固定长度帧移会出现如下两种情况：(1)当实际基音周期Tp较小时，即有Ts>Tp时，则求下一帧相关函数时会漏掉一些信息；(2)当实际基音周期Tp较大时，即有Ts<Tp时，又会重复利用前一帧的信息。当累计误差超过一定值时，相关函数计算值不可靠。
2.2 半自动提取汉语基音
　　由于自动提取汉语基音周期时，难免会出现差错，常常需要人工修整[1]，本文主要针对汉语文语转换系统，所以不注重速度和计算量，因此我们在提取汉语基音周期前，先得到待分析语音的汉语基音周期起点，在使用本软件时，人工输入第一音节辅音开始、分界处、第二音节辅音开始、分界处的坐标值。
3　结果与讨论
　　对汉语音节的基音周期提取算法很多，常用的有：自相关法、平均幅度差函数法、倒谱法等，各种算法各有特点，精度高则算法实现复杂。本文采用短时能量和短时过零率的二级定位找到从辅音到元音的切换点。图5为使用自动提取算法的结果，图6为采用半自动算法的结果。为便于比较，随机选择了5个字作为例子，对算法进行进一步的比较。用本文给出的算法提取的基音周期、手工提取的基音周期的比较见表1。实验所用的语料由一女声，通过CREATIVE声卡采集，采样频率为11025HZ。本算法实现简单，而实验的结果却十分可信，我们已经在自己的文语转换系统中应用。

图5　“安静”的基音周期

图6　“参谋”的基音周期
表1　本文算法与手工提取的基音周期的比较(单位：字节)

字手工提取的基音周期自动算法提取的基音周期半自动算法提取的基音周期
参34,33,32,32,32,
31,29,29,29,29,
29,29,29,28,29,
28,28,28,27,2735,33,32,32,32,
31,29,29,29,29,
29,28,29,28,29,
29,28,28,29,2935,33,32,32,32
31,29,29,29,29,
29,28,29,28,29,
29,29,28,29,29
谋42,42,42,42,42,
45,46,48,47,48,
48,48,48,48,48,
47,47,46,46,45,
44,44,4542,42,41,42,41,
45,46,48,47,49,
47,48,47,48,48,
47,48,46,46,45,
44,44,4541,42,42,43,42,
44,46,48,47,49,
48,48,48,48,48,
47,46,45,46,45,
44,44,45
地34,33,32,32,32,
31,29,29,29,29,
29,28,29,28,29,
28,28,27,26,2635,33,32,32,32,
31,29,28,29,29,
28,27,29,28,29,
29,29,28,26,2734,33,32,32,32,
31,28,27,29,29,
29,28,27,28,29,
29,29,28,27,27
所39,38,37,38,39,
40,41,43,42,42,
41,42,41,43,42,
40,39,38,38,3639,38,37,38,39,
39,41,42,42,42,
41,42,41,42,41,
40,39,38,38,3639,38,38,38,39,
40,41,43,42,42,
43,42,43,42,41,
40,39,38,38,36
权33,32,31,32,30,
30,29,25,25,24,
26,26,26,25,25,
26,25,25,2433,33,31,32,30,
30,29,27,24,26,
26,25,26,25,25,
26,26,26,2433,34,32,32,33,
32,29,25,25,24,
26,24,26,25,25,
26,26,26,24

作者简介：周江扬(1965～)，男，博士生，主研语音信号处理、模式识别、智能控制
作者单位：同济大学计算机系，上海　200090
参考文献
1 初敏.高清晰度高自然度的文语转换系统的研究.中科院声学所, 1995
2 吴宗济.普通话语句中声调变化.中国语文,1980
3 孔江平,吕士楠.汉语双音节词声调组合模型研究.NCMMSC'98, 1998
4 [美]L.R.拉宾纳,R.W.谢弗.语音信号数字处理.北京：科学出版社, 1982
5 徐学庆,俞铁城.音调提取的新方法探索.NCMMSC'98,1998
6 吴宗济,林茂灿.实验语言学教程.北京：高等教育出版社,1997
收稿日期：1998-12-21
