数字信号处理课程设计数字滤波器设计及在语音信号.docx
- 文档编号:9376164
- 上传时间:2023-05-18
- 格式:DOCX
- 页数:18
- 大小:112.07KB
数字信号处理课程设计数字滤波器设计及在语音信号.docx
《数字信号处理课程设计数字滤波器设计及在语音信号.docx》由会员分享,可在线阅读,更多相关《数字信号处理课程设计数字滤波器设计及在语音信号.docx(18页珍藏版)》请在冰点文库上搜索。
数字信号处理课程设计数字滤波器设计及在语音信号
课程设计报告
课程名称数字信号处理课程设计
课题名称数字滤波器设计及在语音信号
分析中的应用
专业通信工程
班级
学号
姓名
指导教师彭祯谭小兰
2012年9月10日
湖南工程学院
课程设计任务书
课程名称数字信号处理课程设计
课题名称数字滤波器设计及在语音信号
分析中的应用
专业通信工程
班级
学号
姓名
指导教师彭祯谭小兰
审批
任务书下达日期2012年9月1日
任务完成日期2012年9月10日
《数字信号处理》课程设计指导
一、课程设计的性质与目的
《数字信号处理》课程是通信专业的一门重要专业基础课,是信息的数字化处理、存储和应用的基础。
通过该课程的课程设计实践,使学生对信号与信息的采集、处理、传输、显示、存储、分析和应用等有一个系统的掌握和理解;巩固和运用在《数字信号处理》课程中所学的理论知识和实验技能,掌握数字信号处理的基础理论和处理方法,提高分析和解决信号与信息处理相关问题的能力,为以后的工作和学习打下基础。
数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。
根据其单位冲激响应函数的时域特性可分为两类:
无限冲激响应(IIR)滤波器和有限冲激响应(FIR)滤波器。
二、课程设计题目
课程设计题目分为2个方向,每班选做方向一的同学约占2/3,选做方向二的约占1/3。
(填写你自己所选课题的内容,如你在所选的是第二个方向,其内容如下:
)
方向一:
数字滤波器设计及在语音信号分析中的应用。
方向二:
数字滤波器设计及在心电信号滤波中的应用。
步骤:
1、心电信号采集
心电信号作为心脏电活动在人体体表的表现,信号一般比较微弱,幅度在10μV~5mV,频率为0.05~100Hz。
在心电信号的采集、放大、检测及记录过程中,有来自外界的各种干扰。
记录一段时间内的人体心电信号波形,要求长度不小于10秒,并对记录的信号进行数字化,保存为数据文件;这里,请同学们使用美国的MIT/BIH心电原始数据,由实验老师给出一定长度的的心电原始数据,数据保存在文件“a01.txt~a10.txt”中,在MATLAB中通过如下语句读取:
%从当前路径下的a01.txt文件读取心电原始数据到变量a01中,a01为二维数据,第一列%为心电信号时间,第二列为心电信号幅度。
2、心电信号分析
使用MATLAB绘出数字化后的心电信号的时域波形和频谱图。
根据频谱图求出其带宽,并说明心电信号的基本特征。
3、含噪心电信号合成
在MATLAB软件平台下,给原始的心电信号叠加上噪声或干扰,干扰类型分为如下几种:
(1)白噪声;
(2)工频干扰(50Hz);(3)谐波干扰(二次、三次谐波为主,分别为100Hz、150Hz);(4)其它干扰,可设置为低频、高频、带限噪声,或冲激干扰。
绘出叠加噪声后的心电信号时域和频谱图,在视觉上与原始心电信号图形对比,绘出其时域波形差,分析频域基本特征变化。
4、数字滤波器设计及滤波,完成以下题目中的一个
给定滤波器的规一化性能指标(参考指标,实际中依据每个同学所叠加噪声情况而定)例如:
通带截止频率wp=0.25*pi,阻通带截止频率ws=0.3*pi;通带最大衰减Rp=1dB;阻带最小衰减Rs=15dB,每个题目至少设计出5个用不同方法的不同类型滤波器。
题目
(1):
采用窗函数法与等波纹法分别设计各型FIR滤波器(低通、高通、带通、带阻中的至少3种类型)来对叠加干扰前后的心电信号进行滤波处理,绘出滤波器的频域响应,绘出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;在相同的性能指标下比较各方法的滤波效果,并从理论上进行分析(或解释)。
题目
(2):
采用双线性变换法与脉冲响应不变法,分别利用不同的原型低通滤波器(Butterworth型与切比雪夫I型)来设计各型IIR滤波器(低通、高通、带通、带阻中的至少3种类型),绘出滤波器的频域响应;并用这些数字滤波器对含噪心电信号分别进行滤波处理,比较不同方法下设计出来的数字滤波器的滤波效果,并从理论上进行分析(或解释)。
5、心电信号波形观察、频谱观察
对滤波后的心电信号观察其时域、频域特征变化。
绘出滤波后、滤波前、加噪后三个心电信号的差值波形,观察相互间的差异性;同时,分析频谱变化。
学生也可选用持续时间更长的心电原始数据,加上干扰后按上述要求设计滤波器。
三、课程设计要求
1、在一周内学生须上机16小时以上,程序调试完后,须由指导老师在机器上检查运行结果,经教师认可后的源程序可通过打印机输出,并请教师在程序清单上签字。
2、课程设计报告内容和格式:
设计题目,设计的详细步骤,设计过程中的结果、图形等,设计总结。
3、每组每人必须独立完成,成绩的考核按设计结果、答辩成绩及课程设计报告来综合评定。
成绩分为优、良、中、及格、不及格五级分评定。
4、指导教师:
彭祯,谭小兰。
四、设计进度安排
通信工程1081:
1周周一下午,E-412,任务讲解与布置,学生分组选题,查找相关资料,准备课程设计,学生上机,按任务要求进行课程设计;分组选题;
1周周二下午,E-412,学生上机,按任务要求进行课程设计;分组选题;
1周周三下午,E-412,学生上机,按任务要求进行课程设计;分组选题;
1周周四下午,E-412,学生任务完成,答辩并提交课程设计报告。
附:
课程设计报告装订顺序:
封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。
正文的格式:
一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。
正文的内容:
一、课题的主要功能;二、课题的功能模块的划分;三、主要功能的实现;四、程序调试;五、总结;六、附件(所有程序的原代码,要求对程序写出必要的注释);七、评分表。
5源代码8
1课程设计的目的
《数字信号处理》课程是通信专业的一门重要专业基础课,是信息的数字化处理、存储和应用的基础。
通过该课程的课程设计实践,使学生对信号与信息的采集、处理、传输、显示、存储、分析和应用等有一个系统的掌握和理解;巩固和运用在《数字信号处理》课程中所学的理论知识和实验技能,掌握数字信号处理的基础理论和处理方法,提高分析和解决信号与信息处理相关问题的能力,为以后的工作和学习打下基础。
数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。
根据其单位冲激响应函数的时域特性可分为两类:
无限冲激响应(IIR)滤波器和有限冲激响应(FIR)滤波器。
2课程设计的原理
2.1滤波器概念
滤波器是一种可通过或阻止某种信号频率的电路。
数字滤波器,事指输入、输出均为数字信号,通过一定运算关系改变输入信号所包含频率成分的相对比例或者滤除某种频率成分的器件。
根据滤波器的功能分类,滤波器可以分成四类:
低通、高通、带通和带阻滤波器.
数字和模拟滤波器一样。
低通滤波器,只允许0~f2的频率成分通过,而大于f2的频率成分衰减为零;高通滤波器与低通滤波器相反,它只允许f1~∞的频率成分通过,而f 2.2IIR滤波器的设计原理 IIR滤波器设计首先要得到它的系数。 我们可以用MATLAB来辅助设计得到。 这里用巴特沃斯方法来实现。 主要应用函数为butter函数功能: 用于设计巴特沃斯(Butterworth)滤波器。 语法: [b,a]=butter(n,Wn);[b,a]=butter(n,Wn,‘ftype’);说明: butter函数可以设计低通,带通,高通和带阻数字滤波器,其特性可使通带内的幅度响应最大限度地平坦,但会损失截止频率处的下降斜度,使幅度相应衰减较慢。 [b,a]=butter(n,Wn)可以设计截止频率为Wn的n阶低通Butterworth滤波器,其中截止频率Wn应满足0<=Wn<=1,Wn=1相当于0.5fs(采样频率)。 使用butter函数设计滤波器,可以使通带内的幅度响应最大限度地平坦,但会损失截止频率处的下降斜度,因此,butter函数主要用于设计通带平坦的数字滤波器 3课程设计设计步骤及结果分析 3.1语音信号采集和分析 [x1,fs,bits]=wavread('d: /yb.wav'); sound(x1,fs,bits); y1=fft(x1,32768); figure (1) subplot(2,1,1) plot(x1); title('原始语音信号时域波形'); axis([0230000-11]) subplot(2,1,2) plot(abs(y1)); title('原始语音信号频谱') axis([03276801500]) [x1,fs,bits]=wavread('d: /yb.wav'); y1=fft(x1,32768); x2=awgn(x1,10); %sound(x2,fs,bits) y2=fft(x2,32768); f=0: fs/32768: fs/32768*32767 figure (2) subplot(3,2,1) plot(x2); 3.2噪音信号的合成 title('加单频正弦信号的语音信号时域波形') axis([0230000-22]) y3=fft(x3,32768); subplot(3,2,4) plot(f,abs(y3)); xlabel('频率(Hz)');ylabel('幅度(dB)'); title('加单频正弦信号的语音信号频谱') axis([02300001500]) N=length(x1)-1; t=0: 1/fs: N/fs; a=[0.09*sin(2*pi*2000*t)]'; b=[0.09*sin(2*pi*3000*t)]'; c=[0.09*sin(2*pi*3500*t)]'; x4=x1+a+b+c; %sound(x4,fs,bits) y4=fft(x4,32768);%对加噪音后的信号取1024个点的fft变换 subplot(3,2,5); plot(x4) title('加多个正弦干扰信号后的信号时域图'); axis([0230000-22]) ylabel('幅值'); subplot(3,2,6); plot(f,abs(y4)); title('加多个正弦干扰信号后的信号频谱图') axis([02300001500]) ylabel('幅值'); xlabel('频率(Hz)'); 3.3低通滤波器 [y,fs,bit]=wavread('d: /yb.wav'); fr=1000; wr=2*pi*fr; Window=boxcar(8); b=fir1(7,fr/(fs/2),Window); [h,w]=freqz(b,1); subplot(221);plot(w*fs/(2*pi),abs(h));title('低通滤波'); y1=filter(b,1,y); y2=fftfilt(b,y); subplot(222);plot(y);title('原始语音信号'); subplot(223);plot(y1);title('IIR滤波后语音信号'); subplot(224);plot(y2);title('FIR滤波后语音信号'); sound(y1,fs,bit); [y,fs,bit]=wavread('d: /yb.wav'); fr=1000; fp=3000 wr=2*pi*fr; Window=blackman(16); b=fir1(15,[fr/(fs/2),fp/(fs/2)],Window); [h,w]=freqz(b,1); 3.4带通滤波器 subplot(221);plot(w*fs/(2*pi),abs(h));title('带通滤波'); y1=filter(b,1,y); y2=fftfilt(b,y); subplot(222);plot(y);title('原始语音信号'); subplot(223);plot(y1);title('IIR滤波后语音信号'); subplot(224);plot(y2);title('FIR滤波后语音信号'); sound(y1,fs,bit); [y,fs,bit]=wavread('d: /yb.wav'); fr=3000; wr=2*pi*fr; Window=boxcar(8); b=fir1(7,fr/(fs/2),'high'); [h,w]=freqz(b,1); 3.5高通滤波器 subplot(221);plot(w*fs/(2*pi),abs(h));title('高通滤波'); y1=filter(b,1,y); y2=fftfilt(b,y); subplot(222);plot(y);title('原始语音信号'); subplot(223);plot(y1);title('IIR滤波后语音信号'); subplot(224);plot(y2);title('FIR滤波后语音信号'); sound(y1,fs,bit); 4心得体会 上学期我们开设了数字信号处理这门课,这和我们专业有很大的联系,而书上学的都是些理论方面的知识。 正所谓“纸上谈兵终觉浅,觉知此事要躬行。 ”学习任何知识,仅从理论方面去求知,而不去实践、探索是不够的。 这个学期一开学,我们就进行了数字信号处理的课程设计,为期一周,这次的课程设计发现自己不会的太多了,可能是由于上个学期没怎么听这门课,还有更多的听不懂把,所以这个学期做起课设来,感觉很多都不会,每做一步都非常的吃力。 第一步就是采集语音信号,利用windows自己录制一段自己的声音,然后通过MATALAB中采样,这都是很简单的,到了后面的加躁和滤波器,我就完全的看不懂和不会去做了,很多都要去问同学和参照别人做的,直到最后课设做完了,后面的还是不懂,最后答辩后面的程序还是参照了同学进行的修改,老师答辩问我,很多都不懂。 这次的课设让我知道了,实验一定要自己动手去一步一步做,不懂了在请教老师,总会明白一些,不至于很多听不懂,看不懂。 而这次课程设计中最重要的就是MATALAB,MATLAB当前已成为美国和其他发达国家在大学教学和教学研究中最常用而必不可少的工具,因为我们的程序都是应用MATALAB语言来实现的我觉得这次课程设计难是因为我们还没有学习过这门语言,不过上课的时候做过类似的实验,还是了解一点,至于其他的更深入的就只能自己去了解了,感觉在设计滤波器以及对信号进行滤波的设计过程中学到很多。 比如对脉冲响应不变法、切比雪夫,窗函数等应用。 所以我们学习的知识还是应该与实践想结合才能让我们更好的去了解和掌握。 虽然这次课程设计遇到了很多的困难,很多的不会,看不懂,但是通过请教同学,最后还是把课设做完了,虽然做完了之后还是有很多的不懂和不了解,但是自己明白了这是什么样子的一个过程,实践课必须要动手去做了,原理清楚,才会了解每一步的意思和作用,所以说只要自己认真做了,总会有一些收货的。 5源代码 [x1,fs,bits]=wavread('d: /yb.wav'); sound(x1,fs,bits); y1=fft(x1,32768); figure (1) subplot(2,1,1) plot(x1); title('原始语音信号时域波形'); axis([0230000-11]) subplot(2,1,2) plot(abs(y1)); title('原始语音信号频谱') axis([03276801500]) [x1,fs,bits]=wavread('d: /yb.wav'); y1=fft(x1,32768); x2=awgn(x1,10); %sound(x2,fs,bits) y2=fft(x2,32768); f=0: fs/32768: fs/32768*32767 figure (2) subplot(3,2,1) plot(x2); title('加单频正弦信号的语音信号时域波形') axis([0230000-22]) y3=fft(x3,32768); subplot(3,2,4) plot(f,abs(y3)); xlabel('频率(Hz)');ylabel('幅度(dB)'); title('加单频正弦信号的语音信号频谱') axis([02300001500]) N=length(x1)-1; t=0: 1/fs: N/fs; a=[0.09*sin(2*pi*2000*t)]'; b=[0.09*sin(2*pi*3000*t)]'; c=[0.09*sin(2*pi*3500*t)]'; x4=x1+a+b+c; %sound(x4,fs,bits) y4=fft(x4,32768);%对加噪音后的信号取1024个点的fft变换 subplot(3,2,5); plot(x4) title('加多个正弦干扰信号后的信号时域图'); axis([0230000-22]) ylabel('幅值'); subplot(3,2,6); plot(f,abs(y4)); title('加多个正弦干扰信号后的信号频谱图') axis([02300001500]) ylabel('幅值'); xlabel('频率(Hz)'); [y,fs,bit]=wavread('d: /yb.wav'); fr=1000; wr=2*pi*fr; Window=boxcar(8); b=fir1(7,fr/(fs/2),Window); [h,w]=freqz(b,1); subplot(221);plot(w*fs/(2*pi),abs(h));title('低通滤波'); y1=filter(b,1,y); y2=fftfilt(b,y); subplot(222);plot(y);title('原始语音信号'); subplot(223);plot(y1);title('IIR滤波后语音信号'); subplot(224);plot(y2);title('FIR滤波后语音信号'); sound(y1,fs,bit); [y,fs,bit]=wavread('d: /yb.wav'); fr=1000; fp=3000 wr=2*pi*fr; Window=blackman(16); b=fir1(15,[fr/(fs/2),fp/(fs/2)],Window); [h,w]=freqz(b,1); subplot(221);plot(w*fs/(2*pi),abs(h));title('带通滤波'); y1=filter(b,1,y); y2=fftfilt(b,y); subplot(222);plot(y);title('原始语音信号'); subplot(223);plot(y1);title('IIR滤波后语音信号'); subplot(224);plot(y2);title('FIR滤波后语音信号'); sound(y1,fs,bit); [y,fs,bit]=wavread('d: /yb.wav'); fr=3000; wr=2*pi*fr; Window=boxcar(8); b=fir1(7,fr/(fs/2),'high'); [h,w]=freqz(b,1); subplot(221);plot(w*fs/(2*pi),abs(h));title('高通滤波'); y1=filter(b,1,y); y2=fftfilt(b,y); subplot(222);plot(y);title('原始语音信号'); subplot(223);plot(y1);title('IIR滤波后语音信号'); subplot(224);plot(y2);title('FIR滤波后语音信号'); sound(y1,fs,bit); 评分表 课题名称: 项目 评价 设计方案的合理性与创造性 设计与调试结果 设计说明书的质量 答辩陈述与回答问题情况 课程设计周表现情况 综合成绩 教师签名: 日期: ..
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 课程设计 数字滤波器 设计 语音 信号
文档标签
- 语音信号处理课程设计
- 语音滤波器课程设计王凯语音滤波器
- 数字信号课程设计doc
- 数字信号处理FSK设计
- 数字信号课程设计FIR滤波器
- 语音信号数字滤波
- 数字信号处理实验四IIR滤波器设计数字信号处理
- 数字信号处理课程设计语音
- 数字信号处理课程设计音乐
- 数字信号处理语音课程设计
- 数字信号处理上机实验滤波器数字信号处理
- 数字信号处理IIRFIR数字滤波器
- 数字语音处理课程设计
- 信号系统课程设计滤波器
- 数字信号处理研讨语音
- IIR数字滤波器语音信号
- 数字信号处理课程设计基于DSPFIR数字滤波器的设计数字信号
- 信号分析处理课程设计
- 语音信号处理GUI
- 语音信号处理
- 语音信号处理语音信号处理
- 音频信号处理
- 语音信号处理试题
- DSP语音信号处理
- 处理工程用语