掌桥专利:专业的专利平台
掌桥专利
首页

基于Savitzky-Golay滤波器的肌电信号电刺激伪迹在线滤除系统及方法

文献发布时间:2024-04-18 20:02:18


基于Savitzky-Golay滤波器的肌电信号电刺激伪迹在线滤除系统及方法

技术领域

本发明主要涉及医疗技术领域,尤其涉及一种基于Savitzky-Golay滤波器的肌电信号电刺激伪迹在线滤除系统及方法。

背景技术

目前,在电刺激+肌电信号反馈的研究中,绝大多数都使用分离式电极,即电刺激输出和肌电信号的采集各需一对电极,贴放在同一块肌肉的不同位置。在这种布局方式下,2对电极的相对位置关系难以确定,不同的电极位置会对诱发肌电信号的采集造成影响,也为电刺激伪迹的滤除带来麻烦。此外,对于上肢小臂的一些肌肉,贴放两对电极或做到期望的布局是不现实的,这就使得当前的分离式电极方案只能应用于体积较大的肌肉(如上肢肱二头肌和下肢肌肉),限制了其在上肢康复训练中的应用。

前人提出的诱发肌电信号中电刺激伪迹抑制方法,绝大多数都是针对分离式电极而言,而对一体式电极不适用。原因在于在一体式电极方案中,电极-人体皮肤组织之间的电容效应会使得电刺激脉冲结束后电极两端电荷积累且释放缓慢,即使使用硬件短接屏蔽的方法,也难以及时消除该电势差,这会导致肌电采集时输入端运放饱和,或使得采集到的信号远高于正常肌电幅值。而在分离式电极方案中,肌电采集电极两端几乎没有电刺激电流产生的积累电荷,电刺激伪迹幅值更小,通过软硬件屏蔽可以消除明显的尖峰伪迹,剩余信号相比正常肌电幅值幅值差异不大,可以进一步用特定算法滤除。

因此,有必要针对一体式电极设计更适用的电刺激伪迹去除方法,从中提取出患者自主发力产生的肌电信号。在该方案中,通过软硬件屏蔽后的信号仍然由伪迹信号所主导,幅值在数百mV,远高于正常肌电信号幅值范围,伪迹信号呈连续指数衰减的变化规律,类似于电容放电的过程。尽管信号被刺激伪迹主导,但是肌电信号并没有被淹没,而是叠加在连续衰减的伪迹信号之上,如果采取合适的手段扣除电荷释放产生的衰减曲线,就能得到正常的肌电信号。

发明内容

有鉴于现有技术的上述缺陷,本发明所要解决的技术问题包括:

如何设计一种基于Savitzky-Golay滤波器的肌电信号电刺激伪迹在线滤除系统及在线滤除系统方法。

为实现上述目的,本发明提供了一种基于Savitzky-Golay滤波器的肌电信号电刺激伪迹在线滤除系统,包括CH+信号源与CH-信号源;所述CH+信号源通过开关S11接入肌电采集放大器输入端正极,通过开关S21接入电刺激输出端A;所述CH-信号源通过开关S12接入肌电采集放大器输入端负极,通过开关S22接入电刺激输出端B;所述开关S11与开关S11并联有开关S10;所述开关S12与开关S22并联有开关S20。

所述EMG与FES接入MCU。

所述EMG接入MCU的SCK脚、DIN脚、DOUT脚、DRDY脚和START脚。

所述FES接入MCU的DAC脚、ADC脚和PWM脚。

一种使用前述在线滤除系统的在线滤除方法,包括:

步骤1,通过硬件层面的开关电路将电极连接至电刺激输出端,输出电刺激电流脉冲;

步骤2,在脉冲输出结束后,立即将电极两端短接,用于快速释放刺激产生的电势差;

步骤3,断开电刺激回路开关,并将所有短接开关断开,此时电极连接至肌电采集输入端,同时在软件层面继续屏蔽数毫秒数据,用于消除由开关切换造成的信号干扰;

步骤4,正常采集肌电数据,直到当前的电刺激周期结束;

步骤5,在一个周期结束后,应用Savitzky-Golay滤波器分离刺激伪迹和自主肌电信号;

步骤6,重新回到步骤1,进行下一个周期的电刺激输出与肌电信号提取。

