传统的基线漂移去除方法主要有自适应滤波法、卡尔曼滤波法、小 波变换法等。
形态学理论:
形态学滤波是数学形态学中发展而来的一类 非线性滤波技术 , 广泛应用于信号处理、图像分 析等多个领域. 数学形态学建立在严格的数学理论 基础之上, 主要以积分几何、集合代数及拓扑论为 理论基础. 传统的时频域变换方法处理信号可能 会破坏信号特征, 而形态学通过选择适当的结构元 素, 能极大保留信号的形态特征. 形态滤波中最重要的概念是相当于“探针”的 结构元素, 通过移动结构元素考察图像各部分关 系, 采用不同结构元素分析会得到不同结果.
膨胀 与腐蚀是数学形态学中两个基本运算 . 有关形 态学去除基线漂移的研究包括. 由于ECG是一维 信号, 膨胀与腐蚀定义如下:
设信号序列为f : F = {0, 1, · · · , N − 1},
结构 元素k : K = {0, 1, · · · , M − 1}, 且N > M.
信号 f(n)关于结构元素k(m)的膨胀运算定义为 (f ⊕ k)(n) = {f(n − m) − k(m)}, (n = M − 1, M, · · · , N − 1).
信号f(n)关于结构元素k(m)的腐蚀运算定义为 (fΘk)(n) = {f(n + m) − k(m)}, (n = 0, · · · , N − M).
将两种运算级联可推演出开运算(opening operation)和闭运算(closing operation).
开运算定 义为信号被结构元素腐蚀后再进行膨胀运算记 为“◦”, 即 (f ◦ k)(n) = (fΘk ⊕ k)(n).
闭运算定义为信号被结构元素膨胀后再进行腐蚀 运算, 记为“•”, 即 (f • k)(n) = (f ⊕ kΘk)(n).
开运算和闭运算变换是基本的形态学滤波器, 用于探查在信号上方和下方的信息, 其中开运算用 于抑制信号的正脉冲, 闭运算则抑制信号的负脉 冲. 由上式可以看出形态滤波运算由一组简单的加 减、比较等运算组成, 计算量小, 耗时短.
注意:
结构元素是形态学中最重要的滤波参数, 而不 同的形状和尺寸影响结构元素移动所产生的形态变换的性能. 形状、高度及宽度决定了结构元素的 形态特征. 经过验证分析, 提出几个选取结构元素 的基本原则:
1) 形状: 选择的结构元素需尽量匹配处理信 号的几何形状, 常见的结构元素形状是一些简单的 几何形状, 如圆盘形、正方形、菱形等, 对于较为复 杂的信号处理, 也可通过对这些简单几何形状进行 组合.
2) 尺寸: 结构元素的尺寸包括高度与宽度. 其 中宽度是滤波器设计尺寸最主要参数, 由被滤除信 号与有用信号的宽度所决定. 参数的选择应大于被 滤除信号尺寸, 但小于保留信号的尺寸. 或大或小,
1) 第一级形态学滤波.
原始心电信号f0 通过 结构元素k1 进行先闭后开及先开后闭的形态运算,
采用公式f0•k1◦k1 与f0 ◦ k1 • k1,
取二者算术平均 得信号f1.
下式表示算法第一步: f1 = 1 2 [OC(f0, k1) + CO(f0, k1)].
结构元素的设计使得心电信号的波形不被滤 除. 设计形状类似于QRS波波形, 即三角形, 如 图3 (a). 宽度根据采用频率Fs (360 Hz)和特征 波形(QRS 波群)的时间宽度T 来设定, 如表1所 示, QRS 波群为0.06—0.10 s, 结构元素的设计 要小于QRS波信号, 即0.1Fs, 小于被滤除信号. 因原始信号包含一些肌电干扰, 主要为高频信 号, 时间宽度为2—13 ms. 故将结构元素定位为 0.015Fs = 0.015 × 360 ≈ 5 个采样单位, 即结构元 素的宽度M = 5 个采样单位. 因此三角形结构元 素的表达式为 k(n) = H ( 1 − |n| L ) , 其中L与结构元素的宽度M 有关, M = 2L + 1, 所 以L = 2, n = −L, · · · , 0, · · · , L, H 为三角形高度
根据心电信号幅度设置H 值为2, 故所选三角形结 构元素为k1 = {0, 1, 2, 1, 0}.
2) 形态学第二级滤波.
为了矫正心电信号基 线漂移, 需要较大结构元素k2 对信号进行处理. 将 结构元素k2 对f1 进行上述类似运算, 可得到基线 漂移有关信号分量f2, 即 f2 = 1 2 [OC(f1, k2) + CO(f1, k2)]. 结构元素k2 的宽度由心电信号的采样频率Fs 和特征波形的时间宽度T (QRS波群约0.1 s) 所 决定. 用闭运算滤除因开运算加大的负脉冲, 结 构元素宽度要大于脉冲宽度, 需设计较大, 设为 k2 = 1.5Fs · T = 1.5 × 360 × 0.1 = 54, 得到ECG特征波形被滤除, 剩下基线漂移信号, 与原始信号 相减后得到去除基漂的心电信号.
3) 将信号中f1 减去基线漂移信号f2,
得到滤 除噪声后需要的信号f3, 即 f3 = f1 − f2.
完事进行形态学编程。。。。。。
转载:https://blog.csdn.net/chehec2010/article/details/98054466