基于FastICA与ICEEMDAN的人脸视频心率检测
2022-11-24赵明康齐晨成王艺潇
赵明康 王 镇 齐晨成 王艺潇 张 帅*
1(河北工业大学省部共建电工装备可靠性与智能化国家重点实验室,天津 300130)
2(天津市生物电工与智能健康重点实验室,天津 300130)
引言
根据《中国心血管健康与疾病报告(2020年)》显示,我国心血管病患病率处于持续上升态势,目前患病人数约3.3 亿,心率是监测和评价心血管相关疾病的一项重要指标。目前,根据设备是否与人体接触,心率检测方法分为接触式和非接触式。接触式方法的传感器需要与人体皮肤接触,因此无法满足在特定环境下和对特定人群的心率检测。非接触式检测则避免了这些限制,目前,人脸视频也被用于非接触式心率检测。
2008年,Verkruysse 等[1]首次发现人脸视频中包含可以测量心率信号。Poh 等[2]首次提出通过面部视频进行非接触式心率测量,他们使用独立成分分析( independent component analysis,ICA)从RGB三通道的原始信号中提取血液容积脉搏波(blood volume pulse,BVP),证明了低成本的摄像头提取心率信号的可行性。Kumar 等[3]和Amelard 等[4]提出了可以自动选择感兴趣区域(region of interest,ROI)的方法来提取心率信号。2017年,Wei 等[5]提出了一种基于盲源分离的非接触测量心率的方法。Norwahidah 等[6]研究了不同面部区域不同测量距离对非接触式心率检测结果的影响。2019年,Richard等[7]提出了一种使用均方自相关和负熵作为目标函数的多目标优化的远程心率测量方法。2019年,Martinez 等[8]利用红外摄像头提取脸部光电容积脉搏波(photoplethysmography,PPG) 信号,并用短时傅里叶变换算法提取心率参数。2020年,李晓媛等[9]从YCbCrCg 颜色空间Cg 通路中提取了高质量的PPG 信号, 用 Morlet 复小波(complex morlet,CMOR)作为母波绘制小波能量谱图,并根据心率参数的生理特性去除伪点噪声,提取心率参数。
基于成像式光电容积脉搏波描记法(imaging photoplethysmography,IPPG)[10]的非接触式心率检测,能够在不与受试者发生接触的情况下,远程检测出受试者的心率参数。同时,该方法具有低成本、操作简单、易实现等优点。然而,在实际使用中,由于人头部存在晃动,易于产生运动干扰,以及后续的信号处理方法的不同,使得实际检测结果存在差异。因此,如何设计出有效的信号处理方法以实现BVP 信号的准确提取,成为心率检测的热点。
1 材料与方法
本研究提出一种基于快速独立成分分析(fast independent component analysis,Fast ICA)[11]和改进的自适应噪声完全集合经验模态分解(improved complete ensemble empirical mode decomposition with adaptive noise,ICEEMDAN)[12]相结合的算法,应用于人脸视频的非接触式心率测量,流程如图1 所示。用摄像头非接触地采集人脸视频,选取额头作为感兴趣区域(region of interest,ROI),并从中提取R、G、B 通道源信号,即皮肤颜色变化信号,分别求出该3个颜色通道的像素平均值,然后利用FastICA 对该3组像素平均值进行解混,得到3 组独立源信号,再用ICEEMDAN 将其中1 组独立源信号进行模态分解并选取合适频段内的固有模式函数(intrinsic mode function,IMF)估计心率信号,最后用频谱分析计算得到心率。
图1 心率检测流程Fig.1 Heart rate detection flow chart
1.1 人脸检测
根据成像式光电容积脉搏波描记法原理,人体心脏的周期性收缩和舒张功能可以改变血容量,而血容量的改变可以或多或少地改变吸收和反射光的强度,从而导致皮肤颜色的周期性变化。
为了提取人体肤色的周期性变化信息,采用综合Adaboost 和Cascade(又称为Harr-Cascade 人脸探测器)[13]的人脸检测方法消除人脸背景区域、定位ROI,而且速度快。
1.2 感兴趣区域选取
在非接触心率测量过程中,常伴有各种干扰,例如人眼的眨动、说话时嘴的动作等,ROI 的选择应尽可能规避这些干扰,从而提高检测精度。去掉眼睛、嘴等部位后可以选取的区域有额头及鼻梁部分。疫情防护需要佩戴口罩,遮挡了脸部大部分区域,鼻子可作为ROI 的皮肤面积相对较少,而额头区域较为平整且不容易被遮挡,可作为ROI 的皮肤面积相对较多,且含有大量的毛细血管,所以选择额头作为ROI,如图2 所示。
图2 ROI 区域选取Fig.2 ROI area selection
1.3 RGB 通道分离及空间平均预处理
IPPG 系统直接采集的信息是包含脉搏信息的原始视频图像,但需要获取高信噪比的BVP 信号。对每帧感兴趣区域分离RGB 三通道数据,并分别做空间像素平均处理,即
式中,n为图像帧数;N为视频总的帧数;X(n) 为R、G 或B 通道的一维源信号;xi,j(n) 为像素点(i,j)在对应通道的颜色强度值;h和w分别为图像的高度和宽度。
如图3 所示,空间像素平均值反映的是皮肤对光线的吸收反射情况,也是后续的心率信息。空间像素平均处理能够有效地抑制噪声从而提高BVP信号的信噪比。
图3 RGB 三通道空间像素平均值。(a) 红色通道;(b) 绿色通道;(c) 蓝色通道Fig.3 RGB three-channel spatial pixel average value. (a) Red channel;(b) Green channel;(c)Blue channel
1.4 FastICA
FastICA 是独立成分分析的一种,采用定点迭代的优化算法,从RGB 滤波后的混合矩阵中提取脉搏波信号,使得收敛更加快速、稳健,提高实时性,可以减少检测误差,提高心率检测的准确性。
FastICA 假设存在3 个相互独立的源信号s(t)=[s1(t),s2(t),s3(t)]T(未知),观测信号是RGB 等3 个颜色通道信号,是源信号的线性组合,即
式中,t是视频帧数序列,A∈R3×3是未知的非奇异混合矩阵。FastICA 的目的是找到一个解混矩阵,使得
图4 FastICA 处理后的独立源信号。(a) s1;(b) s2;(c) s3Fig.4 Independent source signal processed by FastICA. (a) s1;(b) s2;(c) s3
血液对绿色光线的吸收量最大,对红色光的吸收量最小,因此采集的RGB 三通道信号中绿色信号最能反映出血液流动的信息,将分离出的3 个独立源信号s1、s2、s3分别与绿色通道信号做相关性分析,取皮尔逊相关系数绝对值最大的对应的独立源信号,进行下一步的处理。FastICA 得到的3 个独立源信号s1、s2、s3是无序的,为了从中选出需要的脉搏波信号,将它们分别与绿色通道信号(噪声最小且与脉搏信号最相近)进行相关性分析,得到的相关性最大成分即为含噪脉搏波信号。
1.5 ICEEMDAN
模态分解(empirical mode decomposition,EMD)[14]是一种时频信号分析方法,具有小波变换多分辨分析的优点,以自身为基波进行分解,具有良好的自适应性,非常适合处理人脸颜色信号。它依据信号的局部时间尺度特征,自适应地将信号分解成频率由高到低的IMF 和一个残余分量,每个IMF 对应不同的频带,对应心率频带的模态分量即为脉搏波。
应用基于自适应噪声的完全集合经验模态分解(complete ensemble empirical mode decomposition with adaptive noise,CEEMDAN)[15]仍然存在一定的缺点:分解的模态分量含有一些残余噪声以及在信号分解重构的早期阶段会产生虚假分量。本研究应用的是改进的CEEMDAN 算法,其在分解过程中加入一种特殊的白噪声,即高斯白噪声经过EMD 分解后的第k阶IMF 分量。每个模态分量计算信号加噪声的局部均值,并将分解得到的IMF 定义为残差信号与局部均值的差值。因此,ICEEMDAN 算法大大减少了IMF 分量中的残余噪声问题,改进了CEEMDAN 在分解重构的早期阶段容易产生虚假分量和模态混叠的不足。
根据ICEEMDAN 分解得到的IMF 分量由高频到低频依序排列,如图5 所示。每个IMF 分量代表的是不同频段的信号,选取能够反映心率频谱结构特征(心跳频带集中在0.5 ~2.0 Hz)的IMF 分量估计心率信号,如图6 所示,所得到的IMF4为脉搏波,频率范围在心跳频带内。
图5 独立源信号s1 经过ICEEMDAN 分解得到的IMFFig.5 IMF obtained by ICEEMDAN decomposition of independent source signal s1
图6 根据IMF4 分量估计的心率信号Fig.6 Heart rate signal estimated from IMF4 component
1.6 心率计算
从血容量脉搏波形中提取心率值,其具体操作为,通过傅里叶变换将血液容积脉搏波信号转换为频域信号,功率谱密度最大峰值对应的频率为心率信号。每秒周期性变化的频率作为x轴,功率谱密度作为y轴,功率谱曲线如图7 所示。
图7 心率信号的功率谱密度图Fig.7 Power spectral density map of heart rate signal
选取频率位于心跳频带内的成分为估计的脉搏波,能量峰值对应的频率为心跳频率fh,心率为
2 结果
在室内自然光条件下(无额外光源,室温25℃),利用CMOS 摄像头(30 帧/s,图像分辨率1 920像素× 720 像素)在距离镜头50 ~60 cm 处采集30 s测试者头部轻微晃动状态下的视频,一可满足奈奎斯特采样定理要求,也能满足清晰度的要求,二可与设备的读写速度相匹配。在进行人脸视频采集的同时用多参数监护仪(福斯特FM6501-J型)测量实际心率作为参考值,同步保存采集的人脸视频。将通过本方法处理人脸视频分析所得的心率结果与多参数监护仪监测所得的心率进行对比。
人脸视频检测流程为:用摄像头采集人脸视频并从视频提取R、G、B 通道源信号,分别求出RGB 这3 个颜色通道的像素平均值;然后利用FastICA 对RGB 这3 组像素平均值进行解混,得到3 组独立源信号,再用ICEEMDAN 将其中1 组独立源信号进行模态分解并选取0.5 ~2.0 Hz 频段内的IMF 估计心率信号,最后用频谱分析计算得到心率。
对8 名人员进行了人脸视频检测,并同步进行了多参数监护仪检测作为对比。与此同时,为了全面评估所提出方法的效果,复现了FastICA 与小波变换、FastICA 与CEEMD 的心率算法用作对比分析。从表1 可以看出,FastICA 和ICEEMDAN 相结合的方法检测出的心率结果非常接近多参数监护仪检测出的结果,其误差都在1 beat/min 以内,最大误差是1 beat/min,FastICA 与小波变换、FastICA 与CEEMD 方法所得结果与多参数监护仪所测值也比较接近,但是平均误差和均方根误差较大,因此通过表1 能够得出所提出算法能够有效滤除含噪脉搏波中的噪声,在头部晃动状态下实现BVP 信号的准确提取,使检测结果更加准确。
表1 实验数据Tab.1 Experimental data
3 讨论和结论
非接触式心率测量是未来测量方式的趋势,有助于实现舒适、简单、无创的人体心率测量,对日常监护、远程医疗都具有重要的实用价值和应用前景。近年来,利用IPPG 信号提取心率信息的相关研究不断进行,但头部存在晃动产生的运动干扰以及后续信号处理方法的不同,造成了与实际检测结果的偏差。为实现BVP 信号的准确提取,本文提出了一种基于FastICA 与ICEEMDAN 相结合的算法。其优势在于:FastICA 从RGB 滤波后的混合矩阵中提取脉搏波信号,使得收敛更加快速、稳健,缩短了运算时间,可以减少检测误差,提高心率检测的准确性;ICEEMDAN 可以将含噪脉搏波中的噪声有效滤除,且避免了传统线性滤波器在使用时复杂的参数选取过程,大大提高了算法的自适应性,减少了工作量。测试结果显示,平均误差和均方根误差均小于1 beat/min,这得益于Fast ICA 与ICEEMDAN相结合的信号处理方法,增强了滤除含噪脉搏波噪声的效果,增加了检测结果的准确性。
本研究对基于人脸视频的心率测量有效,可用于精确检测人体的心率。IPPG 技术可以提高对象的舒适性。此外,本方法所涉及的操作过程简单快速,时间空间响应迅速,适宜于长期心率监测。基于方案,在未来的研究中,将有助于探讨用于测量呼吸速率、血红蛋白饱和度等生理参数的方法。