一种基于三维人体姿态数据的老龄人身体僵硬度评估方法

文档序号:38045950发布日期:2024-05-20 11:18阅读:12来源:国知局
一种基于三维人体姿态数据的老龄人身体僵硬度评估方法

本发明主要涉及数据科学与大数据分析技术,具体涉及一种基于三维人体姿态数据的老龄人身体僵硬度评估方法。


背景技术:

1、老年群体的健康问题对科技提出了新需求:在治疗方面,老年人需要常见疾病的有效药物,成熟的医疗手段和计划;在诊断方面,老年人群频发慢性病,他们需要便捷以及可以频繁检测的手段,这样能够达到疾病早筛和延缓疾病发展的目的;在看护方面,许多家庭没有陪护的条件,人工智能技术能够对老年人进行实时且精确的监护,使得老年人的家人能够及时获取他们的身体状况信息。

2、老年人跌倒是临床常见的意外事件,跌倒不仅会直接导致老年人致残甚至致死的后果,也会对老年人的精神状态和心理健康产生严重的影响,同时也给其家庭带来了一定的负担。一般来说,老年人身体越僵硬,身体的平衡能力就越差,摔倒的风险也会增加。因此对老年人的僵硬度进行评估具有重要的意义,其不仅能够监测身体僵硬度,对可能发生的摔倒事件和疾病进行预警,也能够为诊断提供僵硬度的数据参考。老年人身体僵硬程度加深的原因有很多,比如肌肉流失和骨关节退化,由于活动不便而减少运动也会使得老年人身体变得僵硬,以及疾病带来的并发症,比如帕金森病和强直性脊柱炎都有身体僵硬的表现。现有的僵硬度评估方法大多依靠医生的诊断。

3、身体僵硬度评估相关的研究较少,研究发现常用的量表存在联用标准不明、腰椎僵硬相关评估不够成熟等问题,并且即使得到了僵硬的评估结果也无法准确反映腰椎僵硬对患者日常活动的影响,因此僵硬度的评估方法还有待进一步的优化。

4、僵硬度可以通过分析步态来获取,目前大多数的步态研究都是基于传感器的,其优点在于采集数据较为准确,而且临床医生经验丰富。然而传感器穿戴不便,人力成本消耗较大,数据采集条件苛刻等原因都造成了步态分析的不便以及周期长的问题。基于视觉的步态分析方法能够解决这些问题,关键问题转化为两个:采集准确的步态数据,研究可靠的步态分析模型。目前计算机视觉领域的技术发展迅速,从图像或者视频当中能够获取丰富的人体运动信息,而且从便捷以及可实施性方面考虑,该技术适合用于老年人运动能力的评估。具体地说,本发明运用了三维人体姿态估计技术提取视频中人体的关键点坐标,在此基础上建立了僵硬度评估模型。


技术实现思路

1、本发明的目的在于提出一种基于三维人体姿态数据的老龄人身体僵硬度评估方法,该方法包括了两个关键部分,获取三维人体姿态坐标和建立僵硬度评估模型,模型最终输出每个视频帧中人体的僵硬度评估值。

2、本发明的技术方案如下:

3、步骤1,输入一段老龄人行走的视频,为了保证姿态估计的效果,输入的视频需要满足以下条件:视频为单人视频;视频中的人体与镜头的距离在人体姿态估计算法能够较准确地估计的范围内;视频中的人体是完整的;拍摄的环境光线充足。对于不满足要求的视频帧,本发明做了删减处理。

4、步骤2,通过alphapose算法获取视频帧对应的二维人体姿态坐标,记作pj(t)={pj1(t),pj2(t),…,pj17(t)},其中pjn(t)=(xjn(t),yjn(t)),n=1,2,…,17。

5、步骤3,在步骤2获取的二维数据的基础上,使用posetriplet算法获取三维姿态数据,每一帧的人体对应16个三维关键点坐标,分别是:盆骨中心,右髋部,右膝,右脚踝,左髋部,左膝,左脚踝,腰部,脖子,头部,左肩,左手肘,左手腕,右肩,右手肘,右手腕。每个视频帧中人体的三维坐标集合记作p′j(t)={p′j1(t),p′j2(t),…,p′j16(t)},其中p′jn(t)=(x′jn(t),y′jn(t),z′jn(t)),n=1,2,…,16。

