1

我正在编写一个 Android 应用程序,它可以测量一段时间内相机帧的亮度,并使用傅里叶分析计算心跳以找到波的频率。问题是我的光谱分析如下所示:

光谱分析(y 轴是幅度,x 轴是指数)

这几乎与光谱分析的外观相反(如正态分布)。我可以准确地评估这个以找到最大幅度的指数,还是这个频谱表明我的数据太嘈杂了?

编辑:这是我的相机数据的样子(我正在对此执行 FFT): 当前帧的亮度与时间

4

1 回答 1

0

看起来您在这里遇到了两个问题:

1) FFT 输出通常将负频率的值放在正频率的右侧,这里似乎就是这种情况。因此,您需要将 FFT 的右半部分向左移动,并放在freq=0中间。

2)在评论中你说你正在绘制幅度,但显然不是这种情况(幅度应该大于 0 并且是对称的)。相反,您可能只是在绘制真正的部分。相反,取大小或Re*Re + Im*Im,其中ReIm分别是实部和虚部。(取决于您的数字的形式,例如Math.sqrt(Math.pow(a.re, 2) + Math.pow(a.im, 2))。)

于 2015-11-09T00:17:16.827 回答