网站大量收购闲置独家精品文档,联系QQ:2885784924

语音合成大作业.pdf

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
语音合成大作业

语音合成大作业 班级:无36 学号:2013011180 姓名:林康博 日期:2015.8.2 1.2.1 语音预测模型 (1)给定 e(n)= s(n) ¡ a1s(n ¡ 1) ¡ a2s(n ¡ 2) 假设e(n)是输入信号,s(n)是输出信号,上述滤波器的传递函数是什么?如果a1 =1:3789 ,a2 = ¡0:9506, 上述合成模型的共振峰频率是多少?用zplane,freqz ,impz 分别绘出零 极点图,频率响应和单位样值响应。用¯lter 绘出单位样值响应,比较和impz 的是否相同 解: 1. 输入差分方程,用tf 函数获得传递函数 clear ; a=[1]; b=[1,1.3789,-0.9506]; sys=tf(b,a,0.1,variable,z^-1); sys 结果:sys = 1 - 1.379 z^-1 + 0.9506 z^-2 Sample time: 0.1 seconds Discrete-time transfer function. 2.共振峰频率:用residuez得到零极点。 解:极点幅度决定衰减速度,幅角决定振荡频率。共振峰频率和极点幅角有关。 用数字的正弦信号表示抽样后的连续正弦信号时,模拟频率和数字频率的关系是 Ω= ωT , 其中T 表示抽样间隔, ω表示模拟频率(弧度),对应的 f = ω/2 π= Ω/2 π*1/T 即为共振 峰频率。 、、、matlab [r,p,k] = residuez(a,b); fm = angle(p(1)) / (2*pi) * 8000; fm 结果: fm = 999.9447 3.画图; figure; zplane(a,b),title(zero-pole plot); ; figure; freqz(a,b), title(frequency response); ; figure(); subplot(2,1,1),impz(a,b); subplot(2,1,2),plot(filter(a,b,[1 zeros(1,100)]),o); 结果: 可以看出filter 仿真和impz 得到的确实相同 (2 )阅读 speechproc.m 程序,理解基本流程。程序中已经完成了语音分帧、加窗、线 性预测、和基音周期提取等功能。注意:不要求掌握线性预测和基音周期提取的算法原理。 解:阅读程序看出基本流程: 1. 加汉明窗处理,线性预测 2. 语音预测,输入预测信号到预测滤波器,得到激励 3. 语音重建,输入激励到重建滤波器,得到重建信号 4. 生成合成激励到合成滤波器,合成语音 5. 变速不变调 6. 变调不变速 (3 )运行该程序到27 帧时停住,用(1)中的方法观察零极点图。 %(3) 在此位置写程序,观察预测系统的零极点图 、、、matlab % (3) 在此位置写程序,观察预测系统的零极点图 figure,zplane(1,A),title(zero-pole); 结果: (4 )在循环中添加程序:对每帧语音信号 s(n) 和预测模型系数 faig ,用 ¯lter 计算 激励信号 e(n) 。注意:在系数变化的情况下连续滤波,需维持滤波器的状态不变,要利用 ¯lter 的zi 和zf 参数。 %(4) 在此位置写程序,用filter 函数和s_f 计算激励,注意保持滤波器状态 解:这里实际上就是语音预测模型,根据实验指导书,知道了系数ai,那么把输入输出兑换, 就构成了语音预测模型,即把语音信号s 送入预测滤波器,得到残差e 、、、matlab % (4) 在此位置写程序,用filter函数s_f计算激励,注意保持滤波器状态 [exc1,zf_pre]=filter(A,1,s_f,zi_pre);%exc1为预测残差 %zf为filter的状态,需要作为下一次的zi初始状态,这样来维持滤波器的状态不 变 zi_pre=zf_pre; exc((n-1)*FL+1:n*FL)=e

您可能关注的文档

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档