6、步骤4,将三维关键点坐标分别投影到冠状面、矢状面和水平面。一个平面需要三个不共线的点确定,所以需要在每个面上构造三个关键点。冠状面的关键点包括盆骨中心以及左右肩关节和左右髋关节连线的中点,矢状面的关键点包括盆骨中心、脖子和盆骨中心沿着冠状面法向量移动一个单位所得的点,水平面的关键点包括左右髋关节点和盆骨中心沿着冠状面法向量移动一个单位所得的点。在得到关键点之后表示出平面,并计算投影后各关键点的坐标。以冠状面为例,法向量和平面上的一点可以确定该平面,所以第一步计算冠状面的法向量。记左侧肩关节和髋关节连线的中点为p0(x0,y0,z0),右侧肩关节和髋关节连线的中点为p1(x1,y1,z1),盆骨中心点为p2(x2,y2,z2),接着由这三点得到冠状面上的两个向量和用表示法向量计算方式如下:

7、

8、

9、接着根据平面上的一点确定该平面,假设所有在冠状面上的点(x,y,z)满足ax+by+cz+d=0,将p0(x0,y0,z0)带入式中可计算得d=-(ax0+by0+cz0)。用q(u,v,w)表示需要投影的点,投影后的点记为q′(u′,v′,w′),它们有以下几何关系:

10、

11、由平行关系得:

12、

13、由垂直关系得:

14、

15、整理上式得:

16、

17、此时,将t代入可得q′(u′,v′,w′),将视频帧对应的16个关节点都投影到冠状面得到投影点集合表示第n个关节点在冠状面上的投影坐标。

18、同理获取16个关节点在矢状面的关节点坐标,用表示,水平面上的投影坐标集合用表示。

19、步骤5,在步骤4获取的三个面的投影坐标的基础上分别计算重点观察角度。在冠状面需要观察左右方向上有明显变化的关节角度,包括10个角度,分别为:头部与右肩的夹角、右肩与右上臂的夹角、左肩与左上臂的夹角、右上臂与右前臂的夹角、左上臂与左前臂的夹角、脊柱与左右髋部连线的夹角、右髋部与右大腿的夹角、左髋部与左大腿的夹角、右大腿与右小腿的夹角、左大腿与左小腿的夹角。在矢状面主要观察前后方向上的关节角度变化,由于头部、脖子与腰关节点共线的概率较大,因此本发明构造了脊柱的垂直向量,用该向量和头部与脖子连线的夹角来表示头前倾或者后仰的程度。脊柱位置由盆骨中心与脖子的连线确定,接着借助矢状面上的冠状面法向量计算在矢状面上的脊柱的垂直向量,用表示。矢状面需要观察的角度包括10个,分别为:头部与脊柱垂直向量的夹角、右上臂与脊柱垂直向量的夹角、左上臂与脊柱垂直向量的夹角、右上臂与右小臂的夹角、左上臂与左小臂的夹角、脊柱与冠状面法向量的夹角、右大腿与冠状面法向量的夹角、左大腿与冠状面法向量的夹角、右大腿与右小腿的夹角、左大腿与左小腿的夹角。在水平面上计算了上半身相对于下半身的旋转角度,即左右肩连线与左右髋节点连线的夹角。三个投影面共得到21个角度。

20、步骤6,进一步挖掘僵硬度特征。角度大小只是僵硬度的一个表现方面,角度变化的快慢可以体现关节灵活的程度,因此在角度的基础上进一步计算角度变化率。将人体划分为四个部分,具体为:头部包括头节点、脖子;上肢包括左右肩、左右手肘、左右手腕;躯干包括腰部和盆骨中心;下肢包括左右髋部、左右膝盖、左右脚踝。然后在三个投影面上分别计算角度变化率,冠状面上的角度变化率记为矢状面上的角度变化率记为水平面上只有一个旋转角度,其角度变化率记为共有9个新特征。

21、步骤7,计算角度变化率的统计量,获取4个特征,分别是步骤6得到的9个特征值的最小值、最大值、均值和方差。最终每个视频帧对应21个关节角度,9个部位关节角度变化率和4个角度变化率的统计量,共计34个特征值。

22、步骤8,用滑窗标注法对数据集进行僵硬值标注。先对每一个视频的随机视频帧进行僵硬度标注,然后规定合适的窗口大小,从头至尾对视频帧进行标注,僵硬度值低于5表示比较灵活,5~7.5表示能够正常活动,大于7.5是表示活动受阻。本发明采用的窗口大小为4,标注值的计算方式为

23、

24、其中sj(t)表示第j个视频的第t帧的僵硬度值,n表示窗口大小。需要注意的是视频的前四帧必须标注,假如当前帧已有标注值,优先取已标注的值。

25、步骤9,训练回归模型,选取误差较小的作为僵硬度的量化模型。本发明选择了xgboost和lightgbm,并且采用了贝叶斯算法对模型的超参数进行优化。将数据集以6:4划分为训练集和测试集,接着把构造的34个特征值输入模型进行训练,最终根据实验结果选择了均方误差最小的经过超参数优化的lightgbm,测试集的误差为0.524。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1