一项目意义与目标
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一 项目意义与目标
数字滤波器是指输入和输出均为数字信号,通过一定的运算关系改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的器件。它的概念与模拟滤波器相同,只是信号的形式和实现滤波的方法不同。数字滤波器具有比模拟滤波器精度高、体积小、使用灵活、不要求阻抗匹配等等的优点。
二 项目内容
用汉宁窗设计一个FIR 高通数字滤波器,满足以下参数要求:通带边界频率ωp=0.7π,通带内衰减函数αp=0.4dB ;阻带边界频率Ωs=0.4π,阻带内衰减函数为αs=55dB 。
三 项目报告正文
1. FIR 数字滤波器设计的意义
FIR 数字滤波器的单位冲激响应是有限长的,因而滤波器一定是稳定
的,而且可以用快速傅里叶变换(FFT )算法来实现过滤信号,从而可大大提高运算效率。图像处理以及数据传输都要求信道具有线性相位特性,而FIR 滤波器就可以做成具有严格的线性相位,同时又可以具有任意的幅度特性。
2. 窗函数法设计的理论分析
(1) 按指标要求的理想线性相位高通滤波器的频率响应为
j j c d e ||e 0H ωτωωωπω-≤≤=,()
(),其他 其中 12
N τ-= (2) 它的单位冲激响应为
d {sin[n ]}/[()],h n ()/,c c n n n τπτωπττ
πωπτ-≠=-=(-)]-sin[(n-)()
(3) 由过渡带宽及阻带最小衰减的要求,选定窗函数w (n )的形状及N
的大小。
(4) 求得所设计的FIR 滤波器的单位抽样响应
()()()d h n h n n ω=, n=0,1,……,N-1
(5) 求()[()]j H e DTFT h n ω=,检验是否满足设计要求,如不满足,则需重
新设计。
3.Matlab的仿真结果
3.1汉宁窗的设计:
①程序代码如下:
N=input('N='); %任意输入N的值
n=0:1:N-1;
wn=(1-cos(2*pi*n/(N-1)))/2; %汉宁窗的窗函数
stem(n,wn);
title('汉宁窗w(n)')
②N取21时,结果如下图所示:
3.2理想高通滤波器的单位脉冲响应hd(n)与由汉宁窗设计的实际高通滤
波器的单位冲击响应h(n)的比较仿真:
①程序代码如下:
wp=0.7*pi;ws=0.4*pi; %设定阻带、通带的边界频率
deltaw=wp-ws; %计算过渡带宽
N=ceil(6.2*pi/deltaw); %应使截取的长度为奇数
wc=(wp+ws)/2; %计算理想高通滤波器的截止频率
n=0:1:N-1;
alpha=(N-1)/2; %计算采样延迟
m=n-alpha+eps;
hd=(sin(pi*m)-sin(wc*m))./(pi*m); %理想高通滤波器的单
位冲激响应win=hanning(N); %取长度为N的汉宁窗
h=hd.*win'; %加窗后的实际单位冲激响应
subplot(211);stem(n,hd);title('理想单位脉冲响应hd(n)') subplot(212);stem(n,h);title('实际单位脉冲响应h(n)') ②结果如下图所示:
理想单位脉冲响应hd(n)
02468101214161820
实际单位脉冲响应h(n)
02468101214161820
3.3高通滤波器的幅频特性和相频特性仿真:
①程序代码如下:
wp=0.7*pi;ws=0.4*pi; %设定阻带、通带的边界频率
deltaw=wp-ws; %计算过渡带宽
N=ceil(6.2*pi/deltaw); %应使截取的长度为奇数
wc=(wp+ws)/2; %计算理想高通滤波器的截止频率
Window=hanning(N); %取长度为N的汉宁窗
b=fir1(N-1,wc/pi,'high',Window); %利用函数fir1构造一个截止频率
为wc、长度为N的汉宁窗设计的高通滤波器freqz(b,1) %作出此滤波器的幅频、相频特性曲线
②结果如下图所示:
3.4二维窗函数设计法:
利用汉宁窗设计二维高通滤波器,其指标为:通带边界频率ωp=0.7π,阻带边界频率Ωs=0.4π。
①首先,创建包含了期望的带通响应的矩阵Hd。代码如下:
[f1,f2]=freqspace(21,'meshgrid');
Hd=ones(21);
r=sqrt(f1.^2+f2.^2);
Hd(r<0.55)=0;
colormap(jet(64))
mesh(f1,f2,Hd)
期望的频率响应矩阵Hd如下图所示:
②然后用汉宁窗设计滤波器。程序代码如下:
h1=fwind1(Hd,hanning(21));
figure,freqz2(h1)
其频率响应如下图所示: