基于视频放大与盲源分离的非接触式心率检测①

2021-01-22 05:43郑婷婷
计算机系统应用 2021年1期
关键词:色度人脸心率

戴 阳,郑婷婷,杨 雪

(长安大学 信息工程学院,西安 710064)

1 引言

心率(HR)是人体最重要也是最基本的一项生理指标,在一定程度上能够反映出人的健康状况、压力水平和情绪波动[1].连续的心率检测对训练辅助[2],健康监测,驾驶员状态评估[3]和情感状态评估等具有重要作用.但在现实生活中,往往使用传感器如透射式手指脉搏血氧仪测量心率,这种接触式测量限制人类活动,很难在特定情况之外的日常生活中使用[4].而且,在对于某些特殊群体,如皮肤烧伤病人,好动症患者,以及新生婴幼儿等,很难使用接触式设备进行长时间监测.因此,非接触式HR测量的研究具有重要意义.

相比于传统的接触式心率测量方法,基于rPPG 的非接触式HR测量方法更加灵活,无需测试者合作即可应用.在rPPG 中,只需数码相机和环境光即可远程访问心脏搏动信息[5].如图1所示,环境光用作光源,而数码相机则用作光电转换器.rPPG 的原理基于以下事实:血液中的血红蛋白对光具有吸收作用,并且吸收量与血红蛋白浓度成正比.由于血红蛋白浓度随血容量脉冲(BVP)呈准周期性变化,所以血液吸收的光量会随心动周期在皮肤表面下被BVP 周期性调节,表现为皮肤的轻微颜色变化.尽管由BVP 引起的皮肤轻微的颜色变化对于人眼是不可见的,但是可以使用数码相机对其进行检测[6].

图1 rPPG 实现原理

近些年,一系列基于rPPG 的非接触式心率检测方法开始被研究提出.Verkruysse 等人[5]首次证明了使用消费级相机远程测量心率的可能性.在这一研究中,通过选择视频中人脸前额作为ROI,并通过计算ROI 内所有像素的平均值来计算每帧中的原始RGB 信号,并根据血红蛋白对绿光的吸收比对红光和蓝光的吸收更好的事实,表明G 通道相比于R 通道与B 通道对血液脉冲信号有更好的反应,但对噪声因素没有研究.Pho等人[7,8]利用盲源分离的方法,提取rPPG 信号,使用独立分分析(ICA)对RGB 三通道信号进行盲源分离,选择第二个源信号作为rPPG 信号进行心率检测.虽然该方法抑制了噪声的干扰,但ICA 盲源分离出的源信号是随机排序,无法确保第二个源信号最能反应血液脉冲信号.Wu 等人[9]提出了一种欧拉视频放大(EVM)框架,利用空间分解和时间滤波来提取血液脉冲信号信号.这种技术可以放大由BVP 引起的皮肤轻微的颜色变化.因此,该方法可用于使该现象对肉眼可见.但由于放大颜色信号的同时,对频带内的噪声也进行了放大,所以使用该方法提取rPPG 信号进行心率估计仍具有挑战.Wang 等人[10]提出一种“平面-正交-皮肤”(POS),该方法对检测到的人脸区域进行皮肤分割,分离出皮肤和非皮肤像素,将皮肤区域作为ROI,在时间归一化RGB 空间中定义一个与肤色正交的平面来提取用于心率检测的rPPG 信号,但没考虑血液脉冲信号被噪声淹没的情况.

本文受以上研究启发,提出一种基于欧拉视频放大和盲源分离的心率检测算法,通过欧拉颜色放大技术放大正常心率范围内的色度信息,防止因噪声和图像传感器限制等原因淹没rPPG 信号,引入独立成分分析从色度信息中盲源分离出源信号,抑制头部微小运动噪声的干扰,考虑到源信号的随机性,本文提出一种相关性分析方法,选出最能反应BVP 信号的源信号作为rPPG 信号,通过时域滤波和功率谱密度分析估计出心率,并通过多组实验验证了本文方法的性能.

2 心率检测模型

本文提出的非接触式HR测量算法主要包括4 个主要步骤,具体框架如图2所示,首先对输入视频进行欧拉视频放大,接着对放大后的视频进行ROI 选取与跟踪,然后在ROI 内提取源信号,最后对选出的源信号分析,估计出HR值.每个步骤的细节在下面的小节中进行了说明.

