鼠标平滑滤波_数据平滑方法的原理和应用

本文介绍了数据平滑的三种方法:滑动平均法、指数滑动平均法和SG滤波法。滑动平均法通过平均观测值来滤波,指数滑动平均法具有更好的实时性,而SG滤波法在平滑的同时能更好地保留信号变化。每种方法都有其适用场景和优缺点。
摘要由CSDN通过智能技术生成

d612f7d837930ec5a6582acf8045478c.png

一、简介

在实际的工程应用中,经常会遇到初始结果噪声太多的问题,比如信号强度抖动的太厉害,比如视频流中的bbox抖动的太厉害,比如光谱信号抖动的太厉害等等,这时候就需要一些简单的滑动平均算法。滑动平均其实是一个很朴素的方法,但是要与实际结合,构造出合适的平滑方式,是需要一些思考的。下面我将分别介绍滑动平均法(Moving Average)、指数滑动平均法(Exponential Mean Average)、SG滤波法(Savitzky Golay Filter)。

二、滑动平均法

简单来说,滑动平均法把前后时刻的一共2n+1个观测值做平均,得到当前时刻的滤波结果。这是一个比较符合直觉的平滑方法,在生活中、工作中很经常会用到,但是很少去思考这么做的依据是什么,下面我就来仔细分析一下其中的原理。

对于一个观测序列,我们有这样的假设:每一次的观测值是带有噪声的,而我们期望噪声的均值为0,方差为

,观测值和真实值之间的关系如下:

(1)

其中,

为观测值,
为真实值,
为噪声。为了降低噪声的影响,我们把相邻时刻的观测值相加后平均,公式如下:

(2)

表示
时刻的滤波结果,
表示
时刻的观测值,
代表滑动窗口半径。将公式(1)代入公式(2),可以得到

(3)

前面说到了,我们假设噪声的均值为0,所以

为0,那么我们得到的结果就是:

(4)

当观测数据的真实值变化较小时,或者变化为线性时,可以近似认为:

(5)

从上面的分析过程我们可以看到,当滑动窗口内的真实数据变化不大的时候,我们可以抑制掉很大一部分噪声,滤波结果近似真实值;当滑动窗口内的真实值变化较大时,这种滤波方式就会损失一部分精确度,滤波结果接近真实值的平均期望。所以,窗口的大小会对滤波结果有很大影响。窗口越大,滤波结果越平滑,但会一定程度上偏离真实值;窗口越小,滤波结果越接近观测值,但噪声偏大。

滑动平均法还有一个升级版本,也就是加权滑动平均法。实际场景中,每个观测值的重要程度不同,忽略每个观测值的置信度直接平均不能得到精确的结果,所以就需要给观测值加权。加权滑动平均法的公式如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值