APP下载

改进的小波阈值函数在心率检测中的应用

2019-02-27刘长江

关键词:手环小波人脸

谢 莉, 刘长江

(1.四川轻化工大学自动化与信息工程学院, 四川 自贡 643000;2.桥梁无损检测与工程计算四川省高校重点实验室, 四川 自贡 643000)

引 言

心率作为一种重要的生命体征,同时也是情绪反应的生理指标[1], 其变化与某些疾病有着密切的关联。同时,心率可作为科学锻炼的强度和效果的一种生物反馈,通过心率的实时测量,对于预防疾病、监控身体健康、指导训练[2]等有着重要的意义,如何获得准确的心率信号已成为问题的关键所在。本文对摄像头采集的人脸视频图像进行分析处理,通过数据分析将心率信号提取出来,从而获得心率值。心率信号在获取过程中会受到一些因素的影响,如环境温度、环境光、背景光照等,导致检测出来的心率不准确,去除信号中的噪声是心率检测准确性的保证。小波去噪是对傅里叶变换进一步的改进,同时进行频域和时域的分析,是傅里叶变换的升级。基于小波变换的去噪广泛地应用在图像处理、信号处理、诊断机械故障、心电信号处理、语音信号处理等领域[3-4]。1995年,Donoho提出了软、硬阈值函数降噪的算法[5],但这两种函数存在一定的不足。硬阈值法获得的重构信号具有很好的逼近原信号的特性,但是硬阈值函数在阈值处不连续,重构信号出现一定的振荡。软阈值法获得的重构信号具有良好的光滑性,但存在恒定的偏差,造成高频有用信息损失,从而重构信号与原信号偏差较大。文献[4]提出的自适应小波阈值的方法,随着分解层数及层级因子的变化,在心电信号降噪的过程中对分解信号和降噪处理更加合理,能满足临床的需求应用。文献[6]构造的新阈值函数,具有较好的平滑性,随着分解尺度的变化,能更准确地区分噪声与原始信号。文献[7]阐述了硬、软阈值函数去噪的优缺点,在此基础上分析了软硬阈值函数的折衷法、模平方处理法、加权平均法构造的阈值函数、半软阈值函数法,并通过实验验证其优于硬、软阈值函数去噪法。本文在文献[8]的基础上提出了改进的阈值函数,这一函数既满足阈值函数连续性,又避免了软阈值函数恒定偏差的问题,通过实验验证改进的小波阈值函数减弱了噪声使测得的心率值更准确、稳定。

1 小波阈值去噪原理

对带噪信号进行小波分解,噪声一般处于高频部分[9],针对这一特性,利用阈值函数,对小波系数进行阈值化处理,减弱或消除含噪部分的小波系数,然后对处理过后的小波系数进行重构,获得去噪的信号,流程图如图1所示。

2 小波阈值函数

2.1 传统小波阈值函数

Donoho等人[3]提出了软、硬阈值函数,并得到了广泛的应用。同时Donoho等人[10]也证明了小波阈值去噪比经典的滤波去噪方法更优越。软、硬阈值函数表达式分别为:

(1) 硬阈值函数:

(1)

(2) 软阈值函数:

(2)

2.2 改进的小波阈值函数

针对上述问题,本文在文献[8]的基础上,对阈值函数进行改进。结合软阈值函数连续性的特点,构造一个高阶可导函数,用以补偿软阈值函数产生“恒定偏差”的问题,避免导致心率检测不准确或无效,增加调节因子使其自适应加强。

(3)

其中:u=1-e-α(|wj,k|-λ)2,α、n为正数。

改进的阈值函数分析:

(1) 函数的连续性

(2) 函数的偏差性

(3) 函数的渐进线

(4) 调节因子α和n的影响

式(3)中:如果α=0、n=0时,改进的阈值函数转变为软阈值函数;当α→∞时,改进的阈值函数转变为硬阈值函数。因此,选取不同的α和n值,改进的阈值函数可以兼具软、硬阈值函数的优点。

3 实验与分析

基于视频的心率自动测量算法的实现流程如图2 所示。首先利用摄像头采集到面部视频,将视频图像通过欧拉信号放大,然后进行人脸特征点的提取,并选择感兴趣的区域,并提取该区域的R、G、B三通道的信息,通过小波阈值去噪,最后根据带通滤波截取心率频段,其频率即为心率值。

图2 心率自动测量的实现流程

3.1 数据收集

本文在白天自然光状态下,分别在保持静止和轻微运动两种状态下采集面部视频,进行测试。视频中人脸经过颜色的欧拉放大处理后,有利于提取因血液运动产生的面部颜色变化。欧拉放大处理前后的图像如图3所示。

图3 脸部图像的欧拉放大对比

3.2 基于人脸特征点的脉搏信号区域的定位

dlib库的人脸检测模型[13]能输出脸部的68个特征点。根据这些特征点拟合出脸部的多边形区域,如图4所示,选择图中绿色矩形框所围成的左脸、右脸为感兴趣的区域,提取该区域的R、G、B信息,取G通道像素值的平均值用作心率值的计算。

图4 人脸特殊点定位

3.3 小波阈值函数降噪前后心率检测的对比与分析

在白天自然光条件下实验,把改进的小波阈值函数用于心率的检测,如图5所示。从图5不难看出,本次实验从第20 s开始,去噪后的心率值更平稳、准确,更接近手环测得的心率值。

图5 心率检测结果的对比

为了验证改进的阈值函数降噪的有效性和准确性,以手环测得的心率值为参考基准,实验将一般的硬阈值函数、软阈值函数和改进的阈值函数在静止状态和轻微运动后测得的心率值进行比较,见表1和表2。

表1 静止状态的心率值(单位:bpm)

表2 轻微运动后的心率值(单位:bpm)

成年人在正常情况下的心跳次数为75次每分钟,但在睡觉、静止、轻微运动、剧烈运动后有所改变,一般地,心率60 bpm~100 bpm属于正常范围[14]。由表1和表2可知,在静止状态下,改进的阈值函数比软、硬阈值函数测得的心率值更准确、更平稳。在轻微运动后,随着时间的推移,改进的阈值函数测得的心率值趋近静止状态下的测量值,而软、硬阈值函数的测量值没有这个变化趋势。与手环的测量值相比较,本文提出的心率测量值接近手环的输出,基本达到手环测量的精度。

4 结束语

在用小波阈值函数对心率信号降噪的过程中,阈值函数的选择是非常重要的,这影响着心率检测的准确性。经过实验比较可以看出,本文改进的阈值函数能够较好地进行心率检测,从而监测人体的生命健康状况,及时对疾病隐患做出预警。另外,本文方法也能用于防止驾驶人员疲劳驾驶,促进合理科学的安排健身、训练计划等。

猜你喜欢

手环小波人脸
基于多小波变换和奇异值分解的声发射信号降噪方法
有特点的人脸
构造Daubechies小波的一些注记
一起学画人脸
基于MATLAB的小波降噪研究
三国漫——人脸解锁
疯狂编辑部之智能手环
基于改进的G-SVS LMS 与冗余提升小波的滚动轴承故障诊断
红手环志愿者服务团欢迎您的加入
学习监测手环