数字信号处理课程设计基于matlab的语音信号滤波处理.doc

上传人:文库蛋蛋多 文档编号:4143411 上传时间:2023-04-07 格式:DOC 页数:14 大小:237.50KB
返回 下载 相关 举报
数字信号处理课程设计基于matlab的语音信号滤波处理.doc_第1页
第1页 / 共14页
数字信号处理课程设计基于matlab的语音信号滤波处理.doc_第2页
第2页 / 共14页
数字信号处理课程设计基于matlab的语音信号滤波处理.doc_第3页
第3页 / 共14页
数字信号处理课程设计基于matlab的语音信号滤波处理.doc_第4页
第4页 / 共14页
数字信号处理课程设计基于matlab的语音信号滤波处理.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《数字信号处理课程设计基于matlab的语音信号滤波处理.doc》由会员分享,可在线阅读,更多相关《数字信号处理课程设计基于matlab的语音信号滤波处理.doc(14页珍藏版)》请在三一办公上搜索。

1、 数字信号处理课程设计数字信号处理课程设计 题目:题目:基于 matlab 的语音信号滤波处理 学院:学院:专业:专业:班级:班级:学号:学号:姓名:姓名:指导教师:指导教师:摘要 本课程设计旨在熟悉在Windows环境下语音信号采集的方法,掌握数字信号处理的基本概念、基本理论和基本方法,掌握MATLAB设计FIR和IIR数字滤波器的方法并且学会用MATLAB对信号进行分析和处理。课题的制作过程中,首先对语音信号进行采集和频谱分析,然后再分别用低通、高通和带通三种滤波器进行滤波处理,最后回放语音信号。语音信号经过滤波器滤波处理后,杂音有所减少,效果变的更好。目录 实验内容:实验内容:.4 一、

2、语音信号的采集.4 二、语音信号的频谱分析.4 三、用滤波器对语音信号进行滤波.4 四、回放语音信号.4 实验原理:实验原理:.4 一、数字滤波器.4 二、MATLAB.5 实验步骤实验步骤:.6 一、语音信号的采集.6 二、语音信号的频谱分析.6 三、信号经低通滤波器滤波.8 四、信号经高通滤波器滤波.9 五、信号经带通滤波器滤波.12 六、回放语音信号.14 结论:结论:.14 参考文献:参考文献:.14 实验内容:实验内容:1 1、语音信号的采集、语音信号的采集 利用 Windows 下的录音机,录制一段自己的话音,时间在几秒内。然后在 Matlab 软件平台下,利用函数 wavread

3、 对语音信号进行采样,记住采样频率和采样点数。y,fs,bits=wavread();2 2、语音信号的频谱分析、语音信号的频谱分析 首先画出语音信号的时域波形,然后对语音信号进行频谱分析。在 Matlab 中,可以利用函数 fft 对信号进行快速傅里叶变换,得到信号的频谱特性。3 3、用滤波器对语音信号进行滤波、用滤波器对语音信号进行滤波 设计滤波器对采集的信号进行滤波,比较滤波前后语音信号的波形及频谱。要求自己确定滤波器的性能指标,用冲激响应不变法、双线性变换法或窗函数法设计 3 种滤波器:低通、高通和带通滤波器。4 4、回放语音信号、回放语音信号 在 Matlab 中,函数 sound

4、可以对声音进行回放,其调用格式:sound(x,fs,bits);实验原理:实验原理:1 1数字滤波器数字滤波器 数字滤波是数字信号分析中最重要的组成部分之一,与模拟滤波相比,它具有精度和稳定性高、系统函数容易改变、灵活性强、便于大规模集成和可实现多维滤波等优点。在信号的过滤、检测和参数的估计等方面,经典数字滤波器是使用最广泛的一种线性系统。数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。因此,数字滤波器本身既可以是用数字硬件装配成的一台完成给定运算的专用的数字计算机,也可以将所需要的运算编成程序,让通用计算

5、机来执行。从数字滤波器的单位冲击响应来看,可以分为两大类:有限冲击响应(FIR)数字滤波器和无限冲击响应(IIR)数字滤波器。滤波器按功能上分可以分为低通滤波器(LPF)、高通滤波器(HPF)、带通滤波器(BPF)、带阻滤波器(BSF)。在很多实际应用中如语音和音频信号处理中,数字滤波器来实现选频功能。因此,指标的形式应为频域中的幅度和相位响应。在通带中,通常希望具有线性相位响应。在 FIR 滤波器中可以得到精确的线性相位。FIR 滤波器传递函数的极点是固定在原点,是不能动的,它只能靠改变零点位置来改变它的性能,所以要达到高的选择性,必须用高的阶数,对于同样的滤波器设计指标,FIR 滤波器所要

