matlab 滑动平均窗滤波,滑动平均滤波器与CIC滤波器

前言

本人常常使用matlab做数据处理,往往是会使用滑动平均滤波器,但是鉴于本人是做FPGA的,发现这个滑动平均滤波器和CIC滤波器极度相似,且自己在使用过程中对滑动平均滤波器的频响比较模糊,所以在参考了书本以及大量csdn、知乎的博主后,写一篇相关博客,来解释滑动平均滤波器与CIC滤波器的关系以及FIR滤波器的一些内容,如果想探究详细的数学推导还是看书最靠谱,本文尽可能使用简单的公式与结论。

一、传递函数

滑动平均滤波器与CIC滤波器都是FIR滤波器,也就是所谓的有限冲击响应滤波器,这里先简单介绍一下滤波器的相关概念。

1.什么是传递函数

matlab中的filter函数的标准使用方法就是y=filter(b,a,x),其中b和a共同构成了传递函数(也成为系统函数),x代表进入滤波器的数据,y代表滤波器输出的数据,例如下图中H(z)就是一个传递函数

684136e52ba6ac9423c6ec36fd9e6dd2.png

传递函数往往用拉氏变换(复频域)或者z变换(圆频域)来表示,都是频域的一种表达形式,这个传递函数表示的就是系统的输出/输入的频响曲线。滤波器也属于一种系统,自然也有自己的传递函数来表征它的频响特点。

这个传递函数怎么来的呢,对于常见的线性时不变离散系统来讲(对于matlab处理信号的大部分情况默认是这个就可以了),其表现形式一般是下图

1b5ecfca84eacdbc45886966f3ea4e53.png

其中,y(n)是输出,x(n)是输入,y(n-k)是y(n)延迟k个时刻,x(n-r)是x(n)延迟r个时刻,带有角标的a和b就是系数,将上图两边进行z变换,就可以得到下图,

b45248ed024e199ab6f6f828cdaf1661.png

Y(z)就是输出的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值