java - 在 Android 应用程序中实现低通滤波器 - 如何确定 alpha 值?

标签 java android filter signal-processing android-sensors

实现低通滤波器的算法如下(源自维基百科):

for i from 1 to n
   y[i] := y[i-1] + α * (x[i] - y[i-1])

哪里

α = T/(tau + T)

T,是周期,换句话说,是接收数据的时间间隔。 tau 是时间常数,定义为:

tau = RC.

好的,一切都清楚了。每个人似乎都对 α 提出了不同的值,但这让我感到困惑 - 如何才能针对这个值做出合乎逻辑的决定?

当然,R 和 C 的值无法使用 - 或者是吗?

有人知道如何确定 tau 的值,从而确定 α 的值吗?

谢谢大家!

最佳答案

T:采样周期。

tau:时间常数。

fc:滤波器的截止频率。 fc = 1/τ

然后

α = T/( T + 1/fc )

最诚挚的问候!

关于java - 在 Android 应用程序中实现低通滤波器 - 如何确定 alpha 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13243399/

相关文章:

java - 为什么我的 Java 程序中会出现 InputMismatchException?

android - 如何存储Google ARCore主播的位置?

PHP Lame 流过滤器

java - 删除单词字母之间的空格

java - 删除数组中的元素,这些元素是 Java 中其他元素的子串

java.lang.ClassNotFoundException : Didn't find class "java.lang.Character$UnicodeScript" 异常

Android NDK CPU 宏。 ARMv7

java - 如何为 TChart Bar 创建渐变?

ios - 根据对象属性过滤任何对象的数组

java - 在父 Java 类中注入(inject)样板代码