所述步骤1具体为,闭合开关S21、S22,并断开开关S10、S11、S12和S20,使电极与电刺激输出端连接,输出电刺激电流脉冲。

所述输出电刺激电流脉冲所述电刺激脉冲为100-500us。

所述步骤2具体为,短接电刺激通道开关S20,肌电采集回路开关S11、S12闭合,同时保证肌电采集输入端短接开关S10闭合,短接过程持续5-10ms。

所述步骤3具体为,断开电刺激输出端通道开关S21、S22和短接开关S10和S20,保持肌电采集输入端开关S11、S12闭合。

所述步骤5具体为,在当前电刺激周期结束时,断开肌电采集通道开关S11、S12;当获取了一个周期内的包含伪迹的肌电信号后,即可应用Savitzky-Golay滤波器进行伪迹去除。

与现有技术方案相比,本发明的技术效果在于:

本发明针对一体式肌电采集-电刺激电极,一对电极可以复用为电刺激输出或肌电信号采集,在硬件端实现输出/输入模式的切换。在这种方案中,不存在多对电极相对位置关系的考虑,消除了对不同肌肉设计合理布局方式的麻烦。并且通过减少所需电极对数量,减少了电极面积,更好地适配上肢小肌肉的刺激治疗。

本发明提出了基于Savitzky-Golay滤波器的电刺激伪迹信号在线滤除算法,在进行软硬件屏蔽之后,对剩余采集信号进行Savitzky-Golay滤波,分离纯放电曲线和叠加其上的微小肌电幅值波动,并从原始信号中扣除纯放电曲线,得到自主肌电信号。该发明可以有效实现一体式肌电采集+电刺激电极应用中的刺激伪迹滤除,得到自主肌电信号,且该方法实施难度低,效果稳定,具有广泛的实际应用价值。

本发明提出的方法基于Savitzky-Golay平滑滤波算法,不依赖于任何模版库构建和训练过程,可以动态适应不同的电刺激参数和个体条件;电刺激产生的伪迹信号是连续变化的衰减曲线,使用Savtizky-Golay滤波算法可以完全分离该衰减成分和肌电成分,其分离效果不依赖于伪迹的幅值大小,在实际应用中,当电刺激参数动态变化、个体条件(电极移位或出汗等)发生变化和应用于不同个体时,该方法都可以得到稳定的效果,且不需要重新校准过程。

本发明将电刺激与肌电采集电极合并为同一电极,电极数量减半,更好的适用于小肌肉,且不需要考虑采集/刺激电极布局的相对位置关系;合并电刺激与肌电采集电极,在硬件层面实现两种模式的切换,并提出了适用于该方案的伪迹滤除算法。一体式电极可以更好的适用于小肌肉的康复治疗,在上肢手部功能康复中具有广泛的应用价值。

以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。

附图说明

图1是本发明的系统结构示意图;

图2是本发明的单个电刺激周期内工作时序图;

图3是本发明的包含刺激伪迹的肌电信号示意图;

图4是本发明的执行Savitzky-Golay滤波前后结果对比图。

具体实施方式

以下参考说明书附图介绍本发明的多个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。

在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本发明并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件的厚度。

如图1所示,一种基于Savitzky-Golay滤波器的肌电信号电刺激伪迹在线滤除系统,包括CH+信号源与CH-信号源;所述CH+信号源通过开关S11接入肌电采集放大器输入端正极,通过开关S21接入电刺激输出端A;所述CH-信号源通过开关S12接入肌电采集放大器输入端负极,通过开关S22接入电刺激输出端B;所述开关S11与开关S11并联有开关S10;所述开关S12与开关S22并联有开关S20。所述EMG与FES接入MCU。所述EMG接入MCU的SCK脚、DIN脚、DOUT脚、DRDY脚和START脚。所述FES接入MCU的DAC脚、ADC脚和PWM脚。

本发明采用软硬件屏蔽结合Savitzky-Golay滤波器的方法实现电刺激作用时自主发力肌电信号的在线提取方法,该方法适用于电刺激与肌电采集电极合并的方案中,在电刺激参数动态调节、不同受试者和个体条件变化时均具有稳定的肌电信号提取效果,且无需提前训练,算法计算负担低,因此可实施性高,具有广泛的实际应用价值。

如图2所示,该方法的总体实施步骤为,

