郑州轻工业学院课程设计说明书题目:FIR数字高通滤波器设计姓名:院(系):电子信息工程学院专业班级:学号:指导教师:成绩:时间:2017 年 6 月12 日至2017 年 6 月16 日郑州轻工业学院课程设计任务书题目FIR数字高通滤波器设计主要内容、基本要求、主要参考资料等:主要内容:利用MATLAB软件读取一段含有噪声的.wav格式的语音信号,然后利用FFT对该信号进行频谱分析;基于频谱分析的结果确定滤波器的参数,然后利用窗函数法设计一个FIR数字高通滤波器,并利用所设计的滤波器对信号进行滤波处理。
比较滤波前后语音信号的时域波形及频谱,分析滤波前后的语音变化。
基本要求:1、基于对含噪语音信号的频谱分析确定滤波器的参数;2、分别采用矩形窗、汉明窗和布莱克曼窗设计FIR数字高通滤波器;3、掌握利用wavread函数读取、播放.wav格式语音信号的方法;4、对语音信号进行滤波,绘制滤波前后信号的时域波形及频谱;5、回放语音信号,分析滤波前后的语音变化。
主要参考资料:1、从玉良.数字信号处理原理及其MATLAB实现[M].北京:电子工业出版社.2009.72、胡广书.数字信号处理理论、算法与实现[M].北京:清华大学出版社.2003,8完成期限:2017.6.12—2017.6.16指导教师签名:课程负责人签名:2017年6月9日目录1基本要求: (3)2课程设计的目的 (3)3主要设计内容 (3)4设计原理 (3)4.1 FIR数字滤波器的设计原理 (3)4.2 窗函数设计原理 (4)5设计步骤 (5)6 程序设计及其波形: (5)结束语 (9)致谢 (10)参考文献 (8)附录 (9)1基本要求:1、基于含噪语音信号的频谱确定滤波器的参数;2、分别采用矩形窗、汉明窗和布莱克曼窗设计FIR数字高通滤波器;3、掌握利用wavread函数读取、播放.wav格式语音信号的方法;4、对语音信号进行滤波,绘制滤波前后信号的时域波形及频谱;5、回放语音信号,分析滤波前后的语音变化。
2课程设计的目的1、通过课程设计把自己在大学中所学的知识应用到实践当中。
2、深入了解利用Matlab设计FIR数字滤波器的基本方法。
3、在课程设计的过程中掌握程序编译及软件设计的基本方法。
4、提高自己对于新知识的学习能力及进行实际操作的能力。
5、锻炼自己通过网络及各种资料解决实际问题的能力。
3主要设计内容用MATLAB软件读取一段含有噪声的.wav格式的语音信号,然后基于FFT对该信号进行频谱分析;基于含噪语音信号的频谱确定滤波器的参数,利用窗函数法设计一个FIR数字高通滤波器,并利用所设计的滤波器对信号进行滤波处理。
比较滤波前后语音信号的时域波形及频谱,分析滤波前后的语音变化。
4设计原理FIR 滤波器具有严格的相位特性,对于信号处理和数据传输是很重要的。
目前FIR滤波器的设计方法主要有三种:窗函数法、频率取样法和切比雪夫等波纹逼近的最优化设计方法。
常用的是窗函数法和切比雪夫等波纹逼近的最优化设计方法。
本实验中的窗函数法比较简单,可应用现成的窗函数公式,在技术指标要求高的时候是比较灵活方便的。
4.1FIR数字滤波器的设计原理一个截止频率为c(rad/s)的理想数字低通滤波器,其传递函数的表达式是:H d(e jω)={e −jωπ, |ω|≤ωc0, ωc≤ ω≤π (4-1) 由上式可以看出,这个滤波器在物理上是不可实现的,因为冲激响应具有无限性和因果性。
为了产生有限长度的冲激响应函数,我们取样响应为h(n),长度为N ,其系数函数为H(z):H(z)=∑ℎ(n)z−nN−1N=0 (4-2) 用h(n)表示截取hd(n)后冲激响应,h(n)= w(n) h_d(n),w(n)为窗函数,长度为N 。
当T=(N-1)/2时,截取的一段h(n)对(N-1)/2对称,可保证所设计的滤波器具有线性相位。
4.2窗函数的设计原理基本思路:从时域出发设计 h(n)逼近理想h d (n)。
设理想滤波器的单位响应在时域表达为hd(n),则H d (n)一般是无限长的,且是非因果的,不能直接作为FIR 滤波器的单位脉冲响应。
要想得到一个因果的有限长的滤波器单位抽样响应 h(n),最直接的方法是先将hd(n)往右平移,再迕行截断,即截取为有限长因果序列:h(n)=h d (n)w(n),并用合适的窗函数迕行加权作为 FIR 滤波器的单位脉冲响应。
按照线性相位滤波器的要求,线性相位FIR 数字低通滤波器的单位抽样响应h(n)必须是偶对称的。
对称中心必须等于滤波器的延时常数,即用矩形窗设计的FIR 低通滤波器,所设计滤波器的幅度函数在通带和阻带都呈现出振荡现象,且最大波纹大约为幅度的9%,返个现象称为吉布斯效应。
为了消除吉布斯效应,一般采用其他类型的窗函数。
(1).矩形窗:矩形窗最简单,但其 -21dB 的阻带最小衰减在实际应用中远远不够。
另外,矩形窗还会造成很强的吉布斯效应。
长度为N 的矩形窗定义为:w R (n)={1,0≤n ≤N −10, 其它(4-3)幅度函数: W R (ω)=sin (ωN/2)sin (ω/2)(4-4)(2). 汉明窗:汉明窗与汉宁窗相比主瓣宽度保持不变,但最大旁瓣幅度减小为 -41dB ,阻带最小衰减降低为 -53dB 。
长度为N 的汉明窗定义为:w(n)=0.54-0.46cos(2nπN−1), n=0,1,2,⋯,N-1 (4-5) 其幅度函数:W (w )≈0.54W R (ω)+0.23[W R (ω−2πN)+W R (ω+2πN)] (4-6)(3).布莱克曼窗: 布莱克曼窗的最大旁瓣幅度得到了进一步的抑制(-57dB ),最小阻带衰减达到 -74dB ,但主瓣宽度却比矩形窗的主瓣宽度大三倍。
长度为N 的布莱克曼窗定义为:w (n ) = [0.42 − 0.5cos( 2πnN−1) + 0.08cos( 4πnN−1),]n=0,1,2…,N-1 (4-7) 其幅度函数为:W (w ) ≈0.42W (w ) + 0.25[W R (ω−2πN)+W R (ω+2πN)]+0.04[W R (ω−4πN)+W R (ω+4πN)] (4-8)5设计步骤1.设计滤波器;利用窗函数法设计 FIR 数字滤波器:(1)根据所要设计的滤波器的性能指标(阻带最小衰减、过渡带宽),通过查表来选定窗函数的类型和宽度:N=[窗函数的精确过渡带/滤波器过渡带]取整一般情况下 N 取奇数。
(2)根据所期望的频率响应H d (j ω)经过傅里叶反变换得到冲激响应h d (n)。
如果所期望的Hd(j ω)是理想滤波器,而是存在过渡带,则设计中所使用的截止频率ωc 不采用通带截止频率ωp 或阻带截止频率ωs ,而是使用它们的中点。
(3)求出 FIR 滤波器的单位冲激响应:h(n)=h d (n)w(n),0<=n<=N-1(4)利用 h(n) 计算 FIR 滤波器的频率响应 H(j ω),并检验各项指标,如果不符合要求,则重新修改 N 及 w(n)。
2.所设计的滤波器对语音信号进行处理;3.比较滤波前后信号的波形及频谱;6程序设计及其波形:1.基于wavread 函数读取一段.wav 格式的语音信号,绘制信号的时域波形; clear;clc;close all;[S1,Fs,Bit] = wavread('SHE.wav'); %读取音频信号Fs=44100 [S,Fs,Bit] = wavread('Highpass.wav'); %读取含有噪声的音频信号原始语音信号采样后S1的时域波形如图1所示:图1原始语音信号采样后S1的时域波形图加噪声语音信号采样后S 的波形如图2所示:图2加噪声语音信号采样后S 的波形图2. 对语音信号进行频谱分析,绘制信号的频谱X = abs(fft(S)); X1 = abs(fft(S1));对X,X1分别进行傅里叶变换 xlabel = 0:Fs/(length(S)-1):Fs/2;subplot(2,1,1);plot(xlabel,X1(1:150001)) %分析音频信号,找出干扰频率为200Hz subplot(2,1,2);plot(xlabel,X(1:150001))x 105-0.8-0.6-0.4-0.200.20.40.60.8x 105-1-0.8-0.6-0.4-0.200.20.40.60.81原始语音信号(无噪声)采样后X1的频谱图:图3原始语音信号采样后X1的频谱图加噪声语音信号采样后X 的频谱图如图4所示:图4加噪声语音信号采样后X 的频谱图由图分析信号噪声频率为200Hz ,滤波器设置参数如下: fp = 300; %设置通带截止频率 fs = 500;%设置阻带最低频率delta_w = 2*pi*(fs-fp)/Fs;%fs-fp 是过度带宽;转换为数字频率过渡带delta_w=0.0285 wc = pi*(fs+fp)/Fs;%数字截止频率wc=0.0570 3.采用矩形窗设计FIR 高通滤波器N = ceil(1.8*pi/delta_w); %计算滤波器的阶次N=199,矩形:1.8*pi if N/2 ==0N = N+1; %确保N 为奇数 endtau = (N-1)/2;%tau=363.5000x 10420040060080010001200140016001800x 1040.511.522.533.54for n = 1:Nh(n) =(sin(pi*(n-1-tau))-sin(wc*(n-1-tau)))/(pi*(n-1-tau)); endh((N+1)/2)=1-wc/pi; %根据滤波器类型确定极限值 Wn=(boxcar(N));h1 = h.*Wn'; %加窗后得到h1,即为设计的FIR 滤波器。
h2 = fir1(N-1,1-wc/pi,boxcar(N));figure;subplot(2,1,1);stem(h1); %滤波器单位冲击响应序列及幅频响应 F=abs(fft(h1)); xlabel1 = 0:Fs/(N-1):Fs/2; subplot(2,1,2);plot(xlabel1,F(1:(N+1)/2));滤波器单位冲击响应序列及幅频响应如图5所示:图5滤波器单位冲击响应序列及幅频响应图高通滤波器频域波形图如图6所示:图6高通滤波器频域波形图x 1040.20.40.60.811.21.4S2=conv(S1,h1);S2=S2((N+1)/2:end-(N+1)/2+1); sound(S,Fs);%滤波前 sound(S2,Fs);%滤波后 X2=abs(fft(S2));plot(xlabel,X2(1:150001));图7滤波后信号的频谱图通过播放滤波前后的语音信号,对比分析得:滤波前,音频信号中有很大噪声,严重影响了音频的音质。