压缩感知理论在脉搏分析中的应用*

2020-06-21 08:10
科技与创新 2020年11期
关键词:邻域蜂群脉搏

(宝鸡文理学院电子电气工程学院,陕西 宝鸡 721013)

1 引言

脉搏信号是人体最易采集的一种生理信号,包含了人体的心血管系统常见疾病的特征[1]。但是,采集脉搏信号时,受到外界环境影响,较易混入噪声,影响信号的提取与分析。因此,脉搏信号去噪一直是生理信号分析研究的重点内容。使用小波变换[2-3]可以对脉搏信号进行分解,更好地处理信号中包含的噪声问题。但是,小波基的选择及阈值的设定需要先验知识;否则,信号处理效果较差。经验模态分解[4]方法也可用于脉搏信号去噪,该方法不需要先验知识,只需将信号分解成多个模态函数分量,再对分量去噪后重构即可获得脉搏信号,但是该方法易出现模态混叠现象[5],影响信号特征识别。

鉴于上述去噪算法的缺点,本文引入了压缩感知理论[6]中的匹配追踪(Matching Pursuit,MP)算法[7]对脉搏信号进行去噪。MP 算法的去噪是基于噪声不具有稀疏性的特性,对含有噪声的信号进行稀疏分解后,在重构过程中主要恢复的是信号的信息,丢弃了许多噪声的信息。但是原始的匹配追踪算法的计算量十分巨大,会影响算法的执行速度,因此使用了人工蜂群(Artificial Bee Colony Algorithm,ABC)算法[8-9]来对其进行改进。文中的仿真结果表明,将压缩感知理论中的MP 算法与群体智能算法中的ABC 算法结合起来,对包含噪声的脉搏信号进行去噪,可以在去噪的同时较好地保持信号特征。

2 基本理论介绍

2.1 压缩感知理论

压缩感知的基本方法为:首先对采集到的脉搏信号进行稀疏分解,将其变换后进行线性组合,完成对原始信号的重构。

压缩感知理论相关算法较多,MP 算法是应用较为广泛的一种。其原理是:包含噪声的信号中,噪声是非稀疏的,而信号是稀疏的,并且分布较为随机。所以,可以通过对原始信号消除噪声来逼近目标信号,具体过程如图1 所示。

图1 匹配追踪算法流程

2.2 人工蜂群算法原理

人工蜂群算法是一种建立在蜜蜂自组织模型和群体智能基础上的非数值优化计算方法。在此算法中,蜂群由引领峰、跟随蜂、侦查蜂三部分组成。引领蜂负责寻找食物源,跟随蜂负责根据引领蜂带回的相关信息,对食物源进行筛选,侦查蜂则负责完全随机寻找新的食物源。如果某个食物源被引领蜂和跟随蜂丢弃,则和这个食物源对应的引领蜂就变为侦查蜂。

人工蜂群算法的主要过程为:首先生成初始种群Xi=(i=1,2,…,SN),N为食物源的个数,每个Xi是一个D维的向量;引领蜂先对对应的食物源进行1 次邻域搜索,并选择花蜜数量多的食物源。所有引领蜂完成搜索之后,在舞蹈区把食物源的信息传达给跟随蜂,根据得到的信息按概率Pi选择食物源。Pi的计算表达式为:

式(1)中:fi为第i个食物源的花蜜数量。

随后跟随蜂也进行1 次邻域搜索并选择较好的食物源。引领蜂和跟随蜂根据如下表达式进行邻域搜索:

式(2)中:v∈{1,2,…,N},j∈{1,2,…,N},且v≠i;Rij为一个[-1,1]之间的随机数。

如果某个食物源经过L次循环之后没有得到改善,则由侦查蜂根据公式(3)选择一个新的食物源来代替它:

人工蜂群MP 算法的主要思想为:将信号在稀疏分解的过程中所进行的内积运算看成一个最优化问题,利用人工蜂群算法对其进行优化,减少内积的计算量,提高稀疏分解的速度,它的主要步骤如下。

Step 1:初始化参数,设定人工蜂群规模m,迭代次数n,内循环次数limit,将信号或信号残差与原子内积的绝对值作为适应度函数。

Step 2:初始化蜂群,使之均匀分布;依次计算所有蜜蜂的适应度的值,并将其按降序排列,将前一半适应度值对应的蜜蜂设定为引领蜂,后一半适应度值对应的蜜蜂设定为跟随蜂;全局最优位置的初始值为排序后蜜蜂的初始位置。

Step 3:引领蜂根据式(2)对食物源做邻域搜索并更新;而跟随蜂首先根据式(1)计算的概率值选择食物源,再按式(2)做邻域搜索并进行更新。引领蜂和跟随蜂每进行1次更新就分别计算1 次适应度的值,每次都将适应度最大的值对应的蜜蜂的位置,作为全局最优位置保留下来。

Step 4:经过limit次循环后,判断是否有丢弃的食物源,如果有,则这个食物源对应的引领蜂就变为侦察蜂,并由其根据式(3)产生1 个新的食物源。

Step 5:判断种群迭代是否结束,如果结束,则终止迭代,否则回到步骤3。

3 实验分析

为了较好地表示信号去噪过程,现以正弦信号模拟原始的脉搏信号,正弦信号表示为s(t)=sin(2π×1.5t)。该正弦型号的波形图如图2(a)所示。给该信号加入8 db 高斯白噪声,用来模拟带有噪声的脉搏信号。加入噪声后的波形如图2(b)所示。依据本文提出的通过人工蜂群算法改进的MP 算法,对夹杂噪声的脉搏信号进行稀疏分解,再将最佳匹配原子进行线性组合,得到的就是去除噪声后的信号,波形如图2(c)所示。由图2 可得出,基于人工蜂群算法改进的匹配追踪算法对仿真的脉搏信号进行去噪,得到的信号总体上没有包含毛刺,并且波形相对清晰,表明本文提出的方法不仅能够有效地滤除噪声,还可以有效地保留脉搏信号的细节特征。

图2 去噪前后的对比图

去除噪声后,需要计算信号的部分指标来检测去噪效果。本文采取信噪比(SNR)和均方根误差(RMSE)对去噪效果进行客观评价。信噪比和均方根误差定义如下:

式(4)(5)中:s(i)为仿真信号(使用上述方法去噪后的信号);N为信号长度。

在应用去噪算法时,应尽可能提高信噪比,降低均方根误差。

根据式(4)(5)计算了去噪后信号的SNR和RMSE。去噪前的SNR为11.931 0,去噪后的SNR为29.501 4,说明该方法去噪效果较好,有效地提升了SNR;去噪后的均方根误差为0.026 2,数字接近0,说明去噪后的信号与仿真信号相似性越高,信号失真越小。综合上述讨论,本文的方法在去除噪声的同时,有效地保留了信号特征,减轻了去噪过程中的信号失真。

4 结论

脉搏信号易混入噪声信号,影响脉搏信号的特征提取与分析,因此,需要对脉搏信号进行去噪。本文基于压缩感知理论和人工蜂群算法原理,提出一种新的去噪方法。仿真实验表明,该方法可以较好地去除信号中包含的噪声,并保留信号的特征。

猜你喜欢
邻域蜂群脉搏
混合型数据的邻域条件互信息熵属性约简算法
基于混合变邻域的自动化滴灌轮灌分组算法
含例邻域逻辑的萨奎斯特对应理论
用心感受狗狗的脉搏
脉搏的检查及与脉搏异常相关的疾病
沈安娜:按住蒋介石脉搏的谍战玫瑰
蜂群春管效果佳
蛰伏为王
蛰伏为王