赵彦涛 付美玲 王 斌 张旭光 李小俚
(燕山大学电气工程学院,河北 秦皇岛 066004)
基于主成分分析和重叠直方图统计的视频信号心率测量
赵彦涛*付美玲 王 斌 张旭光 李小俚
(燕山大学电气工程学院,河北 秦皇岛 066004)
光电容积脉搏波描记法(PPG)原理指出,特定波长的光强度在血液容积作用下呈现周期性变化,因此人面部的肤色会随着脉搏的波动发生微小的变化。根据该原理,可以实现低成本、无接触、无电极的舒适的心率测量,对于远程医疗监控等领域有很大的意义。使用普通摄像头采集人脸视频,通过主成分分析(PCA)对人脸的3个区域的绿色分量的均值提取主成分信号,消除部分外界噪声的干扰;提取的主成分信号经平滑处理后,进行去趋势化处理,然后经过所提出的波峰检测方法,提取其波峰,减少波峰的漏检或多检;此外,采用重叠直方图统计的方法,计算心率信号的波峰间隔。在实验中,采用康泰CMS-50D指夹式脉搏血氧仪(测量样本数174个)和美国BIOPAC公司MP150多导生理记录仪记录的ECG(样本数110个),分别与所提取结果通过Bland- Altman分析方法进行对比。该方法与指夹式脉搏血氧仪测量结果的对比实验表明:叠加直方图统计方法的引入,使一致性评估评估的标准差由12.4 次/min减小到8.0 次/min左右,提高约1/3;与ECG的一致性评估的结果均值为1.8次/min,标准差为3.2 次/min,两者均较小,说明两者结果具有很好的一致性。
主成分分析(PCA);重叠直方图统计;心率;视频;Bland-Altman
心率指心脏每分钟搏动的次数, 能够反映心脏的工作状态, 是人体重要的生理指标[1]。正常成年人的心率一般在60~100次/min。在心血管监测和慢性疾病的治疗中,心血管功能规律性的测试和非接触性评估是非常重要的。人在休息时的心率,作为最简单的心血管参数之一,与吸烟、血脂异常或者高血压一样,已经被确定为一种独立的危险因素[2]。
目前,测量心率最准确的方法有心电图和脉搏血氧饱和度传感器等。采用心电图测心率要求被测试者佩带胸带或者在皮肤上粘贴电极,这样很容易刺激患者皮肤或引起患者的不适。夹在被测试者指尖或耳垂上的脉搏血氧饱和度传感器也存在同样的问题,并且如果长时间测量,弹簧夹可能会使患者感到疼痛,影响测量结果。所以,实现远程的、无接触的心率信号等生理信号的测量具有很广阔的发展前景。此外,在新生儿重症监护、长期癫痫检测、烧伤或外伤患者检测、睡眠研究以及其他情况下,对心脏速率进行连续测量时,这种技术也可以避免被测试者与电缆以及其他杂乱东西的接触,减少被测试者的不适[3]。
光电容积脉搏波描记法(Photoplethysmography, PPG)指出,皮肤内的血液容积随心脏跳动对光强的吸收呈现搏动性变化,文献[4]已经实现了对这种面部颜色微小变化的放大。文献[5]最早提出了基于红外的心率监测方法,不久之后文献[6-7]通过分析面部热视频证实了这一想法。近几年来,利用光电容积脉搏波描记原理(PPG)、根据反射光或者折射光变化测量心脏脉搏信号的研究越来越多,这种方法具有无接触、低成本的优点,如文献[8-12]的报道。PPG起初是基于红光或红外光的,文献[10-11]已经实现了普通环境光下的脉搏测量。但是,PPG对外界环境光的变化比较敏感,文献[3]提出了一种基于盲源分离的脉搏信号提取方法,取视频人脸区域RGB的3个通道中像素点的像素均值,得到3个随时间变化的信号,这3个信号做盲源分离,得到包含脉搏信号的独立成分。由于绿光/黄光对血液脉动产生的变化最明显[12-13],因此红光和蓝光包含的脉搏信息比较少,而且采用独立成分分析得到的信号排序是随机的,不能确定哪个才是计算出的脉搏信号。文献[14]提出了一种提取脉搏信号波峰之间的间隔IBI(interbeat interval)来求均值计算心率的方法,对所有IBI取均值提取心率,但由于干扰的存在,波峰的漏检或多检会产生错误的IBI,这降低了心率测量的准确度。
本研究提出了一种基于人脸3个区域绿色通道的主成分分析(principal component analysis, PCA)来提取脉搏信号的方法,可提取出更准确的脉搏信号,也消除了噪声的影响。在计算心率时,提出了重叠界限直方图统计的方法,最大程度地利用了脉搏波峰的信息,提高了心率计算的准确度。
1.1 脉搏波提取
采用普通摄像头录制包含人脸的视频,首先视频的每一帧定位出人脸的区域,对该区域进行分割,确定出感兴趣区域ROI(regions of interest),计算每个区域中像素点绿色通道像素值的平均值,得到3个区域绿色通道随时间变化的信号;然后采用PCA分离出主成分,对其进行处理,得到脉搏信号,计算出每个波峰之间的间隔IBI (interbeat interval),最后通过直方图进行统计,确定出心动周期,从而计算出心率(heart rate,HR)(见图1)。
图1 视频信号心率测量流程Fig.1 Video signal flow chart of heart rate measurement
1.1.1 人脸定位并分区
在人脸的鼻翼两侧,上唇向上的部分,由于分布有面动脉,因此这部分的皮肤随心率变化而呈现的光强变化更明显。本研究采用Adaboost算法、Cascade结构的方法检测人脸[15],采用KLT特征点跟踪人脸区域,可精确实现人脸定位及跟踪,提高人脸定位的抗干扰性。取人脸区域宽的60%,将包含鼻子、嘴和下巴的部分作为感兴趣区域 (regions of interest, ROI),把ROI分离成3个部分。计算视频每一帧ROI区域的3个分区绿色通道(G通道)的所有像素值的平均值,形成3个随时间变化的信号。
1.1.2 主成分分析
主成分分析(principal component analysis, PCA)将多个变量通过线性变换,选出较少个数的重要变量,它是一种多元统计分析方法,是一种常见的线性特征提取方法[16]。
本研究应用PCA方法的目的主要是对数据进行降维处理,将通过视频计算得出的3个信号进行PCA运算,并提取其主成分信号,可以去除干扰,更好地提取脉搏信号,图2为主成分分析示意图(为了保护被试者的隐私,人脸图像遮住了眼睛)。
图2 主成分分析Fig.2 Principal Component Analysis
然后,对PCA得到主成分信号进行平滑处理,消除噪声的影响。但是,由于环境光等外界因素和系统误差的影响,外部环境光可能会影响周期性信号的获取。为了更好地提取波峰,对该信号进行去趋势化处理,采用Mika等提出的基于平滑先验方法[17]的去趋势化方法。该方法认为,原始心率信号是由周期性的心动信号和低频的非周期性的趋势信号组成,所以能够将低频的非周期的趋势信号滤除,有效地保留周期信号的部分。
1.2 心率计算
1.2.1 波峰检测
虽然预处理后的信号包含较为明显的心率信息,但如果直接进行传统峰值检测,可能会造成波峰的多检。如图3(a)所示,1、4区域所显示的波峰很显然是噪声影响所产生的,2、3区域所显示的同一个波形检测出多个波峰,这些都会影响到本研究后续的心搏间期的计算,所以要对这些波峰进行检验,设定条件去除无效波峰。波峰提取需要满足3个条件。
(1)
(2)
图3 波峰检测。(a)直接检测;(b)检测方法Fig.3 Peak detection. (a) Direct detection; (b) Detect method
1.2.2 计算心率
在本文第1.2.1节中检测出波峰,其对应的值为p1,p2,…,pi(i=1,2,3,…,n;n为波峰的个数),它对应在时间轴上的位置为t1,t2,…,ti(i=1,2,3,…,n)。由于心脏每收缩和舒张一次构成一个心动周期,所以对于脉搏波信号来说,两个波峰之间的间隔即为一个心动周期。取相邻波峰之间时间的差值,即相邻波峰之间相差的视频帧数(i=1,2,3,…,n;j=1,2,3,…,n-1),得到差值数组T=T1,T2,…,Tj(j=1,2,…,n-1),称T为心动周期差值数组,有
(3)
采用波峰检测方法虽然可以减少一些漏检和多检,但有时仍会出现漏检或者多检测出波峰的现象。为了解决这一问题,相隔波峰之间取一个间隔Tk(k=1,2,…,n),并且将该间隔除以2,即Tk/2,也计入心动周期差值数组,有
(4)
(5)
式中,fs为采样频率,F为每分钟心跳次数,f为心动间隔。
正常人的心率一般在40~140次/min,由式(4)计算出正常人的心动周期差值数组中的数值应该在13~45之间。对心动周期差值数组进行滤波,将不在该范围的数值滤除。
通过上述方法计算出的心动周期差值数组,由于干扰的存在,检测出的心动周期包含不良心动数据。为了找到符合被测试者心率的心动周期,对心动周期差值数组进行直方图统计,将数据出现频数最大的那个范围内的数作为心率计算的依据。
直方图中分组的个数称为组数,每一个组的两个端点的差称为组距,数据落在组中的数量称为频数。在本研究中,心动周期的最小分辨率为1,如果组距太小,频数太分散,组距取太大,对应的心动周期范围增大,会影响结果,所以取组数在5~8之间、其对应的组距在4~6之间的直方图进行统计。
在直接采用分组直方图统计时,如果心动周期出现在两组交界处,心率计算的精度会大大降低。所以,笔者提出了一种重叠区域的直方图统计方法,即采用固定组距,每次往后平移一个单位,然后进行统计。以组距为6为例,对差值数组做直方图统计,得到频数如图4所示,然后进行组距为6的重叠直方图统计,即对第1~6个的频数求和、第2~7个的频数求和,以此类推,得到频数之和的最大值所对应的6个数,根据其每个数对应的频数求加权平均值,就是心动周期。
图4 重叠区域的直方图统计Fig.4 Histogram overlap region
得到心率周期后,根据下式就可以计算出心率,有
(6)
式中,HR为心率,Fr为视频的帧率,T为心动周期。
用本方法所计算出的心率,就是每个视频时间长度内的平均心率。
1.3 算法验证
心率测量采用普通摄像头录制视频,大小为640像素×480像素,其中人脸所占比例不小于整个画面的1/3,帧率为30 帧/s,计算视频中300帧内的平均心率。为了验证所提出的方法,采用了两种实验对比方案:一是采用康泰CMS-50D指夹式脉搏血氧,(其测量精度为±2次/min)测量心率和本方法进行对比,在该方案中,实验采集了174个视频,其中包含了4名测试者(男女各2名)在一天不同时间、不同光照环境下采集的视频,部分视频中人脸有移动;二是采用ECG心电测试仪记录的心电数据与本方法进行对比,采集了14名测试者在不同时间、不同光照条件下的共110个视频,在视频采集过程中计算采集时间内ECG测量心率的平均值。两种方案均采用Bland- Altman分析方法,对本方法和仪器测量的结果进行一致性评估,Bland-Altman分析方法用来表示两种测量方法之间的差异,横轴为每个被观察对象测量得到的均值,纵轴为两种测量方法间的差异值。
传统的视频提取心率的方法是采用人脸部分绿色通道的像素平均值提取心率信号,本研究把人脸分为3个区域后,采用PCA的方法提取心率信号。对比两种方法提取的心率信号(见图5),采用的PCA方法提取出的主成分信号去除了大部分噪声,包含更为明显的脉搏信号。
图5 PCA提取信号与文献[3]所用绿色通道信号对比。(a)PCA提取信号; (b)绿色通道提取信号Fig.5 The comparison between signal extracted by PCA and the green channel in literature [3]. (a)Signal extracted by PCA; (b) Signal extracted by green channel
实验首先将采用PCA提取出的信号进行去趋势化处理。图6为去趋势化后的结果,其中(a)为PCA分解后得到的波形,(b)为去趋势化后的波形,可见经去趋势化后得到的信号具有较明显的周期性。
图6 预处理。 (a)平滑后的曲线; (b)去趋势化Fig.6 Signal Preprocessing. (a) Result by smoothing;(b) Graph after detrending fluctuation analysis
图7 所提取的心率信号与ECG信号对比Fig.7 Comparison between the heartbeat signal extracted in this paper and ECG signals
此外,实验用去趋势化后的信号与采用美国BIOPAC公司MP150多导生理记录仪记录的ECG (electrocardiogram,心电图)信号进行对比,如图7所示。其中,细线为采用心电测试仪测得的心电信号,粗线为本实验提取出的信号。可见,采用本方法提取出的信号与心电信号在周期上具有较明显的一致性,说明本方法提取出的信号可用来计算心率。
通过所提出的波峰检测方法,对图4(a)进行波峰检测,结果如图8所示。可见,本方法可保留大部分的有效波峰,剔除无效波峰,达到了很好的波峰检测的目的,为下一步计算波峰之间的间隔提供了便利。
图8 波峰检验结果Fig.8 Result of peak detection
图9 本方法与CMS-50D测量结果Bland-Altman 统计图。 (a)直方图统计;(b)重叠直方图组距为4; (c) 重叠直方图组距为5; (d) 重叠直方图组距为6Fig.9 Statistics of histogram of Bland-Altman between the results of the method in this paper and CMS-50D. (a)Histogram group at 4; (b) Histogram overlap region group at 4(c) Histogram overlap region group at 5; (d) Histogram overlap region group at 6
因为在实验1中,组距为5时测量的效果较好,因此在实验2中,组距选择5,采用Bland-Altman分析方法对两种测量结果进行一致性评估,如图10所示。两种测量结果偏差的均值为1.818 5,标准差为3.183 2(见表2),可见采用本方法和采用ECG心电测试仪测量,两者测量结果的整体差异以及分散程度都较小,说明两种方法具有很好的一致性。
表1 与CMS-50D测量Bland-Altman统计对比
Tab.1 Bland-Altman Histogram statistics between the presented method and CMS-50D method
直方图统计方式均值d-(次/min)标准差SD(次/min)直方图0.512.4重叠直方图(组距=4)-1.48.9重叠直方图(组距=5)-2.18.0重叠直方图(组距=6)-2.97.0
图10 本方法与ECG测量结果的Bland-Altman统计Fig.10 Statistics of histogram of Bland-Altman between the results of the method in this paper and ECG
Tab.2 Bland-Altman Histogram statistics between the presented method and CMS-50D method
均值标准差一致性评估1.81853.1832
通过测量结果和Bland-Altman一致性分析可以看出,所有的测量结果均在95%的置信区间内,两种测量结果偏差的均值比较接近于0,而且标准差的测量结果较为准确,本方法和ECG测量结果的接近程度好于和指夹式脉搏血氧的接近程度。这可能是由于ECG测量结果为该段测量时间内的平均值,本研究也是采用重叠直方图统计计算在该段时间内的测量结果,而采用CMS-50D测量时,读取的是该段时间内某一时刻的显示值。
在人脸的视频图像中,图像中的绿色和红色对血液脉动产生的变化最明显[12,14],因此红色和蓝色分量包含的心率信息较少,在本课题实现过程中也说明了这一点,即图像中绿色分量带有更多的心率信息。文献[3]通过对人脸图像数据分别提取红色、绿色、蓝色分量,并进行独立向量分析,提取心率信号。本研究将人脸分为3个区域,并分别对该区域的绿色分量进行主成分分析。采用独立向量分析提取心率时,由于噪声的存在,心率所在的独立分量会改变,并且具有随机性,需要首先确定采用哪个分量提取心率[3],而采用主向量分析的方法直接从其主向量成分提取心率即可。此外,由于本课题中所提取的3个区域的绿色分量,其相对于红、蓝分量,带有更强的心率信息,而通过主成分分析得到的主成分滤除了其他的噪声,也能够最大限度地保留心率周期信号。
文献[14]对所有心率信号波峰间隔取均值提取心率,但由于干扰的存在,波峰的漏检或多检会产生错误的波峰间隔,从而影响测量精度,但通过本研究提出的波峰检测方法(见本文第1.2.1节),可减少波峰的漏检及多检,从而提高心率的测量精度。此外,由于噪声的存在,波峰的提取仍不可避免地出现漏检或多检的问题,如果直接通过均值的方法提取心率,漏检或多检的波峰带来的偏差会影响心率测量的精度。但是,由于错检或多检的波峰毕竟属于少数,大部分提取的波峰是没问题的,因此可通过统计大多数波峰,只从提取的正确波峰中提取心率,从而剔除漏检或多检波峰带来的影响,提高测量精度。因此,采用直方图叠加的统计方法来提取心率,实验结果也说明直方图叠加的统计方法的引入,可以提高心率测量的精度;本方法与ECG的一致性评估结果的均值为1.81次/min,标准差为3.18次/min,两者都较小,说明两者结果具有很好的一致性。
在实验中,采用的摄像头的采集帧率为30帧/s,计算心率采用的视频长度为300帧(10 s),如果想提高测量精度,提高摄像头的采集帧率是一种有效手段;但提高视频帧率,待处理数据量急剧上升,在算法一定的情况下,会影响心率测量的实时性。另外,在心率稳定的情况下,增加视频帧长度可提高心率的测量精度,但会降低心率测量的动态特性。
本研究采取了平滑和去趋势化来减少环境光的改变对测量结果的影响,但测量过程中环境光的改变仍会影响测量精度,应用中可考虑采用特定光源作为环境光或者采用光源进行光照补偿来提高测量精度。此外,在实际应用中,实时视频采集的帧率可能会与摄像头的帧率设置不同,会影响心率测量的精度,因此通过确定视频采集时相邻帧间确定的时间间隔,并用于心率计算,从而提高心率的测量精度。
基于视频信号的心率检测方法,可以实现实时、无接触、舒适的心率测量,可用于远程医疗以及睡眠监控等领域。
本研究采用PCA,对人脸视频中人脸3个区域绿色通道的均值随时间变化的信号进行处理,找出主成分信号,然后进行去趋势化处理、波峰检测,最后采用重叠直方图进行统计,计算出心率。采用PCA的方法,提取人脸区域绿色通道随心率变化的信息,去除外界噪声的影响。此外,由于噪声影响,去趋势化后的信号波峰不一定是心率的波峰,直接检测极值点可能会出现多检或者漏检的情况。本研究采用提出的波峰检测方法,可去除距离较近的波峰引起的波峰多检;采用直方图统计的方法检测心率,利用统计的信息,可有效地滤除与被测试者心动周期不符的数据,提高心率计算的准确性。
[1] 金晶晶, 王旭, 杨丹. 基于体震信号的心率测量方法[J]. 东北大学学报, 2009(2): 176- 179.
[2] Cook S, Togni M, Schaub MC, et al. High heart rate: a cardiovascular risk factor? [J]. European Heart Journal, 2006, 27(20), 2387-2393.
[3] Poh MZ, McDuff DJ, Picard RW, Non-contact, automated cardiac pulse measurements using video imaging and blind source separation [J].Optics Express, 2010,18: 10762-10774.
[4] Wu Haoyu, Rubinstein M,Shih E, et al. Eulerian video magnification for revealing subtle changes in the world[J]. ACM Transactions on Graphics,2012,31(4):13-15.
[5] Pavlidis I, Dowdall J, Sun NC, et al. Interacting with human physiology[J].Comput Vis Image Underst, 2007,108(1-2):150-170.
[6] Garbey M, Sun N, Merla A, et al. Contact-free measurement of cardiac pulse based on the analysis of thermal imagery [J].IEEE Trans Biomed Eng,2007,54(8):1418-1426.
[7] Fei Jin, Pavlidis I. Thermistor at a Distance: unobtrusive measurement of breathing[J]. IEEE Trans Biomed Eng,2010,57(4): 988-998.
[8] Wieringa FP, Mastik F, Van AF, et al. Contactless multiple wavelength photoplethysmographic imaging: a first step toward “SPO2camera” technology[J].Ann Biomed Eng,2005, 33(8): 1034-1041.
[9] Humphreys K, Ward T, Markham C. Noncontact simultaneous dual wavelength photoplethysmography: A further step toward noncontact pulse oximetry[J].Rev Sci Instrum,2007, 78(4): 044304.
[10] Takano C, Ohta Y. Heart rate measurement based on a time-lapse image[J].Med Eng Phys,2007, 29(8): 853-857.
[11] Hu Sijung, Zheng Jia, Chouliaras V, et al. Feasibility of imaging photoplethysmography[C]//Hua Zhang, Zhanji Gui, eds. Proceedings of IEEE Conference on BioMedical Engineering and Informatics. Sanya: IEEE,2008:72-75. [12] Verkruysse W, Svaasand LO, Nelson JS. Remote plethysm-ographic imaging using ambient light[J].Opt Express,2008,16(26):21434-21445.
[13] Cui WeiJia, Ostrander LE, Lee BY.Invivoreflectance of blood and tissue as a function of light wavelength[J]. IEEE Trans Biomed Eng,1990, 37(6): 632-639.
[14] Poh MZ, McDuff DJ, Picard RW. Advancements in noncontact, multi-parameter physiological measurements using a webcam [J]. IEEE Trans Biomed Eng,2011,58(1):7-11.
[15] Cheng Wenchang, Jhan Dingmao. A cascade classifier using Adaboost algorithm and support vector machine for pedestrian detection [C]//Tunstel E,Nahavandi S.IEEE International Conference on Systems, Man, and Cybernetics. Anchorage: IEEE, 2011:1430-1435.
[16] 王建明,刘鑫璐.基于声表面波传感器阵列的气体鉴别算法研究[ J].测控技术,2013,32(11):63-67.
[17] Mika PT, Perttu OR, Pasi AK. An advanced detrending method with application to HRV analysis [J]. IEEE Transactions on Biomedical Engineering. 2002, 49(2): 172-175.
Heart Rate Measurements Using Principal Component Analysis and Overlapping Histgram Based on Video Signal
Zhao Yantao*Fu Meiling Wang Bin Zhang Xuguang Li Xiaoli
(SchoolofElectricalEngineering,YanshanUniversity,Qinhuangdao066004,China)
The technique photo plethysmo graphy (PPG) shows that the light intensity has a periodical change with the change of blood volume. So the facial skin color will change a little along with the pulse. The technique can be used to measuring heart rate with many advantages, such as low cost, no contact and no electrode. This is helpful to remote medical monitoring and other fields. In this paper ordinary camera was used to collect human face videos. The principle components was extracted by calculating average values of green components on the three face regions through principal component analysis (PCA),and the noise was eliminated. The smoothing methods was used after PCA, and the detrending method was utilized in this paper. The peaks of signal were detected by the peak detecting method that was proposed in this work, which reduced detection of wrong peaks. Then the method of overlapping histogram statistics was used to get heart rate through calculating the intervals between peaks of the pulse signal. The proposed method was compared with results obtained from CMS-50D Finger clip type pulse oximeter of CONTEC company(measurement samples was 170)and MP150 multi-channel physiological recorder of BIOPAC company(measurement samples was 110)with the statistics method of Bland-Altma. Comparison of the results from CMS-50D with that from the proposed methods showed that the overlapping histogram statistics method reduced the standard deviations of the conformance assessment form 12.4 beats/min to 8 beats/min. Comparison of the results from MP150 with that from the proposed methods showed that the mean and the standard deviations of the conformance assessment was 1.81 and 3.18 bpm respectively, indicating the results were in good consistency.
principle component analysis(PCA); overlapping histogram statistics; heart rate; video; Bland-Altman
10.3969/j.issn.0258-8021. 2016. 03.005
2014-10-12, 录用日期:2016-03-30
国家自然科学基金(61271409);河北省博士后科研项目择优资助(B2014003011);燕山大学博士基金(B505)
R318.11
A
0258-8021(2016) 03-0284-08
*通信作者(Corresponding author), E-mail: ysuzyt@ysu.edu.cn