算术平均滤波法适用于对一般的具有随机干扰的信号进行滤波。这种信号的特点是信号本身在某一数值范围附近上下波动 ,如测量流量、液位;
        基本方法:按输入的N 个采样数据,寻找这样一个 Y ,使得 Y 与各个采样值之间的偏差的平方和最小。
        编写算术平均滤波法程序时严格注意:
                一、为了加快数据测量的速度,可采用先测量数据存放在存储器中 ,测完 N 点后 ,再对 N 个数据进行平均值计算;
                二、选取适当的数据格式,也就是说采用定点数还是采用浮点数。

其程序如下所示:

#include <stdio.h>// 定义滤波数据类型
typedef int filter_type;
// 函数声明
filter_type filter(filter_type value_buf[], int num);
// 算术平均滤波函数
filter_type filter(filter_type value_buf[], int num)
{int sum, i;sum = 0;for(i=0; i<num; i++)sum += value_buf[i];return (filter_type)(sum/num);
}
//打印测试
void main()
{filter_type ave;filter_type a[5]= {55, 44, 88, 99, 11};ave = filter(a, sizeof(a)/sizeof(filter_type));printf("%d", ave);
}

输出结果:(55+44+88+99+11)/5 = 59.4

滤波算法 | 算术平均滤波法相关推荐

  1. 通用软件滤波算法-算术平均滤波法

    一.处理思想 连续采集N组数据,进行算术平均值计算,作为本次数据有效值 二.算法实现 #define TARGET_tYPE int#define N 10 TARGET_tYPE ADDER = 0 ...

  2. 滤波算法——均值滤波,中值滤波,一阶(αβ)滤波,卡尔曼滤波

    滤波算法--均值滤波,中值滤波,一阶(αβ)滤波,卡尔曼滤波 因工作涉及到数据滤波(滤噪)处理,汇总了一些网上简单的滤波算法,方便日后查看. 滤波算法包括:均值滤波,中值滤波,一阶(αβ)滤波,卡尔曼 ...

  3. c语言 算术平均滤波法_基本C语言滤波算法

    11种软件滤波方法的示例程序 假定从8位AD中读取数据(如果是更高位的AD可定义数据类型为int),子程序为get_ad(); 1.限副滤波 /*  A值可根据实际情况调整 value为有效值,new ...

  4. 单片机ADC采样算法----中位值滤波法

    中位值滤波法就是通过连续采样奇数个数据,然后对数据从小到大排序,取中间的值做为本次采样值. 下面看C代码的实现 #define M 11unsigned int filter2( void ) {un ...

  5. 单片机ADC采样算法----限幅滤波法

    限幅滤波法就是通过软件来限制本次采样值的上次采样值的偏差,若本次采样值和上次采样值的偏差超过了设定的最大偏差值,则丢弃本次的采样值. 下面看C代码的实现 //返回两个整数差 unsigned int ...

  6. 在线激活流程研究, 芯片杂烩, 软件滤波算法

    在线激活流程研究 在世界范围内,软件的盗版问题都是个令程序员苦恼的问题.相应的,很多反盗版的措施也就应运而生.其中以输入序列号.激活码的产品激活策略应用最为广泛.本文就从流程的角度粗略的描述一下这个过 ...

  7. 我的第一篇文章——stm32的ADC+DMA+滤波算法

    stm32的ADC+DMA+滤波算法 一 工程目的 (1)外设配置 (2)源码 头文件 主文件 二 调试过程遇到的问题 1 如果打开中断 2 无法打开ADC 3 变量无法赋值 三 参考资料 四 写在最 ...

  8. 自动驾驶 - 滤波算法

    自动驾驶 - 滤波算法 目前比较常用的滤波算法有: 平均值滤波算法 中位值滤波算法 一阶滤波算法 卡尔曼滤波算法 1. 平均值滤波算法 1.1. 算法介绍 平均值滤波算法是比较常用,也比较简单的滤波算 ...

  9. TM7711高精度厨房秤滤波算法

    AD芯片采样TM7711,该芯片支持24位的AD转换,我们做0.1g的厨房秤,所以至少使用21~22位才行,21位时0.1g对应7.5个内码左右,22位时0.1g对应15个内码左右.这里我们使用22位 ...

最新文章

  1. windows调用ubuntu下的sublimeText2环境搭建
  2. linux安装jdk1.7
  3. facade 提供一个接口,通过这个接口,可以使一个子系统更容易使用。
  4. php向数据库添加数据失败,无法从PHP中的表单向数据库添加数据
  5. Java商场对顾客年龄,购物中心客群调查:不同年龄层消费者进商场都干嘛?
  6. log4net使用详解 .
  7. python解释器环境中用于表示上一次运算结果的特殊变量_判断正误 PUSH CL_学小易找答案...
  8. python3的socket_python3的socket使用
  9. ASP.Net 2 入门(一)――用户登录和注销
  10. com口驱动_四足机器人FOC驱动器篇1:Odrive Moco接口板套件介绍
  11. svnadmin hotcopy整库拷贝方式(转载)
  12. codecombat极客战记森林61-70通关代码
  13. 假设你毕业后有两个选择:一个是在某处找工作,另一个是自己创业。你要做决定。写一篇文章解释你的决定的理由
  14. 得到头条【四线城市宜宾,靠什么逆袭?】
  15. python基础19-36题
  16. 原生js实现贪食蛇小游戏
  17. BiFunction介绍
  18. 2022广东省安全员C证第三批(专职安全生产管理人员)考试题库及模拟考试
  19. 系统调用功能号与execve函数详解
  20. MySQL批量入库的几种方式详解

热门文章

  1. 心中的完美的E680I[文字]
  2. 苹果x有android文件夹,iOS有大变化:新增像安卓手机的文件管理夹
  3. 广电行业三网融合进程中的云计算
  4. 「企微导购」赋能企微智慧零售,助力商家玩转私域流量!
  5. 诺基亚透露未来摄像头创新技术
  6. 语法错误 : 缺少 “ ; ” (在 “ ” 的前面)
  7. 月薪 60k*16薪,看看人家的项目经验和技术能力...,绝了
  8. php 会议管理系统,基于PHP国际会议投稿管理系统
  9. 前置器\MX2034-01-06-09-05-02-078-00变送器\ST5484E-121-132-00
  10. 富文本编辑器 数据 转义 简单 高效