ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:675.11KB ,
资源ID:12817667      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12817667.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(信号的采集与处理.docx)为本站会员(b****0)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

信号的采集与处理.docx

1、信号的采集与处理 MATLAB与信息处理课程设计 课设题目:语音信号采集与处理 学院:电气学院 班级:电科1202 姓名:沈丹婷 学号:3120504033 指导老师:许波 2014年7月4日基于MATLAB的语音信号的采集与处理 电科1202 沈丹婷 3120504033一引言随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字信号处理在通信语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理应用中,数字滤波器十分重要并已获得广泛应用。二MATLAB工具简介1MATLAB是矩阵实验室(MatrixLaborato

2、ry)之意,现已发展成为适合多学科,多种工作平台的功能强大的大型软件,已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;2MATLAB的语言特点(1)语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。(2)运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。 (3)MATLAB既具有结构化的控制语

3、句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。 (4)程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。 (5)程序的可移植性很好,基本上不做修改就可在各种型号的计算机和操作系统上运行。 (6)MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。 (7)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。 (8)

4、功能强大的工具箱是MATLAB的另一特色。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的。(9)源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。 三、内容要求1.语音信号的采集及频谱分析要求利用Windows下的录音

5、机,录制一段自己的话音,时间在5s内,存为*.WAV的文件。然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。(五位同学、简单音乐、和弦音乐) 要求首先画出语音信号的时域波形;然后对语音号进行快速傅里叶变换,得到信号的频谱特性,分析基频。(1)采集信号代码:x,fs,Nbits =wavread(E:shendanting沈丹婷SDT) x,fs,Nbits =wavread(E:shendanting沈丹婷JDYY) ; x,fs,Nbits =wavread(E:shendanting沈丹婷HX) ;采样频率和采样点数均为(2)频谱分析代码:f

6、s=22050;x,fs,Nbits =wavread(E:shendanting沈丹婷SDT) ;t=0:1/22050:(length(x)-1)/22050;sound(x,fs) ; %对加载的语音信号进行回放figure(1)plot(t/2,x) %做原始语音信号的时域图形title(原始语音信号);xlabel(time n);ylabel(fuzhi n);figure(2)freqz(x) %绘制原始语音信号的频率响应图title(频率响应图)n=length(x); %求出语音信号的长度y1=fft(x,n) ; %傅里叶变换y2=fftshift(y1); %对频谱图进行

