数字信号处理matlab_第1页
数字信号处理matlab_第2页
数字信号处理matlab_第3页
数字信号处理matlab_第4页
数字信号处理matlab_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《数字信号处理》综合试验设计课程设计的背景语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴学科,是目前开展最为迅速的学科之一,通过语音传递信息是人类最重要,最有效,最常用和最方便的交换信息手段,所以对其的研究更显得尤为重要。Matlab语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换成离散的数据文件,然后用其强大的矩阵运算能力处理数据。这为我们的本次设计提供了强大并且良好的环境。滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR滤波器是滤波器设计的重要组成局部。利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器。本课题要求我们用Matlab软件设计出IIR和FIR数字滤波器,在此根底上,对一段音频信号进行滤波,然后将滤波后的信号同原始信号进行比照,从而加深对所学知识的理解,熟练对Matlab的应用。课程设计目的综合运用数字信号处理的理论知识进行频谱分析和滤波器设计,通过理论推导得出相应结论,再利用MATLAB作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。课程设计的根本要求学会MATLAB的使用,掌握MATLAB的程序设计方法;掌握在Windows环境下语言信号采集的方法;掌握数字信号处理的根本概念、根本理论和根本方法;掌握MATLAB设计FIR和IIR数字滤波器的方法;学会用MATLAB对信号进行分析和处理。4.课程设计内容录制自己的一段语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法和双线性变换法设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的语音信号进行滤波,画出滤波后的时域波形和频谱,并对滤波前后的信号进行比照,分析信号的变化;回放语音信号,最后用MATLAB设计一语音处理系统界面。实验结果Ⅰ.语音信号频谱分析[y,fs,nbits]=wavread('C:\Users\lenovo\Desktop\login.wav');sound(y,fs,nbits);N=length(y);Y=fft(y,N);subplot(2,1,1),plot(y),gridon,xlabel('时间T'),ylabel('音量y'),title('输入的语音信号');subplot(2,1,2),plot(abs(Y)),gridon,xlabel('频率'),ylabel('幅值'),title('输入信号的幅频响应');Ⅱ用双线性变换法设计滤波器设计低通滤波器,fp=1000hz,fc=1200hz,As=100db,Ap=1db.clearfp=1000;fc=1200;As=100;Ap=1;fs=22050;wc=2*fc/fs;wp=2*fp/fs;[n,wn]=ellipord(wp,wc,Ap,As);[b,a]=ellip(n,Ap,As,wn);freqz(b,a,512)高通滤波器性能指标:fc=4800hz,fp=5000hz,As=100db,Ap=1dbclearfp=5000;fc=4800;As=100;Ap=1;fs=22050;wp=2*fp/fs;wc=2*fc/fs;[n,wn]=ellipord(wp,wc,Ap,As,’z’);[b,a]=ellip(n,Ap,As,wn,'high');freqz(b,a,512)带通滤波器性能指标:fp1=1200hz,fp2=3000hz,fc1=1000hz,fc2=3200hz,As=100db,Ap=1dbclearfp1=1200;fp2=3000;fc1=1000;fc2=3200;fs=22050;Ap=1;As=100;fp=[fp1,fp2];fc=[fc1,fc2];wp=2*fp/fs;wc=2*fc/fs;[n,wn]=ellipord(wp,wc,Ap,As,’z’);[b,a]=ellip(n,Ap,As,wn);freqz(b,a,512);用低通滤波器处理信号:[y,fs,nbits]=wavread('C:\Users\lenovo\Desktop\login.wav');sound(y,fs,nbits);N=length(y);Y=fft(y,N);fp=1000;fc=1200;As=100;Ap=1;fs=22050;wc=2*fc/fs;wp=2*fp/fs;[n,wn]=ellipord(wp,wc,Ap,As);[b,a]=ellip(n,Ap,As,wn);y1=filter(b,a,y);subplot(2,1,1);plot(y1);title('滤波后的信号');x=fft(y1,N);subplot(212);plot(abs(x));title('滤波后的频谱');sound(y1,fs,nbits);用高通滤波器处理:[y,fs,nbits]=wavread('C:\Users\lenovo\Desktop\login.wav');sound(y,fs,nbits);N=length(y);Y=fft(y,N);fp=5000;fc=4800;As=100;Ap=1;fs=22050;wp=2*fp/fs;wc=2*fc/fs;[n,wn]=ellipord(wp,wc,Ap,As,’z’);[b,a]=ellip(n,Ap,As,wn,'high');y2=filter(b,a,y);subplot(211);plot(y2);title('滤波后的信号');x=fft(y2,N);subplot(212);plot(abs(x));title('滤波后的频谱');sound(y2,fs,nbits)用带通滤波器处理:[y,fs,nbits]=wavread('C:\Users\lenovo\Desktop\login.wav');sound(y,fs,nbits);N=length(y);Y=fft(y,N)fp1=1200;fp2=3000;fc1=1000;fc2=3200;fs=22050;Ap=1;As=100;fp=[fp1,fp2];fc=[fc1,fc2];wp=2*fp/fs;wc=2*fc/fs;[n,wn]=ellipord(wp,wc,Ap,As,’z’);[b,a]=ellip(n,Ap,As,wn);y3=filter(b,a,y);subplot(211);plot(y3);title('滤波后的信号');x=fft(y3,N);subplot(212);plot(abs(x));title('滤波后的频谱');sound(y3,fs,nbits);Ⅲ用窗函数法实现FIR滤波器:低通滤波器:fp=1000;fc=1200;As=100;Ap=1;fs=22050;wp=2*fp*pi/fs;wc=2*fc*pi/fs;wc1=(wp+wc)/2/pi;wide=wc-wp;B=0.1102*(As-8.7);n=ceil((As-7.95)/(2.286*wide)+1);c=fir1(n-1,wc1,kaiser(n,B));freqz(c);高通滤波器:fp=5000;fc=4800;As=100;Ap=1;fs=22050;wp=2*fp*pi/fs;wc=2*fc*pi/fs;wc1=(wp+wc)/2/pi;wide=wp-wc;B=0.1102*(As-8.7);n=ceil((As-7.95)/(2.286*wide));c=fir1(n-1,wc1,'high',kaiser(n,B));freqz(c);带通滤波器:fp1=1200;fc1=1000;fp2=3000;fc2=3200;As=100;Ap=1;fs=22050;wp1=2*fp1*pi/fs;wp2=2*fp2*pi/fs;wc1=2*fc1*pi/fs;wc2=2*fc2*pi/fs;ws=[(wp1+wc1)/2/pi,(wp2+wc2)/2/pi];wide=wp1-wc1;B=0.1102*(As-8.7);n=ceil((As-7.95)/(2.286*wide)+1);c=fir1(n-1,ws,kaiser(n,B));freqz(c);用低通滤波器滤波:[y,fs,nbits]=wavread('C:\Users\lenovo\Desktop\login.wav');sound(y,fs,nbits);N=length(y);fp=1000;fc=1200;As=100;Ap=1;fs=22050;wp=2*fp*pi/fs;wc=2*fc*pi/fs;wc1=(wp+wc)/2/pi;wide=wc-wp;B=0.1102*(As-8.7);n=ceil((As-7.95)/(2.286*wide)+1);c=fir1(n-1,wc1,kaiser(n,B));x=fftfilt(c,y);x1=fft(x,N);subplot(2,1,1);plot(x);title('滤波后的信号');gridon;subplot(2,1,2);plot(abs(x1));title('滤波后的频谱');gridon;sound(x,fs,nbits)用高通滤波器滤波:[y,fs,nbits]=wavread('C:\Users\lenovo\Desktop\login.wav');sound(y,fs,nbits);N=length(y);fp=5000;fc=4800;As=100;Ap=1;fs=22050;wp=2*fp*pi/fs;wc=2*fc*pi/fs;wc1=(wp+wc)/2/pi;wide=wp-wc;B=0.1102*(As-8.7);n=ceil((As-7.95)/(2.286*wide));c=fir1(n-1,wc1,'high',kaiser(n,B));x=fftfilt(c,y);x1=fft(x,N);subplot(2,1,1);plot(x);title('滤波后的信号');gridon;subplot(2,1,2);plot(abs(x1));title('滤波后的频谱');gridon;sound(x,fs,nbits)用带通滤波器滤波:[y,fs,nbits]=wavread('C:\Users\lenovo\Desktop\login.wav');sound(y,fs,nbits);N=length(y);fp1=1200;fc1=1000;fp2=3000;fc2=3200;As=100;Ap=1;fs=22050;wp1=2*fp1*pi/fs;wp2=2*fp2*pi/fs;wc1=2*fc1*pi/fs;wc2=2*fc2*pi/fs;ws=[(wp1+wc1)/2/pi,(wp2+wc2)/2/pi];wide=wp1-wc1;B=0.1102*(As-8.7);n=ceil((As-7.95)/(2.286*wide)+1);c=fir1(n-1,ws,kaiser(n,B));x=fftfilt(c,y);x1=fft(x,N);subplot(2,1,1);plot(x);title('滤波后的信号');gridon;subplot(2,1,2);plot(abs(x1));title('滤波后的频谱');gridon;sound(x,fs,nbits)7.结果分析。利用低通滤波器滤波,不管是IIR还是FIR滤波器,都可以清楚地听到原来的一段音乐,但是声音较为消沉,不如原来声音洪亮。利用高通滤波器滤波,不管是IIR还是FIR滤波器,都无法听到原来的音乐,只能听到一些沙沙声,这说明原音

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论