步骤1,首先,通过硬件层面的开关电路将电极连接至电刺激输出端,输出电刺激电流脉冲;

步骤2,在脉冲输出结束后,立即将电极两端短接,用于快速释放刺激产生的电势差;

步骤3,短接数ms后,断开电刺激回路开关,并将所有短接开关断开,此时电极连接至肌电采集输入端,同时在软件层面继续屏蔽数ms数据,用于消除由开关切换造成的信号干扰;

步骤4,正常采集肌电数据,直到当前的电刺激周期结束;

步骤5,在一个周期结束后,应用Savitzky-Golay滤波器分离刺激伪迹和自主肌电信号;

步骤6,重新回到步骤1,进行下一个周期的电刺激输出与肌电信号提取。

本发明的具体实施步骤如下:

在设备开始工作时,首先将设备开关状态切换到电刺激回路,根据图1提供的硬件功能框图,即闭合开关S21、S22,并断开开关S10、S11、S12和S20,使电极与电刺激输出端连接,并根据设定的电刺激参数,输出电刺激电流脉冲。通常,电刺激脉冲为100-500us,双向脉冲方波可以在1ms内输出完毕;

当刺激脉冲输出完毕,短接电刺激通道开关S20,肌电采集回路开关S11、S12闭合,同时保证肌电采集输入端短接开关S10闭合,短接过程通常持续5-10ms,其主要作用是快速释放刺激产生的电极两端电荷积累,无需做到电荷的完全释放,因为这个过程可能持续数百毫秒甚至数秒,远超过正常的电刺激周期(20~50ms)。该短接的主要目的为使电极两端电势差快速释放至肌电采集ADC有效采集范围内(通常<1V为宜),避免运放和ADC的饱和,无法有效采集信号。此外,之所以同时保持电刺激输出端和肌电采集输入端的短接开关S10和S20同时闭合,是因为实际中的开关存在一定阻抗,同时保持多个开关短接相当于多个电阻并联,可以降低电极两端短接阻抗,加快电荷释放速率。在实际应用中,输出的电刺激电流幅值越高,产生的伪迹幅值越大,所需的短接泄放电荷时间越长,在多数情况下,短接10ms足以使电势差降至1V以下,当刺激伪迹幅值过高以至10ms无法满足要求时,可以考虑适当增加短接时间,并注意与电刺激周期权衡,保留足够的肌电信号采集时间(通常大于电刺激周期的1/2),否则可能导致无法记录到有效的肌电信号。

断开电刺激输出端通道开关S21、S22和短接开关S10和S20,保持肌电采集输入端开关S11、S12闭合,此时,ADC可以采集到包含刺激伪迹的肌电信号,但是在软件层面,仍需要舍弃最初的2-5ms的信号,主要原因在于断开/闭合开关动作会对采集信号造成瞬时干扰,需要使用软件屏蔽的方法舍弃开关动作噪声。

记录当前电刺激周期结束前的所有信号。图3展示了连续数个周期内采集到的包含伪迹的信号,在图中,每个竖线代表一个电刺激周期的开始,曲线纵轴单位为uV。可以看出,信号整体呈指数衰减规律,衰减幅度达600mV左右,在该尺度下,几乎无法观察到肌电信号,因为通常肌电幅值小于1mV。但只要运放及ADC未饱和,肌电信号仍被正常记录,只是叠加在该衰减曲线之上。通常,单个周期内有效记录时间可以达到整个周期的50%~80%,具体取决于电刺激频率(20~50Hz)和硬件屏蔽时长,在设定电刺激参数时,选取较低的刺激频率将有助于采集到更多的有效肌电信号。

在当前电刺激周期结束时,断开肌电采集通道开关S11、S12,返回步骤(1)继续执行下一周期的电刺激脉冲输出。当获取了一个周期内的包含伪迹的肌电信号后,即可应用Savitzky-Golay滤波器进行伪迹去除,应用该算法可以实现信号的平滑,该平滑结果正是滤除了相对微小的肌电幅值波动后的电刺激残余电荷释放伪迹,使用原始信号减去该平滑结果,即可得到有用的肌电信号。该算法包含以下步骤:

在治疗开始前,选定Savitzky-Golay滤波器的移动窗长以及拟合多项式的阶数,选取过程中需要做权衡考虑:

