首页 > 编程知识 正文

平均值滤波的用途及分类(平均值滤波器)

时间:2023-05-05 12:52:07 阅读:75267 作者:3677

1、算法介绍均值滤波算法是一种比较常用、比较简单的滤波算法。 滤波将n个周期的采样值计算为平均值。 算法非常简单。 在n值大的情况下,滤波后的信号比较平滑,但灵敏度差; 相反,在n的值小的情况下,滤波器的平滑化效果低,但是灵敏度好。

优点:算法简单,对周期性干扰有良好的抑制作用,平滑度高,适用于高频振动的系统。

缺点:对异常信号的抑制作用差,不能消除脉冲噪声的影响。

2 .实现代码下的代码是均值滤波的示例代码。

浮动数据[ 10 ]; floataveragefilter (float in _ data ) {float sum=0; for(intI=0; i9; I ) {data[i]=data[i 1]; sum=sum data[i]; }data[9]=in_data; sum=sum data[9]; 返回(Sum/10 ); }在代码中,data[]是全局变量,记录10个循环的采样值。 averageFilter (是筛选函数,其输入是新收集的数据。 函数首先移位数据(data ) ),将新收集的数据存储在数据(data ) )中,同时计算数据(data ) )

3、以下举例说明了均值滤波的效果。 滤波对象为车速信号,滤波效果如下图所示。 图中,横轴为时间、单位:秒,纵轴为速度、单位km/h。 这里,蓝色是滤波前的数据,红色是滤波后的数据。 可以看出,平均值滤波对数据进行了较大的平滑,但数据存在延迟。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。