一种基于稀疏矩阵消除ECG信号基线漂移的方法技术

技术编号:19640473 阅读:43 留言:0更新日期:2018-12-05 17:31
本发明专利技术公开一种基于稀疏矩阵消除ECG信号基线漂移的方法,将ECG峰值信号建模为稀疏矩阵,将基线信号建模为低通信号,通过稀疏矩阵算法计算消除基线漂移后的ECG信号和基线,具有易操作,运行速度快,心电信号图不易失真的优点,以零刻度为基线消除基线漂移,真正的达到了ECG信号消除基线漂移的目的,且有利用QSR波检测。通过稀疏矩阵的稀疏表示降低了数据复杂度,可以充分发挥数据所含有的信息,去掉冗杂的数据信息,达到最大化利用数据。

A Method of Eliminating Baseline Drift of ECG Signal Based on Sparse Matrix

The invention discloses a method for eliminating baseline drift of ECG signal based on sparse matrix. The peak ECG signal is modeled as a sparse matrix, the baseline signal is modeled as a low-communication signal, and the ECG signal and baseline after eliminating baseline drift are calculated by sparse matrix algorithm. The method has the advantages of easy operation, fast running speed and non-distortion of ECG signal graph. The advantage of using zero scale as baseline to eliminate baseline drift is that ECG signal can eliminate baseline drift, and QSR wave is used to detect it. The sparse representation of sparse matrix reduces the complexity of data, can give full play to the information contained in the data, remove the redundant data information, to maximize the use of data.

