如何设置加速度数据集的采样频率

信息处理 fft 傅里叶变换 采样 爪哇
2022-02-17 20:40:46

我有一组从基于安卓的智能手机获得的轴上的加速度计读数。中的数据记录在不同的时间戳上,并且没有统一的记录数据的时间段。X,Y,Z(X,Y,Z)

我的数据集看起来像时间戳首先,我对此数据进行了过滤(使用低通),现在想要在 1 分钟的时间窗口上执行,或者可能是包含 250 个样本的窗口(不太确定窗口长度)。我在 Java 中使用此类apache commons。X,Y,ZFFT FastFourierTransform

我得到幅度,但我想知道如何知道每个 mag 的相应频率。我知道相应的频率是,其中是 bin 编号或数据点索引,是采样频率,是窗口上的输入数据点数。现在我的问题是我如何知道例如,数组中的输入数据为毫秒的窗口上,FFTFFT(nFs)/NnFsNFs[1234567]NtNt=(lastTimeStampfirstTimeStamp)

吗?7(Nt102)Hz

如果这与奈奎斯特采样频率一致,这也会立即执行吗?这在信号中表示并且我不知道时间窗口上的最大频率。Fs2FmaxNt

1个回答

如果您在样本之间没有统一的时间段(或几乎没有),那么您就没有采样率,并且 FFT 结果很可能是垃圾。

如果您在采样之前不知道信号的奈奎斯特频率,那么采样可能已经被混叠污染了。

如果样本相对于信号频谱中的最高频率足够接近,那么您可以插入一组新的均匀间隔样本,然后这些样本将具有已知的采样率(基于新的均匀间隔的距离)。