我正在尝试从心电图中读取图像并检测其中的每一个主波(P波,QRS波群和T波).现在我可以读取图像并得到一个像(4.2; 4.4; 4.9; 4.7; ...)这样的矢量代表心电图中的值,这是问题的一半.我需要一种算法,可以遍历此向量并检测每个波的开始和结束时间.
以下是其中一个图表的示例:

如果它们总是具有相同的尺寸会很容易,但它不是很有效,或者如果我知道心电图会有多少波,但它也会有所不同.有没有人有想法?
谢谢!
更新
我想要实现的例子:
鉴于波

我可以提取矢量
[0; 0; 20; 20; 20; 19; 18; 17; 17; 17; 17; 17; 16; 16; 16; 16; 16; 16; 16; 17; 17; 18; 19; 20; 21; 22; 23; 23; 23; 25; 25; 23; 22; 20; 19; 17; 16; 16; 14; 13; 14; 13; 13; 12; 12; 12; 12; 12; 11; 11; 10; 12; 16; 22; 31; 38; 45; 51; 47; 41; 33; 26; 21; 17; 17; 16; 16; 15; …
language-agnostic algorithm pattern-recognition signal-processing machine-learning
我的问题与此类似,但噪音更大。基本上,我想从时间序列中提取重复的“锯”模式。它们看起来像这样:

我没有任何标记数据,但这些模式都有一个共同点。急剧上升,然后缓慢下降,并在一段时间内重复。(也可在图案下方紫色的阶梯函数中识别)。
我怎样才能从一大批不同的时间序列中提取这些模式?最好在 Python 中。我宁愿不花几天时间构建模型,所以越简单越好:)