matlab设计噪声信号,MATLAB的有噪声的语音信号分析与处理设计武汉理工大学

41528d3028836879cd698677c3999917.gifMATLAB的有噪声的语音信号分析与处理设计武汉理工大学

目 录 1.课程设计目的………………………………………………………………(4) 2.课程设计基本要求…………………………………………….………….(4) 3.课程设计内容……………………………………………………………(4) 4.课程设计实现……………………………………………………………………(4) (1)语音信号的采集……………………………………………………(4) (2)语音信号的时频分析………………………………………………(5) (3)语音信号加噪与频谱分析…………………………………………(5) (4)设计FIR和IIR数字滤波器………………………………………(8) (5)用滤波器对加噪语音信号进行滤波………………………………. (6)比较滤波前后语音信号的波形及频谱………………… (7)回放语音信号………………………………………. 5、心得体会…………………………………………………………………(11) 6、参考文献…………………………………….……………………………(11) 基于MATLAB的有噪声的语音信号分析与处理设计 1.课程设计目的 综合运用数字信号处理的理论知识对语音信号进行时频分析和滤波器设计,通过理论推导得出相应结论,再利用 MATLAB 作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。 2.课程设计基本要求 1 ) 学会 MATLAB 的使用,掌握 MATLAB 的程序设计方法。 2 ) 掌握在 Windows 环境下语音信号采集的方法。 3 ) 掌握数字信号处理的基本概念、基本理论和基本方法。 4 ) 掌握 MATLAB 设计 FIR 和IIR 数字滤波器的方法。 5 ) 学会用 MATLAB 对信号进行分析和处理。 3.课程设计内容 1) 选择一个语音信号作为分析对象,或录制一段语音信号; 2) 对语音信号进行采样,画出采样后语音信号的时域波形和频谱图; 3) 利用MATLAB中的随机函数产生噪声加入到语音信号中,使语音信号被污染,然后进行频谱分析; 4) 设计FIR和IIR数字滤波器,并对被噪声污染的语音信号进行滤波,画出滤波前后信号的时域波形和频谱,并对滤波前后的信号进行比较,分析信号的变化; 5) 回放语音信号。 4.课程设计实现 (1)语音信号的采集 利用PC 机上的声卡和WINDOWS 操作系统可以进行数字信号的采集。将话筒输入计算机的语音输入插口上,启动录音机。按下录音按钮,接着对话筒说话“语音信号处理”,说完后停止录音,屏幕左侧将显示所录声音的长度。点击放音按钮,可以实现所录音的重现。以文件名“speech”保存入g :\ MATLAB \ work 中。可以看到,文件存储器的后缀默认为. wav ,这是WINDOWS 操作系统规定的声音文件存的标准。 (2)语音信号的时频分析 Matlab软件平台下,利用wavread函数对语音信号进行采样,记住采样频率和采样点数 Wavread 函数调用格式 y=wavread(file)%读取file所规定的wav文件,返回采样值放在向量y中。 [y,fs,nbits]=wavread(file) %采样值放在向量y中,fs表示采样频率(hz),nbits表示采样位数。 y=wavread(file,N)%读取钱N点的采样值放在向量y中。 y=wavread(file,[N1,N2])%读取从N1到N2点的采样值放在向量y中。 对语音信号speech.wav进行采样其程序如下: [y,fs,nbits]=wavered ( speech ); %把语音信号进行加载入Matlab 仿真软件平台中 fs = 8000 nbits = 16 首先画出语音信号的时域波形,然后对语音信号进行频谱分析。在matlab中利用fft对信号进行快速傅里叶变换,得到信号的频谱特性。 其程序如下: [y,fs,nbits]=wavread ( speech ); sound(y,fs,nbits); %回放语音信号 n = length (y) ; %求出语音信号的长度 Y=fft(y,n); %傅里叶变换 subplot(2,1,1);plot(y);title( 原始信号波形 ); subplot(2,1,2);plot(abs(Y));title( 原始信号频谱 ) 程序结果如下图: (3)语音信号加噪与频谱分析 利用MATLAB中的随机函数(rand或randn)产生噪声加入到语音信号中,模仿语音信号被污染,并对其频谱分析。 其程序如下: [y,fs,nbits]=wavread ( speech ); n = length (y) ; %求出语音信号的长度 noise=0.01*randn(n,2); %随机函数产生噪声 s=y+noise; %语音信号加入噪声 sound(s); subplot(2,1,1); plot(s);title( 加噪语音信号的时域波形 ); S=fft(s); %傅里叶变换 subplot(2,1,2); plot(abs(S));title( 加噪语音信号的频域波形 ) 程序结果如下图: (4) 设计FIR和IIR数字滤波器 根据语音信号的特点给出有关滤波器的新能指标: ① 低通滤波器的性能指标 fp=1000Hz,fc=1200Hz,As=100db ,Ap=1dB ② 高通滤波器的性能指标 fp=4800Hz,fc=5000Hz,As=100dB,Ap=1dB; ③ 带通滤波器的性能指标 fp1=1200Hz,fp2=3000hZ,fc1=1000Hz,fc2=3200Hz, As=100dB,Ap=1dB 在Matlab中,可以利用函数fir1设计FIR滤波器,利用函数butter,cheby1和ellip设计IIR滤波器,利用Matlab中的函数freqz画出各步步器的频率响应。 分析如下:函数fir1默认的设计滤波器的方法为窗函数法,其中可选的窗函数有Rectangular Barlrtt Hamming Hann Blackman窗,其相应的都有实现函数。 函数butter,cheby1和ellip设计IIR滤波器时都是默认的双线性变换法,所以在设计滤波器时只需要代入相应的实现函数即可。 IIR低通: Ft=8000; Fp=1000; Fs=1200; wp=2*pi*Fp/Ft; ws=2*pi*Fs/Ft; fp=2*Ft*tan(wp/2); fs=2*Fs*tan(wp/2); [n11,wn11]=buttor

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REaDME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值