图2 心率检测框架图

2.1 欧拉视频放大

为了克服人类视觉系统的局限性,揭示视频中难以,或不可能用肉眼看到的时间变化,提出了欧拉视频放大技术.该框架是2012年由Wu 等人首先设计[9],其基本的方法是在任意空间位置的时间尺度上,观察一系列颜色值,比如像素,然后在某一特定频带上,放大颜色值的变化.

欧拉视频放大技术的处理框架如图3所示,首先运用图像金字塔,将输入的人脸视频分解为不同的空间子带;然后对每个空间频带进行时间滤波处理,滤出感兴趣频带;接着将提取的带通信号乘以放大系数ɑ,其中ɑ的值由不同的应用指定,它的边界受视频运动步长δ和图像空间结构波长λ限制,如式(1)所示,并且在空间频带上,超出确定的空间截止频率时,衰减ɑ值;最后将放大的信号添加到原始金字塔图像中,并重构结果视频.

图3 欧拉视频放大技术的处理框架

每次心脏跳动引起皮肤颜色变化非常细微[11],尽管可以从人脸视频数据中分析出来,但这种变化极易被噪声淹没,同时还会受图像传感器的限制.因此,本文使用欧拉颜色放大技术,对心跳引起的细微颜色变化信号进行放大.为了将图像的亮度信息和色度信息分离,将视频的色彩空间由RGB 空间转换到YIQ 空间,转换关系如下所示:

其中,Y表示亮度信息,I、Q表示色度信息,通过高斯金字塔对每帧视频进行空间分解,得到多个尺度的子带集合,利用理想带通滤波器对每一个子带进行滤波,通带频率为[0.7,4] Hz,即正常心率范围,然后将滤波后子带的I、Q通道的色度信息放大100 倍,Y通道的亮度信息衰减为0.如图4(a)、图4(b)所示,可以明显看出放大前后,人脸皮肤的颜色变化.当血液脉冲到达某一点时,该点的皮肤颜色会变深,而当血液脉冲远离时,该点的颜色会变浅.

图4 视频中两帧放大前后的颜色变化

2.2 ROI 选取与跟踪

为了解决视频图像中的背景噪声问题,本文对采集到的视频进行人脸检测.首先以视频的第一帧图像作为参考图像,使用Viola-Jones 人脸检测器[12]框出人脸区域,接着使用判别响应图拟合(Discriminative Response Map Fitting,DRMF)方法[13],识别矩形框中面部特征点.与脸部其他皮肤区域相比,脸颊的皮肤可以提供更高信噪比的rPPG 信号[14],因此,本文选定脸颊区域作为ROI.如图5所示,黄色矩形框表示识别到的人脸区域,“+”表示面部特征点,蓝色区域为ROI.

图5 人脸区域

考虑到视频采集时,人脸会发生微小的刚性运动,为了抑制刚性运动的干扰,获得更加平滑的原始信号.本文使用Kanade-Lucas-Tomasi (KLT)[15]对上述特征点进行跟踪,首先计算特征点在相邻帧之间位移变化,得到转移矩阵,然后通过矩阵变换准确地获取人脸矩形框,具体如式(3)所示:

其中,Pi=[P1(i),P2(i),···,Pk(i)]为第i帧特征点的位置,k为特征点的个数;Fi=[f1(i),f2(i),f3(i),f4(i)]为人脸边框位置,f1(i)∼f2(i)表示人脸边框的4 个顶点坐标;A表示转移矩阵.

2.3 提取源信号

2.3.1 提取I、Q色度信息

选取ROI 之后,在时间序列上,提取反应BVP 的色度信息.考虑到2.1 节已对色度信息进行了放大,所以本文将放大后的色度信息,即I与Q通道上的信息,用作rPPG 分析的原始信号.如文献[12]所述,空间平均有助于减少传感器噪声,改善rPPG 信号的SNR.定义I(x,y,t)为第t帧I通道(x,y)处的值,则t时刻I通道ROI 内的空间平均如式(4)所示:

其中,|ROI|表示ROI 内像素点个数.空间平均后,在ROI 内,I、Q每个通道上都得到一条如I(t)=的时间序列信号.同时为了滤除时间序列信号的趋势成份以及减少量纲的影响,本文对原始信号进行去趋势化[16]和标准化处理,如图6(a)、图6(b)所示.

图6 原始I、Q 信号