【技术实现步骤摘要】
一种基于稀疏矩阵消除ECG信号基线漂移的方法
本专利技术涉及一种消除ECG信号中基线漂移的方法,特别涉及一种基于稀疏矩阵消除ECG信号基线漂移的方法。
技术介绍
心电图(electrocardiogram,ECG)是有关心脏活动相关的电位变化图。ECG心电信号中的基线漂移噪声干扰问题由来已久,主要是由被记录者呼吸时引起的,无法避免。基线漂移会抬高ECG心电图ST波段,造成心电轨迹的严重失真,从而影响了正常的医学判断。目前国内外已提出并应用了很多消除ECG信号基线漂移的方法,滤波法及拟合基漂法是两类主要的方法。其中滤波法抑制和防止干扰的一类重要算法,拟合基漂法是通过得到相应参考点再拟合基线的一种算法。高通滤波法设计时需要的滤波阶数特别大,计算量大,同时易导致ECG波形的失真,其中基于小波理论的小波阈值法,阈值选取对信号影响很大且操作复杂。EMD分解法虽然克服了小波变换中阈值取值困难的问题,但分解重组的心电信号失真比较严重,使得分解结果失去了意义。而拟合基漂法在处理较大的漂移ECG波形信号时效果不佳,不能达到良好的消除基线漂移的效果。
技术实现思路
本专利技术要解决的技术问题是提供一种基于稀疏矩阵消除ECG信号基线漂移的方法,消除ECG信号中的基线漂移,并保持ECG信号的真实度。为了解决所述技术问题,本专利技术采用的技术方案是:一种基于稀疏矩阵消除ECG信号基线漂移的方法,包括以下步骤:S01)、加载心电数据,心电数据以矩阵S的形式输入,矩阵S为N行1列的数据,提取矩阵S的全部数据为y,N=length(y),表示载入数据的长度;S02)、设置滤波器的截止频率fc,滤波阶数d,比率系数r,并设置约束参数α和λ;S03)、计算带状稀疏矩阵A、B,计算过程为:设置参数矩阵a1、b1,定义Omc=2*π*fc,t=((1-cos(omc))/(1+cos(omc)))d,然后分别对矩阵a1、b1循环进行d次卷积运算得到a2、b2,然后b2与[-11]作卷积运算得到矩阵b,矩阵a=b+t*a2,利用矩阵a、b作关于A、B矩阵的稀疏运算,得到两个N*N阶的稀疏带状矩阵A、B,将矩阵B与B的转置矩阵相乘得到参数矩阵BTB,并求A的逆矩阵A-1;S04)、计算矩阵D,设e为N-1行1列的全为1的矩阵,通过矩阵e生成(N-1)*N阶的稀疏矩阵D1及(N-2)*N阶的稀疏矩阵D2,矩阵D1、D2行组合成(2N-3)*N阶的矩阵D,并求D的逆矩阵D-1;S05)、设高通滤波矩阵H=B*(A/x),x表示消除基线漂移后的ECG信号;S06)、设Lambda是2N-3阶的稀疏矩阵,Lambda中的非零元素为步骤1中提取的数据y,Gamma为主对角线全为1、其余元素均为0的N阶稀疏矩阵,设参数矩阵M=2*λ*Gamma+D-1*Lambda*D;则消除基线漂移后的ECG信号x=A*((BTB+A-1*M*A)/D),S07)、设置算法迭代次数Nit,i=1,2,3….Nit,从i=1开始循环执行步骤S06,直至i>Nit或者xn<g时停止循环,xn为x连续两次循环的差值,g为设定的阈值,执行上述循环得到的x就是消除基线漂移后ECG信号,x=[x0,x1......xn-1]T,基线f=y-x-H(y-x)。利用矩阵a、b得到矩阵A、B的过程:设A、B为两个N*N阶的稀疏矩阵,进一步的,利用矩阵a、b得到矩阵A、B的过程为:将A的主对角线设置为矩阵a的非零元素,B的主对角线设置为矩阵b的非零元素,其余部分为0。进一步的,利用矩阵e得到矩阵D1、D2的过程为:设D1为(N-1)*N阶的稀疏矩阵,D2为(N-2)*N阶的稀疏矩阵,将D1、D2的主对角线设置为矩阵e的非零元素,其余部分为0。进一步的,步骤S02中,截止频率fc=0.006,滤波阶数d=1,比率系数r=6,约束参数α=0.8,λ=0.5α。进一步的,步骤S01中,N为6468。本专利技术的有益效果:本专利技术算法具有易操作,运行速度快,心电信号图不易失真的优点,以零刻度为基线消除基线漂移,真正的达到了ECG信号消除基线漂移的目的,且有利用QSR波检测。通过稀疏矩阵的稀疏表示降低了数据复杂度,可以充分发挥数据所含有的信息,去掉冗杂的数据信息,达到最大化利用数据。附图说明图1为消除基线漂移后的ECG信号图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步的说明。实施例1本实施例公开一种基于稀疏矩阵消除ECG信号基线漂移的方法,具体包括以下步骤:S01)、加载心电数据,心电数据以矩阵S的形式输入,矩阵S为N行1列的数据,提取矩阵S的全部数据为y,N=length(y),表示载入数据的长度;S02)、设置滤波器的截止频率fc,滤波阶数d,比率系数r,并设置约束参数α和λ;S03)、计算带状稀疏矩阵A、B,计算过程为:设置参数矩阵a1、b1,定义Omc=2*π*fc,t=((1-cos(omc))/(1+cos(omc)))d,然后分别对矩阵a1、b1循环进行d次卷积运算得到a2、b2,然后b2与[-11]作卷积运算得到矩阵b,矩阵a=b+t*a2,利用矩阵a、b作关于A、B矩阵的稀疏运算,得到两个N*N阶的稀疏带状矩阵A、B,将矩阵B与B的转置矩阵相乘得到参数矩阵BTB,并求A的逆矩阵A-1;S04)、计算矩阵D,设e为N-1行1列的全为1的矩阵,通过矩阵e生成(N-1)*N阶的稀疏矩阵D1及(N-2)*N阶的稀疏矩阵D2,矩阵D1、D2行组合成(2N-3)*N阶的矩阵D,并求D的逆矩阵D-1;S05)、设高通滤波矩阵H=B*(A/x),x表示消除基线漂移后的ECG信号;S06)、设Lambda是(2N-3)阶的稀疏矩阵,Lambda中的非零元素为步骤1中提取的数据y,Gamma为主对角线全为1、其余元素均为0的N阶矩阵,设参数矩阵M=2*λ*Gamma+D-1*Lambda*D;则消除基线漂移后的ECG信号x=A*((BTB+A-1*M*A)/D),S07)、设置算法迭代次数Nit,i=1,2,3….Nit,从i=1开始循环执行步骤S06,直至i>Nit或者xn<g时停止循环,xn为x连续两次循环的差值,g为设定的阈值,执行上述循环得到的x就是消除基线漂移后ECG信号,x=[x0,x1......xn-1]T,基线信号f=y-x-H(y-x)。S07)、设置算法迭代次数Nit,i=1,2,3….Nit,从i=1开始循环执行步骤S06,直至i>Nit或者xn<g时停止循环,xn为x连续两次循环的差值,g为设定的阈值,执行上述循环得到的x就是消除基线漂移后ECG信号,x=[x0,x1......xn-1]T,基线f=y-x-H(y-x),H(y-x)代表高通滤波矩阵,使用步骤S05的公式。本实施例中,利用矩阵a、b得到矩阵A、B的过程为:将A的主对角线设置为矩阵a的非零元素,B的主对角线设置为矩阵b的非零元素,其余部分为0。本实施例中,利用矩阵e得到矩阵D1、D2的过程为:设D1为(N-1)*N阶的稀疏矩阵,D2为(N-2)*N阶的稀疏矩阵,将D1、D2的主对角线设置为矩阵e的非零元素,其余部分为0。本实施本文档来自技高网...

