Matlab中的filter函数的延时,MATLAB 中 filter 函数的使用

一维数字滤波滤波器filter 使用

filter

1-D digital filter

Syntax

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)

滤波函数                          0.15

H(z) = ----------------------

1 - 0.8*z^-1

b = 0.15 ;

a = [1 -0.8];

n = [0:100];

x = 2*sin(0.05*pi*n) + 2*randn(1, 101); %滤波前序列

imp = [1; zeros(100, 1)];

h = filter(b, a, imp); % filter 函数使用 将x 变成滤波前序列

w = conv(x, h); % 做乘积

yc = w(1:101); %滤波序列

z= filter(b, a, x); % 进行滤波

xlabel('n');

ylabel('x y yc');

plot(n, x,'r',n,z ,'b', n,yc,'m');

grid;

思想很简单,首先是用冲击函数 Imp = [1 ; zeros(100,1)] 取求出滤波函数,然后再与函数进行乘积

运算结果:

0818b9ca8b590ca3270a3433284dd417.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值