2.3.2 盲源分离

一方面考虑到人脸自身的微小运动和相机振动等因素,原始信号I(t)、Q(t)混合着一定的噪声.从图6可以看出,在视频的初始和结束部分,由于人脸发生轻微晃动,导致原始信号发生大幅度抖动.因此,需要对原始信号进一步处理,提取干净的rPPG 信号.另一方面,由于缺乏心率信号相关的先验知识,很难使用传统的方法分离出反应BVP 信号的rPPG 信号,所以本文采用盲源分离的方法,通过ICA 分离出源信号[17]s1(t)、s2(t),如图7(a)、图7(b)所示.

图7 盲源分离出的独立源信号

2.3.3 独立成分选取

针对ICA 分离出的源信号为随机排序,无法确定哪个源信号更能反应BVP 信号这一问题,本文提出相关性分析方法来选择源信号.由于血红蛋白对波长在540~570 nm 之间的黄绿光吸收更多[18],同时黄绿光处于Q 通道颜色范围内,所以Q通道的信号更能反应BVP 信号.因而可知,可以用Q(t)作为参考信号,在源信号s1(t)、s2(t)中 选出与Q(t)最相关的作为反应心率信息的rPPG 信号.

本文使用皮尔逊相关系数来评价两个变量的线性相关程度,计算公式如下所示:

其中,r表示皮尔逊相关系数,r越大,表明两者越相关,n为样本数量,Xi、Yi表示第i个样本,、为样本均值,σX、σY为样本标准差.

将2.3.2 节中ICA 分离出的s1(t)、s2(t)源信号分别与Q(t)进行相关性分析,得到的皮尔逊相关系数r,如图8所示.

图8 两个独立信号与Q(t)的相关系数

从图8可以看出,s2(t)与Q(t)的相关系数更大,说明两者线性相关程度更大,s2(t)更能反应BVP 信号.所以,本文将盲源分离出的s2(t)作为rPPG 信号来估计HR.

2.4 心率计算

通常rPPG 信号会包含感兴趣范围之外的频率分量,本文将感兴趣的频率范围设置为[0.7,4] Hz,以覆盖从42 次/分钟(bpm)到240 bpm 的正常HR范围.因此,使用截止频率为[0.7,4] Hz 的基于汉明窗的有限脉冲响应带通滤波器进行滤波.

最后,对滤波后的rPPG 信号进行快速傅里叶变换(FFT),将信号转到频域,并对其进行功率谱密度(PSD)分析[19].因为rPPG 信号反映了心率变化趋势,所以该信号中包含一个与心率HR的频率fHR相近的基础振荡频率,通常取其最大频率分量为fHR的近似值:

其中,W(f)为色度特征信号在[0,T]连续时间内的功率谱密度.同时为了直观起见,本文将功率表示为心率HR而不是频率f的函数,如图9所示,其中HR=60f.

图9 PSD 分析

3 实验与分析

在本节中,本文在自采集数据库上对方法进行评估.所有的实验均在Windows 10 操作系统下,2019a 版本的Matlab 上实现.

3.1 数据的采集

本文使用普通网络摄像头,在自然光、日光灯、弱光3 种场景下对10 名参与者(4 名男性,6 名女性)的人脸视频进行采集.要求参与者正对摄像头并与之水平相距60 cm 左右.所有视频的采样频率为30 fps,空间分辨率为1280×720,持续时间为30 s 左右.与rPPG记录并行,本文同步记录了来自透射式手指脉搏血氧仪(DB18,飞利浦投资有限公司)的脉搏血氧仪数据,并将之作为参考HR信号.

3.2 实验结果分析

为验证本文所提HR检测算法的性能,与文献[8]、文献[10]提出的心率检测算进行对比.综合先前研究对HR 检测算法的性能评价,本文采用4 种评价指标作为性能度量:第1 种指标是平均绝对误差HRme,如式(7),式中N为表示视频数据个数,HRvd表示HR估计值,HRgt表示HR基准值;第2 种指标为误差的均方根误差,如式(8),为RMS E;第3 种指标是误差的标准差,记为HRsd;第4 种指标是HR检测结果的平均误差率HRmer,如式(9).

