filtic函数 matlab_关于matlab filter这个函数到底怎么用?

MATLAB的filter函数用于实现一维数字滤波,本文详细解释其语法并提供示例。通过直接II型转置结构实现滤波,以最简单的用法`y = filter(b,a,X)`为例,介绍滤波器工作原理和算法实现。示例中展示了如何使用filter函数对数据平滑处理。" 79644663,6869839,Windows环境下Python CSV文件编码转换至GBK,"['Python编程', '数据处理', '文件操作', '编码转换', 'Windows开发']
摘要由CSDN通过智能技术生成

展开全部

filter函数是一维的数字滤波器,主要的应用语法如下所示

y = filter(b,a,X)

[y,zf] = filter(b,a,X)

[y,zf] = filter(b,a,X,zi)

y = filter(b,a,X,zi,dim)

[...] = filter(b,a,X,[],dim)

这五个用法大同小异,明白一个就知道32313133353236313431303231363533e59b9ee7ad9431333366306561其他的用法了,下面以最简单的 y = filter(b,a,X) 为例进行讲解。

y = filter(b,a,X) 滤除向量X中的数据,其中b是分子系数向量,a是分母系数向量。如果a(1)不等于1的话,则就利用a(1)标准化滤波器系数,可以利用多项式除法使分母变为1;如果 a(1) 等于0,滤波器返回错误值。

算法实现:

如上图所示,filter函数通过直接 II 型转置结构实现,通过分析上面原理图,可得下面的时域表达式

y(m) = b(1)*x(n) + b(2)*x(n-1) + ... + b(nb+1)*x(n-nb)- a(2)*y(n-1) - ... - a(na+1)*y(n-na)

其中 n-1是滤波器阶数,na 是后向反馈的滤波器阶数,nb 是前向反馈的滤波器阶数。此表达式还不是很明显,不太容易明白,此表达式可变型为

通常情况下,a(n-i)被归一化为1.

3、举例说明:

data = [1:0.2:4]';

windowSize = 5;

filter(ones(1,windowSize)/windowSize,1,data)

ans =

0.2000

0.4400

0.7200

1.0400

1.4000

1.6000

1.8000

2.0000

2.2000

2.4000

2.6000

2.8000

3.0000

3.2000

3.4000

3.6000

解析:

ones(1,windowSize)/windowSize,当windowSize=5时,生成的向量为[0.2 0.2 0.2 0.2 0.2],即分子系数向量 b = [0.2 0.2 0.2 0.2 0.2]

data = [1:0.2:4]' = [1 1.2 1.4 1.6 1.8 2 ··· ···3.8 4]

根据上面的表达式(2),以及 a(n-i) 归一化为1可知下面的推导过程,

y(1) = b(1) ·x(1) = 0.2·1 = 0.2;

y(2) = b(1)·x(2) + z1(1) = b(1)·x(2) + b(2)·x(1) = 0.2·1.2 + 0.2·1 = 0.44;

y(3) = b(1)·x(3) + z1(2) =b(1)·x(3) + b(2)·x(2) + z2(1) = b(1)·x(3) + b(2)·x(2) + b(3)·x(1) = 0.2·1.4 + 0.2·1.2 + 0.2·1 = 0.72

扩展资料:

filter功能:它使用户可以改变一个request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在response离开servlet时处理response.换种说法,filter其实是一个“servlet chaining“.

包括

1. 在servlet被调用之前截获;

2. 在servlet被调用之前检查servlet request;

3. 根据需要修改request头和request数据;

4. 根据需要修改response头和response数据;

5. 在servlet被调用之后截获.

你能够配置一个filter 到一个或多个servlet;单个servlet或servlet组能够被多个filter 使用。几个实用的filter 包括:用户辨认filter,日志filter,加密filter,符号filter,能改变xml内容的XSLT filter等。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值