递推平均滤波

原创 2017年01月03日 16:52:49

数据波动比较大,但又希望延迟比较小,可以尝试使用递推平均滤波

#define filter_num 5
float recursive_average_filter(uint16_t filter_object)
{	
    uint32_t sum = 0;         
    float temp = 0;	
	static uint16_t filter_buf[filter_num + 1]; 
    filter_buf[filter_num] = filter_object;
    for(char i = 0; i < filter_num; i++){
		filter_buf[i] = filter_buf[i + 1]; // 所有数据左移,低位扔掉
        sum += filter_buf[i];
    }
    temp = ((float)sum / filter_num);
    return temp;
}

滤波效果如下图:


版权声明:本文为博主原创文章,未经博主允许不得转载。

递推平均滤波法(又称滑动平均滤波法)demo code

/* A、名称:递推平均滤波法(又称滑动平均滤波法) B、方法: 把连续取得的N个采样值看成一个队列,队列的长度固定为N, 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据(先进先出原则...
  • fz835304205
  • fz835304205
  • 2016年09月14日 10:46
  • 3512

十大滤波算法程序大全

转载请注明出处:http://www.geek-workshop.com/thread-7694-1-1.html 1、限幅滤波法(又称程序判断滤波法) 2、中位值滤波法 3、算术平...
  • woqin1990
  • woqin1990
  • 2016年02月23日 23:32
  • 20707

// 递推平均滤波法(又称滑动平均滤波法)

// 递推平均滤波法(又称滑动平均滤波法) #define FILTER_N 12 int filter_buf[FILTER_N + 1]; int Filter()  { int i; ...
  • Sun19910114
  • Sun19910114
  • 2016年10月20日 14:31
  • 628

各种滤波算法的比较

原文地址:http://www.wtoutiao.com/p/1fe9dPI.html  各种滤波算法的比较 数字滤波(digital filtering):数...
  • wangweijjj
  • wangweijjj
  • 2016年06月20日 15:42
  • 11695

matlab读取txt文件数据,然后限幅+递推平均滤波

  • 2013年04月20日 14:11
  • 3KB
  • 下载

10种简单的滤波算法

10种滤波算法 及 例子c代码(来自于互联网) 经常有朋友们提起传感器采样的时候数据会抖动,会跳动, 这时候需要一些滤波算法; 1、限幅滤波法(又称程序判断滤波法) 2、中位值滤波法 ...
  • a78460750
  • a78460750
  • 2014年11月22日 13:23
  • 1534

对一维向量中值滤波

function flux_out = meanfilter(lamda, flux, w) % Author:shizhixin % Email:szhixin@gmail.com % Blog:h...
  • ShiZhixin
  • ShiZhixin
  • 2012年03月11日 14:18
  • 4430

均值滤波、中值滤波的matlab实现

目前比较经典的图像去噪算法主要有以下三种:   均值滤波算法:也称线性滤波,主要思想为邻域平均法,即用几个像素灰度 的平均值来代替每个像素的灰度。有效抑制加性噪声,但容易引起图像模糊, 可以对...
  • timidsmile
  • timidsmile
  • 2011年10月25日 20:26
  • 77965

【信号】用matlab实现一维信号的高斯滤波

1.从正态分布说起高斯滤波使用的是高斯函数,即我们熟悉的正态分布的概率密度函数: f(x)=1σ2π−−√exp(−(x−μ)22σ2) f(x)=\frac{1}{\sigma \sqrt{2\p...
  • shanchuan2012
  • shanchuan2012
  • 2016年11月07日 20:57
  • 9209

一维中值、均值、高斯滤波的MATLBA实现

中值滤波的代码: x=0:2047; a=load('data.txt');  %运行时data.txt文件要放到当前目录(current directory)中 n=5; % n为模板长度,值可以改...
  • Jing_xian
  • Jing_xian
  • 2014年05月21日 13:49
  • 9954
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:递推平均滤波
举报原因:
原因补充:

(最多只允许输入30个字)