【通用滤波算法】
玛丽奥ZJY
这个作者很懒,什么都没留下…
展开
-
学习:通用软件滤波算法-算术平均滤波法
一、处理思想连续采集N组数据,进行算术平均值计算,作为本次数据有效值二、算法实现 #define TARGET_tYPE int #define N 10TARGET_tYPE ADDER = 0; TARGET_tYPE Arithmetic_mean_FILTER(){ for(int i = 0; i < N; i++) { ADDER = ADDER + get_data(); } return (ADDER/N);}原创 2020-10-20 18:41:01 · 776 阅读 · 0 评论 -
学习:通用软件滤波算法-中值滤波
一、处理思想采集N个数据(N为奇数),排序后取中值,作为本次采集的有效值。排序算法此处采用快速排序。二、C实现#include<stdio.h>#include<stdlib.h>#include <time.h> #define TARGET_tYPE int //数据采集函数TARGET_tYPE get_data(){ //随机数 srand(time(NULL)); return rand()%31;原创 2020-10-20 18:38:59 · 388 阅读 · 0 评论 -
学习:通用软件滤波算法-限幅滤波法
一、处理思想设置前后两次数据可允许的最大偏差VARIATION_RANGE,每当有新数据到来时和上一个数据进行比较,若在允许偏差范围内,则本次数据有效,反之则无效,使用上一次数据值代替本次数据。函数设计输入参数:上一个数据,当前采集数据函数输出:当前有效数据二、C语言实现/** 文件名:Filtering_algorithm.c* 作者:JYU_hsy* 描述:前10种为常见滤波算法,较为基础;11为论文<基于无线传感网的弱势群体身体信息监测系统的设计>提到.原创 2020-10-20 18:37:41 · 595 阅读 · 0 评论 -
学习:通用软件滤波算法-前序
一、前言之前使用DS18B20采集温度数据,查看后台数据突然发现了下图的结果由上图得,采集到得温度产生了大于10°C的跳变,而且是到零下,这在室内环境下不可能发生。也就是说,传感器受到了某些干扰,使得采集数据有误。为此,采用软件滤波得方法减少出错得概论。二、常见滤波算法1、限幅滤波法(又称程序判断滤波法)2、中位值滤波法3、算术平均滤波法4、递推平均滤波法(又称滑动平均滤波法)5、中位值平均滤波法(又称防脉冲干扰平均滤波法)6、限幅平均滤波法7、一阶滞后滤波法原创 2020-10-20 18:36:09 · 248 阅读 · 0 评论 -
学习:通用软件滤波算法-递推平均滤波法
一、处理思想回顾一下算术平均滤波法的处理思想:采集N组数据求算术平均值作为单次数据的有效值。假设N为10,采集某组数据时,若第2次采集时环境已发生较大变化,而我们需要再采集8次数据,才能将数据变化反映到有效值上。可以看出改算法的实时性较差。而当N取不同值时,大致有一下规律:N↑ 实时性↓ 滤波平滑度↑为了解决实时性问题,有一种改进算法:递推平均滤波法其处理思想是:设置一个长度为N的队列,将采集到的数据放到队尾,同时丢弃队首数据;以保证队列中的N个数据都为最新数据。再...原创 2020-10-20 18:35:14 · 928 阅读 · 0 评论