我一直在进行一项研究,根据我们收集信号的方式,我们在信号中意外地收到了不同数量的噪声。现在,我正在努力学习如何滤除噪音,虽然我是相当新的信号处理/清洗。通过一种数据收集方法,我们可以得到更少的噪音,如下所示:

这些是称重物体被移除、操作、然后重新称重的秤上的重量测量,这样就形成了“阶梯级”的模式。其目的是在未来使用这些数据,并使用一种变化检测算法来确定权重变化在哪里(即“阶梯”),用于大量的数据,这使得通过眼睛进行检测是站不住脚的。我想我需要的是一个低通滤波器来去除那些信号非常高的简单的例子。然而,随着另一种形式的收集,我们收到了更多的噪音:

我精通python和R,但不知道从哪里开始清理这些看起来不同的数据,以及如何保存其完整性,以便进行随后的更改检测分析。我想简单地删除高权重值和低权重值,但这会导致更改检测算法的问题。如有任何建议,敬请见谅,并附上样品资料。
发布于 2022-02-08 10:38:15
你可以申请中值滤波器。它将消除测量的小故障和波动,并且只有一个参数可调,即窗口的大小。
from scipy.ndimage import median_filter
import matplotlib.pyplot as plt
plt.figure(figsize=(14, 4))
plt.plot(median_filter(x, 10), label='window=10')
plt.plot(median_filter(x, 100), label='window=100')
plt.legend()
plt.grid()

https://stackoverflow.com/questions/71024707
复制相似问题