MATLAB函数fir1「建议收藏」

MATLAB函数fir1「建议收藏」fir1基于窗函数的fir滤波器设计;主要形式:b=fir1(n,Wn)b=fir1(n,Wn,ftype)b=fir1(___,window)b=fir1(___,scaleopt)系数的含义n—滤波器阶数。Wn—截止频率,0≤Wn≤1,Wn=1对应于采样频率的一半。当设计带通和带阻滤波器时,Wn=[W1W2],W1≤…

大家好,又见面了,我是你们的朋友全栈君。

fir1

基于窗函数的fir滤波器设计;

主要形式:

b = fir1(n,Wn)

b = fir1(n,Wn,ftype)

b = fir1(___,window)

b = fir1(___,scaleopt)

系数的含义

n  — 滤波器阶数。

Wn — 截止频率, 0≤Wn≤1,

Wn=1 对应于采样频率的一半。

数字角频率w、模拟角频率Ω之间的关系为 w=Ω/Fs,所以  w = 2*pi*f/Fs  ,f为模拟频率;

例如截止频率为300HZ,采样频率为1000HZ,(这里的频率都是模拟频率)换算成数字角频率为  截止频率为 0.6pi  rad/sample  而Wn就是0.6;

当设计带通和带阻滤波器时, Wn=[W1 W2],W1≤ω≤W2。

ftype — 当指定 ftype 时,可设计高通和带阻滤波器。ftype = high 时,设计高通 FIR 滤波器;

ftype=stop 时设计带阻 FIR 滤波器。低通和带通 FIR滤波器无需输入 ftype 参数。

Window — 窗函数。窗函数的长度应等于FIR 滤波器系数个数,即阶数 n+1。

n — 滤波器阶数,默认为汉明窗。

b为生成的滤波器系数,、。

解释:

b = fir1(n,Wn)使用汉明窗来设计具有线性相位的n阶低通,带通或多频FIR滤波器。滤波器类型取决于Wn的元素数量。

b = fir1(n,Wn,ftype)设计低通,高通,带通,带阻或多频带滤波器,取决于ftype的值和Wn的元素数量。

b = fir1(___,window)使用window中指定的向量和先前语法中的任何参数设计过滤器。

b = fir1(___,scaleopt)另外指定滤波器的幅度响应是否被归一化。

注意:对于具有任意频率响应的窗口滤波器,请使用fir2。

设计一个48阶FIR带通滤波器,通带为0.35π≤ω≤0.65π rad/ sample。
 其幅度和相位响应。如下所示:

b = fir1(48,[0.35 0.65]);
freqz(b,1,512)

MATLAB函数fir1「建议收藏」

实例2

加载chirp.mat。
该文件包含一个信号y,其大部分功率高于Fs / 4,或奈奎斯特频率的一半。 采样率为8192 Hz。设计一个34阶FIR高通滤波器,以衰减低于Fs / 4的信号分量。 使用0.48的截止频率和30 dB纹波的Chebyshev窗口。

load chirp

t = (0:length(y)-1)/Fs;

bhi = fir1(34,0.48,'high',chebwin(35,30));
freqz(bhi,1)

MATLAB函数fir1「建议收藏」

过滤信号。 显示原始和高通滤波信号。 对两个图使用相同的y轴刻度。

outhi = filter(bhi,1,y);

subplot(2,1,1)
plot(t,y)
title('Original Signal')
ys = ylim;

subplot(2,1,2)
plot(t,outhi)
title('Highpass Filtered Signal')
xlabel('Time (s)')
ylim(ys)

MATLAB函数fir1「建议收藏」

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160786.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月17日 下午12:00
下一篇 2022年7月17日 下午12:16


相关推荐

  • MySQL 8.0.19安装教程(windows 64位)

    MySQL 8.0.19安装教程(windows 64位)话不多说直接开干目录1-先去官网下载点击的MySQL的下载​2-配置初始化的my.ini文件的文件3-初始化MySQL4-安装MySQL服务+启动MySQL服务5-连接MySQL+修改密码 先去官网下载点击的MySQL的下载 下载完成后解压解压完是这个样子 配置初始化的my.ini文件的文件 …

    2022年4月28日
    47
  • GridView 控件

    GridView 控件如何响应 GridView 控件中的按钮事件 转 2009 06 1821 47 在单击 nbsp GridView nbsp 控件中的按钮时 将引发 nbsp RowCommand nbsp 事件 GridView nbsp 控件具有内置功能 用于进行编辑 删除和分页等操作 还可以添加按钮并使用 nbsp RowCommand nbsp 事件向控件添加自定义功能 可以通过下面的方式向 nbsp GridView nbsp 控件添加自

    2026年3月19日
    2
  • Spring的两种代理JDK和CGLIB的区别浅谈

    Spring的两种代理JDK和CGLIB的区别浅谈我的店铺一、原理区别:java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。1、如果目标对象实现了接口,默认情况下会采用JDK的动态代理实现AOP2、如果目标对象实现了接口,可以强制使用CGLIB实现AOP…

    2022年6月10日
    26
  • python2装饰器_python内置装饰器

    python2装饰器_python内置装饰器前言我们都知道装饰器的作用是在不改变原有的代码基础上,添加新的功能,但是这样会有一个弊端,被装饰的函数某些属性会变改变,接下来我们来看下案例importtimedefrun_time(fu

    2022年7月29日
    10
  • java中的compareto方法的详细介绍

    java中的compareto方法的详细介绍java中的compareto方法的详细介绍JavaComparator接口实例讲解(抽象方法、常用静态/默认方法)一.java中的compareto方法1.返回参与比较的前后两个字符串的as

    2022年7月4日
    28
  • 架构师之路(39)—IoC框架

    架构师之路(39)—IoC框架

    2021年12月6日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号