6、求的阶数可能比 IIR 滤波器高 5-10 倍,结果成本高,信号延时也较大,如果按线性相位要求来说,则 IIR 滤波器就必须加全通网络进行相位校正,同样大大增加了滤波器的阶数和复杂性。而 FIR 滤波器却可以得到严格的线性相位。不论是 IIR 滤波器还是 FIR 滤波器的设计都包括三个步骤:(1)按照实际任务的要求,确定滤波器的性能指标。(2)用一个因果、稳定的离散线性时不变系统的系统函数去逼近这一性能指标。根据不同的要求 可以用 IIR 系统函数,也可以用 FIR 系统函数去逼近。(3)利用有限精度算法实现系统函数,包括结构选择、字长选择等。2MATLAB MATLAB 是矩阵实验室(Mat

7、rix Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。MATLAB 的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用 MATLAB 来解算问题要比用 C,FORTRAN 等语言完相同的事情简捷得多,工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充 MATLAB 的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。MATLAB 具有许多的优点比如:语言简洁紧凑,使用方便灵活,库函数极其丰富;

8、MATLAB既具有结构化的控制语句(如 for 循环,while 循环,break 语句和 if 语句),又有面向对象编程的特性;程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行,等等优点。MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。实验步骤:实验步骤:一、语音信号的采集一、语音信号的采集 y,fs,bits=wavread();fs=22050%采样频率 bits=16

9、%采样点数 二、二、语音信号的频谱分析语音信号的频谱分析 实验程序:x1,Fs,bits=wavread(C:WINNTMediading.wav);%sound(y,Fs,bits);figure(1);plot(x1);%做原始语音信号的时域图形 title(原始语音信号);xlabel(时间 n);ylabel(音量 n);figure(2);y1=fft(x1);%做 length(x1)点的 FFT y1=fftshift(y1);%平移,是频率中心为 0 derta_Fs=Fs/length(x1);%设置频谱的间隔,分辨率 plot(-Fs/2:derta_Fs:Fs/2-der

10、ta_Fs,abs(y1);%画出原始语音信号的频谱图 title(原始语音信号的频谱);grid on;三、信号经三、信号经低通滤波器低通滤波器滤波滤波:fs=22050;fc1=1100;wc1=2*pi*fc1/fs;wp1=2*pi*1000/fs;ws1=2*pi*1200/fs;N1=ceil(200*2*pi/ws1-wp1);Window=boxcar(N1+1);%长度为 N1 的矩形窗 Window b1=fir1(N1,wc1/pi,Window);figure(3);freqz(b1,1,512);title(低通滤波器的频率响应);x1_low=filter(b1,1

11、,x1);%对信号进行低通滤波 figure(4);plot(x1_low);title(信号经过低通滤波器(时域);figure(5);plot(-Fs/2:derta_Fs:Fs/2-derta_Fs,abs(fftshift(fft(x1_low);title(信号经过低通滤波器(频域));四、信号经高四、信号经高通滤波器通滤波器滤波滤波:fc2=4900;wc2=2*pi*fc2/fs;wp2=2*pi*4800/fs;ws2=2*pi*5000/fs;N2=ceil(4*pi/(ws2-wp2);Window=boxcar(N2+1);b2=fir1(N2,wc2/pi,Window

12、);figure(6);freqz(b2,1,512);%数字滤波器频率响应 title(高通滤波器的频率响应);x1_high=filter(b2,1,x1);%对信号进行高通滤波 figure(7);plot(x1_high);title(信号经过高通滤波器(时域);figure(8);plot(-Fs/2:derta_Fs:Fs/2-derta_Fs,abs(fftshift(fft(x1_high);title(信号经过高通滤波器(频域));五、信号经带五、信号经带通滤波器通滤波器滤波滤波:f1=1100;f2=3100;%带通滤波器的通带范围 w1=2*pi*f1/fs;%0.156

13、7=0.0499pi w2=2*pi*f2/fs;%0.4417=0.1407pi w=w1,w2;N3=ceil(4*pi/(2*pi*200/fs);b3=fir1(N3,w/pi,high);%带通滤波器 figure(9);freqz(b3,1,512);%数字滤波器频率响应 title(高通滤波器的频率响应);x1_daitong=filter(b3,1,x1);%对信号进行高通滤波 figure(10);plot(x1_daitong);title(信号经过高通滤波器(时域);figure(11);plot(-Fs/2:derta_Fs:Fs/2-derta_Fs,abs(ffts

14、hift(fft(x1_daitong);title(信号经过带通滤波器(频域));六、回放语音信号:六、回放语音信号:在Matlab中,函数sound 可以对声音进行回放,其调用格式:sound(x,fs,bits);sound(x1_low,Fs);sound(x1_high,Fs);sound(x1_daitong,Fs);可以感觉滤波前后的声音变化。结论:结论:通过此次课程设计,让我了解到数字滤波是数字信号分析中最重要的组成部分之一,与模拟滤波相比,它具有精度和稳定性高、系统函数容易改变、灵活性强、便于大规模集成和可实现多维滤波等优点。还了解到MATLAB具有许多的优点比如:语言简洁紧凑,使用方便灵活,库函数极其丰富;MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。参考文献:参考文献:1 黄文梅,熊佳林,杨勇编著.信号分析与处理MATALB 言 及应用.长沙:国防科技大学出版社,2000 2 钱同惠编著.数字信号处理.北京:机械工业出版社,2004 3 姚天任,江太辉编著.数字信号处理.第 2 版.武汉:武汉理工大学出版社,2000

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号