




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、指导教师评定成绩: 南 昌 航 空 大 学科 技 学 院数字信号处理B课程设计报告 题目: 语音采集和处理 学 生 姓 名: 王定雪 专 业: 自动化 班 级: 108202225 学 号: 25 设计时间:2013 年1 月目 录一 实践的目的和要求 3 1.课程设计基本要求 3 2.课程设计实现. 3 二. 设计原理 3 1、采样定理 3 2、采样频率 4 3、采样位数与采样频率 4 4、利用MATLAB对语音信号进行分析和处理 4 5、语音信号的滤波示意图 4三. 设计步骤 5 1、语音信号的采集与分析 5 2、利用余弦函数构造一个高频噪声 5 3、设计合适的滤波器,滤除高频噪声 6四程
2、序设计和仿真图形 6 4.1 语音信号原程序频谱分析 64.2 语音信号加噪与频谱分析 7 4.3 双线性变换法设计低通滤波器对噪音滤波 94.4 双线性变换法设计带通滤波器对噪音滤波 11五. 心得体会 13参考文献 13课题:语音信号采集与处理一、实践的目的和要求1.课程设计基本要求 学会MATLAB的使用,掌握MATLAB的程序设计方法; 掌握在Windows环境下语音信号采集的方法; 掌握数字信号处理的基本概念、基本理论和基本方法; 掌握MATLAB设计FIR和IIR数字滤波器的方法; 学会用MATLAB对信号进行分析和处理。 2.课程设计实现 (1)语音信号的采集 利用windows
3、下的录音机或其他软件,录制一段自己的话音,时间控制在1秒左右。然后在MATLAB软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。通过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点
4、的采样值放在向量y中。 二、设计原理: 1、采样定理: 在进行模拟与数字信号的转换过程中,当采样大于最高频率的2倍时,则采样之后的数字信号完整的保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的510倍。2、采样频率: 采样频率是指计算机每秒钟采样多少个声音样本,是描述声音文件的音质、音频、衡量声卡、声音文件的质量标准。采样频率越高,即采样的时间间隔越短,则在单位时间内计算机得到的声音样本数据越多,对声音波形的表示也越准确。 3、采样位数与采样频率: 采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。采样频率是指
5、录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。采样位数和采样率对于音频接口来说是最为重要的两个指标。无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。采样位数越多则捕捉到的信号越精确。4、利用MATLAB对语音信号进行分析和处理:采集语音信号后,利用MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。 5、语音信号的滤波示意图: +滤波器Matlab频谱显示语音信号噪声扬声器三设计步骤1、语音信号的采集与分析(1)利用 PC机上的声卡和 WINDOWS操作系统可
6、以进行数字信号的采集。将话筒插入计算机的语音输入插口上,启动录音机。按下录音按钮,对话筒说话“我想回家”,说完后停止录音,屏幕左侧将显示所录声音的长度。(2)以文件名 “2” 保存入C盘中。可以看到 ,文件存储器的后缀默认为.wav。要保存文件时,利用了计算机上的A/D转换器,把模拟的声音信号变成了离散的量化了的数字信号,放音时,它又通过D/A转换器,把保存的数字数据恢复为原来的模拟的声音信号。(3)在 Matlab软件平台下可以利用函数wavread对语音信号进行采样,得到了声音数据变量x1,x1=wavread('C:22.wav');同时把x1的采样频率fs=22050H
7、z和数据位Nbits=16Bit放进了MATALB的工作空间。图figure 1为原始语音信号的时域图形。(4)从图中可以看出在时域环境下,信号呈现出4个不规则的信号峰值。通过freqz(x1)函数绘制原始语音信号的频率响应图figure 2 。(5)然后对语音信号进行频谱分析,在Matlab中可以利用函数y1=fft(x1,1024); plot(abs(y1(1:512)对信号行快速傅里叶变换,得到信号的频谱图figure 3,从图中可以看出对各个频点上的随机信号在频域进行抽样 ,抽样频率为 22050Hz。2、利用余弦函数构造一个高频噪声1. 在Matlab中人为设计一固定频率5000H
8、z的噪声干扰信号。噪声信号通常为随机序列,在本设计中用余弦序列代替。干扰信号构建命令函数为d=Au*cos(2*pi*5000*t)';x1=wavread('C:22.wav');x2=x1+d;2. 给出的干扰信号为一个余弦信号,针对上面的语音信号,采集了其中一段。再对噪音信号进行频谱变换得到其频谱图, y2=fft(x2,1024);从图中可以看出干扰信号,在4000Hz和 6000Hz频点处有一高峰 ,其中 5000Hz 正是本设计所要利用的。若带噪信号y(m)是纯净语音信号s(m)和平稳加性高斯白噪声n(m)构成的,即:y(m) =x(m) +n(m);则在频
9、域中表示为Y()=X()+N();其中Y(),X(),N()分别是y(m),x(m),n(m)的傅里叶变换。X()=Y()-N();只要从带噪信号中减去噪声信号即可估计出语音信号,再进行傅里叶反变换就可得到增强的语音。3、设计合适的滤波器,滤除高频噪声由模拟滤波器变换为数字滤波器时,采用的是双线性变换法,它保留的是从模拟到数字域的系统函数表示。用双线性变换法设计低通滤波器。在MATLAB 中,可以利用函数 butterworth设计低通滤波器。数字巴特沃兹低通滤波器函数:functionb,a=digital_lowpass_butter(wp,ws,Rp,As,Fs)N,wn=buttord
10、(wp/pi,ws/pi,Rp,As)b,a=butter(N,wn); 时域低通滤波:x=wavread(2.wav);x为读取原语音文件的数据,一维数组 h=ones(1,220); h为低通滤波器的单位冲激响应 y=conv(x,h); 时域卷积,低通滤波 wavwrite(y,22050,su2.wav);将滤波后的数据保存为.wav文件用 MATLAB 中的函数freqz 画出各滤波器的频率响应。用设计好的带阻滤波器对含噪语音信号进行滤波,在Matlab中IIR滤波器利用函数filter对信号进行滤波。在一个窗口同时画出滤波前后的波形及频谱。从图中可以看出,5000Hz看到的高峰消失
11、了,语音信号与开始的一样,滤波器成功的滤除了干扰信号。利用MATLAB对语音信号进行分析和处理,采集语音信号后,利用MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。四、程序设计及仿真图形4.1、用Matlab对原始语音信号进行分析,画出它的时域波形和频谱程序:clear;y,fs,bits=wavread('C:22.wav'); %x语音数据fs采样频率bits采样点数 sound(y,fs,bits); %话音回放n = length (y) ; %求出语音信号的长度Y=fft(y,n)
12、; %傅里叶变换subplot(2,1,1);plot(y);title('原始信号波形'); subplot(2,1,2); plot(abs(Y);title('原始信号频谱')4.2、 给原始的语音信号加上一个高频余弦噪声,频率为(22050hz)。对加噪后的语音进行分析,并画出其信号时域和频谱图。程序:%加噪声fs=22050;x=wavread('C:22.wav');f=fs*(0:511)/1024;Au=0.03;t=0:1/22050:(length(x)-1)/22050;d=Au*cos(2*pi*5000*t);x2=x+
13、d' d' y2=fft(x2,1024);figure(1);plot(t,x2)title('加噪后的信号');xlabel('time n');ylabel('fuzhi n');figure(2)subplot(2,1,1);plot(f,abs(y2(1:512); %plot(f,abs(y1(1:512); title('原始语音信号频谱');xlabel('Hz');ylabel('fuzhi');subplot(2,1,2);plot(f,abs(y2(1:512)
14、;title('加噪后的信号频谱');xlabel('Hz');ylabel('fuzhi'); 4.3、 设计合适的滤波器,滤除高频噪声,绘出滤波后的信号频域和时域波形:程序:%用双线性变换法设计巴特沃思低通滤波器双线性变换法低通滤波器fp=1000;fc=1200;As=100;Ap=1;ffs=22050; wc=2*fc/ffs;wp=2*fp/ffs; n,wn=ellipord(wp,wc,Ap,As);%求阶数N 和通带截止频率 num,den=ellip(n,Ap,As,wn);%设计椭圆滤波器 freqz(num,den,256
15、,ffs);%画出频率响应对噪音进行滤波:x=filter(num,den,y);%滤波 X=fft(x,4096);%FFT subplot(211),plot(x); title('滤波后信号波形'); subplot(212),plot(abs(X); title('滤波后信号频谱');滤波后图形:4.4、双线性变换法的带通滤波器和对噪音滤波fp=3000,8000;fc=1000,10000;Ap=1;As=100;ffs=22050 wc=2*fc/ffs;wp=2*fp/ffs; n,wn=ellipord(wp,wc,Ap,As); num,den
16、=ellip(n,Ap,As,wn); freqz(num,den,256,ffs);进行滤波:x=filter(num,den,y);%滤波 X=fft(x,4096);%FFT subplot(211),plot(x); title('滤波后信号波形'); subplot(212),plot(abs(X); title('滤波后信号频谱');滤波后五、 心得体会:通过这一个星期的课程设计,我学到了很多的东西,不仅巩固了我以前所学过的知识, 还让我学到很多在书本上所没有学到过的知识。同时进一步加深了对语音信号的了解和熟练了对Matlab的使用, 让我对通信原理
17、这门课程有了更加浓厚的兴趣。 因为以前都是基于课本上所学的理论知识,然而通过这次课程设计之后才能真正理解其意义。在这次课程设计的过程中,我遇到不少的问题,比如刚开始,要录音的时候,没有选择正确的频率,导致在运行程序的时候,无法调用声音,经过后来的改正才可以。还有刚开始由于对滤波器的滤波原理并不是很了解, 于是我又翻出学过的数字信号处理课本,认真研究起各种滤波器,这才使我明白了大多数滤波器是如何工作,不再单单只是懂理论,理论与实际相结合是很重要的, 只有理论知识是远远不够的, 只有把所学的理论知识与实践相结合起来,从理论中得出结论。总的来说,通过这次的课程设计我对语音信号有了全面的认识,对Matlab的知识又有了深刻的理解, 让我感受到只有在充分理解课本 知识的前提下,才能更好的应用这个工具。这次课程设计使我了解了MATLAB的使用方法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 出生日期及任职年限证明(7篇)
- 电商领域运营团队成员薪资证明(5篇)
- 品牌推广与宣传协议条款内容
- 农村产业发展联合合同书
- 行政管理中的危机沟通策略分析与试题及答案
- 行政管理课程热点问题试题及答案
- 2025自动化仓库安装合同范本
- 自考行政管理的考试重点与难点分析试题及答案
- 2025劳动合同签订告知书模板
- 现代管理学在实践中的应用案例及试题及答案
- 2025年中级会计师考试试卷及答案
- 2025年入团考试知识点概述与试题及答案
- 2025届高三下学期5月青桐鸣大联考 英语试卷+答案
- 2025年铸造工(技师)职业技能鉴定理论考试题库(含答案)
- 演出服装定制合同协议
- 计划生育选择试题及答案
- 法律文化-形考作业3-国开(ZJ)-参考资料
- 分子生物学基本概念的考核试题及答案
- 2025-2030中国钛酸锂行业竞争分析及发展前景研究报告
- 家校共育“心”模式:青少年心理健康教育家长会
- 2025届东北三省四市高三第二次联考英语试卷含答案
评论
0/150
提交评论