在自然光场景下,心率检测的性能如表1所示.比较发现,3 种方法的HRme皆小于5 bpm,满足中华人民共和国医药行业规定的误差标准(误差≤5 bpm),RMS E小于6 bpm,HRsd小于4 bpm,HRmer均小于6%,表明在自然光场景下,3 种方法都表现较好的性能.但与先前两种方法相比,本文方法的HRme为 2.39 bpm,HRmer为3.05%,具有明显的优势.

在日光灯场景下,表2结果表明,由于人脸光照环境发生变化,导致提取的rPPG 信号相比于在自然场景下变弱,增大了被噪声淹没的可能性.所以3 种方法性能都有所下降.文献[8]和文献[10]的方法,RMS E均大于5 bpm,HRsd大于5 bpm,HRmer大于6%.本文所提方法,RMSE 为3.46 bpm,HRsd为1.88 bpm,HRmer为3.97%.

表1 自然光场景下的性能比较

表2 日光灯场景下的性能比较

在弱光场景下,如表3所示,3 种方法性能明显下降,文献[8] 和文献[10] 这两种方法的HRmer皆大于6%.对比先前两种方法,本文方法的性能更好,HRme小于3 bpm,RMS E小于5 bpm,HRsd小于4 bpm,HRmer为4.05%.

表3 弱光场景下的性能比较

从数据结果可以看出,本文所提方法具有较好的稳定性.在不同光照条件下,相比于先前两种方法,具有更低的误差率.主要原因如下,相比于文献[10]的方法,本文考虑到血液脉冲信号被噪声淹没的情况,并通过引进欧拉颜色放大技术,放大正常心率范围内的色度信息来解决.相比于文献[8]的方法,本文针对盲源分离出的信号具有随机性,无法确定哪一个源信号更能反应血液脉冲信号这一问题,通过相关性分析方法,评价各个源信号与所选血液脉冲参考信号的相关程度,选取相关程度最大的源信号作为rPPG 信号,提高了算法的稳定性.

通过显示参与者的Bland-Altman 图来评估基准心率HRgt与估计心率HRvd之间的一致性.Bland-Altman 分析为Bland JM 与Altman DG 提出[20],主要思想是使用均值m估计基准心率HRgt与 估计心率HRvd的差值,使用标准差SD 估计差值的偏倚,若95%的数据的差值都在区间[m−1.96SD,m+1.96SD]内,则表示HRgt与HRvd具有较好的一致性测量结果.

如图10所示,横坐标为基准心率HRgt与估计心率HRvd的平均值,纵坐标为HRgt与HRvd的差值.在3 种光照场景下,两种方法偏差的均值m为0.707 3 bpm,标准差SD 为2.057 bpm,95%一致性界限为[−3.324,4.738],仅有1 个点在一致性界限点外,95%以上的数据在一致性界限内.该结果表明,在3 种光照环境下,本文的非接触式心率检测与标准的脉搏血氧仪之间具有很好的一致性,本文方案可以替代标准仪器进行日常心率检测.

图10 3 种光照场景下Bland-Altman 一致性分析

4 总结与展望

rPPG 技术是一种远程人体生命体征监测技术,在特殊情况下非常有用,如新生儿监护、远程医疗、健康监护等,具有重要的研究意义.本文提出的基于视频放大与盲源分离的非接触式心率检测方法通过欧拉颜色放大技术放大正常心率范围内的色度信息,解决了因噪声和图像传感器限制等原因淹没rPPG 信号的问题.同时引入主成分分析从色度信息中盲源分离出源信号,抑制了头部微小运动噪声的干扰,考虑到源信号的随机性,利用血红蛋白对波长在540~577 nm 之间的黄绿光吸收更多的先验知识,提出一种相关性分析方法,选出最能反应BVP 信号的源信号作为rPPG 信号.实验结果表明,本文提出的HR检测方法比传统的方法具有更好的HR测量精度和稳定性.但在剧烈运动和光照突变的场景下,本文的方法具有一定的局限性.在未来的工作中,将进一步研究来解决剧烈运动和光照突变引起的噪声问题.

猜你喜欢
色度人脸心率
唐古特大黄有效成分与色度相关性分析
玻璃窗上的人脸
离心率
智力考场:有趣的图片测试
在最佳心率区锻炼
探索圆锥曲线离心率的求解
谈“理想声音的概念”在演唱中的应用
两种校准光谱辐射亮度计色度参数方法的比较研究
“领家系”可爱脸VS“高冷系”美人脸
粉煤灰颗粒和粉煤灰处理精制棉黑液的比较