基于MATLAB的有噪声的语音信号处理的课程设计.pdfVIP

基于MATLAB的有噪声的语音信号处理的课程设计.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基基于于MATLAB的的有有噪噪声声的的语语⾳⾳信信号号处处理理的的课课程程设设计计 基于MATLAB的有噪声的语⾳信号处理的课程设计 DSP实验课程设计实验报告 姓名:学号:班级: 1.课程设计题⽬: 基于MATLAB的有噪声的语⾳信号处理的课程设计。 2.课程设计的⽬的: 综合 ⽤数字信号处理的理论知识进⾏频谱分析和滤波器设计,通过理论推导得出相应的结论,再利⽤MATLAB做为编程⼯具 进⾏计算机实现,从⽽加深对所学知识的理解,建⽴概念。 3.课程设计的要求: (1)熟悉离散信号和系统的时域特性。 (2)掌握序列快速傅⾥叶变换FFT⽅法。 (3)学会MATLAB的使⽤,掌握MATLAB的程序设计⽅法。 (4)利⽤MATLAB对语⾳信号进⾏频谱分析。 (5)掌握MATLAB设计各种数字滤波器的⽅法和对信号进⾏滤波的⽅法。 4.课程设计的内容: 录制⼀段语⾳信号,对语⾳信号进⾏频谱分 析,利⽤MATLAB中的随机函数产⽣噪声加⼊到语⾳信号中,使语⾳信号被污染,然后进⾏频谱分析,设计FIR和IIR数字滤波 器,并对噪声污染的语⾳信号进⾏滤波,分析滤波后的信号的时域和频域特征,回放语⾳信号。 5.课程设计的步骤: (1)语⾳信号的获取 通过录⾳软件录制⼀段语⾳“数字信号处理”,命名为“OriSound”,时长⼤约1到2秒,在MATLAB 中,通过使⽤wa read函数, 对语⾳进⾏采样: [y,fs,nbits]=wa read(OriSound); %语⾳信号的采集 采样值放在向量y中,采样频率为fs,采样位数为nbits。 (2)语⾳信号的频谱分析 画出语⾳信号的时域波形,然后对语⾳信号进⾏频谱分析,在MATLAB中,通过使⽤fft函数对信号进⾏快速傅⾥叶变换,得到 信号的频谱特性。 因此采集语⾳并绘出波形和频谱的模块程序如下: [y,fs,nbits]=wa read(OriSound); %语⾳信号的采集 sound(y,fs,nbits); %语⾳信号的播放 n=length(y) ; %计算语⾳信号的长度 Y=fft(y,n); %快速傅⾥叶变换 figure; subplot(2,1,1); %绘出时域波形 plot(y); title(原始信号波形,fontweight,bold); axis([ 00000 80000 -1 1]); %通过尝试确定合适的坐标参数 grid ; subplot(2,1,2); %绘出频域频谱 plot(abs(Y)); title(原始信号频谱,fontweight,bold); axis([ 0 150000 0 4000]); %通过尝试确定合适的坐标参数 grid ; 结果如下: 可以看到,语⾳信号的频率集中在低频部分。 (3)产⽣噪声信号 在MATLAB中,通过使⽤randn函数产⽣随机 噪声信号,并加到语⾳信号中得到被污染的语⾳信号,回放语⾳信号。 产⽣随机噪声: Noise=0.2*randn(n,1); 其中⽤0.2倍乘噪声⽤来适当削减噪声的作⽤,便于对语⾳信号进⾏处理并⽐较效果。 (4)污染信号频谱分析 对被污染的加噪信号进⾏时域和频域分析。 加噪声并分析信号波形频谱的模块程序及说明如下: [y,fs,nbits]=wa read(OriSound.wa ); %语⾳信号采集 sound(y,fs,nbits); %回放语⾳信号便于⽐较效果 n = length (y) ; %计算语⾳信号长度 Noise=0.2*randn(n,1); %产 ⽣随机噪声信号Noise s=y+Noise; %将Noise添加到原始信号,得到污 染信号s sound(s); %回放污染信号s figure; subplot(2,1,1); %绘制加噪信号时域波形 plot(s); title(加噪语⾳信号的时域波形,fontweight,bold); axis([ 00000 80000 -1 1]); grid ; S=fft(s); %对s进⾏快速傅⾥叶变换得到频谱 subplot(2,1,2); %绘制加噪信号频域频谱 plot(abs(S)); title(加噪语⾳信号的时域波形,fontweight,bold); axis([ 0 150000 0 4000]); grid ; 结果如下: 可以看到,随机噪声均匀的分布在整个频谱范围内。 (5)设计FIR和IIR数字滤波器 在MATLAB中,根据频谱特征设计FIR和IIR滤波器。在Matlab中,可以利⽤函数fir1设计FIR滤波器,利⽤函

文档评论(0)

180****2140 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档