首页 > 解决方案 > QRS 检测算法

问题描述

QRS 检测

嗨,图像显示了 QRS 检测算法。我正在尝试用 python 编写代码。我已经应用 np.diff 来计算一阶和二阶导数。但是,我无法计算

Yz(n) = 1.3Yo(n) + 1.1Yi(n)

请帮忙。

标签: python

解决方案


如果您将第一个和第二个导数作为函数(y0(n)y1(n))并且您引用最后一行(y2(n)=1.3*y0(n)+1.1*y1(n)),那么我在指定这个相当简单的算术运算时看不到问题:

def y2(n): 
    return 1.3*y0(n)+1.1*y1(n)

如果你只是计算一个特定的 n,那么它更容易用1.3*y0+1.1*y1.

更新:对于列表,这看起来像这样:

import random

# number of samples
N = 100

# random samples
random.seed(1)
x = [random.randint(1,100) for i in range(0,N)]

# let first 2/4 values be undefined for simpler access over index
y0 = [float("NaN") for i in range (0, 2)] + [abs(x[i]-x[i-2]) for i in range(2, N)]
y1 = [float("NaN") for i in range (0, 4)] + [abs(x[i]-2*x[i-2]+x[i-4]) for i in range(4, N)]
y2 = [float("NaN") for i in range (0, 4)] + [1.3*y0[i] + 1.1*y1[i] for i in range(4,N)]

print(y2)

推荐阅读