
滤波算法
云-生
茕茕孑立,形影相吊。
展开
-
高通滤波
高通滤波1.硬件高通滤波2.软件高通滤波原创 2021-04-28 14:07:16 · 5582 阅读 · 0 评论 -
低通滤波
低通滤波1.硬件低通滤波2.软件低通滤波原创 2021-04-28 13:46:05 · 6501 阅读 · 1 评论 -
限幅消抖滤波
限幅消抖滤波法应用场景适用于采样速率比较慢的系统。原理分析限幅消抖滤波法相当于“限幅滤波法”+“消抖滤波法” 相结合。先限幅,后消抖 。参考代码#define A 200#define N 20typedef int filter_type;//返回两个整数差filter_type num_sub( filter_type a, filter_type b ){ return ( a >= b ? ( a - b ) : ( b - a ) );}原创 2021-04-27 12:45:49 · 1660 阅读 · 0 评论 -
消抖滤波
消抖滤波算法应用场景对于变化缓慢的被测参数有较好的滤波效果, 可避免在临界值附近控制器的反复开/关跳动或显示器上数值抖动。原理分析设置一个滤波计数器,将每次采样值与当前有效值比较:如果采样值=当前有效值,则计数器清零;如果采样值<>当前有效值,则计数器+1,并判断计数器是否>=上限N(溢出);如果计数器溢出,则将本次值替换当前有效值,并清计数器。参考代码#define N 6typedef int filter_type;filter_type fil原创 2021-04-27 12:10:15 · 1433 阅读 · 0 评论 -
加权递推平均滤波
加权递推平均滤算波应用场景适用于有较大纯滞后时间常数的对象和采样周期较短的系统原理分析加权递推平均滤波法是对递推平均滤波法的改进,即不同时刻的数据加以不同的权。通常是,越接近现时刻的数据,权取得越大。给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越低。参考代码define N 12typedef unsigned int filter_type;filter_type coe[N] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 1原创 2021-04-26 21:10:59 · 3353 阅读 · 1 评论 -
一阶滞后滤波
一阶滞后滤波法应用场景一阶滤波无法完美地兼顾灵敏度和平稳度。有时,我们只能寻找一个平衡,在可接受的灵敏度范围内取得尽可能好的平稳度。而在一些场合,我们希望拥有这样一种接近理想状态的滤波算法。即:当数据快速变化时,滤波结果能及时跟进(灵敏度优先)。当数据趋于稳定,在一个固定的点上下振荡时,滤波结果能趋于平稳(平稳度优先)。原理分析一阶滤波,又叫一阶惯性滤波,或一阶低通滤波。是使用软件编程实现普通硬件RC低通滤波器的功能。一阶低通滤波的算法公式为:Y(n)=αX(n) (原创 2021-04-22 20:19:13 · 3459 阅读 · 1 评论 -
限幅平均滤波
限幅平均滤波算法应用场景对于偶然出现的脉冲性干扰,可消除有其引起的采样值偏差。原理分析限幅平均滤波法相当于“限幅滤波法”+“递推平均滤波法”,每次采样到的新数据先进行限幅处理,再送入队列进行递推平均滤波处理。参考代码#define LIMIT 200#define SIZE 20 //返回两个数差typedef unsigned int filter_type;filter_type num_sub( filter_type a, filter_type b )原创 2021-04-22 19:46:15 · 2683 阅读 · 0 评论 -
中位值平均滤波
中位值平均滤波算法应用场景中位值平均滤波法(又称防脉冲干扰平均滤波法),融合了“中位值滤波法”+“算术平均滤波法”两种滤波法的优点。对于偶然出现的脉冲性干扰,可消除由其所引起的采样值偏差。对周期干扰有良好的抑制作用。平滑度高,适于高频振荡的系统。原理分析中值平均滤波就是在采集的N个数据中去掉一个最大值和一个最小值,然后对剩下的数据求平均值。所以这个算法不需要对数据排序,关键是计算最大值,最小值,求和,然后计算平均值。参考代码typedef unsigned short fi原创 2021-04-20 20:10:50 · 6176 阅读 · 0 评论 -
递推平均滤波
递推平均滤波算法应用场景 对周期性干扰有良好的抑制作用,平滑度高; 适用于高频振荡的系统。原理分析 采用队列作为测量数据存储器 , 设队列的长度为 N ,每进行一次测量 ,把测量结果放于队尾, 而扔掉原来队首的一个数据, 这样在队列中始终就有 N 个 “最新” 的数据。当计算平均值时, 只要把队列中的 N 个数据进行算数平均 ,就可得到新的算数平均值。这样每进行一次测量, 就可得到一个新的算术平均值。参考代码/*定义滤波数据类型*/typedef int filter原创 2021-04-17 15:48:21 · 1325 阅读 · 0 评论 -
算术平均滤波
算术平均滤波算法应用场景对于有近似正负偏差的随机干扰,算术平均滤波法可以有效滤除。也就是说待滤波的信号的特点是有一个平均值,信号在某一数值范围附近上下波动。原理分析连续采集N组数据,计算算术平均值,计算结果作为本次数据有效值参考代码typedef int filter_type;/*函数声明*/filter_type filter(filter_type value_buf[], int num);/*算术平均滤波函数,num为value_buf[num]中元素个原创 2021-04-17 11:10:52 · 3199 阅读 · 0 评论 -
中位值滤波
中位值滤波算法应用场景中位值滤波法可以滤除偶然因素引起的脉冲干扰,适用于变化缓慢的采样系统。原理分析对某一被测参数连续采样 n次(一般 n 取奇数) ,然后再把采样值按大小排列 ,取中间值为本次采样值。参考代码/*定义滤波数据类型*/typedef int filter_type;/*函数声明*/filter_type filter_1(filter_type value_buf[], int num);filter_type filter_2(filter_ty原创 2021-04-16 23:24:34 · 1500 阅读 · 0 评论 -
限幅滤波
限副滤波算法应用场景限幅滤波是一种消除随机干扰的有效方法。原理探究比较两个相邻时刻t(n)和t(n - 1)的采样值y(n)和 y(n – 1),根据正常值估计并确定两次采样的最大允许误差。如果两次采样值的差值超过了最大允许误差 ,认为发生了随机干扰 ,并认为后一次采样值y(n)为非法值 ,应予删除 ,删除y(n)后 ,可用y(n – 1) 代替y(n);若未超过所允许的最大偏差范围 ,则认为本次采样值有效。参考程序 /*定义最大允许误差*/#define ERROR_M原创 2021-04-16 22:33:53 · 4936 阅读 · 0 评论