毕业设计(论文)-基于共振峰合成法的语音信号合成
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
毕业设计(论文)-基于共振峰合成法的语音信号合成
江西师范大学2006届本科毕业生论文
题目:基于共振峰合成法的语音信号合成 Title: Synthesis of Speech Signal based on
Formant Synthesis
学校名称:江西师范大学
院系名称:物理与通信电子学院
学生姓名:
学生学号:0
专业:通信工程
指导老师)
I
声明
本人郑重声明:
所呈交的毕业设计,论文,是本人在指导教师指导下进行的研究工作及取得的研究成果。
其中除加以标注和致谢的地方外~不包含其他人已经发表或撰写并以某种方式公开过的研究成果~也不包含为获得其他教育机构的学位或证书而作的材料。
其他同志对本研究所做的任何贡献均已在文中作了明确的说明并表示谢意。
本毕业设计,论文,成果是本人在江西师范大学读书期间在指导教师指导下取得的~成果归江西师范大学所有。
特此声明。
声明人,毕业设计,论文,作者,学号:
声明人,毕业设计,论文,作者,签名:
签名日期: 年月日
II
目录
摘要 -------------------------------------------------------------------------------------------- 1
ABSTRACT ----------------------------------------------------------------------------------- 2
引言 -------------------------------------------------------------------------------------------- 31语音合成进展-------------------------------------------------------------------------------- 3 2共振峰合成----------------------------------------------------------------------------------- 42.1共振峰产生原理 ------------------------------------------------------------------------------------- 4 2.2激励模型---------------------------------------------------------------------------------------------- 5 2.3共振峰合成三种声道模型 ------------------------------------------------------------------------- 6
2.3.1级联型共振峰模型 ----------------------------------------------------------------------------- 6
2.3.2并联型共振峰模型 ----------------------------------------------------------------------------- 7
2.3.4混联型共振峰模型 ----------------------------------------------------------------------------- 9
2.4辐射模型---------------------------------------------------------------------------------------------- 9 2.5语音信号综合数字模型 --------------------------------------------------------------------------- 10 3 MATLAB软件合成 ---------------------------------------------------------------------- 10
3.1软件概述--------------------------------------------------------------------------------------------- 10 3.2提取语音信号的共振峰参数 --------------------------------------------------------------------- 11
3.2.1用频域分析提取参数 ------------------------------------------------------------------------- 11
3.3基于参数的共振峰合成 --------------------------------------------------------------------------- 14
3.3.1固定共振峰不同发音状态的语音信号的合成 -------------------------------------------- 15
3.3.2变化共振峰的不同状态语音信号的合成-------------------------------------------------- 18
3.4基于参数修改的语音转换 ------------------------------------------------------------------------ 23 总结 -------------------------------------------------------------------------------------------- 26 参考文献 -------------------------------------------------------------------------------------- 27
致谢 -------------------------------------------------------------------------------------------- 28
III
摘要
语音合成是,定义,,目前语音处理中研究最成熟(删除)、应用最广泛的技
声道模术。
它可以用多种方法实现~其中共振峰合成法是一种基于规则的声源-型合成法。
它侧重于对声道谐振特性的模拟以及准确地提取共振峰参数。
共振峰合成法的特点在于以共振峰为控制参数~要求在输出终端上模拟出实际语音的谱特征。
本文主要内容大概(删除)分为三个部分:一,在理论分析的基础上~提取语音库里的两个不同性别的人发相同语音的共振峰参数,二,基于激励的LP模型,以第一阶段提取出来的共振峰参数构成声道模型,合成五种不同发音状态的语音,三是完成男子向女子发音的转换,合成之后再对合成信号和原来信号的语谱图进行分析比较~不断地修正合成的各项参数~最后得到质量较高的合成语音。
【关键词】共振峰合成、特征参数、MATLAB语音工具箱
1
Abstract
Speech synthesis is now one kind of advanced method which has been widely used in speech processing. It can be realized by various means, in which Formant Synthesis is one mature approach featuring Source-
filter Model synthesis based on principles.
This synthesis focuses on the simulation of the characteristics of vocal formant and getting formant parameters precisely. The
dissertation(paper)l comprises three main parts:
the first one is the gain of formant parameters for speeches, which are from the speech-ware spoken by a man and a woman differently; the second part is to synthesize five different speech pronunciations, and then to use the formant parameters derived in the first phase as the
formant excitation, while also these five different speech pronunciations as source excitation; the third part is to finish the conversion of a male’s voice to its corresponding female’s voice. So this paper
will also try to analyze and compare the spectrum figure between the synthesized speech and the initial speech signal. And then it will modify every parameter that is needed for the application of a high quality synthesis speech signal, compared with the initial input speech signal.
Key words Formant Synthesis, characteristic parameters, MATLAB toolbox for speech synthesis
2
引言
语音是人类交流时使用最多、最自然、最基本同时也是最重要的信息载体。
它的产生包括一系列的心理和生理反应。
目前对语音信号的研究主要基于它的数字表示,其基础是抽样定理。
语音处理在现代社会中应用极为广泛,它的广泛应用表现在:
语 1、语音编码:最重要的一种应用,用低比特率获得尽可能高的合成质量音 2、语音识别:将语音转换成等价的书面信息,让计算机听懂人说话
处 3、说话人识别:根据话音辨别说话人,提取说话人的特征
理 4、语音理解:利用知识表达和应用人工智能技术进行语句识别和理解
应 5、语音合成:让计算机说话,实现人机通信
用 6、语音增强:对带噪语音进行处理,达到降低噪声影响的效果
在高度信息化的今天,这些语音处理的一系列技术及其应用已经成为信息社会不可缺少的组成部分。
而其中语音合成技术的研究相对要成熟一些,也是语音信号处理领域最有可能产生突破并进而实现产业化的一项技术。
目前国际国内对其研究主要着重在提高合成语音的自然度,丰富合成语音的表现力,降低语音合成技术的复杂度以及多语种文语合成等四方面。
选择这个项目作为研究对象,具有一定的现实意义,这表现在:首先,能够加强对共振峰合成法的基本的理论分析的认识;其次,能够学习掌握MATLAB语音工具箱软件的应用以及进行再处理工作;最后,能够使自己在加强学习的同时,了解到当前国内外语音合成技术研究的最新成果并及时吸收1语音合成进展
上个世纪,在人们的努力下,语音合成已经可以比较成熟的实现有限词汇的合成,但是大量词汇的语音合成,以及合成音质的改善还比较难。
现阶段语音合成的最大进展是已经能够实时地将任意文本转换成连续可懂的自然语句输出,相应技术通常称为文语合成或文语转换(TTS)。
TTS使得数据通信和语音通信在终端一级实现交融,人们将有望在获取Internet信息时,使短消息服务、电子邮件等多数以文本方式提供的信息也用语音的方式输出。
综观语言合成技术的研究已有二百多年的历史,但是真正有实用意义的近代语音合成技术是随着计算机技术和数字信号处理技术的发展而发展起来的,主要是让计算机能够产生高清晰度、高自然度的连续语音。
80年代以前,国际上语音合成的研究主要集中在按规则文语转换,早期的研究主要是采用参数合成方
3
法。
如Holmes并联共振峰合成器(1973)和Klatt串/并联共振峰合成器(1980)。
自八十年代末期至今,语言合成技术又有了新的进展,特别是基音同步叠加(PSOLA)方法的提出(1990),使基于时域波形拼接方法合成的语音的音色和自然度大大提高。
九十年代初,基于PSOLA技术的法语、德语、英语、日语等语种的文
语转换系统都已经研制成功。
这些系统的自然度比以前基于LPC方法或共振峰合成器的文语合成系统的自然度要高,并且基于PSOLA方法的合成器结构简单易于实时实现,有很大的商用前景。
国内的汉语语音合成研究起步较晚些,但从八十年代初就基本上与国际上研究同步发展。
大致也经历了共振峰合成、LPC合成至应用PSOLA技术的过程。
70年代末和80年代初,我们语言所和中科院声学所都初步研制出了各自的普通话语音合成系统。
90年代初,基于数据驱动的语音合成技术出现,使得语音合成系统走向了实用。
如目前国内有以语音合成为主的语音技术公司科大讯飞公司。
这些系统基本上都是采用基于PSOLA方法的时域波形拼接技术,但是毕竟已经在信息咨询如168声讯台、短讯播报等平台使用了。
在国家863计划,国家自然科学基金委,国家攻关计划,中国科学院有关项目等支持下,汉语文语转换系统研究近年来取得了令人举目的进展,其中不乏成功的例子:如中国科学院声学所的KX-PSOLA(1993),联想佳音(1995);清华大学的TH_SPEECH(1993);中国科技大学的KDTALK(1995)等系统。
这些系统基本上都是采用基于PSOLA方法的时域波形拼接技术,其合成汉语普通话的可懂度、清晰度达到了很高的水平。
2共振峰合成
2.1共振峰产生原理
共振就是当空腔作受迫振动,使激励频率等于腔的固有频率,那么空腔便以最大振幅作振荡。
共振体的作用通常不是在一个固有频率上作用,可能有多个强度不同的共振频率。
声道管的共振频率(谐振频率)称为共振峰频率,简称为共振峰。
人在说话时,声道是一个分布的参数系统,是一个谐振腔。
舌和唇的连续运动常常会改变声道的外形和尺寸,从而改变谐振频率。
声道和鼻道均可看作是非均匀截面的声道管。
共振峰的值与发生器官的确切位置有很大的关系,即与声道的大小和形状有关系,每种形状的声道都有一套共振峰
频率作为其特征。
当声音沿着声道传播时,频谱形状会随声道改变。
因为声门脉冲序列具有丰富的谐波成分,这些频率成分声道的共振频率之间相互作用的结果对语音质量影响很大。
由于声道的大小随不同的讲话人不同,所以共振峰频
4
率对判别不同的说话人来说非常重要。
共振峰频率由低到高的排列依次为第一、二、三共振峰,一般来说,在浊音中可以辨认的共振峰有5个,前3个对区别不同说话者的语音来说至关重要。
虽然就语音的基音频率而言是女声和童声高于男声,但是实验表明:区分语音是男声还是女声、是成人声音还是儿童声音,更重要的因素还是共振峰频率的高低.共振峰特性与发音机制有关.例如第一共振峰F1与舌位高低(即舌在嘴的上下)有关,这表现为舌位越高, F1越低;舌位越低,F1越高。
第二共振峰F2与舌位前后的位置有密切关系;这表现为舌位越靠前,F2就越高;舌位越靠后,F2就越低。
第三共振峰F3受舌尖活动影响较大,这表现在舌尖抬高卷起时,F3就明显下降。
研究显示,不同人群的共振峰频率分布范围变化很大,如下表1所示:
表1 不同人群的共振峰频率分布范围
共振峰合成数字模型的建立对于语音处理具有极重要的意义。
一般处理过程都是采用数字信号处理的方法,将人类发声过程看作是一个模拟声门状态的源,去激励一个表征声道谐振特性的时变数字滤波器,这个源可能是周期脉冲序列,它代表浊音情况下的声带振动,或者是随机噪声序列,代表不出声的清音、调整滤波器的参数等效于改变口腔及声道形状,达到控制发不同音的目的,而调整激励源脉冲序
列的周期或强度,将改变合成语音的音调、重音等。
因此,只要正确控制激励源和滤波器参数(一般每隔10,30ms送一组),这个模型就能灵活地合成出各种语句来。
对发音器官和语音产生机理的分析,可以将语音生成系统分成三个部分:在声带以下负责产生激励振动,称为激励模型;从声门到嘴唇的呼气通道是声道系统,即声道模型;从语音到嘴唇辐射出去的子系统是辐射系统。
下面分别就这三个系统简单介绍共振峰合成的数学模型
2.2激励模型
对于声源模型,它的激励源采用清音与浊音相结合的方式。
浊音源为一组周期性的脉冲波形,清音激励源采用高斯白噪声。
浊擦音采用周期性冲激调制的白
5
噪声
激励源分为浊音和清音两种。
其中浊音由于在产生过程中声带的不断张开和关闭,将会产生间歇的脉冲波。
它类似于一个斜三角波脉冲。
表示如下:
NN在上式中,为斜三角波上升部分的时间,为其下降部分的时间。
单个12 斜三角波是一个低通滤波器,它的变换的全极模型形式是: z
是一个常数。
上式表示斜三角形可描述为一个二极点的模型 c
清音的激励信号由随机噪声发生器产生,因为发清音时,无论是发阻塞音还是摩擦音,声道都被阻碍成湍流。
设其平均值为0,其自相关函数是一个单位冲激函数。
2.3共振峰合成三种声道模型
关于声道部分的数学部分,目前最流行的有两种建模方法:声管模型和共振峰模型。
前者把声管视为由多个等长的不同截面积的管子串联而成的系统;后者把声道视为一个谐振腔。
发音时候因为声道形状很少是均匀断面的,所以还须研究如何从语音信号求出共振峰的方法。
共振峰参数除了共振峰频率外,还包括共振峰带宽和幅度。
基于物理声学的共振峰理论,可以建立起三种使用的共振峰模型:级联型、
[10]并联型和混联型。
2.3.1级联型共振峰模型
级联型模型下认为声道是一组串联的二阶谐振器。
对于一般元音,用全极点模型模拟就可以了,因为此时的零点可以由多个极点模拟。
由此可以导出,多数
[10]情况下声道模型的传输函数V(z)是一个全极点函数:
6
a在上式中,N是极点的个数,G是幅值因子,是常系数。
那么此时上式可k 以分解为多个二阶极点的网络串联。
即表示成:
或者表示成
其中
式中M是小于(N+1)/2的整数。
假如N取10,则 M=5 ,该模型可以表示成如下图1的图片:
图1 级联型共振峰模型
2.3.2并联型共振峰模型
一般来说,级联型比较简单,可以用于描述一般的元音。
级联的级数取决于声道的长度,一般成年人的声道长度约为17cm,取3——5级就可以。
当鼻化元音或鼻腔参与共振,以及阻塞音或摩擦音等情况时候,级联型就不能胜任了。
这时的腔体具有反谐振特性,必须考虑加入零点,使之成为零极点模型。
那么这个时候就需要采用并联型结构了,它比级联型复杂些,每个谐振器的幅度都要独立地给以控制。
T此时声道模型的传输函数可以表示为:
7
,
NM,NNN,,2ab,通常,式中,由于系数是实数,所以其它系数都12kk
是实数。
它的简单并联结构可以表示为以下图2:
图2 并联型基本结构
所以,结合了激励模型和辐射模型的并联型共振模型图如下图3所示:
图3 并联型共振峰模型
并联型可以通过调整传输系数的办法来单独调整一对极点的位置,但是不能像串联型那样单独调整零点的位置。
因此一般在要求准确传输零点的场合下,适
8
[5]宜采用并联型结构。
2.3.4混联型共振峰模型
将级联模型和并联模型结合起来的混合模型是比较完备的一种共振峰模型。
它根据要描述的语音,自动地进行切换。
图中的并联部分,从第一到第三个共振峰的幅度都可以独立地进行控制和调节,用于模拟辅音频谱特性中的能量集中区。
此外,并联部分还有一条直通路径,它的幅度控制因子为AB,这是专门为
[10]一些频谱特性比较平坦的音素考虑设计的。
混合型结构可以得到更加完善的模型共振峰合成法的关键是准确提取共振峰参数。
从自然语音中提取共振峰参数最简便的方法是使用语谱图,采用频域处理、同态处理、LPC技术也能很好地估计共振峰参数。
这种结构如下图4混联型共振峰模型所示
图4 混联型共振峰模型
2.4辐射模型
Rz()辐射模型与嘴型有关,一般可以表示为
9
,1Rzrz()1,,,
在这里式子的系数r接近于1。
2.5语音信号综合数字模型
综上所述,完整的语言信号产生的数学模型应该包含三个子模型:激励模型、声道模型和辐射模型。
如下图2所示
图4 语言信号产生数学模型
3 MATLAB软件合成
3.1软件概述
MATLAB语音工具箱speechgui-matlabrt(speech graphic user interface for Matlab runtime server),即为Matlab实时服务器应用的语音信号图形用户界面。
它是在MATLAB7.0版本的基础上应用的一种专门的语音合成软件。
这套软件提供了功能强大的语音信号处理应用。
它可以对语音信号进行语音分析(包括时域分析、频域分析、波谱分析、线性预测分析、移动平均分析、声门转换滤波器、倒谱分析等),数据和测量,线性预测法语音合成,共振峰语音合成等等
10
相当多的应用。
更为重要的是,它还为软件实现共振峰合成提供了友好可懂的GUI(图形用户界面),它使得用户在友好的使用界面的提示下一步步进行语音合成操作,允许用户把文件里包含的语音库声音文件进行合成,进而对合成信号与原来信号进行语音分析,比较合成之后的语音信号与原来的语音信号两者的效果,然后修改共振峰合成所需的参数,再与原信号对比,改善合成音质效果,最终合成较高质量的语音信号在得到高质量的语音合成过程中的关键因素之一就是对语音信号经过精确的分析过程,提取合成参数。
在早期,这个过程大部分都是利用声门语音信号来决定共振峰参数的。
其中另外一个重要的因素就是激励源波谱的设计。
MATLAB语音合成专用工具箱就是为了解决这个问题设计出来的。
总的来说,在目前,主要有两种:一种是级联/并联型(1980年由Klatt提出并设计),一种是并联型(1982年由Rye和Holmes设计)。
虽然在目前对于哪种结构是更好的合成结构尚有争议,但是一般认为,Klatt 模型对于文本—语音合成比较适用,而Holmes模型更多的应用于分析—合成系统。
这种区分的原因更多的是来自于这两种合成方法的不同的控制系统和合成部分的不同来源。
共振峰参数(频率、幅度、带宽、可以以数字滤波器件的形式实现),而组成共振峰合成器的激励源和波谱形成网络则是随着声音信号产生过程时的声源特性和声道形状而动态改变的。
也就是说,这是一种无法预料的动态的随机变化。
但是因为这种变化相对来说发生得很慢,所以这就为我们使用一组固定的合成器参数来区分一小段特定的语音信号(帧)。
这种可能有助于减少所需用于代替语音信号的数据量。
3.2提取语音信号的共振峰参数
本文以两段男、女声信号/IY/为例进行共振峰参数的提取具体过程如下:
3.2.1用频域分析提取参数
1、进入语音信号“分析”主菜单,点击“文件”命令,在“导入”命令中将语音文件“M0203S.DAT”,即元音信号男声/IY/导入,并且显示。
如图5显示
11
图5 语音信号/IY/时域波形
2、再在分析主菜单里选择“声门转换滤波器”命令,在“参数”设置里面,选中“标志之间”,然后立刻在“声门转换滤波器”主菜单中选择“基音同步”,截取一段语音信号后进行分析。
如下图6和图7所示
图6 共振峰频率和带宽12
图7声道模型的滤波器特性
3、在图6修改共振峰和频率的各项参数,使得图7中的最上面一条曲线,即声道模型频率响应的残余度显示,它趋于平滑,表示提取的共振峰参数越与实际的共振峰参数误差越小
4、重
复上面的
第三步的
动作,直到
有提示信
息“人工声
门转换滤
波器已经
完成”出
现,此时将
展现包含
有共振峰
频率和带
图8 男子发音基音和共振峰频率等高线
宽参数的图8。
13
4、从上图图8中读取共振峰频率和带宽,基音周期等参数。
即遵循共振峰频率等于某一个等高线的最大值与最小值之间的均值,共振峰带宽等于两者之间的差值的原则,基音频率则等于图8中最下面一条等高线对应的纵坐标的频率值。
依照同样的方法,我们可以从一个由女声发出的/IY/音提取各个共振峰参数。
如图9,由此可以读得该男子和女子发/IY/音的各个共振峰参数是如下表2所示:
图9 女子发音基音和共振峰频率等高线
表2 该男子和女子发/IY/音的各个共振峰参数
3.3基于参数的共振峰合成
合成一个语音文件要用到语音处理菜单中的“合成”命令。
在进入了主菜单之后,选择“共振峰”命令,则进入共振峰合成的主菜单。
在这里要合成一个语音信号,我们需要两个参数:信号源和共振峰参数。
信号源可以在系统给出的参数基础上进行修改得到,也可以调入一个语音库里原有的语音信号。
下面说明具
14
体的操作过程。
这个部分分两个阶段进行,一个是合成六种不同发音状态的语音信号:抒情音、尖锐音、呼吸音、低语音、假音、刺耳音。
另一个是利用上一步共振峰参数提取获得的参数去分别调整这六种声音,观察效果。
3.3.1固定共振峰不同发音状态的语音信号的合成
这个阶段主要是利用修改源信号的各项参数,不变共振峰参数,观察合成的效果有何不同,具体过程如下:
图10源规范参数设置窗口
1、进入合成主菜单里,选择“源规范”,然后在“源规范”里点击“修改新的源激励”。
设置五种音调的帧截取长度均为21,确定之后点
击“修改特定源激励”,进入参数修改界面,如上图图10所示,它
对应的时域波形和零极图如下图11所示
15
图11 时域波形和零极图
、然后点击“应用于所有”和“完成”命令,再回到源设置界面中将该源2 TTTT激励信号保存在共振峰合成的目录下面。
这里设置的参数包括,,,,caepamp1amp2offsetdur,,,,各个参数的介绍如下:
T:最大的声门流量瞬时比例值。
p
T:结束声门闭合要达到的比例值。
c
T:声门第二段的时间常量的比例值 a
T:最大负微分声门流量的瞬时比例值。
e
TTTT按照流体力学可以相关理论知识可以得出结论,必须使>>>0,且>0,ceap 才能使这些参数在算法中有效。
amp1:加噪中的第一调制参数比例值
amp2:加噪中的第二调制参数比例值
offsetamp1:加噪的持续时间长度比例
16
duramp2:加噪的持续时间长度比例
这六种不同状态的语音信号合成所需要的参数包含在表2当中:
表2 合成六种不同状态的语音信号合成所需要的参数
2、完成上述两步骤后,在主合成菜单里调入一个系统默认值的共振峰设置,保存其为共振峰激励,然后点击“合成”,就合成了如图12
的抒情语音的信号:
17
图12 抒情语音信号
3、合成后,重复以上步骤,按照表二里面的参数进行逐一合成,然后将所有合成的信号全部表现出来(步骤大概一致,且不能全部显示,
故只选抒情、尖音、呼吸、假音四个),如图13
抒情、尖音、呼吸、假音合成显示波形图13
3.3.2变化共振峰的不同状态语音信号的合成
上面演示的例是用系统提供的参数设置为基础,利用几种不同数值设置的方法来合成几种语音信号。
现在探讨在改变共振峰参数,即利用3.2中分析得到的
18
共振峰参数来设置共振峰激励源,合成语音信号的具体步骤:
1、同样是进入上一个例子的合成主菜单里面。
不同的是在设置源规范
时,使用的是导入的语音
文件,先将男声发的/IY/
导入合成。
如图14所示,
图14 导入要分析的语音文件
将文件导入后,点击“修改指定源激励”可看到如图15看到的系统自动生成的语音源文件信息和波形
图15 系统自动生成的语音源文件信息和波形
2、再重复上面相类似的步骤,把该data格式的文件保存在合成专用文
件路径下面,即将原来进行共振峰合成产生的“source.dat”文件覆。