如何找到信号的导数和二阶导数的平滑估计?


10

我有一个信号在处采样:其中。我想找到信号的一阶和二阶导数:f'(t)f''(t)Δtfi(ti=iΔt)i=0,,n1f(t)f(t)

我的第一个想法是通过集中差异来估计导数:

f(ti)=f(ti+1)f(ti1)2Δtf(ti)=f(ti+1)2f(ti)+f(ti1)(Δt)2

但是,信号可能会有很多高频噪声,可能会导致ff''的快速波动f

找到ff''的 “平滑”估计值的最佳方法是f什么?

Answers:


6

这可能更多取决于您的数据。只需知道,由于微分是线性运算,因此,如果选择任何线性滤波器来平滑f'和f'',则等效于使用相同的滤波器平滑f,然后取其导数。

您可以张贴一些图片或有关您要区分的信号的更多信息吗?可能您正在寻找某种低通滤波器来平滑信号。几个非常简单的选择包括单极递归滤波器,例如或Hann滤波器,它只是将带有Hann窗口的信号。Hann滤波器选项很好,因为它是线性相位。如果知道您关心的频率范围,则可以在频域中设计一个合适的低通滤波器。y(n)=ax(n)+(1a)y(n1)


谢谢schnarf!因此,由于先进行平滑再进行差分等于先进行差分再进行平滑;我还可以通过例如Hann窗口进行卷积来平滑原始信号?在更大的跨度上使用有限差分的简单方法怎么样:f'(t)〜= [f(t + 10 * Dt)-f(t-10 * Dt)] /(20 * Dt),这会给出一个很好的平滑导数估计?
安迪

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.