回复:平均值滤波之鬼斧神工算法

醉书生

  • 帖子

    718
  • 精华

    25
  • 被关注

    18

论坛等级:侠士

注册时间:2004-06-13

普通 普通 如何晋级?

发布于 2008-01-03 18:04:40

0楼

你这个例子举得非常好,用一个特例一下子点出了本算的关键缺点
队列平均值滤波要求维护一个队列,每采到一个新值入队时,最老的一个采样值要出列。本算法改进后去掉了队列后,就不知道该丢弃的最老的采样值是多少,采取的替代办法是丢弃上次的平均值。所以它会存在一个理论误差:
(C[1] - A) / N
就你这个特例来说,最老的采样值是10,而我们丢弃的是10.5,所以误差为:
(10-10.5) / 2 = -0.25
所以此算法中 N 值不能太小,当N值取得足够大时,这个误差就可以忽略,而由此带来的运算量精简是值得的。实际应用中平均值滤波一般也不会只采2次是吧。而现实中模拟量采入也不可能跟举例中的数字一样精准,它总是存在误差的,所以最终的理论误差在实际误差面前完全可以忽略不计(理论还要结合实践嘛,呵呵)。
本算法基于队列平均值算法,增大N值不会影响稳定时的采样实时性。但增大N值会导致从不稳定到稳定状态的时间变长,所以加入了死区的概念。
而死区的引入同时又导致对尖峰的滤波效果变差,所以最后又加入限幅控制。
经过综合改进后,最终本算法用相对简单的代码,具有队列平均值滤波法+死区法+限幅滤波法综合优点。
生命存在的方式只有两种:腐烂或燃烧
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。