gpt4 book ai didi

java - 如何使用java实现低通滤波器

转载 作者:IT老高 更新时间:2023-10-28 21:11:26 24 4
gpt4 key购买 nike

我正在尝试在 Java 中实现低通滤波器。我的要求很简单,我必须消除超出特定频率的信号(单维)。看起来巴特沃斯过滤器适合我的需要。

现在重要的是 CPU 时间应该尽可能低。过滤器必须处理近一百万个样本,我们的用户不喜欢等待太久。是否有任何现成的巴特沃斯滤波器实现,它具有最佳的滤波算法。

最佳答案

我有一个页面描述了一个非常简单、非常低 CPU 的低通滤波器,它也能够独立于帧速率。我用它来平滑用户输入,也经常用于绘制帧速率。

http://phrogz.net/js/framerate-independent-low-pass-filter.html

简而言之,在您的更新循环中:

// If you have a fixed frame rate
smoothedValue += (newValue - smoothedValue) / smoothing

// If you have a varying frame rate
smoothedValue += timeSinceLastUpdate * (newValue - smoothedValue) / smoothing

1smoothing 值不会导致平滑发生,而较高的值会越来越平滑结果。

该页面有几个用 JavaScript 编写的函数,但公式与语言无关。

关于java - 如何使用java实现低通滤波器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4026648/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com