actionscript 3 - 在不增加延迟的情况下过滤实时数据中的峰值



我需要在不引入任何延迟的情况下"平滑"OSC输入数据,即删除峰值。我能想到的唯一策略是存储前面的样本,与当前进行比较,如果电流与前一个样本的差异超过某个"增量"值,则忽略它。虽然我使用的是 Actionscript,但无论如何都应该适用相同的原则。

任何人都可以提出任何替代策略吗?

我脑海中的想法:

  • 使用以前的值检查新值并丢弃异常值(≥增量)。
  • 用前 N 个值的平均值(例如 10)检查新值。
  • 使用有偏差的运行平均值平滑整个曲线,其中平均值是每个点的值。 avg = (1 - T)*avg + T*newValue

最新更新