欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数字信号处理课程设计---FIR数字滤波器的矩形窗函数法设计文档格式.doc

    • 资源ID:807314       资源大小:280.50KB        全文页数:13页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数字信号处理课程设计---FIR数字滤波器的矩形窗函数法设计文档格式.doc

    1、length(s)-1;subplot(411);plot(n,s);title(声音信号的时域波形3)由上图可看出,此声音信号在0到1s内基本为空白,即没录上声音,故将其截去,截短后的声音信号的代码如下,声音信号的截短如图2里的2,代码如下:L = 2floor(log2(length(s);s1=s(10000:10000+L-1);wavwrite(s1,fs,s1.wavlength(s1)-1;subplot(412);plot(n,s1);截短的声音信号的时域波形图2 原始语音信号的时域图及截短后的时域及频域图4)下面代码用于产生声音信号的频谱,从图中可以看出信号的主要能量分布,如

    2、图2的3s1 = fft(s1);L1 = 2floor(log2(length(s1);k = 0:L1-1;subplot(413);plot(k,abs(s1); 5)下面代码用于产生信号的单边谱,即取上图中的一半,此图是确定滤波频率范围的参考图,如图2的4s2 = awgn(s1,27);wavwrite(s2,fs,s2.wavdetf = fs/L1;subplot(414);plot(k(1:L1/2)*detf,abs(S1(1:L1/2);单边谱 (4) 由图2的2可以看出,所截取的语音信号的长度为N = 35000,由图2的4可以看出语音信号的能量主要频段为fL = 200

    3、Hz,fH = 1100Hz;2.3 滤波器的设计2.3.1确定滤波器的参数(1)确定参数:根据2.2中的(4)可知语音信号的主要能量分布的频段为,,通带截止频率为,阻带截止频率为;模拟角频率: 数字角频率:(2)数字滤波器类型的选择:数字滤波器从实现方法上可以分为有限长冲激响应FIR数字滤波器和无限长冲激响应IIR数字滤波器IIR滤波器的单位冲激响应h(n)是无限长的,即n趋于无穷大。其系统函数H(Z)在有限长Z平面有极点存在,其结构是递归的,即存在输出到输入的反馈。由于IIR滤波器能够保留一些模拟滤波器的优良特性,因此应用很广。但是这些特性是以牺牲线性相位频率特性为代价的,即用巴特沃斯,切

    4、比雪夫,椭圆设计的数字滤波器逼近理想的滤波器的幅度频率特性,得到的滤波器往往是非线性的。在许多电子系统中,对幅度频率特性和线性相位特性都有较高的要求,所以IIR在这些滤波器中往往难以胜任。有限长单位冲激响应(FIR)数字滤波器具有以下特点:1)可在设计任意幅度频率特性滤波器的同时,保证精确严格的线性相位特性2)FIR数字滤波器的单位冲激响应h(n)是有限长的,可以用一个固定的系统来实现,因而FIR数字滤波器可以做成因果稳定系统3)允许做成多通带系统;有以上原因选择FIR数字滤波器进行设计;(3)窗函数的选择设计FIR数字滤波器最简单的方法是用窗函数法,设定通带允许的最大衰减为-2dB,阻带必须

    5、达到的最小衰减为-21dB,由通带允许的最大衰减并结合窗函数的阻带最小衰减的特性表,可选择矩形窗,其过渡带为;(4)为了改善滤波器的性能, 通常要求窗函数具有一些好的特性, 即(1) 主瓣宽度窄, 以获得较陡的过渡带。 (2) 最大旁瓣相对主瓣值(简称为旁瓣电平)尽可能小, 以改善通带的平稳度和增大阻带中的衰减。但是,这两者之间常常有矛盾,难以同时满足。常用的窗函数在这两个因素之间取得适度的折衷时,往往需要增加主瓣宽度来换取旁瓣的抑制。如果选用一个窗函数的主要目的是为了得到较窄的过渡带, 就选用主瓣较窄的窗函数, 但通带和阻带内的振荡将会较大。相反,如果主要目的是为了得到平坦的幅度响应和较小的

    6、阻带滤纹,这时选用的窗函数的旁瓣电平就要小,但所设计的FIR滤波器的过渡带就可能较宽。(5)选择低通滤波器进行设计,因为低通滤波器对语音信号无失真恢复;2.3.2 设计滤波器(1)根据上一步对滤波器进行设计; 1)根据2.3.1的(1)以及矩形窗的过渡带公式可得:滤波器的阶数,故取N=12; 2)滤波器的频率响应数字滤波器的频率响应为Hd(ej),hd(n)是与其对应的单位采样响应。但在一般情况下,Hd(ej)通常是逐段恒定的,在边界频率处有不连续点,因此得到的hd(n)将是无限时宽及非因果的。3) 信号的单位采样响应其中;此单位采样是无限长序列,不能用FIR滤波器实现,因此需要用窗函数进行截

    7、短用matlab实现;我们的任务就是要用有限长的h(n)来逼近无限长的hd(n) 4)窗函数法实际上是将满足技术要求的无限长单位采样响应加窗截断作为FIR滤波器的单位采样响应。本次采用的窗函数为矩形窗,即,N为滤波器的阶数;5)FIR滤波器的单位采样响应;2.4、叠加噪声(1)由于截短后的语音信号的长度为N=35000,因此叠加噪声时要产生一个长度为N = 35000的噪声信号(2)matlab中比较常用的噪声叠加信号为awgn();详细使用方法可以参照matlab里的help,加噪后的语音信号记为s2;并保存成“s2.wav”文件;当我们播放加入噪声的声音文件,即“s2.wav”时,可以明显

    8、感觉到里面多了很多噪声,与“s1.wav”有明显的不同。(3)将语音信号与噪声合成的信号送入所涉及的滤波器中进行滤波;滤波后的语音信号记为s3,并保存成“s3.wav“,截短语音信号的时域波形和叠加噪声的时域波形以及滤波后的语音信号时域波形如图3;代码如下:N=12;wn=boxcar(N);alpha=(N-1)/2;wc=0.105*pi;n=0:N-1;hd=wc*sin(wc*(n-alpha)./(wc*pi*(n-alpha);hn=hd.*wn;s3=conv(s2,hn);wavwrite(s3,fs,s3.wavsubplot(311)plot(s1);加噪之前语音信号时域图

    9、subplot(312)plot(s2);加噪之后语音信号时域图subplot(313)plot(s3);滤波器处理之后语音信号时域图图3加噪前后与滤波后的时域图三、 设计结果与分析3.1 原始语音信号的波形图和频谱由图4可以看出,原始语音信号的figure(2);subplot(211);原始声音信号的时域波形S = fft(s);subplot(212);plot(k,abs(S);原始声音信号的频谱其结果如图4;其中原始语音信号的0到1秒时域波形基本为一条直线,即没有录上声音。但在其频谱上并未显示出来。图4原始声音信号的时域波形及频谱3.2 滤波后的系统频响和单位采样响应分析为了分析矩形

    10、窗对系统单位采样响应的截短影响,可以分析滤波后的系统频率响应和单位采样响应分析,代码如下:figure(6)subplot(211)freqz(hn);系统频响subplot(212)stem(hn);滤波器单位采样响应运行结果如图5所示,通过观察系统频响,可见矩形窗的旁瓣衰减值约为15dB,即第一旁瓣比峰值低15dB,由滤波器的单位采样响应可以看出滤波器的阶数为12。图5信号的系统频响和滤波器单位采样响应3.3 加噪前加噪后以及滤波后的频域图的比较为了更加明显的比较加噪前、加噪后以及滤波后的频域图,现将它们放在同一图中进行比较,代码如下:figure(5)plot(abs(S1);加噪之前语

    11、音信号频域图S2=fft(s2);plot(abs(S2);加噪之后语音信号频域图subplot(313);plot(abs(S3);滤波器处理之后语音信号频域图其频域图的比较如图6,通过观察此图,可以明显的看出加噪后的频域图比未加噪的频域图明显要高出一部分,这部分就是因为添加了噪声,滤波后的信号与加噪前信号的频域图以及加噪后信号的频域图也截然不同,滤波器将信号能量分布低的部分滤掉了,即图中的中间部分图6加噪前后和滤波后的信号的频域图3.4 加噪声以后以及滤波后的语音信号信噪比 信噪比,即SNR(Signal to Noise Ratio),又称为讯噪比。狭义来讲是指放大器的输出信号的电压与同

    12、时输出的噪声电压的比,常常用分贝数表示,设备的信噪比越高表明它产生的杂音越少。一般来说,信噪比越大,说明混在信号里的噪声越小,声音回放的音质量越高,否则相反。通过对比加入噪声后的信噪比以及滤波后的信噪比,我们可以判断此滤波器对噪声滤除的效果。编写代码如下:s4=conv(s1,hn);En1=sum(s2-s1).2);%加噪后的噪声功率Es=sum(s1.2);%信号的功率SNR1=10*log10(Es/En1); %加噪后信噪比Es1=sum(s3.2);%滤波后的信号功率En2=sum(s4-s3).2);%滤波后的噪声功率SNR2=10*log10(Es1/En2); %滤波后的信噪

    13、得出加噪后与滤波后的信噪比为:其结果如图7所示,图7的为滤波器中各参数的值,其中S1,S2等为语音信号s1,s2经过用fft()运算得出的,即为s1,s2的快速傅里叶变换,由图5可以看出:SNR1=15.898SNR2=24.322信号采样的频率分辨率,由频率分辨率可以求出通带的宽度,即,即通带宽度为:;图7加噪前和滤波后的信噪比3.5 效果分析1)主观分析:通过听取加噪后的语音信号和滤波完的语音信号,发现滤波完的语音信号噪声大部分滤掉了,但语音信号感觉发闷,由于对频谱中信号主要能量进行判断时难免有误差,导致阻带截止频率选的有点过低,因此在滤波时也将声音信号中的高频部分滤掉了,因此听起来不如原

    14、始语音信号清脆,但总体效果不错。因此滤波器设计成功。2)客观分析:通过对比观察加燥前、加噪后以及滤波后的时域波形和频域波形,即图4和图6,可以看出时域波形中滤波后的语音信号与未加噪声时的时域波形基本一致,但是还是有出入,就其原因也肯能是用矩形窗设计,滤波器的阶数太低,阻带特性与设计要求有些出入当阶数较高时,才基本可以满足阻带衰耗要求。但是基本上还是达到了滤波的要求。通过观察图6,将信号的能量低的部分全部滤掉了,只剩下能量高的部分了。信噪比可以见图7,由此可以看出语音信号在滤波之后信噪比变大了,即将噪声滤掉了一部分。综上:此滤波器设计成功,FIR 滤波器很容易实现具有严格线性相位的系统, 使信号

    15、经过处理后不产生相位失真,舍入误差小,而且稳定。但是还是存在很多不足的。在用矩形窗进行设计时,所设计滤波器的幅度函数在通带和阻带都呈现出振荡现象,且最大波纹大约为幅度的9%,这个现象称为吉布斯效应。这是矩形窗与其他窗函数的不足。3.6 设计过程中出现的问题(1)声音信号频谱中主要能量范围的选取,如果截止频率选取的过低,最后滤波完的语音信号比较闷;(2)matlab中代码的编写1)在截短时,代码应写为:如果L取length(s),则语音信号最后听起来不完整,后边少了一部分;2)对语音信号取快速傅里叶变换时,应该将语音信号的快速傅里叶变换赋给另一个值,即S1 = fft(s1);如果赋值给s1,当

    16、听取语音信号时听不到语音信号,另外在在对一个语音信号进行处理后将其赋给别的值时,应该写上wavwrite()才能听到那个语音信号,否则听不到;3)在求声音信号的频谱时,plot()里边的两个变量的采样点数应该一致,否则会出错(3)matlab中程序执行时如果中间的某段发生错误,便不会继续执行了,因此在发现某个图出现空白的时候,检查那段程序段即可四、设计体会在进行滤波器设计之前中,老师给出了设计的具体思路。设计中信号的采集,滤波器的设计及滤波前后频谱的变化和滤波效果都是与老师,同学一起讨论、查阅资料、修改参数、多次仿真完成的。通过设计,我对信号的采集、处理、传输、显示和滤波器的设计等有一个较系统

    17、的掌握和理解,加深了对课堂抽象知识的理解,巩固了数字信号处理的理论知识。对于MATLAB语句有了更加深刻的理解,也注意到了一些运算符号的使用,例如数组的相乘需用(.*)来表示,而一般数字相乘应用*。还有当运用数组的法时,必须保持数组是等长的,否则,不能相加。设计过程中,学习了许多数字信号处理课程中关于数字滤波器的设计的内容,再通过利用参考文献与网络,完成了用Matlab进行数字信号处理课程设计。与其他高级语言的程序设计相比,matlab环境下可以更方便、快捷的设计出具有严格线性相位特性的FIR滤波器,节省大量时间,提高编程效率,且参数的修改也十分方便,还可以进一步进行优化设计。 这次课程设计让

    18、我不仅学会理论知识,也学会了用matlab编程设计FIR数字滤波器,达到了实践的目的,巩固课堂上所学的东西,对课堂上的知识加深了理解。在这过程中,虽然付出了很多,但看到自己做出来的成果,心中有种欣慰的喜悦。学习兴趣就上来了。对于matlab编程,以前只会用matlab做一些方针而已,还未用matlab写过代码,这次经过查阅大量的matlab资料以及数字滤波器的资料,并且积极的跟老师和同学进行学习和沟通,对matlab编程有了一些了解,以及对滤波器有了一定的了解,而不是只限于课堂上的理解。善于发现问题并解决问题。 通过课程设计,加深了对课堂抽象概念的理解,巩固了课堂上所学的理论知识,并能很好地理解与掌握数字信号处理中的基本概念、基本原理、基本分析方法。同时掌握编程方法和解决实际问题的技巧。五、五、参考文献1张小虹,黄忠虎,邱正伦,数字信号处理M,第二版机械工业出版社,2008,92徐明远,邵玉斌,MATLAB仿真在通信与电子工程中的应用,西安电子科技大学出版社,2005:47-583程佩青,数字信号处理教程M,北京:清华大学出版社,2002:158-2044祁才君,数字信号处理技术的算法分析与应用,机械工业出版社. 沈 阳 大 学


    注意事项

    本文(数字信号处理课程设计---FIR数字滤波器的矩形窗函数法设计文档格式.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开