发明内容
本发明提供一种人体异常体征数据监测方法,以解决现有的跑步状态下人体体征数据监测准确性低的问题,采用如下技术方案:
利用跑步机上布置的图像采集装置采集待监测用户跑步时的帧图像,并通过传感器获取待监测用户跑步时的体征数据;
获取当前帧图像中的人体关键点形成的关键边,根据当前帧图像中的每个关键边和前一帧图像中对应关键边之间的余弦相似度得到当前帧图像的运动差异度;
以当前帧图像的运动差异度为纵轴,运动时间为横轴,构建运动差异度坐标系;
根据运动差异度坐标系中当前帧图像的运动差异度与前一帧图像的运动差异度得到当前帧图像与前一帧图像的斜率差;
根据当前帧图像与前一帧图像的斜率差与斜率差阈值对比,判读当前帧图像属于热身运动阶段、稳定运动阶段还是属于结束运动阶段;
利用大数据分别获取待监测用户在热身运动阶段、稳定运动阶段和结束运动阶段中的标准体征数据;
根据待监测用户在每个运动阶段的标准体征数据和该运动阶段的每一帧图像的运动差异度得到待监测用户在每一帧图像中的体征数据异常程度;
根据待监测用户在每一帧图像中的体征数据异常程度和异常程度阈值对比,判断是否需要进行调整。
所述根据每一帧图像中的每个关键边和前一帧图像中对应关键边之间的余弦相似度得到每一帧图像的运动差异度的方法为:
式中,
为第
帧图像的运动差异度,
为第
条关键边,
为关键边总数,
为第
帧图像中的第
条关键边与第
帧图像中的第
条关键边的余弦相似度。
所述根据当前帧图像与前一帧图像的斜率差与斜率差阈值对比,判读当前帧图像属于热身运动阶段、稳定运动阶段还是属于结束运动阶段的方法为:
根据运动差异度坐标系中当前帧图像的运动差异度的坐标与前一帧图像的运动差异度的坐标计算当前帧图像与前一帧图像的斜率差;
若斜率差大于斜率差阈值,且斜率差为正数,则当前帧图像属于热身运动阶段;
若斜率差大于斜率阈值,且斜率差为负数,则当前帧图像属于终止运动阶段;
若斜率差小于等于斜率阈值,则当前帧图像属于稳定运动阶段。
所述利用大数据分别获取待监测用户在热身运动阶段、稳定运动阶段和结束运动阶段中的标准体征数据的方法为:
利用大数据统计每种体脂数据的多个用户在每个阶段的体征数据;
将每种体脂数据的多个用户在每个运动阶段的体征数据的平均值和标准差构建数据库;
获取待监测用户的体脂数据在数据库中对应的每个运动阶段的体征数据的平均值和标准差,将该平均值和标准差作为待监测用户在每个运动阶段的标准体征数据。
所述根据待监测用户在每个运动阶段的标准体征数据和该运动阶段的每一帧图像的运动差异度得到待监测用户在每一帧图像中的体征数据异常程度的获取方法为:
式中,
为处于第
阶段的第
帧图像的体征数据的异常程度,
为待监测用户在运动阶段
的标准体征数据的平均值,
为待监测用户数据在运动阶段
的标准体征数据的标准差,
为传感器采集的第
时间点的待监测目标用户的体征数据,
为待监测用户的传感器采集的第
个运动阶段的第
时间点与之前时间点计算的得到的体征数据的标准差,
为待监测目标用户的心率传感器采集的第
个运动阶段的第
时间点与之前时间点计算的得到的体征数据的平均值,
为第
帧图像的运动差异度,
为双曲正切函数。
所述每个阶段的体征数据的异常程度阈值的计算方法为:
式中,
为待监测用户在运动阶段
中的体征数据的异常程度阈值。
所述根据待监测用户在每一帧图像中的体征数据异常程度和异常程度阈值对比,判断是否需要进行调整的方法为:
设置体征数据预警分数,若计算得到的第
帧图像的体征数据的异常程度大于体征数据的异常程度阈值,则进行提示预警。
所述获取当前帧图像中的人体关键点形成的关键边的方法为:
采用PoseC3D三维关键点识别技术,识别当前帧图像中的关键点形成的关键边。
本发明的有益效果是:通过在跑步机上装置摄像机采集图像,然后对采集的待监测目标用户的跑步状态图像进行分析,利用人体骨骼关键边识别技术,得到每一帧图像中识别出来的关键边在三维空间坐标上的变化情况,根据变化情况得到每一帧图像的运动差异度(运动幅度),根据运动差异度将跑步分为热身运动阶段,稳定运动阶段,结束运动阶段,是对跑步过程中体征数据的进一步精细化分析;利用大数据统计技术,充分考虑待监测目标用户在不同运动阶段体征数据的不稳定性,对不同的阶段进行具体分析,并结合每一帧图像的运动幅度对每一个运动阶段设置不同的异常程度阈值,根据阈值对待监测用户运动过程中体征数据出现异常的情况进行提示,并及时控制跑步机进行速率调整,保证了运动强度和训练效果,较常规的跑步机上锻炼时,统一设置阈值的方法而言,既提高了监测精度,又保证了运动效果。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的一种人体异常体征数据监测方法的实施例,如图1所示,包括:
步骤一:利用跑步机上布置的图像采集装置采集待监测用户跑步时的帧图像,并通过传感器获取待监测用户跑步时的体征数据;
该步骤的目的是,通过布置体征数据传感器采集跑步过程中待监测目标用户的体征数据,作为后续分析的基础。
本步骤首先布置体征数据传感器,以及图像采集装置,图像采集装置位于跑步机上方,采集待监测目标用户的跑步状态下的图像以及体征数据,具体方法为:
在待监测目标用户在跑步机跑步过程中,通过采集待监测目标用户的跑步状态下视频图像,并布设待多个体征数据传感器实时采集待监测目标用户在跑步状态下的心率数据、脉搏数据、呼吸数据以及体温数据,其中视频图像的采集时间以及传感器采集的时间相同,即每一个传感器的时间点,对应每一帧图像,二者是一一对应的。
步骤二:获取当前帧图像中的人体关键点形成的关键边,根据当前帧图像中的每个关键边和前一帧图像中对应关键边之间的余弦相似度得到当前帧图像的运动差异度;
该步骤的目的是,通过对采集的待监测目标用户的跑步状态图像进行分析,识别出每一帧图像中的人体关键点形成的关键边,根据相邻帧图像中同一关键边的变化,得到相邻帧图像的运动差异。
其中,根据每一帧图像中的每个关键边和前一帧图像中对应关键边的余弦相似度得到每一帧图像的运动差异度的方法为:
(1)获取每一帧图像中的关键边:
本实施例根据人体骨骼关键边识别技术,即PoseC3D三维关键点识别技术,识别每帧图像的关键点从而形成关键边,并记录每一帧图像中的每一个关键边的坐标:
公式中,
为第i帧图像中的N条关键边的三维坐标集合,
为
为第i帧图像中第一个关键边的三维坐标,
为第i帧图像中第N个关键边的三维坐标;
(2)根据相邻帧图像的关键边差异计算每一帧图像的运动差异度:
式中,
为第i帧图像的运动差异度,即将第i帧图像中的关键边和第i-1帧图像中的关键边的差异,作为第i帧图像的运动差异度,比如,第1帧图像的运动差异度为:第1帧图像中的关键边和第0帧图像(原始图像)中的关键边的差异,第2帧图像的运动差异度为:第2帧图像中的关键边和第1帧图像中的关键边的差异,依次类推,得到每一帧图像的运动差异度,运动差异度可表征当前帧图像中的运动幅度,运动差异度越大,则表明运动幅度越大,
表示第
帧图像的第
条关键边与第
帧图像的第
条关键边的余弦相似度,具体余弦相似度的计算公式为:
公式中,
表示第
帧图像的第
条关键边的坐标,
表示第
帧图像的第
条关键边的坐标,
表示图像中关键边的总个数,其中通过PoseC3D算法得到所有的关键点(比如头部关键点,肩膀关键点),从而形成关键边,由PoseC3D技术可知,每一帧图像之间关键点和边是都一一对应的,则通过在相邻帧图像内计算相对应的关键边的余弦相似度进行表示相邻帧图像的运动差异度,其中余弦相似度越大,其运动差异度越小。
需要说明的是,本步骤计算每一帧图像的运动差异度是为判定待监测目标用户所处的运动阶段进行初步分析,对采集的待监测目标用户的跑步状态图像进行分析,确定当前状态下待检测目标用户的动作状态,本步骤采用PoseC3D三维关键点识别技术,识别每帧图像的关键点从而形成关键边,并记录第
帧图像的关键边坐标,则根据坐标可以计算得到相邻两帧图像之间的关键边运动差异度。
步骤三:获取当前帧图像中的人体关键点形成的关键边,根据当前帧图像中的每个关键边和前一帧图像中对应关键边之间的余弦相似度得到当前帧图像的运动差异度;以当前帧图像的运动差异度为纵轴,运动时间为横轴,构建运动差异度坐标系;根据运动差异度坐标系中当前帧图像的运动差异度与前一帧图像的运动差异度得到当前帧图像与前一帧图像的斜率差;根据当前帧图像与前一帧图像的斜率差与斜率差阈值对比,判读当前帧图像属于热身运动阶段、稳定运动阶段还是属于结束运动阶段;
该步骤的目的是,利用当前帧图像的运动差异度构建坐标系,得到运动差异度的变化趋势,根据趋势分析变化规律,根据变化规律对运动过程进行分段。
其中,根据当前帧图像与前一帧图像的斜率差与斜率差阈值对比,判读当前帧图像属于热身运动阶段、稳定运动阶段还是属于结束运动阶段的方法为:
(1)在采集视频图像时间内构造运动差异度坐标系,其中,纵坐标为每一帧图像的运动差异度,横坐标为时间;
(2)根据运动差异度坐标系中当前帧图像的运动差异度的坐标与前一帧图像的运动差异度的坐标计算当前帧图像与前一帧图像的斜率差;若斜率差大于斜率差阈值,且斜率差为正数,则当前帧图像属于热身运动阶段;若斜率差大于斜率阈值,且斜率差为负数,则当前帧图像属于终止运动阶段;若斜率差小于等于斜率阈值,则当前帧图像属于稳定运动阶段。本实施例中的斜率阈值取当前帧图像及其之前的帧图像之间的斜率差的均值的五分之一;
本方法是获取拟合曲线中每个差异度的导数(斜率),并根据相邻差异度之间斜率差异,分析斜率差的连续性,由先验知识可以得知,热身运动阶段,人由静止逐渐开始缓慢运动,该阶段的运动差异度较大,中间稳定阶段的运动差异度变化不大,结束阶段,人由运动状态逐渐停止,该阶段运动差异度较大,则对应的会在运动差异度坐标系中出现波动较大、较小、较大的曲线,对应的每个阶段内相邻点的斜率差异较大、较小、较大。通过设置斜率差阈值
,若求得的斜率差大于该阈值,则表明当前阶段属于起始或终止(根据斜率差的正负号判定),起始阶段每一帧图像的动作差异度都是大于前一动作差异度的,因为随着跑步机从静止逐渐加速直至速度稳定的过程中,人的动作差异也是从静止到缓缓增大直至稳定,因此起始阶段的每一帧图像和前一帧图像的运动差异度的斜率差为正数,反之,结束运动阶段,跑步机速度逐渐降低,每一帧图像和前一帧图像的运动差异度的斜率差为负数,当运动处于稳定阶段时,人体动作基本稳定,斜率也基本保持稳定,因此,根据待监测目标用户的当前帧图像属于哪一运动阶段得到了,待监测用户当前帧图像所属的运动阶段,也是对运动阶段的划分。
需要说明的是,本步骤是利用每一帧图像的运动差异度进行待监测目标用户的运动阶段进行判定:
若每帧图像之间识别出来关键边在三维空间坐标上的变化差异不规律,且整体趋势呈现从小到大,表明该运动阶段属于起始热身阶段;若每帧图像之间识别出来的关键边在三维空间坐标上的变化差异稳定(即呈现规律性变化),表明该运动阶段属于中间稳定阶段;若每帧图像之间识别出来的关键边在三维空间坐标上的变化差异不规律,且整体趋势呈现从大到小,表明该运动阶段属于终止运动阶段。
本步骤进行分段的有益效果是,在待监测目标用户跑步期间,对于热身运动(起始运动)阶段、中间稳定阶段、结束运动阶段的体征数据的异常程度的设置的阈值条件也不相同。对于传统的对整个跑步过程设置相同的阈值条件,会产生较大的误差。在进行体征数据异常监测过程中,体征数据的异常程度受到待监测目标用户的影响,例如若待监测目标用户为体脂率不同的人,其对应的心率、脉搏、呼吸和体温数据都不相同。因此若简单的设置阈值条件进行体征数据异常程度监测,会产生较大的误差,并且在待监测目标用户跑步期间,对于起始冲刺阶段、中间稳定阶段、终止回落阶段的体征数据的异常程度的设置的阈值条件也不相同,本步骤进行分段分析,提升了监测的精度。
步骤四:利用大数据分别获取待监测用户在热身运动阶段、稳定运动阶段和结束运动阶段中的标准体征数据;根据待监测用户在每个运动阶段的标准体征数据和该运动阶段的每一帧图像的运动差异度得到待监测用户在每一帧图像中的体征数据异常程度;
该步骤的目的是,利用大数据技术获取到每个运动阶段的体征数据的标准数据,然后将待监测用户在每一段运动阶段中的体征数据与该阶段的标准体征数据对比,得到待监测用户的体征数据异常程度。
其中,利用大数据分别获取待监测用户在热身运动阶段、稳定运动阶段和结束运动阶段中的标准体征数据的获取方法为:
(1)利用大数据统计每种体脂数据的多个用户在每个阶段的体征数据:
本实施例中的体征数据只针对心率进行说明,以下所称的体征数据均指心率,其他体征数据,如血糖、血压等也可按照此种方式进行处理,本实施例以心率为例进行说明:
利用大数据统计技术,通过对大量在跑步时,跑步者的体脂数据与对应跑步时期的体征数据进行比较,统计在不同的体脂数据下,在不同跑步时期(本案将跑步时期分为起始冲刺阶段,记为序号
,中间稳定阶段记为序号
,终止回落阶段记为序号
;
本实施例中用
表示运动阶段,其中
、
、
,计算体征数据中的平均值和标准差,即统计体脂数据为
的情况下:
在起始冲刺阶段的心率的平均数据
和标准差数据
,中间稳定阶段的心率的平均数据
和标准差数据
,终止回落阶段的心率的平均数据
和标准差数据
;
(2)将每种体脂数据的多个用户在每个运动阶段的体征数据的平均值和标准差构建数据库:
按照(1)的方式,得到每种体脂数据的用户在每个运动阶段的体征数据的标准数据(本实施例的体征数据指的是心率,只针对心率这一种体征数据进行举例说明),将这些数据作为先验数据记为先验数据库
。
(3)获取待监测用户的体脂数据在数据库中对应的每个运动阶段的体征数据的平均值和标准差,将该平均值和标准差作为待监测用户在每个运动阶段的体征数据的标准数据:
本实施例通过获取待监测目标用户的体脂数据
,查找该体脂数据在先验数据库
中对应的每个运动阶段下的体征数据的平均数据和标准差数据,并将其作为监测目标用户的标准体征数据,用于接下来的设置阈值分析。
特别说明的是:若先验数据库
中没有与待监测用户的体脂数据
对应数据,则选取与待监测用户的体脂数据最相近的作为体质数据
下的先验数据。
其中,根据待监测用户的体脂数据在每个运动阶段的体征数据的标准数据和该运动阶段的每一帧图像的运动差异度得到待监测用户在每一帧图像中的体征数据异常程度的获取方法为:
由于体征数据符合正态分布,则通过正态分布概率密度函数来表征体征数据的异常程度。其中第
时间点(与第
帧图像时间点相对应)的体征数据(心率数据)在第
个运动阶段的异常程度
的计算表达式为:
式中,
为处于第
阶段的第
帧图像的体征数据的异常程度,
表示在先验数据库
中根据待监测目标用户的体脂数据
下调取的第
个运动阶段的体征数据的平均值;
表示在先验数据库
中根据待监测目标用户的体脂数据
下调取的第
个运动阶段的体征数据的标准差数据;
表示心率传感器采集的第
时间点的待监测目标用户的体征数据;
表示待监测目标用户的传感器采集的第
个运动阶段的第
时间点与之前时间点计算的得到的体征数据的标准差;
表示待监测目标用户的传感器采集的第
个运动阶段的第
时间点与之前时间点计算的得到的体征数据的平均值;
表示的第
时间点的待监测目标用户的运动差异度,
为双曲正切函数;
以心率为例说明公式逻辑为:调节
权重待监测目标用户的心率数据的正态分布概率密度函数
大数据统计下心率数据的正态分布概率密度函数。
其中对于心率数据,由于其符合正态分布,通过正态分布的则对应的越接近均值(越接近正态分布概率密度函数中间),则该数据越正常;越接近正态分布概率密度函数两端,则该数据越异常。通过获取大数据统计下与待测用户的体脂数据相同或相似的心率的平均数据和标注差数据,通过计算监测数据的正态分布概率密度函数,与大数据统计的正态分布概率密度函数之间的差异。由于在计算待监测目标用户的正态分布概率密度函数时,充分考虑由于不同阶段内运动幅度的影响(运动差异度),且当前时间点获得的正态分布概率密度函数不能代表整体的正态分布概率密度函数(均值和标准差,只能代表当前时间点和之前时间点的均值和标准差),运动差异度越大,体征数据不稳定,调节权重因子越大,因此将运动差异度作为调节权重因子
来计算异常程度。同样,类似上述操作,可得到第
时间点其他体征数据的异常程度。
本步骤利用大数据统计技术,获取每种体脂数据的多个用户在每个运动阶段下的体征数据段平均值和标准差,构建先验数据库,根据先验数据库中的数据结合待监测目标用户的数据计算异常程度,有益效果为:利用大数据统计技术,充分考虑待监测目标用户在不同运动阶段体征数据的不稳定性,为后续准确判断提供了数据基础。
步骤五:根据待监测用户在每一帧图像中的体征数据异常程度和异常程度阈值对比,判断是否需要进行调整。
该步骤的目的是,针对不同的运动阶段设定不同的异常程度阈值,并将待监测用户在每一帧图像中的体征数据异常程度和该帧图像所处的运动阶段的异常程度阈值对比,判断当前帧图像对应的时间点,是否需要对待监测用户进行预警提示。
其中,考虑到待监测目标用户在不同运动阶段体征数据的不稳定性,通过对各个体征数据设置不同运动阶段阈值,通过比较监测数据异常程度与异常程度阈值,确定预警分数值的值。以心率数据为例,其中心率数据异常程度阈值
、
和
。其中心率数据的异常程度阈值与各个运动阶段的大数据统计的平均数据和偏差数据有关,同样依据正态分布的“
法则”;
其中每个运动阶段的体征数据的异常程度阈值
的计算表达式为:
式中,
为运动阶段
中体征数据的异常程度阈值,
是通过正态分布的“
法则”计算获得的,即:
通过上式获得,
表示在先验数据库
中根据待监测目标用户的体脂数据
下调取的第
个运动阶段的心率的标准差数据。类似此操作,同样可以获得其他的体征数据的所有运动阶段下的异常程度阈值。其中,体征数据的异常数据符合
法则:即异常数据分布在
范围之外,则通过
来计算异常程度的阈值。
设置体征数据异常程度预警阈值,若计算得到的第
时间点的体征数据的异常程度大于体征数据的异常程度阈值,则进行提示预警,并控制跑步机进行减速,保证合适的运动强度,防止运动损伤。
本步骤的有益效果是,根据先验数据库中的数据结合待监测目标用户的数据计算异常程度,并考虑不同运动阶段体征数据的不稳定性来设置阈值,通过对各个体征数据设置不同运动阶段阈值,对于传统的设置为同一阈值异常程度的判断更加准确,同时及时对跑步机速度进行智能调整,保证了运动效果,可及时避免运动损伤。
本发明的另一种实施例,一种人体异常数据监测系统,如图2所示,包括:
装置了摄像机的跑步机,用于对用户跑步时的帧图像数据进行采集,同时用户佩戴了传感器,来获取自己的体征数据,并将用户跑步时的帧图像数据和体征数据发送至数据分析模块;
数据分析模块:
获取当前帧图像中的人体关键点形成的关键边,根据当前帧图像中的每个关键边和前一帧图像中对应关键边之间的余弦相似度得到当前帧图像的运动差异度;
以当前帧图像的运动差异度为纵轴,运动时间为横轴,构建运动差异度坐标系;
根据运动差异度坐标系中当前帧图像的运动差异度与前一帧图像的运动差异度得到当前帧图像与前一帧图像的斜率差;
根据当前帧图像与前一帧图像的斜率差与斜率差阈值对比,判读当前帧图像属于热身运动阶段、稳定运动阶段还是属于结束运动阶段;
利用大数据分别获取待监测用户在热身运动阶段、稳定运动阶段和结束运动阶段中的标准体征数据;
根据待监测用户在每个运动阶段的标准体征数据和该运动阶段的每一帧图像的运动差异度得到待监测用户在每一帧图像中的体征数据异常程度;
根据待监测用户在每一帧图像中的体征数据异常程度和异常程度阈值对比,判断是否需要进行调整,并将判断结果发送给控制模块;
控制模块:接收到判断结果,若体征数据超过阈值则控制跑步机适当减速,防止运动强度过大带来身体损伤。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。