1.一种具备隐私保护特性的非接触式健康监测方法,其特征在于,采用远程光容积脉搏波描记术rPPG实现非接触式远程健康监测;具体包括如下步骤:步骤1、获取目标视频源;
步骤2、采用人脸检测定位算法进行面部感兴趣区域的提取;
步骤3、对面部感兴趣区域内的像素进行重排列;
步骤4、基于混合式视频编码标准对视频编码和解码,得到压缩后视频;
步骤5、采用rPPG提取算法从压缩后视频中提取rPPG信号;
步骤6、基于rPPG信号计算生理体征信号。
2.根据权利要求1所述具备隐私保护特性的非接触式健康监测方法,其特征在于,所述步骤1中,视频源采集设备是任意包含摄像头的设备,包括但不限于智能手机、平板电脑、笔记本电脑、监控设备、VR设备、运动相机、无人机、行车记录仪以及专用摄像机;拍摄时需要涵盖人脸区域。
3.根据权利要求1所述具备隐私保护特性的非接触式健康监测方法,其特征在于,所述步骤2中,人脸检测定位算法具体采用哈尔级联人脸检测算法,具体过程为:输入包含人脸的图像,若输入为彩色图,则首先转化为灰度图;对图像进行缩放处理;在输入图像中,使用一个固定大小的滑动窗口从左到右、从上到下滑动,依次检测每一个位置;对于每个窗口位置,计算对应的哈尔特征,并将其输入到自适应增强分类器中进行分类;如果分类器判定当前窗口为人脸,则标记该窗口为人脸区域;否则,继续检测下一个位置;最终输出检测到的人脸区域的位置信息,位置信息以矩形框的形式表示;当检测出的矩形框为多个时,进行矩形框合并,去除重叠的矩形框,剩余的矩形框构成完整的人脸区域,即面部感兴趣区域;调整每个矩形框的左上角坐标位置,使起始位置点的横纵坐标皆为16的倍数;同时,调整每个矩形框的宽度和高度,使两者皆为16的倍数。
4.根据权利要求3所述具备隐私保护特性的非接触式健康监测方法,其特征在于,所述步骤3中,设计了三种重排列规则,分别为:
规则一、首先将步骤2中所获取的面部感兴趣区域转换到YCbCr色彩空间,然后将感兴趣区域内的所有像素值先按照Y通道从大到小排列,Y通道相同的值再按照Cb通道从大到小排列,Y及Cb通道都相同的值再按照Cr通道值从大到小排列;排列后得到一个n×3的二维矩阵,其中n为感兴趣区域内的像素数,3为三个色彩通道;将n×3的二维矩阵按照Z字形重排列,得到一个h×w×3的三维矩阵,其中h和w分别为感兴趣区域的高度和宽度;
规则二、将规则一中按照单个像素进行Z字形排列的方式改成按照单个宏块进行Z字形排列;具体过程为:首先将步骤2中所获取的面部感兴趣区域转换到YCbCr色彩空间,然后将感兴趣区域内的所有像素值先按照Y通道从大到小排列,Y通道相同的值再按照Cb通道从大到小排列,Y及Cb通道都相同的值再按照Cr通道值从大到小排列;排列后得到一个n×3的二维矩阵,n×3的二维矩阵即为一行像素点;定义宏块大小为16×16像素大小,从n×3的二维矩阵中每取16个像素作为宏块的一行,直到取完16行,得到第一个宏块;其余宏块也根据此规则取出,最终将所有单个宏块按照Z字形排列;
规则三、将规则二中宏块的排列方式从Z字形改为从上到下、从左到右;具体过程为:首先将步骤2中所获取的面部感兴趣区域转换到YCbCr色彩空间,然后将感兴趣区域内的所有像素值先按照Y通道从大到小排列,Y通道相同的值再按照Cb通道从大到小排列,Y及Cb通道都相同的值再按照Cr通道值从大到小排列;排列后得到一个n×3的二维矩阵,n×3的二维矩阵即为一行像素点;每取16个像素作为一组,直到取完h组,h组对应为感兴趣区域的高度,将每一组作为最终结果的每一列,共w/16列;
在将重排列规则应用到当前视频的在线视频压缩时,预先采用历史数据对三种重排列规则进行测试,选择视频压缩结果最佳的作为当前视频的重排列规则。
5.根据权利要求1所述具备隐私保护特性的非接触式健康监测方法,其特征在于,所述步骤4中,采用H.264视频编码标准进行视频的编码和解码,具体过程为:首先,输入一组未压缩的视频帧,若视频为RGB格式,则需转换为YUV格式;而后,编码模块的编码器进行视频分割、帧内预测、帧间预测、变换与量化、熵编码、流重组,最终输出经过编码的视频码流以备传输或存储;解码模块的解码过程中解码器会进行码流解析、熵解码、逆量化和逆变换、循环滤波、逐帧重构,最终输出重构后的视频,即压缩后的视频。
6.根据权利要求1所述具备隐私保护特性的非接触式健康监测方法,其特征在于,所述步骤5中,具体采用平面正交皮肤算法提取rPPG信号,具体过程为:输入压缩后的视频,构建输入视频在RGB三个通道上的时间序列信号,然后进行平面正交计算,即构建一个正交于时间归一化肤色的平面,然后将皮肤区域内的像素点投影到构建的平面上,得到投影后的像素值,输出为rPPG信号一维序列。
7.根据权利要求1所述具备隐私保护特性的非接触式健康监测方法,其特征在于,所述步骤6中,生理体征信号包括心率、呼吸率、血氧饱和度和血压;
从rPPG信号的波形中获得心率的方法采用基于时域的方法或基于频域的方法,基于时域的方法采用心搏间隔的峰峰值或平均值计算;基于频域的方法采用频率范围内最大的功率谱密度,然后乘以60得到心率值;
从rPPG信号中提取呼吸率的方法采用集成经验模态分解方法,具体实现如下:输入rPPG信号的波形,预处理阶段包括对rPPG信号进行滤波、去噪;然后应用集成经验模态分解方法将信号分解为若干个本征模态分量;根据呼吸频率的大致范围,识别出与呼吸相关的分量或模式;最后采用时域方法中的峰峰值或频域方法中的最大功率谱密度计算呼吸率;
采用比率模型计算血氧饱和度,计算过程为:比率模型中的比率表示两个不同波长采集的脉冲波信号的交流分量和直流分量之间的关系;通过线性回归分析确定校正系数,建立比率与血氧饱和度之间的映射函数,从而实现对血氧饱和度的高精度估计;
从rPPG信号的波形形态特征中提取血压的具体过程为:首先测量波形的不同参数,包括rPPG信号中的波峰和波谷、上升时间、下降时间、波峰宽度、波谷宽度;然后分析波形的曲率变化,用来提取有关血管弹性和血液流动特性的信息;根据初步分析,选择最有意义的波形特征用于血压估计;最后,使用机器学习算法来构建血压估计模型,训练数据包含已知血压值和对应的rPPG信号的波形特征。