7、平移f=0:fs/n:fs*(n-1)/n; %得出频点figure(3) subplot(2,1,1);plot(abs(y2) %做原始语音信号的FFT频谱图title(原始语音信号FFT频谱)subplot(2,1,2);plot(f,abs(y2); %绘制原始语音信号的频谱图简单音乐及和弦的频谱分析如下: (简单音乐)2.理解傅里叶变换的性质(1)回放sound(x,fs);(2)快慢放 w=0.5;M=w*fs;sound(x,M);w=2;M=w*fs; (M1快放,M1慢放)sound(x,M); 3.信号的调制解调代码如下:clear;dt=1/44100; fs=44100

8、; f1,fs,nbits=wavread(E:shendanting沈丹婷HX); figure(1); subplot(3,2,1); N=length(f1); t=0:1/fs:(N-1)/fs;plot(t,f1);title(信息信号的时域波形);fy1=fft(f1);w1=0:fs/(N-1):fs;figure(2);subplot(3,2,2); plot(w1,abs(fy1);title(信息信号的频谱); f2=cos(22000*pi*t);figure(3);subplot(3,2,3); fy2 = fft(f2);N2=length(f2);w2=fs/N*0

9、:N-1;plot(w2,abs(abs(fy2); f1=f1(:,1);f3=f1.*f2;figure(4);subplot(3,2,4); fy3 = fft(f3);plot(w1,abs(abs(fy3); title(已调信号的频谱);sound(f3,fs,nbits);f4=f3.*f2;figure(5);subplot(3,2,5);fy4=fft(f4);plot(w1,abs(abs(fy4);sound(f4,fs,nbits);fp1=0; fs1=5000; As1=100;wp1=2*pi*fp1/fs; ws1=2*pi*fs1/fs; BF1=ws1-wp

10、1;wc1=(wp1+ws1)/2;M1=ceil(As1-7.95)/(2.286*BF1)+1;N1=M1+1;beta1=0.1102*(As1-8.7); Window=(kaiser(N1,beta1); b1=fir1(M1,wc1/pi,Window);figure(6);freqz(b1,1,512); title(FIR低通滤波器的频率响应); f4_low = filter(b1,1, f4);plot(t,f4_low);sound(f4_low,fs,nbits); f5=fft(f4_low);figure(7);plot(w1,abs(f5);4、低通滤波代码如下:

11、x1,Fs,bits=wavread(E:shendanting沈丹婷HX); derta_Fs = Fs/length(x1);%设置频谱的间隔,分辨率 ,这里保证了x轴的点数必须和y轴点数一致fs=Fs; fp1=1000; fs1=1200; As1=100;wp1=2*pi*fp1/fs; %ws1=2*pi*fs1/fs; %BF1=ws1-wp1;wc1=(wp1+ws1)/2;M1=ceil(As1-7.95)/(2.286*BF1)+1;%按凯泽窗计算滤波器阶数N1=M1+1;beta1=0.1102*(As1-8.7); Window=(kaiser(N1,beta1); %

12、求凯泽窗窗函数b1=fir1(M1,wc1/pi,Window);% wc1/pi为归一化,窗函数法设计函数figure(2); freqz(b1,1,512); %H,w=freqz(B,A,N),(1)中B和A分别为离散系统的系统函数分子、分母多项式的系数向量,返回量H则包含了离散系统频响在 0pi范围内N个频率等分点的值(其中N为正整数),w则包含了范围内N个频率等分点。调用默认的N时,其值是512。title(FIR低通滤波器的频率响应); x1_low = filter(b1,1, x1);%对信号进行低通滤波 ,Y = filter(B,A,X) ,输入X为滤波前序列,Y为滤波结果

13、序列,B/A 提供滤波器系数,B为分子, A为分母 sound(x1_low,Fs,bits); figure(3);subplot(2,1,1);plot(x1_low);title(信号经过FIR低通滤波器(时域); subplot(2,1,2);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(fftshift(fft(x1_low); title(信号经过FIR低通滤波器(频域));5.提高部分(1)声音信号的放大和衰减放大:y,fs=wavread(E:shendanting沈丹婷HX); sound(2*y,fs);缩小:y,fs=wavread(E:s

14、hendanting沈丹婷HX); sound(0.5*y,fs);(2)倒放y,fs=wavread(E:shendanting沈丹婷HX);wavplay(flipud(y),fs,sync);(3)混音%#下面是将两个音频叠加在一块close allclear ally,fs=wavread( G:jsdx jsdx);%打开音频文件(格式为wav的音频文件),所得y为采样数据,fs为采样率time=(1:length(y)/fs; % 时间轴的向量【(length(y)/fs即为音频文件播放的时间长度】subplot(3,1,1);plot(time, y); % 画出时间轴上的波形t

15、itle( 郭振宇的声音);%sound(y,fs)y6,fs6=wavread( G:jsdx cui);%打开音频文件(格式为wav的音频文件),所得y为采样数据,fs为采样率time6=(1:length(y6)/fs6; % 时间轴的向量【(length(y)/fs即为音频文件播放的时间长度】subplot(3,1,2);plot(time6, y6); % 画出时间轴上的波形title( 崔舒扬的声音);%sound(y6,fs6)%下面将两个音频叠加在一块m,n=size(y);%查看y的大小,【此处y是m行,n列的数据】m6,n6=size(y6);%查看y6的大小,【此处y6是

16、m6行,n6列的数据】z=zeros(max(m,m6)-min(m,m6),n);%生成0矩阵,用于加在时间较短的那么音频的后面if length(y)length(y6); y1=y;z; y8=y1+y6; sound(y8,fs)else y1=y6;z; y8=y1+y; sound(y8,fs)end;%wavwrite(y8,fs,111);%保存合成的音频信号,文件夹在matlab-bin(4)回声x,fs,bits=wavread(G:jsdxjsdx,1 40000);%读取语音信号n1=0:2000;b=x(:,1);%产生单声道信号N=3;yy2=filter(1,1,

17、zeros(1,80000/(N+1),0.7,b,zeros(1,40000);%IIR滤波器进行滤波figure(3)subplot(2,1,1);plot(yy2); %三次回声滤波器时域波形title(三次回声滤波器时域波形);YY2=fft(yy2); %对三次回声信号做FFT变换subplot(2,1,2);plot(n1(1:1000),YY2(1:1000); %三次回声滤波器频谱图title(三次回声滤波器频谱图?);figure(4)subplot(2,1,1);plot(abs(YY2);%经傅里叶变换之后的信号的幅值?title(幅值);subplot(2,1,2);p

18、lot(angle(YY2);%经傅里叶变换之后的信号的相位?title(相位);sound(2*yy2,fs,bits);%经三次回声滤波器后的语音信号,乘以5是为了加强信号(5)页面设计心得体会 我们之前并没有接触过这门课程,可能是教学安排上有些小瑕疵,一开始会觉得根本无从下手,没有一点思路,甚至第一天连如何运用这个软件都不知道,但之后的学习过程中,老师也放低了要求,我们也就没有了那么多压力。XX,请教老师,小组成员互相讨论,一点一滴的慢慢积累,深深地感受到了这款软件的强大威力。在电视里,特别是动画片中,唐老鸭的声音,或者其他尖锐,低沉的声音,原来都是可以用MATLAB制作出来的,改变频率

19、,幅值,一个小小的变化都会产生极大的效果。当听见自己的声音就跟用复读机快放一样的时候,心里还是很得意的,短短的几句代码,竟然有如此大的威力,真的得感叹一句科技真伟大。最有意思的并不是基础部分的程序设计,反而是后面的提高部分,回声,混音,增强,衰减,特别是最后还有个页面设计,我们组的小伙伴特别给力,做出来的效果特别逗,很有喜感。可惜,男女变声还来不及修改完成,不过如果时间还能充裕一点,我们有信心能把它搞定! 再说说我这次主要完成的版块吧。我负责的是信号采集和频谱的分析,参与了调制解调,快慢放以及声音信号的放大和衰减。说实话,一开始当组长交代任务,根本无从下手,只能XXXX,信号的采集和频谱分析网

20、上版本各种各样,最初我们借鉴的那个版本有噪声方面的处理,而且维数也不对,最后我们一起讨论,删减,才得到了最后的终极版。快慢放还有放大和衰减就相对比较简单,都是短短几句话,通过改变频率,幅值,就可以实现。我们发现,改变频率会达到快慢放,同时声音也会变尖锐,一开始误以为这就是男女声转换呢。总之,过程远远比结果精彩,自己从啥也不会,到现在能对MATLAB有所了解,这都是非常令人高兴的事MATLAB不在于学习本身,在于你对实际问题的理解分析能力和建模能力。 MATLAB作为一种数学工具,广泛用于各个工程领域。工程技术人员通过MATLAB提供的工具箱和丰富的调用函数,可以完成复杂工程问题的数值求解.并能够将计算结果形象直观地显示出来。随着应用研究不的不断深入,MATLAB也处在不断发展和完善的过程中。学习MATLAB可以完全很多实际性的工作,比如说画二维,三维图。MALAB具有强大的数值计算功能,而MALTAB中带的系统仿真成为大型科研中最得力的助手。 本次课程设计要求我们学会运用MATLAB的信号处理功能,采集语音信号,并对语音信号进行滤波及变换处理,观察其时域和频域特性,加深对信号处理理论的理解,并为今后熟悉,时间虽短,受益颇深。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1