【问题标题】:Algorithm for extracting Heart Rate from raw ECG signal [closed]从原始 ECG 信号中提取心率的算法 [关闭]
【发布时间】:2012-09-05 06:49:56
【问题描述】:

从原始心电信号中提取心率的算法

我有一个以 BDF 格式记录的原始 ECG 信号(也可以使其成为 EDF 或 txt)。现在我必须离线分析它并提取热耗率。

有没有这种算法的 C# 或 C++ 实现?或者至少是伪代码算法。

我自己从头开始做的原因是我想把它整合到一个在线分析系统中。

我找到了以下链接: 低通滤波器:http://en.wikipedia.org/wiki/Low-pass_filter
高通滤波器:http://en.wikipedia.org/wiki/High-pass_filter

...过滤初始数据可能需要它。

还有一个为硬件模块创建的系统,这可能是一个不错的开始: http://www.codeproject.com/Articles/4353/ECG-recording-storing-filtering-and-recognition

【问题讨论】:

  • 低通滤波器 + PLL(锁相环)。
  • 此应用程序并非用于医疗目的,因此您不必如此担心。 @Paul:所以你建议在 PLL 之后,心率将表示为一个相位,或者当检测到相位变化时,这将是心跳的标记
  • @pjercic:不,PLL 频率将等于心率。
  • 这是一个真正的问题 - 似乎被标记为“关闭”。

标签: c# c++ algorithm signal-processing


【解决方案1】:

“Pan, Tompkins”算法实现起来相当简单,并且产生合理的结果。

据我所知,一般的想法是这样的:

典型的 ECG 形状称为 QRS 波群,其中 ECG 中的主要尖峰(又称“R 尖峰”)具有独特的形状,这是大多数人所关注的。 R 尖峰通过“匹配滤波器”(具有类似于尖峰的脉冲响应的滤波器)增强。我认为后来信号通过了微分器。然后在最高峰之后进行了简单的 3 点搜索。 我还记得,该算法有一个“空白期”,没有执行 R-spike 搜索,因为心脏只能跳得这么快......

看看这个:ECG QRS Detection (PDF)

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2015-10-23
  • 1970-01-01
  • 1970-01-01
  • 2015-04-04
  • 2013-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多