基于光电容积脉搏波的呼吸信号提取及其系统的研制
2021-04-08周晶晶叶继伦张旭
周晶晶 ,叶继伦 , ,张旭 ,
1 深圳大学 生物医学工程学院,深圳市,518060
2 深圳市生物医学工程重点实验室,深圳市,518060
3 广东省生物医学信号检测与超声成像重点实验室,深圳市,518060
0 引言
呼吸是人体重要的生理过程,呼吸的生理参数也是人们了解自身健康状况的一个重要参考标准。现有的呼吸检测方法如可穿戴式测量等会给受测试者带来很多不适,因此需要一种快速简单的呼吸测量方法。
光电容积脉搏波(photoplethysmography,PPG)是目前常用的无创检测方法,利用指夹式血氧探头几秒内就可测出脉搏波信号[1]。人体呼吸时,光电容积脉搏波会发生变化,这种变化通过幅度和频率调制在脉搏波信号中。因此可以提取脉搏波中特征参数来检测呼吸信号,并进行呼吸率的计算。
1 光电容积脉搏波采集系统
光电容积脉搏波利用红光红外光在人体血液中的光学效应来检测血液容积变化,其原理是根据朗伯比尔定律[1],物质对某一波长光吸收的能力与吸光物质的浓度呈正比。心脏有节律的跳动会使血管中的血量发生变化。心脏收缩时会将血液泵到动脉,此时血管中血液量变多,吸收光也变多,检测到的光强最小。心脏舒张时,正好相反,检测到的光强度最大。
透射光法以朗伯比尔定律和光散射理论为基础,利用氧合血红蛋白和脱氧血红蛋白在红光区(600~700 nm)和红外光区(800~1000 nm)对光吸收存在明显差异来检测血氧饱和度。其中血氧探头由波长为660 nm红光发光二极管和940 nm红外发光二极管以及光敏二极管构成。当血氧饱和度发生变化时,光检测器上两个波长的相对光强存在较好的线性关系。血氧饱和度:SpO2=A+BR,A、B为标定常数。
脉搏检测框图,如图1所示;硬件板卡,如图2所示;指夹式血氧探头,如图3所示。
图1 信号采集框图Fig.1 Signal acquisition block diagram
图2 硬件板卡Fig.2 Hardware card
图3 血氧探头Fig.3 Blood oxygen probe
2 特征参数提取
对采集到的脉搏波进行特征提取,首先进行5 Hz低通滤波去除高频干扰,再进行0.05 Hz高通滤波去除基线漂移。对滤波后的脉搏波进行波峰与波谷的时间轴与幅度轴的准确提取。
本研究参考范哲意等[2]提取呼吸频率的方法从脉搏波中提取包络、间隔、幅度、面积序列四个参数,并对四个参数进行三次样条插值和重采样,拟合出四种曲线。相关算法仿真在Matlab上实现,最后将算法移植至上位机。
算法流程图,如图4所示。
图4 算法流程图Fig.4 Algorithm flow chart
2.1 包络参数
脉搏波信号中包含呼吸信号,呼吸通过调节脉搏波的包络体现出来[3],因此通过识别脉搏波峰值点,记录其横坐标和纵坐标,得到上包络参数,并进行三次样条插值得到呼吸信号。所采用的数据是实验室光电容积脉搏波板卡采集到的信号,采样率为62.5 Hz,分析数据时长为5 min。原始波形加滤波后标记峰值点的信号,如图5所示;采集的包络信号,如图6所示;插值得到的呼吸波形,如图7所示。
图5 原始波形、滤波后标记采样点的波形Fig.5 Original waveform,waveform marked with sampling point after filtering
2.2 间隔参数
由心率变异性理论可知,在呼吸过程中,由于迷走神经发生变化,引起心率变化,因此脉搏波的频率改变反映呼吸频率的变化[4]。我们可以从脉搏波中提取间期来计算呼吸。间隔参数就是利用提取的波峰值,提取两个点之间的间距,转换成频率,再进行插值得到呼吸波形。间隔参数,如图8所示;计算间隔参数插值得到的呼吸信号,如图9所示。
图6 包络参数Fig.6 Envelope parameter
图7 包络插值得到的呼吸波形Fig.7 Respiratory waveform of envelope interpolation
2.3 幅值参数
呼吸能够改变脉搏波幅度,通过提取脉搏波波峰和波谷点,相邻两点之间做插值得到幅值参数,并进行插值得到呼吸信号。幅值参数,如图10所示。插值后得到的呼吸信号,如图11所示。
图8 间隔参数Fig.8 Interval parameter
图9 间隔插值得到的呼吸波形Fig.9 Respiratory waveform of interval interpolation
图10 幅值参数Fig.10 Amplitude parameter
图11 幅值插值得到的呼吸波形Fig.11 Respiratory waveform of amplitude interpolation
2.4 面积参数
面积参数是利用提取的波谷点、原始梯形面积之和求出脉搏波波形面积。先找到波谷点i和i+1,通过将两点之间的所有点的波形值相加,得到这一段波形与横坐标围成的整个波形面积。由于我们的数据是很多离散的点,所以可以用该方法求出波形面积。之后利用i和i+1的波形值求出波形低谷与横坐标围成的梯形面积,用整个波形面积减去梯形面积,得到最终的波形面积。面积参数,如图12所示;利用面积参数插值得到的呼吸波形,如图13所示。
图12 面积参数Fig.12 Area parameter
图13 面积插值得到的呼吸波形Fig.13 Respiratory waveform of area interpolation
3 系统软件设计
3.1 系统上位机设计
上位机软件利用Visual Studio 2010 MFC基础类库平台进行开发,主要功能包括:实时显示下位机传送的脉搏波数据,显示计算的呼吸波形,显示脉率和呼吸率。上位机界面,如图14所示。
图14 上位机界面Fig.14 Upper computer interface
3.2 上位机算法设计
本系统是基于静态下采集的光电容积脉搏波,利用间隔参数并采用三次样条差值得到呼吸波形。每缓存15个数据进行300个点的插值,依次计算三次样条差值的步长、上三角矩阵系数、指定常数和确定自然边界来解矩阵方程,最终得到呼吸数据。利用此种方法存在一定延迟,因此计算出的呼吸数据和脉搏波数据不同时。
3.3 脉率
脉率计算公式[5]为:PR=60×f/T。其中f为采样频率,T为脉搏波周期。实时计算脉率采用的是5个峰值的平均周期,依次递进计算所得。
3.4 呼吸率
呼吸率计算方式同脉率计算一致,其中T为呼吸率周期。
4 试验结果
在平静状态下利用本系统采集了10名志愿者数据,试验结果如表1所示。
表1 平静状态下光电容积脉搏波系统试验结果(次/min)Tab.1 Experimental results of photoplethysmography in static state
5 讨论
本系统初步实现静态下从光电容积脉搏波中提取呼吸波形并计算脉率和呼吸率,但由于呼吸比较微弱,以及存在一定干扰,且三次样条差值需缓存几分钟数据,因此存在一定响应时间。当噪声干扰较大或者运动状态下,提取的呼吸波形存在偏差。若要实现动态下的监测,需要加入SFFT进行计算,从SFFT中提取呼吸波形。这将是今后要研究的重点和难点。