卡尔曼滤波模型在峰值检测中的应用

2024-05-19 03:39:24 发布

您现在位置:Python中文网/ 问答频道 /正文

对于我的评估,我想使用PyKalman过滤器库。我已经创建了一个非常小的时间序列数据,有三列格式如下。由于我无法在stackoverflow上附加文件,因此将完整的数据集附加到此处以提高可复制性:

http://www.mediafire.com/file/el1tkrdun0j2dk4/testdata.csv/file

  time        X      Y
 0.040662  1.041667  1
 0.139757  1.760417  2
 0.144357  1.190104  1
 0.145341  1.047526  1
 0.145401  1.011882  1
 0.148465  1.002970  1
 ....      .....     .

我已经阅读了Python的the PyKalman library documetation,并设法使用Kalman Filter做了一个简单的线性过滤,下面是我的代码

^{pr2}$

下面的图作为输出

enter image description here

从图和我的dataset可以看出,我的输入是非线性的。因此,我想使用Kalman Filter,看看是否可以检测并跟踪过滤后的信号滴(上图中的蓝色)。但由于我对Kalman Filter太陌生了,我似乎很难理解数学公式并开始学习{}。我在PyKalman UKF的基本用法上找到了一个很好的例子,但是它没有说明如何定义下降(峰值)的百分比。因此,我将感谢任何帮助,至少可以检测到从过滤后的峰值下降的幅度有多大(例如,图中蓝线之前下降的50%或80%)。任何帮助都将不胜感激。在


Tags: 数据http过滤器www格式时间序列filter

热门问题