【技术保护点】
1.一种基于稀疏矩阵消除ECG信号基线漂移的方法,其特征在于:包括以下步骤:S01)、加载心电数据,心电数据以矩阵S的形式输入,矩阵S为N行1列的数据,提取矩阵S的全部数据为y,N=length(y),表示载入数据的长度;S02)、设置滤波器的截止频率fc,滤波阶数d,比率系数r,并设置约束参数α和λ;S03)、计算带状稀疏矩阵A、B,计算过程为:设置参数矩阵a1、b1,定义Omc=2*π*fc,t=((1‑cos(omc))/(1+cos(omc)))d,然后分别对矩阵a1、b1循环进行d次卷积运算得到a2、b2,然后b2与矩阵[‑1 1]作卷积运算得到矩阵b,矩阵a=b+t*a2,利用矩阵a、b作关于A、B矩阵的稀疏运算,得到两个N*N阶的稀疏带状矩阵A、B,将矩阵B与B的转置矩阵相乘得到参数矩阵BTB,并求A的逆矩阵A‑1;S04)、计算矩阵D,设e为N‑1行1列的全为1的矩阵,通过矩阵e生成(N‑1)*N阶的稀疏矩阵D1及(N‑2)*N阶的稀疏矩阵D2,矩阵D1、D2行组合成(2N‑3)*N阶的矩阵D,并求D的逆矩阵D‑1;S05)、设置高通滤波矩阵H=B*(A/x),x表示消除基线漂移后的ECG信号;S06)、设Lambda是(2N‑3)阶的稀疏矩阵,Lambda中的非零元素为步骤1中提取的数据y,Gamma是主对角线全为1、其余元素均为0的N阶矩阵,参数矩阵M=2*λ*Gamma+D‑1*Lambda*D;则消除基线漂移后的ECG信号x=A*((BTB+A‑1*M*A)/D),S07)、设置算法迭代次数Nit,i=1,2,3….Nit,从i=1开始循环执行步骤S06,直至i>Nit或者xn...

【技术特征摘要】
1.一种基于稀疏矩阵消除ECG信号基线漂移的方法,其特征在于:包括以下步骤:S01)、加载心电数据,心电数据以矩阵S的形式输入,矩阵S为N行1列的数据,提取矩阵S的全部数据为y,N=length(y),表示载入数据的长度;S02)、设置滤波器的截止频率fc,滤波阶数d,比率系数r,并设置约束参数α和λ;S03)、计算带状稀疏矩阵A、B,计算过程为:设置参数矩阵a1、b1,定义Omc=2*π*fc,t=((1-cos(omc))/(1+cos(omc)))d,然后分别对矩阵a1、b1循环进行d次卷积运算得到a2、b2,然后b2与矩阵[-11]作卷积运算得到矩阵b,矩阵a=b+t*a2,利用矩阵a、b作关于A、B矩阵的稀疏运算,得到两个N*N阶的稀疏带状矩阵A、B,将矩阵B与B的转置矩阵相乘得到参数矩阵BTB,并求A的逆矩阵A-1;S04)、计算矩阵D,设e为N-1行1列的全为1的矩阵,通过矩阵e生成(N-1)*N阶的稀疏矩阵D1及(N-2)*N阶的稀疏矩阵D2,矩阵D1、D2行组合成(2N-3)*N阶的矩阵D,并求D的逆矩阵D-1;S05)、设置高通滤波矩阵H=B*(A/x),x表示消除基线漂移后的ECG信号;S06)、设Lambda是(2N-3)阶的稀疏矩阵,Lambda中的非零元素为步骤1中提取的数据y,Gamma是主对角线全为1、其余元素均为0的N阶矩阵,参数矩阵M=2*λ*Ga...

【专利技术属性】
技术研发人员:舒明雷王枭王英龙朱清杨美红杨明董安明
申请(专利权)人:山东省计算中心国家超级计算济南中心
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1