没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
20页
1)选择一个语音信号作为分析对象,或录制一段语音信号; 2)对语音信号进行采样,画出采样后语音信号的时域波形和频谱图; 3)利用MATLAB中的随机函数产生噪声加入到语音信号中,使语音信号被污染,然后进行频谱分析; 4)设计FIR和IIR数字滤波器,并对被噪声污染的语音信号进行滤波,画出滤波前后信号的时域波形和频谱,并对滤波前后的信号进行比较,分析信号的变化; 5)回放语音信号。
资源推荐
资源详情
资源评论
目 录
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.课程设计目的
综合运用数字信号处理的理论知识对语音信号进行时频分析和滤波器设计,
通过理论推导得出相应结论,再利用 作为编程工具进行计算机实现,
从而加深对所学知识的理解,建立概念。
2.课程设计基本要求
学会 的使用,掌握 的程序设计方法。
掌握在 环境下语音信号采集的方法。
掌握数字信号处理的基本概念、基本理论和基本方法。
掌握 设计 和 数字滤波器的方法。
学会用 对信号进行分析和处理。
3.课程设计内容
) 选择一个语音信号作为分析对象,或录制一段语音信号;
) 对语音信号进行采样,画出采样后语音信号的时域波形和频谱图;
) 利用 中的随机函数产生噪声加入到语音信号中,使语音信号
被污染,然后进行频谱分析;
) 设计 和 数字滤波器,并对被噪声污染的语音信号进行滤波,画
出滤波前后信号的时域波形和频谱,并对滤波前后的信号进行比较,分
析信号的变化;
) 回放语音信号。
4.课程设计实现
()语音信号的采集
利用机上的声卡和操作系统可以进行数字信号的采集。将
话筒输入计算机的语音输入插口上启动录音机。按下录音按钮接着对话筒说
话“语音信号处理”说完后停止录音屏幕左侧将显示所录声音的长度。点击放音
按钮可以实现所录音的重现。以文件名“ !"保存入#$%%&'
中。可以看到文件存储器的后缀默认为()*这是操作系统规定
的声音文件存的标准。
()语音信号的时频分析
)+,)-软件平台下,利用)*&)函数对语音信号进行采样,记住采样
频率和采样点数
)*&)函数调用格式
./)*&)(0,)1读取 0, 所规定的 )* 文件,返回采样值放在向
量 . 中。
2.3-+4/)*&)50,1采样值放在向量 . 中,3 表示采样频率
(!6), -+ 表示采样位数。
./)*&)(0,,)1读取钱 点的采样值放在向量 . 中。
./)*&)(0,,24)1读取从 到 点的采样值放在向量
. 中。
对语音信号 !()* 进行采样其程序如下:
2.3-+4/)*&57 !781把语音信号进行加载入 )+,)-
仿真软件平台中
3/
9:::
-+/
;
首先画出语音信号的时域波形,然后对语音信号进行频谱分析。在 <)+,)-
中利用 =+ 对信号进行快速傅里叶变换,得到信号的频谱特性。
其程序如下:
2.3-+4/)*&)57 !78
>5.3-+81回放语音信号
/,#+!5.81求出语音信号的长度
?/=+5.81傅里叶变换
>-,+58,+5.8++,57原始信号波形78
>-,+58,+5)-5?8++,57原始信号频谱7
程序结果如下图:
(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('加噪语音信号的频域波形')
程序结果如下图:
剩余19页未读,继续阅读
资源评论
- xiaohechao5212011-10-14非常好的代码,对于我的案例设计很有用。谢谢楼主
- victor9892012-05-15是一个简单的课程设计,代码只对于初学者有用。
- dj1905022012-06-28正在做课设,对于初学者很实用,谢了
free1230
- 粉丝: 2
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功