【发布时间】:2012-06-10 16:40:34
【问题描述】:
我主要需要一个通用算法,然后将其移植到我的系统(Arduino 板)上,但我很高兴得到继续研究其他方向的提示;
我有一组大约 650 个样本,覆盖 5 秒,代表一个周期信号,但噪声很大;样本来自TAOS230光传感器,信号是基于血流的人体皮肤透明度。
我需要主要/主要信号的频率,这实际上是人类的脉搏。 示例看起来类似于此https://www.dropbox.com/s/fw196r6yf1awhrh/untitled2.bmp
这里有一个包含大约 5k 个样本的转储 https://www.dropbox.com/s/efwvyn5oec7ixgg/samples.txt
谢谢,
亚历克斯
【问题讨论】:
-
计算功率谱并寻找 0.5 Hz - 3 Hz 范围内的最大峰值?
-
FFT 对于 arduino 来说太难了。改用自相关是一种旧算法,但很有用。见:arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1143061795
-
@Eudaid:在如此低的采样率下,Arduino 应该可以毫无问题地实时运行基于 FFT 的算法,并有足够的计算带宽可供使用。
标签: filtering arduino frequency noise-reduction