一种利用手指图像测量人体心率的方法
2014-07-25杨增印马建峰黄德俊叶春晓陆地群
杨增印,马建峰,孙 聪,黄德俊,叶春晓,陆地群
(1.西安电子科技大学计算机学院,陕西西安 710071; 2.西安电子科技大学技术物理学院,陕西西安 710071)
一种利用手指图像测量人体心率的方法
杨增印1,马建峰1,孙 聪1,黄德俊1,叶春晓1,陆地群2
(1.西安电子科技大学计算机学院,陕西西安 710071; 2.西安电子科技大学技术物理学院,陕西西安 710071)
在智能手机上,仅利用手机摄像头采集手指颜色的变化图像,实现人体心率的测量.采用图像频谱分割法对采集的手指图像进行滤波,结合3种像素包含的信息及包含的信息的差异性,利用3种像素功率密度谱加权计算出光电容积脉搏波.通过相隔点检测波峰法检测光电容积脉搏波信号,测出人体心率.将测量结果与标准仪器测量结果进行对比,平均误差为1.82%,与真实值的相关系数大于90%,证明了从手指图像测量出人体心率参数的可靠性.将该测量方法应用到手机上,能极大地方便慢性病人对自己健康状态的监控.
数字图像处理;光电容积脉搏波;图像频谱分割;智能手机;心率
在利用移动终端摄像头实现人体生理参数的测量方面,国内外已经取得一定成果.Pelegris等[2]和Scully等[3]论证了在移动终端上,通过采集人体手指图像实现人体心率测量的可行性.Pelegris等[2]利用手指图像的全部信息,根据灰度值测量出人体心率参数;Scully等[3]裁除手指图像边缘处误差,利用裁除边缘后的手指图像的绿像素计算出光电容积脉搏波信号,实现人体心率、呼吸速率、血氧的测量;Lamonaca等[4]利用手指图像的红像素计算出光电容积脉搏波信号,利用光电容积脉搏波信号的标准差作为检测光电容积脉搏波信号波峰的阈值,进行心率的测量.
光电容积脉搏波信号包含了表征人体重要生理信息的光电容积脉搏波[5-8],在医学上广泛用于人体生理参数测量[9].使用智能手机获得光电容积脉搏波信号时,通常通过手机摄像头采集手指图像,同时利用发光二极管灯进行补光[10-12],在此基础上计算光电容积脉搏波信号.当前此类方法存在一些不足:直接利用选取的手指图像计算光电容积脉搏波信号,引入了手指图像中的噪声信号,得到的光电容积脉搏波信号中包含噪声误差;仅利用手指图像的绿像素或红像素的某一种像素来计算光电容积脉搏波信号,忽略了其他两种像素包含的光电容积脉搏波信号的信息[3-4],或直接利用灰度值来计算光电容积脉搏波信号,忽略了3种像素包含光电容积脉搏波信号信息的差异[2],不能真实反映光电容积脉搏波信号的变化;在检测心率波峰时,主要利用相邻点的幅值变化检测波峰[2-4],容易受到变化平缓的波峰及光电容积脉搏波信号中静脉波波峰的影响,遗漏变化平缓的波峰或将静脉波波峰误检测为波峰,造成测量结果不准确.
笔者使用基于傅里叶变换(FFT)的分割法对采集的手指图像进行去噪,根据滤波后的手指图像的功率密度谱计算光电容积脉搏波信号,再利用相隔点检测波峰法,从光电容积脉搏波信号中计算出人体心率等生理参数,实现对人体心率的高精确性测量.这种方法主要优点包括:通过快速傅里叶变换处理手指图像,在频域上利用分割法对手指图像进行去噪,滤除由光源变化引起的噪声误差[13];利用3种像素的功率密度谱加权计算光电容积脉搏波信号,考虑了3种像素包含的信息及包含的信息的差异性,提高光电容积脉搏波信号计算的准确性;利用相隔点检测波峰法测量心率,避免了变化平缓的波峰及静脉波波峰对波峰检测的影响,提高了测量结果的准确性.
1 利用光电容积脉搏波信号的心率测量方法
笔者提出的方法分为3步:图像信号采集,光电容积脉搏波信号提取,人体参数测算.以下分别说明.
1.1 图像信号的采集
利用手机摄像头采集人体手指颜色变化的图像,并利用手机的发光二极管灯进行补光.手指轻贴手机摄像头且保持不动,同时打开手机发光二极管灯,进行连续拍照(过程类似文献[2]中的图1).由于手指很难长时间固定不动,因而缩短采样时间有利于提高测量的精确性.同时为了保证采集足够的手指颜色变化信息,又要求采样时间不能小于最小采样时间Tmin.因而采样时间T为
其中,A为常数,f为采样频率,λ是为了舍去采样两端的边界数据而增加的采样时间比例,Tmin的经验值一般为5 s.对采样频率为30 Hz的手机,λ=0.1时心率采样时间约为11 s(见图1中S点).
图1 采样频率与采样时间关系图
1.2 从手指图像中提取光电容积脉搏波信号
光电容积脉搏波信号是光穿过皮肤后的强度变化,反映血管容积的波动过程,包含了人体循环系统、呼吸系统的生理信息,其中包含人体心率信息.
笔者提出的方法通过对手机摄像头采集到的一系列图像进行信息提取,获得光电容积脉搏波信号的采样.具体地讲,对于采集到的每张图像,根据手机摄像头的分辨率,将图像中心区域提取出来,构成每张图像的小图.对小图进行处理得到医学光电容积脉搏波信号采样的过程如下.
首先,对每张小图进行快速傅里叶变换处理,即
其中,X(w0,w1)为光电容积脉搏波信号的频率响应,x(m,n)为图像(m,n)像素点的像素值,M及N为图像的像素数,j为傅里叶变换后值的虚数部分.使用快速傅里叶变换减少了傅里叶变换中乘法运算的次数,适用于计算资源有限的移动终端系统对光电容积脉搏波信号的实时处理.
其次,根据
计算图像的二维傅里叶谱.其中,R(w0,w1)为频率响应X(w0,w1)的实部,I(w0,w1)为频率响应X(w0, w1)的虚部.
选取采集的手指图像,如图2(a)所示,进行二维傅里叶变换,得到其傅里叶谱,如图2(b)所示.由图2 (b)可知手指图像的频谱能量集中分布在低频区域,并随着频率的增高而逐渐降低.故将[w0,w1]的正半轴频谱能量分为3段:[0,π/6]为高能量区,[π/6,π/2]为中能量区,[π/2,π]为低能量区,[w0,w1]的其他半轴采用相同的划分[13].
图2 手指图像的二维傅立叶谱及其频谱分割图
根据手指图像的频谱能量划分,将手指图像的二维傅里叶谱划分为9个子带.第9个子带为高频区域,即噪声成分所在区域(如图2(c)所示).为了有效地去噪,删除第9个子带频谱.然后,计算k子带的功率密度谱[]:
其中,Pk(k)为k子带的功率密度谱,Nk及Mk为k子带的像素数,r、g、b为根据实验确定的各像素的权重,具体计算方法见2.1.1节.
小图的功率密度谱为
其中,NM为整张图像的像素总数,P(i)为该小图的功率密度谱.
P表示图像功率密度谱变化,即被手指吸收后的发光二极管光强的变化,因而P代表了血管容积波动的医学光电容积脉搏波信号.图3(a)展示了实验获得的一位实验者手指图像的光电容积脉搏波信号,波峰对应血管的收缩,即心脏的收缩,波谷对应心脏的扩张.图3(b)为对应的频谱.
图3 一位实验者的光电容积脉搏波信号及频谱
1.3 心率的测量算法
采用相隔点检测波峰法测算人体的心率.根据光电容积脉搏波信号的原理知,光电容积脉搏波信号波峰对应心脏的收缩,波谷对应心脏的扩张,利用峰值(或波谷)数每分钟来测量人体的心率.由于受噪声信号影响,光电容积脉搏波信号中存在变化平缓波峰(图3(a)中A点)以及静脉波波峰(图3(a)中B点).对于前一种情况,根据P(n-1)+β<P(n)且P(n)>P(n+1)+β来确定点n处于一个波峰的位置[2-4],会遗漏波峰;对后一种情况,可能将静脉波波峰误检测为光电容积脉搏波信号波峰.两种情况都会给心率测量带来误差.笔者利用P(n-k)+β<P(n)且P(n)>P(n+k)+β来确定点n处于波峰位置,避免了变化平缓的波峰及静脉波波峰的影响.其中P(n)为第n点的光电容积脉搏波信号的幅度;k为根据手机采样频率设定的参数,通常要求E/4<k<E,其中E为每秒内采集的图像数,由手机摄像头的采样频率和人体心率范围确定,具体选定过程见2.3.1节;β为根据实际误差选定的参数,具体选定过程见2.1.2节.
通过检测光电容积脉搏波峰值实现人体心率测量的算法如下:
(1)Compute_HR() //N为图像总张数;
(2)count←0; //记录波峰的个数;
(3)Num[N]; //Num[N]记录波峰点对应图像序列的序号;
(4)for n←1 to N;
(5) if(p(n-k)+β<p(n)and p(n)>p(n+k)+β&&n<N);
(6) then count←count+1;
(7) Num(count)←n;
(8) n←n+k;
(9) else if(n<N);
(10) then n←n+1;
(11)return HR=60*frame*(count-2)*(Num(count)-Num(2)) //HR为人体心率.
从第2个波峰开始计数,避免了由检测到n点是峰值点附近的点而引起的误差.当检测完一个波峰后, n点将满足P(n-k)+β>P(n)且P(n)<P(n+k)+β条件,故算法对波峰点不重复计数;由于k<E, P(n-k)与P(n+k)之间最多仅有一个波峰满足条件,故算法不遗漏波峰.
根据周期函数的性质及光电容积脉搏波信号的波峰特点知,由于k>E/4,波峰点n的波峰平缓部分将包含在[n-k,n+k]区间内,该波峰点满足P(n-k)+β<P(n)且P(n)>P(n+k)+β条件,故该波峰不会被遗漏;由于[n-k,n+k]区间距离大于E/2,光电容积脉搏波信号中的静脉波波峰点n将满足条件P(n-k)+β>P(n)或P(n)<P(n+k)+β,该波峰点不满足P(n-k)+β<P(n)且P(n)>P(n+k)+β条件,防止了静脉波波峰的影响;由于β值相对于相邻两点的幅度差值较大,光电容积脉搏波信号中由冲击噪声造成的假波峰(类似静脉波波峰点)对应的n点将不满足P(n-k)+β<P(n)且P(n)>P(n+k)+β条件.因而该算法有效地减少了误差的影响,相对传统计算心率的方法准确性更高.
2 实验和结果分析
2.1 辅助参数的测量与选取
2.1.1 各像素权重选择
由于发光二极管灯光为白光且光强保持不变,任一像素计算出的光电容积脉搏波信号的标准差将反映该像素穿过手指被血管吸收的变化程度,即该像素包含光电容积脉搏波信号的强度.故笔者利用各像素计算得到的光电容积脉搏波信号的标准差作为像素包含光电容积脉搏波信息的权重.
对每次测量,首先选取采集的10张连续手指图像,利用各像素的功率密度谱分别计算光电容积脉搏波信号,再求各像素对应光电容积脉搏波信号的标准差δr,δg,δb,将单位化的标准差作为各像素包含光电容积脉搏波信号的权重,得到本次试验的权重值分别为:r=0.368 8,g=0.239 4,b=0.391 8.
2.1.2 阈值的选择
本节主要介绍如何根据实验选择具体的β值,使之能有效地克服噪声信号的影响,获得精确的测量结果.实验中选取5位实验者,分别测量实际心率和采集手指图像,按1.2节的方法获取光电容积脉搏波信号,枚举β值,找出实验所得心率和实际值之间误差最小时最大的β值(β值与实验相对误差关系如图4所示),所得β值的最小值为该实验中的β值.较大的β值保证根据P(n-k)+β<P(n)且P(n)>P(n+k)+β检测的n点与峰值点更接近,在光电容积脉搏波信号无波动的情况下,n点即为峰值点,并且较大的β值能减少冲击噪声的影响.
2.2 光电容积脉搏波信号获取的精确性
为了证明利用快速傅里叶变换处理裁除边缘后的手指图像能获得更准确的光电容积脉搏波信号,在采集实验者的手指图像的同时,用Oximeter设备采集实验者的光电容积脉搏波信号,进行实验对比.
将手指图像裁除边缘后,用快速傅里叶变换对手指图像进行处理,按照1.2节的分割法对手指图像进行滤波,计算滤波后图像的功率密度谱得滤波后的光电容积脉搏波信号.将结果进行对比可知(图5(a)),相对未进行快速傅里叶变换处理的情况而言,进行快速傅里叶变换处理后的光电容积脉搏波信号的测量值与Oximeter设备得到的光电容积脉搏波更相近,从而说明快速傅里叶变换的必要性[11].
图4 β值与实验相对误差关系图
图5 一位实验者的光电脉搏波
将按1.2节的滤波处理后的手指图像,分别通过计算手指图像的灰度值、绿像素、红像素、功率密度谱获得人体光电容积脉搏波信号.由各种计算方法结果(如图5(b)所示)可知,用功率密度谱计算光电容积脉搏波信号相对更接近真实光电容积脉搏波信号,且峰值处更突出,综合考虑各种像素包含的信息及权重时,获取的光电容积脉搏波信号精度更高[11].
由于利用基于快速傅里叶变换的分割法滤除了手指图像上的噪声信息,有效地减少了图像中噪声信号的影响.结合手指图像包含光电容积脉搏波信号的权重,利用3种像素的功率密度谱计算光电容积脉搏波信号,获得的光电容积脉搏波信号与标准硬件设备获得的光电容积脉搏波信号更接近,提高了实验准确性.
2.3 软件实现及实验结果分析
2.3.1 软件实现及实验环境的设定
在Android平台上使用Java语言开发出了心率测量软件,软件基于2.1节获得的最优值β实现了第1节所述的采集、提取和测算方法,软件界面如图6所示.
在设备选择方面,为了能有效地识别手指颜色微弱的变化,要求摄像头分辨率在200万像素以上.根据Nyquist采样定律,手机摄像头采样频率至少应为10 Hz.本实验中,使用HTC G9手机采集人体手指图像,该手机摄像头像素为500万,设置的采样频率为30 Hz.由于正常人体心率RH为60~100跳动次数每分钟(BPM),考虑个体差异,将RH范围扩展为30~150跳动次数每分钟(BPM),实际中人体心率不可能超过该范围.根据E= 60frRH,计算E为12~30张图像,实验中选定k=9,满足Emax/4<k<Emin.当手机采样频率更大时,该算法测量心率范围会更大.
图6 手机软件界面
为说明实验结果的精确性,在采集实验者左食指图像信息的同时,也使用现有医学设备ECG对其右食指进行采样,测量实验者的心率.实验过程对10位实验者站立、卧躺两种状态分别进行10次测量,然后求出每位实验者的测量平均值.
2.3.2 心率的测量结果
根据实验方法,对人体手指进行采样,测量人体心率,并与ECG仪器测量结果进行对比.
图7展示了站立、躺卧两种状态心率测量值与实际值对比结果,最大误差为4.22%,最小误差为0%,平均误差为1.82%,误差的方差为0.0105%,与实际值的相关系数为91.49%,测量值与真实值非常相近.
图7 实验结果对比直方图
2.3.3 误差比较分析
根据实验结果,与相关工作进行对比分析,如表1所示.
表1 设备以及实验结果对比表
从实验结果与相关工作的对比分析可以看出,在相近的硬件条件下,针对不同个体,笔者提出的算法的平均误差较小.
3 总 结
利用手机摄像头采集手指图像,通过图像分割法对手指图像进行去噪,结合手指图像的3种像素包含光电容积脉搏波信号的权重,利用功率密度谱计算出光电容积脉搏波信号,再采用相隔点检测波峰法检测光电容积脉搏波信号,在手机上实现了人体心率的测量,相比现有方法获得了更高的测量精度.笔者提出的算法使得人们能够利用手机特有的便携性、普遍性,在不借助大型医疗设备的情况下,通过手机摄像头测量人体的心率参数,便于人们即时掌握健康状态.在当前工作基础上,未来工作将着重研究手机摄像头特性对心率测量精度的影响,如摄像头存在色差、分辨率与心率测量精度的关系.
[1]马俊领,王成,李章俊,等.基于PPG的心率和呼吸频率的测量研究[J].光学技术,2011,37(3):309-312.
Ma Junling,Wang Cheng,Li Zhangjun,et al.Study of Measuring Heart Rate and Respiration Rate Based on PPG[J]. Optical Technique,2011,37(3):309-312.
[2]Pelegris P,Banitsas K,Orbach T,et al.A Novel Method to Detect Heart Beat Rate Using a Mobile Phone[C]//Annual International Conference of the IEEE Engineering in Medicine and Biology Society.Piscataway:IEEE,2010:5488-5491.
[3]Scully C G,Lee J,Meyer J,et al.Physiological Parameter Monitoring from Optical Recordings with a Mobile Phone [J].IEEE Transactions on Biomedical Engineering,2012,59(2):303-306.
[4]Lamonaca F,Kurylyak Y,Grimaldi D,et al.Reliable Pulse Rate Evaluation by Smartphone[C]//IEEE International Symposium on Medical Measurements and Applications Proceedings.Piscataway:IEEE,2012:234-237.
[5]Fleming S G,Tarassenko L.A Comparison of Signal Processing Techniques for the Extraction of Breathing Rate from the Photoplethysmogram[J].International Journal of Biological Sciences,2007,2(4):232-236.
[6]Millasseau S C,Ritter J M,Takazawa K,et al.Contour Analysis of the Photoplethysmographic Pulse Measured at the Finger[J].Journal of Hypertension,2006,24(8):1449-1456.
[7]Nijboer J,Dorlas J,Mahieu H.Photoelectric Plethysmography:Some fundamental Aspects of the reflection and Transmission Method[J].Clinical Physics and Physiological Measurement,1981,2(3):205-215.
[8]Comtois G,Salisbury J I,Sun Y.A Smartphone-based Platform for Analyzing Physiological Audio Signals[C]//38th Annual Northeast Bioengineering Conference.Piscataway:IEEE,2012:69-70.
[9]Humphreys K G.An Investigation of Remote Non-contact Photoplethysmography and Pulse Oximetry[D].Maynooth: National University of Ireland,2007.
[10]Kurylyak Y,Lamonaca F,Grimaldi D.Smartphone-Based Photoplethysmogram Measurement[M].Aalborg:River Publishers,2012:135.
[11]Grimaldi D,Kurylyak Y,Lamonaca F,et al.Photoplethysmography Detection by Smartphone’s Videocamera[C]// IEEE 6th International Conference on Intelligent Data Acquisition and Advanced Computing Systems.Piscataway: IEEE,2011:488-491.
[12]Jonathan E,Leahy M.Investigating a Smartphone Imaging Unit for Photoplethysmography[J].Physiological Measurement,2010,31(11):N79.
[13]钟微,谢雪梅,石光明,等.一种灵活的图像频谱分割与去噪方法[J].西安电子科技大学学报,2007,34(6):395-398.
Zhong Wei,Xie Xuemei,Shi Guangming,et al.Image Spectrum Segmentation and De-noising Based on Multi-channel Nonuniform Filter Banks[J].Journal of Xidian University,2007,34(6):395-398.
[14]va de Vegte J.数字信号处理[M].尹霄丽,译.北京:电子工业出版社,2004:172-273.
(编辑:郭 华)
Measurement of human heart rate using finger pictures
YANG Zengyin1,MA Jianfeng1,SUN Cong1,HUANG Dejun1, YE Chunxiao1,LU Diqun2
(1.School of Computer Science and Technology,Xidian Univ.,Xi’an 710071,China; 2.School of Technical Physics,Xidian Univ.,Xi’an 710071,China)
On the smart phone,a phone camera is used to capture finger images to achieve heart rate measurements.First,we apply the spectrum division method to filter the collected finger images,and then use the weighted power density spectrum of the three pixel to calculate the PPG(PhotoPlethysmoGraphy), based on the information and its differences contained in the three pixels.Then we apply the peak detection method based on the detection of the separated PPG signal to measure the heart rate.Comparing the measured results and the standard results,the average error is 1.82%,and the correlation of the true value is greater than 90%,indicating the reliability of heart rate measurement on finger images.The application of the method can greatly facilitate the convenience of chronic disease monitoring.
digital image processing;photo plethysmo graphy;image spectrum segmentation;smartphone; heart rate
TP317.4
A
1001-2400(2014)05-0091-07
2013-05-20< class="emphasis_bold">网络出版时间:
时间:2014-01-12
国家自然基金委员会广东联合基金重点基金资助项目(U1135002);国家科技部重大专项资助项目(2011ZX03005-002);陕西省自然科学基础研究计划资助项目(2013JQ8036);中央高校基本科研业务费资助项目(JY10000903001,JB140309);长江学者和创新团队发展计划资助项目(IRT1078);大学生创新性训练计划资助项目(201210701058);国家自然科学基金资助项目(61303033)
杨增印(1988-),男,E-mail:lohafr@163.com.
http://www.cnki.net/kcms/doi/10.3969/j.issn.1001-2400.2014.05.016.html肤颜色产生微弱变化,因而可以利用光学设备采集由动脉活动引起的皮肤颜色变化信息,并根据采集的图像计算人体参数,从而降低人体参数采集的难度.近两年来,在利用生物光学信息进行人体生理特征测量方面已出现了一些研究成果,但其中大多数基于专业的测量设备[1],此类方法虽然可以获得精确的数据,但缺点在于设备费用较昂贵,不利于监测的普及和推广.同时,随着移动终端技术的飞速发展,智能手机的便携性、信息采集能力、计算能力和数据存储分析能力的提升都使得其可以成为理想的体征监测设备.因此,在移动终端平台上研究用于人体关键体征监测的算法就成为移动平台应用研究中的一个热点.
10.3969/j.issn.1001-2400.2014.05.016
随着我国老龄化人口的增加,慢性病问题日益严重.当前慢性病的检测主要依靠医疗机构的专业医疗设备,病情监测昂贵且难以及时进行.因而对病人来说,如何及时、有效地监测表征慢性病病情的关键身体指标、了解自身的健康状况就成为一个关键问题.现代医学研究发现,动脉的活动可以引起人体特定部位的皮