不同长度分箱数据的FFT分析

信息处理 fft 频谱
2022-02-04 09:35:57

我正在进行实验,从放置在移动平台上的风速计收集风速数据。紧密地,有一个固定的风桅杆,上面挂着一个风向标。在分析来自移动平台的风数据之前,我将数据与 1 分钟的平均风向进行了分类。每个 bin 包含许多连续的数据集(Set 1、Set 2、Set 3 等),它们可能不一定具有相同数量的数据点。例如,Set 1 有 20,000 个数据点,Set 2 有 6,000 个数据点,等等。

我正在对每个集合执行 FFT 以检测信号中的任何周期性。我正在绘制 y 轴上信号中存在的正弦波的实际幅度与正弦波频率的关系。每个数据集的 FFT 在 y 轴上产生不同的幅度结果,我不确定这是否是阵列长度不同的结果。我对光谱 y 轴的平均值感兴趣。但是,由于数组大小不同,我不认为只计算平均值是合适的。有人可以建议一种方法吗?我不习惯以这种方式分析信号,所以我有点困惑。非常感谢。

1个回答

假设您有几个数据集xiNi是的长度i数据集。

首先,您是对的,FFT 输出的幅度随其长度而变化。为了标准化所有数据集,它们必须除以Ni. (请注意,根据 FFT 的实施,可能已经涉及缩放,请查看文档或查看此问题

要组合所有数据集,您应该附加(maxiNi)Ni在进行 FFT 之前将每个数据集归零。然后频率轴正确对齐,您可以计算所有 FFT 输出的平均值。

顺便说一句,我会绘制 FFT 输出的绝对值,而不是实部。有时我发现通过平均每个M相邻的 FFT 箱。最后,我假设每组的数据都是在等距的时间步长上获取的,否则 FFT 根本不适用。