1.本发明涉及人工智能的深度学习技术领域。具体涉及一种基于深度学习与射频感知的生命体征监测动作去除方法。
背景技术:
2.生命体征或称生命迹象,包括呼吸、体温、脉搏、血压等与人体健康状况息息相关的多项指标。当前,监测生命体征有接触式和非接触式两种基于射频感知的生命体征监测技术是非接触式生命体征检测技术的一个重要分支,在基于射频感知的生命体征监测技术中,射频信号发射源向被监测者发送射频信号,由被监测者体表生命体征引起的微动会对反射信号的幅度、相位产生影响,也就是说反射信号中叠加了受监测者的生命体征信息,因此,通过对反射信号进行分析处理,就可以检测出被监测者的生命体征。虽然相较于应用摄像头、超声波等手段来监测者的生命体征,射频更能容忍背景噪声,但微弱的生命体征信号可能会被剧烈的身体运动严重干扰甚至会被淹没,进而无法得到准确的生命体征参数。另外,受身体运动和生命体征活动影响的射频反射信号表现出复杂的统计特征,这些非线性组合特性无法被单一类型的算法轻易分离。现阶段的非接触生命体征监测大多数要求受测者处于相对静止状态,受测者无法在进行生命体征监测时进行正常的运动,长时间保持静止状态不仅会给受测者带来不适感,也会使受测者产生心理压力,使得连续监测难以为继。故此,如何消除运动对非接触生命体征监测的影响,正确恢复细粒度生命体征波形,完成动作去除,提高非接触生命体征监测对运动的鲁棒性成为一个亟待解决的问题。
技术实现要素:
3.本发明的目的是为了解决现有技术中的上述缺陷,提供一种基于深度学习与射频感知的生命体征监测动作去除方法,能消除运动对非接触生命体征监测的影响,正确恢复细粒度生命体征波形。现阶段的非接触生命体征监测大多数要求受测者处于相对静止状态,因为受测者的身体运动会影响生命体征监测的结果,生命体征信号可能会被身体运动严重干扰甚至会被淹没。本发明提供的生命体征监测动作去除方法克服了这种不足,提高了生命体征监测对运动的鲁棒性,具备一定的实用性。
4.本发明的目的可以通过采取如下技术方案达到:
5.一种基于深度学习与射频感知的生命体征监测动作去除方法,所述生命体征监测动作去除方法包括如下步骤:
6.s1、获取射频信号,所述射频信号来自雷达,包含生命体征信息;对所述射频信号在快、慢两个时间维度的采样,得到预定格式的射频数据矩阵h。
7.在基于雷达的生命体征监测中,从雷达获取的射频反射信号,即雷达脉冲响应cir信号是一个已调制时频信号,为了便于以统一的数据格式来处理来自不同雷达的脉冲响应cir信号,需要先对射频反射信号进行采样,具体如下:
8.在对来自雷达的脉冲响应cir采样时,通常存在两种不同尺度的采样时间:t和t',
t'为小尺度采样时间,采样速率通常在皮秒等级,称之为快时间,能用来表征反射波在不同距离的情况;t=t'+it,为大尺度采样时间,称之为慢时间,其中,i=1,2,...,n,为慢时间采样的时间索引、n为给定最大慢采样次数、t为大尺度采样的采样周期,t=1/fs、fs为慢时间采样频率,如此,在快、慢时间两个维度上分别以预设的采样次数对雷达脉冲响应cir进行采样,就可以得到方便后续处理的统一格式的射频数据矩阵h,即n
×
m的矩阵,表示为h
i,j
,其中,j=1,2,...,m,表示快时间的序列索引,m为给定最大快采次数。
9.s2、对所述射频数据矩阵进行预处理:应用二维滑动平均方法对所述射频数据矩阵进行降噪处理,获取包含动作信息的生命体征数据,应用平均值法去除所述生命体征数据的静态背景,获取待处理生命体征数据;应用恒虚警检测方法对所述待处理生命体征数据进行处理,获取动作数据;具体如下:
10.s21、用一个预设大小的滑动窗口从矩阵h中截取相应大小的数据块作为第一操作数据,滑动窗口的宽度为m、长度为n/n1,n1为预设正整数,故而,第一操作数据为大小为n/n1
×
m的矩阵;
11.s22、计算所述第一操作数据的列平均值,得到第一平均值向量;
12.s23、计算第一操作数据和第一平均值的差值,进行静态背景的去除,得到第二操作数据;
13.s24、计算所述第二操作数据绝对值,再针对每列求列平均值,得到第二平均值向量:基于所述第二平均值向量元素的最大值设定阈值;基于阈值对所述第二平均值向量进行扫描,找出大于阈值的开始索引和结束索引;以m作为第二滑动窗口的长度、开始索引和结束索引的差值为宽度,从第二操作数据中截取出一个更小的二维矩阵,进行动作数据提取,得到第三操作数。
14.s25、以预定步长将滑动窗口沿着慢时间维度滑动,重复s21至s24的步骤,直到处理完所有的预处理射频信号。将每次得到的第二操作数沿着慢时间维度拼接,保持矩阵列数不变,得到去除了静态背景的生命体征数据,记为待处理生命体征数据;相应地,拼接所有的第三操作数,得到动作数据。
15.s3、基于所述动作数据识别身体动作分类,获取动作类型:
16.常见的身体动作可分为三种类型,即平稳、循环平稳和非平稳,任意的身体运动可以由这三种类型的动作组合形成。本质上,平稳和循环平稳类动作都可以被视为平稳的,即具有时间依赖特性,特别是表现出重复性。因此,动作的平稳和非平稳类型能用自相关来区分,平稳信号的自相关值几乎没有衰减,而非平稳信号的自相关值的衰减是显著的。具体操作如下:
17.获取来自上述步骤s2的身体动作数据,针对所述动作数据的每一行求自相关值;
18.计算自相关衰减值,计算所有自相关衰减值的平均值,将衰减值的平均值作为最终的自相关衰减值;
19.设置预定的衰减阈值,构造一个假设检验,当自相关衰减值大于衰减阈值时为非平稳动作,反之则是平稳动作。
20.输出动作类型,所述动作类型包括非平稳动作、平稳动作;
21.s4、基于动作类型构建深度对比自学习神经网络;
22.在应用雷达进行非接触式的生命体征监测时,生命体征很难在身体运动下检测
到,这是因为雷达回波的构成是高度非线性的,因此,基于源信号叠加是线性叠加的源分离算法,特别是独立分量分析ica方法,在存在身体运动的情况下无法将生命体征信号从雷达回波中分离出来。给定一组源信号x(t),函数y(t)=f(x(t))可能是高度复杂和非线性的,其中f表示非线性的函数。如果能够求出f的反函数f-1
,就能够从非线性函数y(t)中得到源信号y(t);但是在非线性的条件下试图求f的反函数可能会导致无穷多个解,故而,当存在身体运动时,基于线性的传统信号分离方法不再适用。
23.最近深度学习的进展表明,在某些特定的条件下,借助深度对比学习,当存在身体运动时,特别是,在信号源x(t)独立且时间相关时,即身体运动是循环平稳性动作的条件下,求f的反函数f-1
是可能的。对比学习的目的是通过最大化观察和构建的实例之间的差异来近似反函数f-1
。
24.由于非平稳动作产生是突发形式的,不存在类似平稳动作的重复性,对于平稳与非平稳动作的去除,无法采用相同的神经网络结构,需要基于身体动作类型分别构建出两种深度对比学习神经网络h与h',二者都使用多层感知器mlp模型,其中,适用于平稳动作的神经网络h使用六层感知器,h的输出连接由两层感知器构成的二分类器g(h),最后一层二分类器使用交叉熵作为损失函数;而适用于非平稳动作的神经网络h'则设置5层感知器,h'的输出连接四分类器g(h'),四分类器也是由两层感知器构成,最后一层四分类器使用交叉熵作为损失函数。为了增加非线性,在每层感知器的输出层后设置激活函数leakyrelu。
25.s5、训练深度对比自学习神经网络;
26.s51、根据动作类型准备训练和测试样本集:
27.构建适用于平稳动作的样本集:
28.构建观察样本z(n):其中a(n-1)是对a(n)延时一个时间单位,a(n)则是对雷达回波信号进行采样、预处理后得到的包含动作信息的生命体征数据矩阵;
29.接着,构建对比实例样本z*(n),先将a(n)序列的顺序全部打乱,标记为a(n*),并将其替换a(n-1),从而得到观察样本与对比实例样本下半部分差别很大,将每个观察样本标记为1、每个对比样本标记为-1。
30.构造足够的观察样本和对比样本数据组成样本集,并按一定的比例划分训练样本和测试样本,用以对神经网络进行训练,比如构造十万组样本数据,按照30%的比例将其中三万组数据划分为测试集,而将剩余的七万组数据划分为训练集。
31.构建适用于非平稳动作的样本集:
32.构建观察样本z'(n):z'(n)=[a'(n)],和适用于平稳动作的观察样本z(n)不同,它无需进行数据扩充,也不需要对比实例样本,a'(n)和a(n)一样,也是对雷达回波信号进行采样、预处理后得到的包含动作信息的生命体征数据矩阵;
[0033]
其次,将观察样本切分成t等份,如t=4,得到共4份观察样本,直接标记成不同的4个类别。本发明对每个类别,分别产生三万组样本,总共12万组样本组成样本集,按照30%
的比例将其中三万组数据划分为测试集,余下的九万组数据为训练集。
[0034]
s52、根据训练样本集训练深度对比自学习神经网络:
[0035]
根据动作类型的不同,将与之相对应的训练样本数据分别送入各自已经构建好的深度对比自学习神经网络,在tensorflow平台上对神经网络进行训练:首先初始化神经网络参数和权值,随后,用随机梯度下降和误差反向传播方法来最小化损失函数,更新神经网络参数和权值,以达到最优化网络参数。训练时每次送入一组数据训练数据,直至所有样本数据输入完毕,则训练结束。设置的参数包括一次训练所选取的样本数batch size、学习速率learning rate、动量momentum、衰减阶梯decay step和衰减因子decay factor。
[0036]
s6、应用训练好的深度学习神经网络,完成动作去除:将包含生命信息的所述待处理生命体征数据送入训练好的深度学习神经网络中,完成动作去除,恢复出细粒度生命体征信号,所述生命体征包含呼吸信号和/或心率信号。
[0037]
进一步地,所述步骤s2中,所述待处理生命体征数据和动作数据还可以通过非线性ica主成分分析方法获得。
[0038]
进一步地,所述步骤s4中,所述深度对比学习神经网络还可以基于cnn卷积神经网络模型构建。
[0039]
进一步地,所述步骤s4中,还可以使用最小均方误差mse作为损失函数。
[0040]
进一步地,所述步骤s4中,激活函数还可以使用sigmoid函数。
[0041]
进一步地,所述步骤s5中,还可以应用xavier方法训练神经网络,初始化神经网络参数和权值。
[0042]
进一步地,所述步骤s5中,还可以应用小批量样本梯度下降方法来最小化损失函数,更新神经网络参数和权值。
[0043]
本发明相对于现有技术具有如下的优点及效果:
[0044]
本发明提供一种基于深度学习与射频感知的生命体征监测动作去除方法,通过将深度对比学习应用到非接触式生命体征监测中,能很好地消除运动对生命体征监测的干扰,正确恢复出细粒度生命体征波形。提高了非接触生命体征监测的鲁棒性。受测者在进行生命体征监测时摆脱了传统接触式监测时穿戴设备的束缚,也无需在接受生命体征监测时保持静止,既省去了穿脱穿戴设备的麻烦,在很大程度上避免了穿着穿戴设备不适感和交叉感染的风险,又能在接受监测时进行正常活动,爱测者在正常运动时不经意间就完成了监测,整个监测过程舒适、自动、智能,体验感极佳,监测结果还能实时远程监控。
[0045]
具体来说,本发明的优点和效果表现在如下几个方面:
[0046]
(1)提出并实现了一种针对运动鲁棒的生命体征的监测方法,基于射频传感与深度对比学习技术,以无接触的方式实现信息采集与处理;
[0047]
(2)在快、慢两个时间尺度上对雷达射频信号进行采样,将多种雷达捕获的传感数据转化成统一格式,便于后续的信号处理,使本发明提出的生命体征的监测系统独立于底层硬件平台;
[0048]
(3)通过分析人体运动与生命体征激发的微小振动之间的联系,进一步对运动进行分类,区分不同的身体动作类型构建并训练神经网络,提高了生命监测中动作去除的有效性;
[0049]
(4)扩展了近期发展的深度对比学习框架,以自我监督的方式分离非线性信号成
分,完成动作去除,提高了生命体征监测对运动的鲁棒性。
附图说明
[0050]
图1是本实施例公开的基于深度学习与射频感知的生命体征监测动作去除方法的总流程图;
[0051]
图2是本实施例公开的ti iwr 1443波束成形波谱图;
[0052]
图3是现有技术在静态和玩智能手机游戏时进行生命体征时的相对误差示意图;
[0053]
图4是本实施例公开的各种身体动作下心率的相对误差示意图;
[0054]
图5是本实施例公开的各种身体动作下生命体征波形的归一化相关系数示意图;
[0055]
图6是本实施例公开的适用于平稳动作的神经网络结构示意图;
[0056]
图7是本实施例公开的适用于非平稳动作的神经网络结构示意图;
[0057]
图8是本实施例公开的神经网络训练流程图。
具体实施方式
[0058]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0059]
实施例1
[0060]
深度学习的概念源于人工神经网络的研究,是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据。深度神经网络包含多个隐含层的神经网络结构。这些层通常按顺序排列,每层均由大量原始的非线性运算组成,上一层的输入表示可以传递到下一层并转换为更简要的表示。深度学习通过组合低层特征,形成更加抽象的高层表示,以发现数据的分布式特征表示。本发明研究过程中研究人员认为将深度对比学习应用到非接触式生命体征监测中,能很好地消除运动对生命体征监测的影响,正确恢复细粒度生命体征波形,提高非接触生命体征监测对运动的鲁棒性。
[0061]
本发明通过将深度对比学习应用到非接触式生命体征监测中,提供了一种基于深度学习与射频感知的生命体征监测动作去除方法,为了加深对本发明的进一步理解,先将雷达的射频响应的分析、身体动作类型的分析、身体动作对生命体征监测的影响以及运动对信号空间的分析描述如下,需要说明的是,所描述的内容只是为了更好地理解本发明,而不构成对本发明的限制。
[0062]
(1)雷达的射频响应的分析
[0063]
射频传感器是非接触式生命体征监测的关键部件,在进行监测的过程中,射频发生器向被监测者发射射频信号,射频信号遇到受测者会被反射回来,受监测者的肢体运动和生命体征活动会影响反射信号的幅度、相位。射频传感器,比如雷达,是一种工作在射频段的检测装置,用来将检测到信息按一定规律变换成为电信号或其他所需形式的信息输出。射频响应可以由脉冲响应cir表示,因距离变化产生的时延是影响射频通道脉冲响应的主要因素。距离表示如下:
[0064][0065]
其中,t为时间,为雷达到被测对象的平均距离,db(t)、dr(t)、dh(t)分别为身体运动、呼吸、心跳引起的距离变化。
[0066]
对于给定发射波形s(t),接收信号y(t)表示为:
[0067][0068]
其中,c为无线电波的速度,fc为载波频率,α(t)为信道增益。
[0069]
对于来自任意雷达的反射波信号,比如ir-uwb雷达或者fmcw雷达,都能够从y(t)/s(t)中提取出脉冲响应cir,脉冲响应cir包含了受测者反射的任何信息,主要包括生命体征信息和身体动作信息。
[0070]
无论是ir-uwb雷达还是fmcw雷达,都配备有单天线与多天线系统。多天线系统相对于单天线系统能够提供更多的空间多样性,使得电磁波的波束更窄,具有更好的性能。本发明提出的动作去除技术在单天线的情况下也可以很好的使用,并且可以通过结合多天线系统达到更好的效果。
[0071]
如图2所示的毫米波多天线波束成形的效果图,可以看出当天线增加时,波束会越来越窄。
[0072]
(2)身体动作类型分析
[0073]
我们可以将常见的身体动作分为三种类型:即平稳动作、循环平稳动作和非平稳动作,任意身体动作可以由这些类型的某种组合形成。平稳动作类似于高斯噪声,但又不是高斯噪声,使用手机玩游戏就是一种是典型的平稳动作,这种类型还包括打字和腿部抖动。循环平稳型通常包括各种有节奏的身体运动,例如,摇摆身体,在跑步机上行走就是循环平稳型动作中的一种。而突然站起来或坐下的动作,则由于它们的突发性,被归类于不平稳动作,另一个典型的非平稳动作是睡眠中身体的翻转。
[0074]
(3)身体动作对生命体征监测的影响
[0075]
为了研究身体动作对生命体征监测的影响,我们使用模板匹配方法测量了六种典型身体动作下的心率,并计算了各自的相对误差,相对误差如图3所示,从图中可以看出,所有的身体动作都会使测量心率时产生很大的误差。
[0076]
生命体征在很大程度上独立于身体运动,如果它们线性叠加,运用模板匹配方法应该能够正确提取生命信号。为了验证线性是否成立,我们让被测者佩戴可穿戴设备,并同步接收雷达的信号,然后对通过可穿戴设备得到的信号利用奇异值分解法去除噪声,得到参考波形。如果身体运动与生命体征的叠加为线性,雷达信号得到的波形与参考波形的相关系数应该较高。我们计算了身体运动下的所有接触式设备的生命体征波形与雷达信号的波形的相关系数,并将它们与各自的静态相关系数进行归一化;图4的结果表明,在大部分相关系数接近0.1,从而证明了人体运动导致的雷达信号叠加远不是线性的。因此,建立在各信号成分线性叠加基础上的现有波形分离方法注定会失败,也就是说,由身体运动引起的反射信号可以表现出各种统计特性,无法通过单一类型的算法轻松分离。
[0077]
(4)运动对信号空间的影响
[0078]
由生命体征引起的信号频率都比较低,通常在2hz以下,不能被快时间捕获,而是
隐藏在某些慢时间序列中,主要影响雷达信号的相位。而身体动作引起的信号,带宽更宽、频率更高,能同时被快时间与慢时间捕获,主要影响雷达信号的幅度。有研究表明,身体动作对雷达射频信号的影响要比生命体征对雷达射频信号的影响复杂得多。本发明使用扩展版本的rf-scg波形提取技术分别在ir-uwb雷达和fmcw雷达上监测受试者在静态和玩智能手机游戏时的生命体征。相对误差如图5所示,从图5可以看出,受试者在玩智能手机游戏时,生命体征监测的性能明显降低,这说明身体动作会造成生命体征监测的有效性降低。
[0079]
本发明公开了一种基于深度学习与射频感知的生命体征监测动作去除方法,本方法根据身体动作类型的不同构建了两个基于多层感知器mlp模型的深度学习神经网络来完成生命体重监测时的动作去除。包含生命体征信息的雷达射频回波信号经快、慢两个尺度上的采样和预处理后得到待处理生命体征数据和动作数据;基于动作数据和自相关识别出动作类型;基于待处理生命体征数据构建出适用于不同的动作类型的样本集,并按一定的比例来划伤训练样本集和测试样本集,比如,将70%的样本集划分为训练样本集,将30%的样本集划分为测试样本集;将训练样本作为整个神经网络的总输入,利用随机梯度下降和误差反向传播方法来更新和调整神经网络的权重和参数,完成神经网络的训练。最后将测试样本输入至训练好的深度学习神经网络中,完成动作去除,输出细粒度的生命体征信号,包含呼吸信号和/或心率信号。
[0080]
在本发明的实施过程中,雷达最好是放置在受试者前面,这是因为与心跳相关的血容量脉冲bvp很可能是由颈总动脉引起的,而呼吸信号则主要取决于胸部震动。事实证明,将雷达对准身体一侧会很大程度上错过呼吸信号,但不会错过心跳信号。
[0081]
实施例2
[0082]
本实施例公开了一种基于深度学习与射频感知的生命体征监测波形的恢复方法,包括模型训练和模型测试两部分。
[0083]
下面以ir-uwb雷达x4m05为例详细介绍本发明的实施过程。
[0084]
为了获取足够多的样本数据,招募了6男6女共12名身体健康的受试者,年龄在15-64岁、体重在50-80公斤之间。受试者被要求在日常生活环境中保持准静态坐姿、或进行7种常见的人体动作:玩手机、打字、摇摆身体、抖腿、在跑步机上行走、站/坐、翻身(睡眠时)。射频感应雷达被放置在距离受试者0.5到2m的范围内,精确范围可能因人而异。采用不同的时间跨度进行数据收集,但保证每个受试者的总时间大致相同:包括在跑步机上行走一分钟,一小时的打字,和一晚上的睡觉监测,总计80小时的rf数据,包括约330k心跳周期和68k呼吸周期。其中30%的数据作为训练样本数据,用于离线训练深度学习模块,剩余70%的数据则作为测试样本数据,用于利用训练模块在线恢复生命体征波形。根据身体动作的不同,应用训练样本数据和测试样本数据,分别进行实验,实验在基于python 3.7和tensorflow 2.0的pc机上进行,该pc具有i9-10900kf(3.7ghz)cpu、16gb ddr4 ram和geforce rtx 2070显卡。使用以太网基于精确时间协议同步硬件组件之间的时钟。novelda的ir-uwb雷达x4m05工作在7.3或8.7ghz,带宽1.5ghz;它有一对tx-rx(发射器、接收器)天线,视场(fov)65
°
方位角和仰角。
[0085]
整体的实施流程参见如图1所示,具体的实施步骤如下:
[0086]
s1、获取来自雷达的射频信号、对该射频信号在快、慢两个时间维度的采样,获取预定格式的射频数据矩阵;
[0087]
在对来自雷达的脉冲响应cir采样时,通常存在两种不同尺度的采样时间:t和t',t'为小尺度采样时间,采样速率通常在皮秒等级,称之为快时间,能用来表征反射波在不同距离的情况;t=t'+it,为大尺度采样时间,称之为慢时间,其中,i=1,2,...,n,为慢时间采样的时间索引、n为给定最大慢采样次数、t为大尺度采样的采样周期,t=1/fs,fs为慢采样频率,如此,在快、慢时间两个维度上分别以预设的采样次数对雷达脉冲响应cir进行采样,就可以得到方便后续处理的射频数据矩阵h,即n
×
m的矩阵,表示为h
i,j
,其中,j=1,2,...,m,表示快时间的序列索引,m为给定最大快采次数。在本实施例中,n=2000,m=100,fs=512hz。
[0088]
s2、对来自步骤s1采样输出的射频数据矩阵进行预处理:应用方法对射频数据矩阵进行降噪处理,获取包含动作信息的生命体征数据,应用平均值法去除生命体征数据的静态背景,获取待处理生命体征数据;应用恒虚警检测方法对待处理生命体征数据进行处理,获取动作数据;具体如下:
[0089]
s21、用一个宽度为100、长度为200的滑动窗口从矩阵h中截取相应大小的数据块作为第一操作数据,故而,第一操作数据为大小为200
×
100的矩阵;
[0090]
s22、计算所述第一操作数据的列平均值,得到包含100个元素的第一平均值向量;
[0091]
s23、计算第一操作数据和第一平均值的差值,进行静态背景的去除,得到第二操作数据,第二操作数据为大小为200
×
100的矩阵;
[0092]
s24、计算所述第二操作数据绝对值,再针对每列求列平均值,得到第二平均值向量:基于所述第二平均值向量元素的最大值获取阈值,本实施例中,阈值=最大值/5;基于阈值对所述第二平均值向量进行扫描,找出大于阈值的开始索引和结束索引,如35和50;以200作为第二滑动窗口的长度、开始索引和结束索引的差值15为宽度,从第二操作数据中截取出一个更小的二维矩阵,矩阵大小为200*15,进行动作数据提取,得到第三操作数;
[0093]
s25、以步长50将滑动窗口沿着慢时间维度滑动,重复s21至s24的步骤,直到处理完所有的预处理射频信号。将每次得到的第二操作数沿着慢时间维度拼接,保持矩阵列数不变,得到去除了静态背景的生命体征数据,记为待处理生命体征数据;相应地,拼接所有的第三操作数,得到动作数据。
[0094]
s3、基于所述动作数据识别身体动作,获取动作类型;
[0095]
常见的身体动作可分为三种类型,即平稳、循环平稳和非平稳,任意的身体运动可以由这三种类型的动作组合形成。本质上,平稳和循环平稳类动作都可以被视为平稳的,即具有时间依赖特性,特别是表现出重复性。因此,动作的平稳和非平稳类型能用用自相关来区分,平稳信号的自相关值几乎没有衰减,而非平稳信号的自相关值的衰减是显著的。具体操作如下:
[0096]
获取来处步骤s2的身体动作数据,针对该动作数据的每一行求自相关值;
[0097]
计算自相关衰减值,计算所有自相关衰减值的平均值,将衰减值的平均值作为最终的自相关衰减值;
[0098]
设置衰减阈值为0.45,构造一个假设检验,当自相关衰减值大于0.45时为非平稳动作,反之则是平稳动作。
[0099]
输出动作类型,输出的动作类型为平稳动作或非平稳动作;
[0100]
s4、基于动作类型构建深度对比自学习神经网络;
[0101]
由于非平稳动作产生是突发形式的,不存在类似平稳动作的重复性,对于平稳与非平稳动作的去除,无法采用相同的神经网络结构。如图6所示,适用于平稳动作的神经网络由神经网络h和二分类器g(h)组成,神经网络h使用六层感知器,h的输出连接二分类器g(h),g(h)由两层感知器构成的,二分类器的最后一层感知器使用交叉熵作为损失函数;而适用于非平稳动作的神经网络则由神经网络h'和四分类器g(h')组成,如图7所示,神经网络h'设置5层感知器,h'的输出连接四分类器g(h'),四分类器也是由两层感知器构成,四分类器的最后一层感知器使用交叉熵作为损失函数。为了增加非线性,在每层最后一层感知器的输出层后设置激活函数leaky relu。
[0102]
s5、训练深度对比自学习神经网络;
[0103]
551、根据动作类型准备训练和测试样本集:
[0104]
构建适用于平稳动作的样本集:
[0105]
首先,构建观察样本z(n):其中,a(n-1)是对a(n)延时一个时间单位,a(n)则是对雷达回波信号进行采样、预处理后得到的包含动作信息的生命体征数据矩阵;
[0106]
其次,构建对比实例样本z*(n):将a(n)矩阵序列的顺序全部打乱,标记为a(n*),并将其替换a(n-1),从而得到观察样本与对比实例样本下半部分差别很大,将每个观察样本标记为1、每个对比样本标记为-1。本发明构造了十万组数据样本对神经网络进行训练,其中三万组数据为测试集,七万组数据为训练集。
[0107]
构建适用于非平稳动作的样本集:
[0108]
首先,构建观察样本z'(n):z'(n)=[a'(n)],a'(n)和a(n)一样,也是对雷达回波信号进行采样、预处理后得到的包含动作信息的生命体征数据矩阵,和适用于平稳动作的观察样本z(n)不同,它无需进行数据扩充,也不需要对比实例样本;
[0109]
其次,将观察样本切分成t等份,如t=4,得到共4份观察样本,直接标记成不同的4个类别。本发明对每个类别,分别产生三万组样本,总共12万组样本。其中九万组数据为测试集,三万组数据为训练集。
[0110]
s52、根据训练样本集训练深度对比自学习网络:
[0111]
根据动作类型的不同,将与之相对应的训练样本数据分别送入各自已经构建好的深度对比学习网络,在tensorflow平台上对神经网络进行训练,具体训练流程见图8所示,首先,初始化神经网络参数和权值,随后,用随机梯度下降和误差反向传播方法来最小化损失函数,更新网络参数和权值,以达到最优化网络参数。训练神经网络时,正向传播和反向传播相互依赖,按照正向传播的顺序,即从输入层到输出层的顺序计算和存储每层神经网络的参数和权值,而计算神经网络参数梯度则按照反向传播的顺序进行,即从输出层到输入层。训练时每次送入一组数据训练数据,直至所有样本数据输入完毕,则训练结束。在本实施例中,batch size被设置为512、learning rate、momentum、decay step和decay factor分别设置为0.001、0.9、5e5和0.999。
[0112]
s6、应用训练好的深度对比自学习神经网络,完成动作去除:将包含生命信息的所述待处理生命体征数据送入训练好的深度学习神经网络中,完成动作去除,恢复出细粒度生命体征信号,生命体征信号包含呼吸信号和/或心率信号。
[0113]
特别地,上述步骤s2中,待处理生命体征数据和动作数据还可以通过非线性ica主成分分析方法获得;步骤s4中,深度对比自学习神经网络还可以基于cnn卷积神经网络模型构建;步骤s4中,还可以使用sigmoid作为激活函数;步骤s4中,还可以使用最小均方误差mse作为损失函数;步骤s5中,还可以应用xavier方法初始化神经网络参数和权值;步骤s5中,还可以应用小批量样本梯度下降方法来最小化损失函数,更新神经网络参数和权值;射频信号还可以通过fmcw雷达采集。
[0114]
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
技术特征:
1.一种基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述动作去除方法包括以下步骤:s1、获取射频信号,所述射频信号来自雷达,包含生命体征信息;对所述射频信号在快、慢两个时间维度上进行采样,得到预定格式的射频数据矩阵h,设定最大慢采次数为m、最大快采次数为n、慢采样频率fs为预定值,其中,m、n均为正整数;s2、对所述射频数据序列进行预处理,获取待处理生命体征数据和动作数据;s3、基于所述动作数据识别身体动作分类,获取动作类型;s4、基于所述动作类型构建深度对比自学习神经网络;s5、训练所述深度对比自学习神经网络;s6、应用训练好的所述深度学习自神经网络,完成动作去除:将包含生命信息的所述待处理生命体征数据送入所述深度对比自学习神经网络中,完成动作去除,恢复出细粒度生命体征信号,所述生命体征包含呼吸信号和/或心率信号。2.根据权利要求1所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s2中预处理过程如下:基于二维滑动平均方法对所述射频数据矩阵进行降噪处理,获取包含动作信息的生命体征数据;基于平均值法去除所述生命体征数据的静态背景,获取待处理生命体征数据;基于恒虚警检测方法对所述待处理生命体征数据进行处理,获取动作数据。3.根据权利要求1所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s3中识别身体动作过程如下:获取身体动作数据,针对所述动作数据的每一行求自相关值;计算自相关衰减值;设置预定的衰减阈值,当自相关衰减值大于所述衰减阈值时为非平稳动作,反之则是平稳动作;输出动作类型。4.根据权利要求1所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s4中自学习神经网络设置如下:基于身体动作类型分别构建出两种深度对比学习神经网络h与h',二者都使用多层感知器mlp,其中,适用于平稳动作的神经网络h使用六层感知器,h的输出连接由两层感知器构成的二分类器g(h),最后一层二分类器使用交叉熵作为损失函数;而适用于非平稳动作的神经网络h'则设置5层感知器,h'的输出连接四分类器g(h'),四分类器也是由两层感知器构成,最后一层四分类器使用交叉熵作为损失函数,为了增加非线性,在每层感知器的输出层后设置激活函数leakyrelu。5.根据权利要求1所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s5中训练深度对比自学习网络包括根据动作类型构建训练样本集和测试样本集,过程如下:构建适用于平稳动作的样本集,样本集由观察样本和对比样本组成:构建观察样本其中a(n-1)是对a(n)延时一个时间单位,a(n)则是
对雷达回波信号进行采样、预处理后得到的包含动作信息的生命体征数据矩阵;构建对比实例样本将a(n)序列的顺序全部打乱,记为a(n*),用a(n*)替换a(n-1);将观察样本标记为1、对比样本标记为-1;按预定的比例将样本集划分为训练样本集和测试样本集;构建适用于非平稳动作的样本集:构建观察样本z'(n)=[a'(n)],a'(n)是对雷达回波信号进行采样、预处理后得到的包含动作信息的生命体征数据矩阵;将观察样本切分成t等份,标记成不同的t个类别;针对对每个类别,分别产生预定组样本,构成样本集;按预定的比例将样本集划分为训练样本集和测试样本集。6.根据权利要求1所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s5中训练深度对比自学习网络包括应用训练样本集设置和更新神经网络参数及权值,过程如下:根据动作类型的不同,将与之相对应的训练样本数据分别送入各自已经构建好的深度对比学习网络对神经网络进行训练,包括:初始化神经网络参数和权值;用随机梯度下降和误差反向传播方法最小化损失函数,更新神经网络参数和权值;训练时每次送入一组训练数据,直至所有样本数据输入完毕,则训练结束;设置的参数包括一次训练所选取的样本数batch size、学习速率learning rate、动量momentum、衰减阶梯decay step和衰减因子decay factor。7.根据权利要求1所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s7还包括:实时输出并显示呼吸波形和/或心率波形。8.根据权利要求2所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s2中预处理的具体步骤如下:s21、用一个预设大小的滑动窗口从矩阵h中截取所述预设大小的数据块作为第一操作数据,所述预设大小是:宽度为m、长度为n/n1,n1为预设正整数,故而,第一操作数据为大小为n/n1
×
m的矩阵;s22、计算所述第一操作数据的列平均值,得到第一平均值向量;s23、计算第一操作数据和第一平均值的差值,进行静态背景的去除,得到第二操作数据;s24、计算所述第二操作数据绝对值,再针对每列求列平均值,得到第二平均值向量:基于所述第二平均值向量元素的最大值设定阈值;基于所述阈值对所述第二平均值向量进行扫描,找出大于所述阈值的开始索引和结束索引;以m作为第二滑动窗口的长度、开始索引和结束索引的差值为宽度,从第二操作数据中截取出一个更小的二维矩阵,进行动作数据提取,得到第三操作数;s25、以预定步长将滑动窗口沿着慢时间维度滑动,重复s21至s24的步骤,直到处理完所有的预处理射频信号;将每次得到的第二操作数沿着慢时间维度拼接,保持矩阵列数不变,得到去除了静态背景的生命体征数据,记为待处理生命体征数据;相应地,拼接所有的第三操作数,得到动作数据。
9.根据权利要求1至7任一所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s1中,给定慢采样频率fs为512hz、最大慢采次数m为2000、最大快采次数n为100。10.根据权利要求1至7任一所述的基于深度学习与射频感知的生命体征监测动作去除方法,其特征在于,所述步骤s2中雷达为ir-uwb雷达或fmcw雷达。
技术总结
本发明公开了一种基于深度学习与射频感知的生命体征监测动作去除方法,本方法基于射频传感与深度对比学习技术,以无接触的方式实现信息采集与处理,基于自相关区分身体动作类型来构建、训练神经网络,以自我监督的方式分离非线性信号成分,完成动作去除。通过应用本方法能消除运动对非接触生命体征监测的影响,正确恢复细粒度生命体征波形,提高了生命体征监测对运动的鲁棒性,克服了现阶段波形分离技术局限于线性信号的不足。另外,本方法在快、慢两个时间尺度上对雷达捕获的传感数据进行采样,将多种雷达捕获的数据转化成统一格式,便于后续的信号处理,使本发明提出的生命体征的监测方法独立于底层硬件。监测方法独立于底层硬件。监测方法独立于底层硬件。
技术研发人员:陈哲 罗骏
受保护的技术使用者:中新国际联合研究院
技术研发日:2021.12.30
技术公布日:2022/3/8