我是靠谱客的博主 危机小海豚,最近开发中收集的这篇文章主要介绍matlab滤波_FIR滤波器的Matlab实现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、Matlab实现hamming,hanning时域窗函数相乘法。

数字滤波器都是2π归一化的,2π对应fs采样率。这一点和FFT结果是一样。采样时间离散序列,频谱以2π为周期,(也是以Fs为周期)。

% %------------------------------低通滤波器2----------------------------------

fpass=200; %通带

fstop=500; %阻带

Bslope=(fstop-fpass)/Fs*2*pi; %过渡宽度

N0=ceil(3.3*2*pi/Bslope); %滤波波长

N=N0+mod(N0+1,2); %取N为奇数,时延(N-1)/2,仍在采样点处

window = (hamming(N))'; % 海明窗计算

Wn=(fpass+fstop)/2/Fs*2; % 计算截止频率

firfilter_vect=fir1(N-1,Wn,window); % 用fir1函数设计FIR第1类滤波器,M=N-1,为滤器的阶数,也是除了当前点,前面其他需加进的点数

datay=filter(firfilter_vect,1,data); %原始数据data进行滤波,即data与firfilter_vect的卷积。

%======================================================

因为理想滤波器具有很好频率特性,但是因为其时间响应长度无限。所以我们要用一个窗函数来把它截断,hamming窗截断具有通带、阻带波动小的特点。fir1函数实现了理想低通滤波器的时域无限长序列h(t)与汉明窗window相乘,生成一个有限长的序列。即对h(t)的加窗截断。t在离散采样形式可写成h(n),

58c20c6b7865538913f5fae7c70ab168.png

fir1实现:

filter实现:h(N)卷积data。因为把理想低通变成有限长度,这正是FIR(有限长度冲击响应的由来)。

最后

以上就是危机小海豚为你收集整理的matlab滤波_FIR滤波器的Matlab实现的全部内容,希望文章能够帮你解决matlab滤波_FIR滤波器的Matlab实现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(83)

评论列表共有 0 条评论

立即
投稿
返回
顶部