心脏BPM规范化 - Matlab

时间:2016-06-10 09:04:41

标签: matlab

我有两个.wav文件包含两个不同心脏的录音,因此心率不同。我想对两个信号进行标准化,以便将其BPM修复为60而不修改任何其他信号。

这是一个信号的读取方式(另一个信号是2)和它看起来像(和它的FFT):

[y1,fs1] = audioread(heartbeat1);
    N1 = length(y1);
    t1 = linspace(0, N1/fs1, N1);

enter image description here 我做了一些研究并发现了interp1,但它似乎不适合我的程序。我真的不知道如何做到这一点,所以如果你能提供一个我可以使用它的功能就可以了。

1 个答案:

答案 0 :(得分:1)

我不确定我是否明白。

我想你想比较两个心跳信号与不同的"主要"心跳频率。所以我认为你可以将两个信号绘制为

的函数
  

f / f_ {beat}

其中f_ {beat}是信号的心跳频率。这将是一个维度(它没有单位,因为1 / s / 1 / s = 1)频率,并且应该允许您比较具有不同心跳频率的信号,因为它不会使其失真。

这或多或少是我建议的效果。请注意,我不知道计算心跳频率,我只使用f_ {beat} = 0.8 1 / s。可能你可以改善它。

信号作为频率的函数:

enter image description here

信号作为二维频率的函数:

enter image description here

希望这会有所帮助。