更长的移动窗长可以得到更平滑的拟合结果,但与之相伴的是更大的计算量,且可能需要适当提高拟合阶数以保证拟合效果;而且移动窗口过长,会导致一个刺激周期内的开头和结尾更多数据无法被拟合,从而导致结果中有效的肌电信号更少。

对于拟合阶数,尽管提高阶数不会明显增大计算量,但是当多项式阶数过高时,拟合结果可能会包含更多的肌电波动成分,而不是纯电势衰减成分。

因此,实际可以确定合理的移动窗长范围在5~20ms,多项式阶数为2~3,当决定以上两个参数后,即可提前计算卷积核的系数。

为解决同一周期内开头与结尾数据无法被有效拟合的问题,可以在移动窗的有效范围之外,依次减小窗长(从指定窗长减小至最小窗长)的方式,保证更多数据被拟合进来,从而至多保证只有开头和结尾各2个数据点被舍弃。

对当前电刺激周期内采集到的包含伪迹的肌电信号应用Savitzky-Golay滤波器滤波,该滤波器的原理为,对移动窗口内的数据使用多项式函数进行最小二乘拟合,最常见的二次多项式函数表达式如公式(1)所示。

p(n)=a

将当前移动窗口的数据点坐标标记为-m~m,则窗长为2m+1,且窗口中心点对应序号为0。若计算窗口中心点的拟合结果,也即将n=0代入公式(1),只需求拟合多项式里的常数项,而该计算相当于对原始信号执行一次FIR滤波,可以简化为卷积操作,如公式(2)所示,

卷积核h[i]的系数与实际数据x无关,可以提前确定,因此该方法无需进行传统的最小二乘拟合计算步骤,计算量更低,易于实施。

因此,Savitzky-Golay平滑滤波可以表达为公式(3),

其中y

该滤波结果对应于电刺激残余电势差的放电曲线,在当前应用中属于无用的伪迹信号,而被该滤波器滤除的微小波动信号才是有用的肌电信号。因此,从原始信号中减去滤波结果,即可得到肌电信号。该信号进一步经过滤波等信号处理环节,最终得到肌肉发力的信息,该信息可以作为患者自主发力程度的量化表现,可应用于实时反馈系统中,实现电刺激的闭环控制康复策略。

应用该方法可以实现电刺激伪迹的在线滤除,最大延迟时间为一个电刺激周期(通常为20-50ms)。图4展示了使用Savitzky-Golay滤波前后的波形对比,该图展示了使用自主肌电信号幅值等比调控电刺激输出幅值的效果,即自主发力越大,输出电刺激幅值越高,当未自主发力,电刺激也随之停止。其中上图为滤波前数据,可见信号在1V尺度内波动,无法观察到自主发力肌电信号,而下图为经过Savitzky-Golay滤波后的结果,可以清晰的还原自主发力肌电信号,且在电刺激幅值动态变化的情况下仍表现稳定。

当电刺激参数发生动态变化,或将同一参数应用在不同受试者、以及同一受试者的不同部位时,所产生的伪迹波形也会不同,但并不会影响该算法的表现,因为该算法仅针对单个电刺激周期内的信号进行拟合滤波,它充分应用了电刺激残余电势差衰减连续变化的特点,利用Savitzky-Golay滤波器将该连续曲线与叠加其上的肌电信号进行分离,因而仅受限于伪迹信号是平滑曲线这一个约束条件,与伪迹的幅值和变化速率无关。

同时应当注意,不止一种算法可以实现信号平滑的目的,但是并不代表其他平滑算法也可以应用于电刺激伪迹信号的滤除。其主要原因在于,通常所采用的平滑算法,如滑动平均滤波、指数平滑和中值滤波等,不能保证平滑前后曲线的总体幅值不发生改变,其结果通常会导致平滑曲线的波动幅度相较原始曲线更小,或者对原始信号的尖峰变化拟合不足,从而使得滤除噪声曲线中包含一定的基线波动或残余尖峰,这也会导致有效肌电信号的分离失败。而Savitzky-Golay滤波算法的独特优势在于其可以保持原始信号的变化形状,只滤除叠加其上的微小高频噪声,即能够做到刺激伪迹和肌电信号的完好分离,保证实际效果的稳定性。本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求书指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求书来限制。

技术分类

06120116580019