一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数字孪生虚拟人与人体的交互方法、系统、电子设备与流程

2023-01-17 12:41:49 来源:中国专利 TAG:


1.本发明涉及人工智能技术领域,具体为一种数字孪生虚拟人与人体的交互方法、系统、电子设备。


背景技术:

2.数字孪生最早由迈克尔
·
格里夫斯在21世纪初提出,作为产品设计方面专业人士,他最初将这一概念根植于生产工程领域。这个概念在提出的伊始就没有严格的限制,其发展到今天更是直接被用来描述各种数字仿真模型,这些模型与社会和经济系统以及物理系统的实时过程是相匹配的。
3.一般来说,任何反映另一个不同系统操作的系统通常被定义为模型,而模型又是从定义与之对齐或比较的系统的结构和过程中抽象出来的。从定义上讲,模型是对真实事物的简化,换言之,模型的目的不是复制以与原始系统细节相同的另一个系统。
4.但是,数字孪生技术是在数字世界中以其数据、功能和通信能力代表真实的对象或主体。因此,物理系统的计算机模型难以成为数字孪生的基础,因为在任何这样的抽象中,真实系统的许多元素都被忽略了。虽然现代的计算机技术可以构建更接近真实事物的数字模型,从完全是概念性的“思维实验”到试图尽可能多地反映真实系统特征的量身定制数字表达方式,各种模型无所不包,甚至可以将数字模型从一个完全抽象的概念转变为所讨论系统的完整镜像。在这种情况下,如果数字模型本身真的包含了整个物理对象的全部内容,在一定程度上可以认为这个模型等同于这个物理对象的一部分,这就是数字孪生的假定定义。从这个意义上说,所有物理系统都可以有一个数字“克隆体”,这个“克隆体”就是数字孪生,其可以与对应的物理系统合二为一。
5.从这个意义上说,实时运行的数字孪生系统与系统本身没有什么不同,这就提出了一个新的研究领域,即如何使用数字孪生系统来了解、探索、模拟和测试原生物理系统。人体机能体现的健康状态一直是业界关心的一个问题,因为其受到实际的生理变化、检测手段、生物细节、个体差异等多方位因素的影响,人体的实际生理状态是无法通过传统的计算机仿真系统进行预测的。传统的医学检查(ct、化验等)的方法会产生大量成本且检测周期长,造成资源的极大浪费;采用数字仿真技术可以有效降低医学检测和人体仿真过程的失败率,但传统的数字模型方法无法兼顾到人体的变化、活动和真实环境中的要素,导致仿真模型无法模拟真实人体的变化过程和生理特性。


技术实现要素:

6.本发明的目的在于克服现有模拟人体机能技术不真实的问题,提供了一种数字孪生虚拟人与人体的交互方法、系统、电子设备及介质。
7.为了实现上述目的,本发明提供一种数字孪生虚拟人与人体的交互方法,包括以下步骤:获取人体部位与环境交互的力fex;
基于多刚体运动学函数、人体部位与环境交互的力fex得到人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t并更新到与人体对应的刚体模型中;基于肌骨动力学函数和各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t得到人体关节点对应的各个肌肉的肌肉对外输出力f
mt
并更新到所述刚体模型中;基于建立肌肉动力学函数和肌肉的肌肉对外输出力f
mt
得到各个肌肉的肌腹激活度z、肌腹长度lm并更新到所述刚体模型中,从而使所述刚体模型与真实人体系统保持同步。
8.作为一种可实施方式,与人体对应的刚体模型的建立步骤具体包括:获取与人体对应的刚体模型,获取人体图像,计算所述人体图像中与所述刚体模型中刚体关节点相对应的人体关节点之间的图像距离,根据所述图像距离计算所述人体关节点对应的肢体长度数据l,将与所述人体关节点对应的肢体长度数据l更新到所述刚体模型中,并获取所述人体图像中所述人体关节点的关节夹角θ更新到所述刚体模型中。
9.作为一种可实施方式,所述肌肉动力学函数具体为肌腹激活度z、肌腹长度lm、其他相应参数对应人体肌肉的肌肉对外输出力f
mt
的肌肉动力学函数;其中,与肌肉动力学函数相关的其他相应参数的具体值为已知;所述肌骨动力学函数具体为人体关节点对应的各个肌肉的肌肉对外输出力f
mt
、其他相应参数对应人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t的肌骨动力学函数;其中,与肌骨动力学函数相关的其他相应参数的具体值为已知;所述多刚体运动学函数具体为人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t、其他相应参数对应人体部位与环境交互的力fex的多刚体运动学函数;其中,与多刚体运动学函数相关的其他相应参数的具体值为已知。
10.作为一种可实施方式,肌腹激活度z、肌腹长度lm、其他相应参数对应人体肌肉的肌肉对外输出力f
mt
的肌肉动力学函数具体为:人体各个肌肉的肌肉对外输出力f
mt
与相应的肌肉长度l
mt
、肌腹长度lm、肌肉被动拉伸最大长度l
st
、肌纤维夹角α、肌肉主动收缩最小长度l
sr
、肌腹收缩刚度k
pe
、肌腱刚度k
t
、肌腹最大发力、肌腹激活度z的肌肉动力学函数,其中,肌肉长度l
mt
、肌肉被动拉伸最大长度l
st
、肌纤维夹角α、肌肉主动收缩最小长度l
sr
、肌腹收缩刚度k
pe
、肌腱刚度k
t
、肌腹最大发力的具体值为已知。
11.作为一种可实施方式,人体各个肌肉的肌肉对外输出力f
mt
与相应的肌肉长度l
mt
、肌腹长度lm、肌肉被动拉伸最大长度l
st
、肌纤维夹角α、肌肉主动收缩最小长度l
sr
、肌腹收缩刚度k
pe
、肌腱刚度k
t
、肌腹最大发力、肌腹激活度z的肌肉动力学函数具体包括:基于肌肉力学模型得到的肌肉对外输出力f
mt
和肌腱对外输出力f
t
、肌腹对外输出力fm的关系,建立肌肉对外输出力f
mt
与肌腱对外输出力f
t
以及与相应的肌腱刚度k
t
、肌肉长度l
mt
、肌腹长度lm、肌肉被动拉伸最大长度l
sr
的第一肌肉动力学函数,肌肉对外输出力f
mt
与肌腹对外输出力fm以及与相应的肌腹激活度z、肌腹最大发力、肌腹收缩刚度k
pe
、肌
腹长度lm、肌肉主动收缩最小长度l
sr
的第二肌肉动力学函数。
12.作为一种可实施方式,所述第一肌肉动力学函数为:,;第二肌肉动力学函数为:,,,;式中,f
mt
表示肌肉对外输出力,fm表示肌肉中的肌腹对外输出力,f
t
表示肌肉中的肌腱对外输出力,表示肌肉力学模型中用于定义肌腹的弹簧发力,表示肌肉力学模型中用于定义肌腹的执行器发力,k
t
表示肌腱刚度,k
pe
表示肌腹收缩刚度,表示肌腹最大发力,l
st
表示肌肉被动拉伸最大长度,表示肌肉主动收缩最小长度,lm表示肌腹长度,z表示肌腹激活度,l
mt
表示肌肉长度,α表示肌纤维夹角。
13.作为一种可实施方式,人体关节点对应的各个肌肉的肌肉对外输出力f
mt
、其他相应参数对应人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t的肌骨动力学函数具体包括:人体关节点的对外输出合力f和与人体关节点对应的各个肌肉的肌肉对外输出力f
mt
的第一肌骨动力学函数;围绕人体关节点旋转的力矩t和与人体关节点对应的各个肌肉的肌肉对外输出力f
mt
、肌肉对应的肌腱与骨骼的连接点到对应的人体关节点之间的距离数据w
mt
的第二肌骨动力学函数,其中,肌肉的肌腱与骨骼的连接点到对应的人体关节点之间的距离数据w
mt
为已知。
14.作为一种可实施方式,所述第一肌骨动力学函数为:,其中,分别表示与人体关节点对应的各个肌肉的肌肉对外输出力,f表示人体关节点的对外输出合力,i的数值根据相应人体关节点对应的肌肉个数确定;所述第二肌骨动力学函数为:,其中,分别表示与人体关节点对应的各个肌肉的肌肉对外输出力,分别表示对应肌肉的肌腱与骨骼的连接点到对应人体关节点之间的距离数据,t表示围绕人体关节点旋转的力矩,i的数值根据相应人体关节点对应的肌肉个数确定。
15.作为一种可实施方式,人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t、其他相应参数对应人体部位与环境交互的力fex的多刚体运动学函数具体为:人体部位与环境交互的力fex、人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t、对应人体关节点的关节夹角θ和与对应人体关节点对应的肢体长度数据l的多刚体运动学函数;其中,人体关节点的关节夹角θ和与对应人体关节点对应的肢体长度数据l的具体值为已知。
16.作为一种可实施方式,在得到肌腹激活度z、肌腹长度lm后,还包括以下步骤:判断肌腹激活度z是否大于肌腹最大发力对应的激活度阈值;若是则执行保护动作或进行风险提示,防止人体肌肉受到损害;
判断肌腹长度lm是否大于肌肉的自身最大被动伸展长度l
st
或小于最小主动收缩长度,若是则执行保护动作或风险提示,防止人体肌肉受到损害。
17.相应的,本发明还提供一种数字孪生虚拟人与人体的交互系统,包括以下模块:获取模块,获取人体部位与环境交互的力fex;多刚体运动学交互模块,基于多刚体运动学函数、人体部位与环境交互的力fex得到人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t并更新到与人体对应的刚体模型中;肌骨动力学交互模块,基于肌骨动力学函数和各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t得到人体关节点对应的各个肌肉的肌肉对外输出力f
mt
并更新到所述刚体模型中;肌肉运动学交互模块,基于建立肌肉动力学函数和肌肉的肌肉对外输出力f
mt
得到各个肌肉的肌腹激活度z、肌腹长度lm并更新到所述刚体模型中,从而使所述刚体模型与真实人体系统保持同步。
18.相应的,本发明还提供一种电子设备,包括:至少一个处理器,与至少一个所述处理器通信连接的存储器;至少一个所述处理器用于读取所述存储器中的程序,用于执行所述方法。
19.相应的,本发明还提供一种健身设备,包括:至少一个处理器,与至少一个所述处理器通信连接的存储器;至少一个所述处理器用于读取所述存储器中的程序,用于执行所述方法。
20.相应的,本发明还提供计算机可读存储介质,所述介质上存储有指令,当所述指令在计算机上运行时,使得计算机执行所述的方法。
21.本发明的有益效果:本发明提出了一种数字孪生虚拟人与人体的交互方法、系统、电子设备及介质,基于多刚体运动学函数得到人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t,基于肌骨动力学函数和各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t得到人体关节点对应的各个肌肉的肌肉对外输出力f
mt
,基于建立肌肉动力学函数和肌肉的肌肉对外输出力f
mt
得到各个肌肉的肌腹激活度z、肌腹长度lm,并都更新到所述刚体模型中,从而使所述刚体模型与真实人体系统保持同步,有效的模拟了生物体的真实运动原理。
附图说明
22.图1为本发明实施例数字孪生虚拟人与人体的交互方法步骤示意图;图2为本发明实施例数字孪生虚拟人与人体的交互方法中人体关节点对应的肢体长度数据的示意图;图3为本发明实施例数字孪生虚拟人与人体的交互方法中人体关节点对应的肩宽w1和胯宽w2示意图;图4为本发明实施例数字孪生虚拟人与人体的交互方法中所述的肌肉力学模型示意图;图5为本发明实施例数字孪生虚拟人与人体的交互方法中所述的人体在水平屈曲和水平伸展时的姿态示意图;
图6为本发明实施例数字孪生虚拟人与人体的交互方法中以肘人体关节点为原点建立的坐标系示意图;图7为本发明实施例数字孪生虚拟人与人体的交互方法中以4自由度的人体关节点为例建立的肌肉在xyz轴坐标系下连接骨骼的示意图;图8为本发明实施例数字孪生虚拟人与人体的交互方法中各个人体关节点的对外输出合力与围绕人体关节点旋转的力矩的示意图;图9为本发明实施例数字孪生虚拟人与人体的交互方法中髋、膝、踝人体关节点形成的足部与环境交互的力的示意图;图10为本发明实施例数字孪生虚拟人与人体的交互方法中人体关节点对应的关节夹角和人体部位与环境交互的力的示意图;图11为本发明实施例数字孪生虚拟人与人体的交互方法中动态肌骨控制系统框图;图12为本发明实施例数字孪生虚拟人与人体的交互方法中人体肘关节对应的肌肉力学模型示意图。
具体实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.参见图1,本实施例提供一种技术方案:一种数字孪生虚拟人与人体的交互方法,包括以下步骤:步骤s100,获取人体部位与环境交互的力fex;步骤s200,基于多刚体运动学函数、人体部位与环境交互的力fex得到人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t并更新到与人体对应的刚体模型中;步骤s300,基于肌骨动力学函数和各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t得到人体关节点对应的各个肌肉的肌肉对外输出力f
mt
并更新到所述刚体模型中;步骤s400,基于建立肌肉动力学函数和肌肉的肌肉对外输出力f
mt
得到各个肌肉的肌腹激活度z、肌腹长度lm并更新到所述刚体模型中,从而使所述刚体模型与真实人体系统保持同步。
25.执行步骤s100,本实施例通过外界检测设备,包括拉力计、肢体末端运动传感器、图像传感器等,获得物理人体和外界交互时,人体部位如手部、足部等与外界的交互力,如压力和摩擦力,这也就是人体部位与环境交互的力fex。
26.执行步骤s200,与人体对应的刚体模型的建立步骤具体包括:获取与人体对应的刚体模型,获取人体图像,计算所述人体图像中与所述刚体模型中刚体关节点相对应的人体关节点之间的图像距离,根据所述图像距离计算所述人体关节点对应的肢体长度数据l,将与所述人体关节点对应的肢体长度数据l更新到所述刚体模
型中,并获取所述人体图像中所述人体关节点的关节夹角θ更新到所述刚体模型中。
27.具体的,本实施例采用摄像头直接拍摄的方式获得人体图像,如:使用者于设备摄像头前的固定位置以标准自然状态面向设备站立,摄像头获取人体冠状面数据;使用者于设备摄像头前的固定位置以标准自然状态侧向设备站立,双手置于小腹前,防止遮挡髋部,摄像头获取人体失状面数据;使用者于设备摄像头前的固定位置以标准自然状态背向设备站立,摄像头获取人背面数据;从而根据获取的图像计算出所述人体图像中对应的人体关节点之间的图像距离;再进一步推算出人体关节点对应各个身体部位的肢体长度数据l更新到所述刚体模型中,作为刚体模型中对应的各个肢体长度数据l。
28.在本实施例中,与人体对应的刚体模型设置有17个刚体关节点,17个刚体关节点分别为12个刚体四肢关节点和5个刚体躯干关节点,12个刚体四肢关节点分别为:两个腕刚体关节点、两个肘刚体关节点、两个肩刚体关节点、两个髋刚体关节点、两个膝刚体关节点和两个踝刚体关节点,5个刚体躯干关节点分别为:颈刚体关节点、两个胸刚体关节点和两个腰刚体关节点;但在其他实施例中,在所述刚体模型上可以自行设置相应数量刚体关节点。
29.而所选取的用于计算的人体关节点与所述刚体模型设置的刚体关节点相对应;即膝刚体关节点、肘刚体关节点分别对应膝人体关节点、肘人体关节点;胸刚体关节点、腰刚体关节点、颈刚体关节点分别对应胸人体关节点、腰人体关节点、颈人体关节点;踝刚体关节点、腕刚体关节点分别对应踝人体关节点、腕人体关节点;髋刚体关节点对应髋人体关节点;肩刚体关节点对应肩人体关节点。
30.基于设置的刚体关节点和与之对应的人体关节点,如图2和图3所示,计算出来的肢体长度数据包括左右手长l10、l11(腕刚体关节点到中指尖),左右小臂长l8、l9(腕刚体关节点到肘刚体关节点),左右大臂长l6、l7(肘刚体关节点到肩刚体关节点),头长l5(头顶到颈刚体关节点),脖颈长l4(颈刚体关节点到肩刚体关节点),躯干胸部长l1(肩刚体关节点到胸刚体关节点),腰部长l2(胸刚体关节点到腰刚体关节点),髋部长l3(腰刚体关节点到髋刚体关节点),左右大腿长l12、l13(髋刚体关节点到膝刚体关节点),左右小腿长l14、l15(膝刚体关节点到踝刚体关节点),左右足部长度l16、l17(实际为鞋长),此外还需要肩宽w1(左右肩刚体关节点之间的距离)和胯宽w2(左右髋刚体关节点的距离)。
31.另外,所述人体关节点的关节夹角θ也可以通过在人体活动过程中实时进行图像测量得到。
32.在本实施例中,所述多刚体运动学函数具体为人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t、其他相应参数对应人体部位与环境交互的力fex的多刚体运动学函数;其中,与多刚体运动学函数相关的其他相应参数的具体值为已知。
33.进一步的,人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t、其他相应参数对应人体部位与环境交互的力fex的多刚体运动学函数具体为:人体部位与环境交互的力fex、人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t、对应人体关节点的关节夹角θ和与对应人体关节点对应的肢体长度数据l的多刚体运动学函数;其中,人体关节点的关节
夹角θ和与对应人体关节点对应的肢体长度数据l的具体值为已知,也就是说,本实施例可以直接通过一些获取方式获取人体关节点的关节夹角θ和与对应人体关节点对应的肢体长度数据l的具体值并输入至多刚体运动学函数,以用于后续计算。
34.其中,各个人体关节点的关节夹角θ和对应人体关节点对应的肢体的长度数据l建立刚体模型时测量长度数据l和关节夹角θ的测量方式获取。
35.具体的,虽然力力的建模方式有很多,但是本实施例通过采用力和压力中心点数据组成的力和作用点的时间向量函数来进行模拟人体部位与外界环境交互时产生的压力也就是人体部位与环境交互的力fex,而关节点末端的外界接触力是推断人体内部肌肉发力情况的关键数据来源,因此本实施例通过以人体足部的对地接触为例,利用弹性地基模型简化形变和力的计算,得到足部与环境交互时产生的力。
36.如图9所示,为下肢单腿的髋刚体关节点、膝刚体关节点、踝刚体关节点,获取到的髋刚体关节点、膝刚体关节点之间的大小腿长度分别为l12、l14,踝刚体关节点对应的足部长度为l16,而对应的髋人体关节点为5自由度椭球面,膝人体关节点为3自由度椭球面,踝人体关节点为5自由度椭球面,肌肉作用在这些关节上会分别产生力矩和沿着骨骼方向的力,将其投影到人的矢状面进行分析后,得到多刚体运动学函数fex4=f(f11、f13、f15、t12、t14、t17、l12、l14、l16、θ11、θ14、θ16),从而求得足部约束对地面的合力fex4,其中,f11、f13、f15分别为求得的髋人体关节点、膝人体关节点、踝人体关节点的对外输出合力,t12、t14、t17分别为求得的围绕髋人体关节点、膝人体关节点、踝人体关节点旋转的力矩,l12、l14、l16分别为求得的髋人体关节点对应的大腿长度数据、膝人体关节点对应的小腿长度数据、踝人体关节点对应的足部长度数据(实际可以为鞋长),θ11、θ14、θ16分别表示求得的髋人体关节点、膝人体关节点、踝人体关节点的关节夹角,其中,图9和图10中标注关节夹角θ的箭头标注方式为分别基于运动学和体态学的标注形式,但都可以用于表示关节夹角θ;该多刚体动力学函数是通过对人体分析的正向运动学得到,从而可以知道数字孪生虚拟人在已知关节和骨骼动力下的对外交交互力,由一条腿引申开去可以推导至人体全身的正向动力学;如图10所示为对刚体模型更新人体与环境交互的力、关节角度的示意图,需要注意的是,本实施例所说明的单腿髋、膝、踝人体关节点,仅为举例,在具体测量人体部位与环境交互的力时,也可能会涉及到其他人体关节点,可以根据实际涉及到发力的人体关节点进行计算。
37.需要注意的是,通过获取到的人体部位与环境交互的力fex去推出对应各个关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t的计算方式为现有技术,本实施例不做更进一步的详细说明。
38.也就是说,当为了得到人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t,在测量得到人体部位与环境交互的力fex的具体值后输入至多刚体运动学函数,而由于各个人体关节点的关节夹角θ和对应人体关节点对应的肢体的长度数据l也已经获取,因此可以得到各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t的具体参数并将具体参数更新至刚体模型,使得刚体模型与人体保持同步。
39.执行步骤s300,所述肌骨动力学函数具体为人体关节点对应的各个肌肉的肌肉对外输出力f
mt
、其他相应参数对应人体关节点的对外输出合力f、围绕对应人体关节点旋转的
力矩t的肌骨动力学函数;其中,与肌骨动力学函数相关的其他相应参数的具体值为已知;进一步的,人体关节点对应的各个肌肉的肌肉对外输出力f
mt
、其他相应参数对应人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t的肌骨动力学函数具体包括:人体关节点的对外输出合力f和与人体关节点对应的各个肌肉的肌肉对外输出力f
mt
的第一肌骨动力学函数;围绕人体关节点旋转的力矩t和与人体关节点对应的各个肌肉的肌肉对外输出力f
mt
、肌肉对应的肌腱与骨骼的连接点到对应的人体关节点之间的距离数据w
mt
的第二肌骨动力学函数,其中,肌肉的肌腱与骨骼的连接点到对应的人体关节点之间的距离数据w
mt
为已知,也就是说,本实施例可以直接通过一些获取方式获取肌肉的肌腱与骨骼的连接点到对应的人体关节点之间的距离数据w
mt
输入至所述第二肌骨动力学函数,以用于后续计算。
40.其中,所述第一肌骨动力学函数为:,其中,分别表示与人体关节点对应的各个肌肉的肌肉对外输出力,f表示人体关节点的对外输出合力,i的数值根据相应人体关节点对应的肌肉个数确定;所述第二肌骨动力学函数为:,其中,分别表示与人体关节点对应的各个肌肉的肌肉对外输出力,分别表示对应肌肉的肌腱与骨骼的连接点到对应人体关节点之间的距离数据,t表示围绕人体关节点旋转的力矩,i的数值根据相应人体关节点对应的肌肉个数确定。
41.其中,需要注意的是,不同人体关节点对应的肌肉数量与所述人体关节点对应的自由度相同;如:膝人体关节点、肘人体关节点对应的自由度都为2自由度,对应的肌肉个数为2个,其中,膝人体关节点具体包含1旋转自由度和1平移自由度且互相耦合,肘人体关节点具体包含2旋转自由度;胸人体关节点、腰人体关节点、颈人体关节点对应的自由度都为3自由度,对应的肌肉个数为3个,其中,胸人体关节点具体包含3旋转自由度、腰人体关节点具体包含3旋转自由度、颈人体关节点具体包含3旋转自由度;踝人体关节点、腕人体关节点对应的自由度都为4自由度,对应的肌肉个数为4个,其中,踝人体关节点具体包含3旋转自由度和1平移自由度且平移自由度耦合;髋人体关节点对应的自由度为5自由度,对应的肌肉个数为5个,其中,具体包含3旋转自由度和2平移自由度;肩人体关节点对应的自由度为6自由度,对应的肌肉个数为6个,其中,具体包含3旋转自由度和3平移自由度且互相之间均有耦合。
42.具体的,由于肌肉沿着肌肉的路径向骨骼施加张力,我们可以理解为任何一个运动都有相同轨迹但方向相反的两个运动,所有关节点在某个自由度上的分解运动都可以理解为一对肌肉相互作用的结果,骨骼与肌肉间通常存在两种交互关系:肌肉通过力来改变骨骼的姿态;同时骨骼姿态决定肌肉全长,肌肉长度反过来也影响肌肉收缩力,另外,骨骼关节运动的驱动力矩不仅与关节附着的肌腱单元收缩力有关,也与肌腱单元附着的位置有关。
43.又由于生物关节不同于人工设计的机械关节,机械结构中的旋转、滑块、通用、平面、球和套筒关节是难以模拟其独有效果的,因此使用机械设计中的关节-刚体建模法将会
大大简化或者改变实际的生物力学结构,并不适合人体数字孪生虚拟人的建模。
44.因此,为了模拟人体关节点对应的各个肌肉向骨骼施加的张力也就是人体关节点的对外输出合力,首先,根据如图4所示的肌肉力学模型,我们可以理解为所有的人体运动关节的运动都是由成对的肌肉组合运动而成的,例如当人体关节点为3个自由度时,作用到关节点处体现为三个旋转自由度的力矩t和三个适量方向上的力f。
45.因此,本实施例通过以人体关节点作为原点、以靠近人体躯干的肢体n1为z轴建立xyz轴坐标系,基于xyz轴坐标系显示的人体关节点的对外输出合力f和与人体关节点对应的各个肌肉的肌肉对外输出力f
mt
的关系建立第一肌骨动力学函数,以围绕各个人体关节点旋转的力矩t与人体关节点对应的各个肌肉的肌肉对外输出力f
mt
、对应肌肉的肌腱与骨骼的连接点到对应人体关节点之间的距离数据的关系建立第二肌骨动力学函数,从而求得人体关节点的对外输出合力f和围绕各个人体关节点旋转的力矩t;例如,以如图6所示的肘人体关节点为例,肘人体关节点为2自由度,对应2个肌肉即mt1和mt2,以肘人体关节点为原点,肘人体关节点两侧为靠近人体躯干的肢体n1和远离人体躯干的肢体n2,其中,以肘人体关节点为原点,以靠近人体躯干的肢体n1为z轴,建立xyz轴坐标系;再例如如图7所示,以4自由度的人体关节点为例,其运动为典型的椭球面,有四个输出力的自由度,靠近人体躯干的肢体n1和远离人体躯干的肢体n2之间连接有4个肌肉,分别为mt1、mt2、mt3、mt4,靠近人体躯干的肢体n1和远离人体躯干的肢体n2之间有力矩t,而力矩t有三个自由度暨分别围绕xyz三个轴旋转,因此,该人体关节点的对外输出合力f=f
mt1
f
mt2
f
me3
f
mt4
,其中,f
mt1
、f
mt2
、f
me3
、f
mt4
分别表示人体关节点对应的4个肌肉mt1、mt2、mt3、mt4的肌肉对外输出力;围绕该人体关节点的力矩t= f
mt1
×wmt1
f
mt2
×wmt2
f
mt3
×wmt3
f
mt4
×wmt4
,其中,f
mt1
、f
mt2
、f
me3
、f
mt4
分别表示该人体关节点对应的4个肌肉mt1、mt2、mt3、mt4的肌肉对外输出力,w
mt1
、w
mt2
、w
mt3
、w
mt4
分别表示该人体关节点对应的4个肌肉mt1、mt2、mt3、mt4的肌腱与骨骼的连接点g1、g2、g3、g4分别到人体关节点o点的距离数据。
46.也就是说,为了得到肌肉对应的肌肉对外输出力f
mt
的具体值,在根据计算得到人体关节点的对外输出合力f以及围绕各个人体关节点旋转的力矩t的具体值并将数据更新至刚体模型后,同时也要输入至肌骨动力学函数,从而得到人体关节点对应的各个肌肉的肌肉对外输出力f
mt
的具体值并将数据更新至刚体模型;如图8所示为更新到刚体模型上的围绕各个人体关节点旋转的力矩t与人体关节点对应的各个肌肉的肌肉对外输出力f
mt
的示意图。
47.执行步骤s400,所述肌肉动力学函数具体为肌腹激活度z、肌腹长度lm、其他相应参数对应人体肌肉的肌肉对外输出力f
mt
的肌肉动力学函数;其中,与肌肉动力学函数相关的其他相应参数的具体值为已知;具体的,肌腹激活度z、肌腹长度lm、其他相应参数对应人体肌肉的肌肉对外输出力f
mt
的肌肉动力学函数具体为:人体各个肌肉的肌肉对外输出力f
mt
与相应的肌肉长度l
mt
、肌腹长度lm、肌肉被动拉伸最大长度l
st
、肌纤维夹角α、肌肉主动收缩最小长度l
sr
、肌腹收缩刚度k
pe
、肌腱刚度k
t
、肌腹最大发力、肌腹激活度z的肌肉动力学函数,其中,肌肉长度l
mt
、肌肉被动拉伸最大长度l
st
、肌纤维夹角α、肌肉主动收缩最小长度l
sr
、肌腹收缩刚度k
pe
、肌腱刚度k
t
、肌腹最大
发力的具体值为已知,也就是说,本实施例可以直接通过一些获取方式获取肌肉长度l
mt
、肌肉被动拉伸最大长度l
st
、肌纤维夹角α、肌肉主动收缩最小长度l
sr
、肌腹收缩刚度k
pe
、肌腱刚度k
t
、肌腹最大发力的具体参数,输入至所述肌肉动力学函数,用于后续计算。
48.其中,人体各个肌肉的肌肉对外输出力f
mt
与相应的肌肉长度l
mt
、肌腹长度lm、肌肉被动拉伸最大长度l
st
、肌纤维夹角α、肌肉主动收缩最小长度l
sr
、肌腹收缩刚度k
pe
、肌腱刚度k
t
、肌腹最大发力、肌腹激活度z的肌肉动力学函数具体包括:基于肌肉力学模型得到的肌肉对外输出力f
mt
和肌腱对外输出力f
t
、肌腹对外输出力fm的关系,建立肌肉对外输出力f
mt
与肌腱对外输出力f
t
以及与相应的肌腱刚度k
t
、肌肉长度l
mt
、肌腹长度lm、肌肉被动拉伸最大长度l
sr
的第一肌肉动力学函数,肌肉对外输出力f
mt
与肌腹对外输出力fm以及与相应的肌腹激活度z、肌腹最大发力、肌腹收缩刚度k
pe
、肌腹长度lm、肌肉主动收缩最小长度l
sr
的第二肌肉动力学函数。
49.所述第一肌肉动力学函数为:,;第二肌肉动力学函数为:,,,;式中,f
mt
表示肌肉对外输出力,fm表示肌肉中的肌腹对外输出力,f
t
表示肌肉中的肌腱对外输出力,表示肌肉力学模型中用于定义肌腹的弹簧发力,表示肌肉力学模型中用于定义肌腹的执行器发力,k
t
表示肌腱刚度,k
pe
表示肌腹收缩刚度,表示肌腹最大发力,l
st
表示肌肉被动拉伸最大长度,表示肌肉主动收缩最小长度,lm表示肌腹长度,z表示肌腹激活度,l
mt
表示肌肉长度,α表示肌纤维夹角。
50.在本实施例中,人体各个肌肉的肌腱刚度k
t
和对应肌腹的肌腹收缩刚度k
pe
、肌腹最大发力、肌肉被动拉伸最大长度l
st
和肌肉主动收缩最小长度l
sr
都为通过对用户进行测算得到的固定值,并更新到了所述刚体模型中,通过肌肉动力学函数进行计算时可以直接获取;肌纤维夹角α、肌腹激活度z、肌腹长度lm、肌肉长度l
mt
都为变化值;其中,人体各个肌肉的肌腱刚度k
t
和对应肌腹的肌腹收缩刚度k
pe
、肌腹最大发力根据前期测量直接获得,本实施例不作详细说明;肌纤维夹角α主要可以通过图像测量和反三角函数的方式求出,表示肌肉中肌肉纤维相对发力方向(一般为骨骼方向)平均值,并且随着lm的长度变化而改变;纤维夹角α、肌肉长度l
mt
可以通过实时测量得到,如对视频图像进行测量;而肌腹激活度z、肌腹长度lm通过肌肉动力学函数进行计算获取。
51.在本实施例中,获取肌肉被动拉伸最大长度l
st
和肌肉主动收缩最小长度l
sr
的步骤具体包括:依据计算得到的人体关节点对应的肢体的长度数据,测量与所述刚体模型定义的刚体关节点对应的人体关节点对应的肌肉在相应人体关节夹角下的肌肉被动拉伸最大长度l
st
和肌肉主动收缩最小长度l
sr
;具体的,如图5所示,当肩人体关节点呈现如图5的(a)所示的姿态时,表示水平屈曲,此时,肱二头肌主动收缩,肱三头肌被动拉伸;当肩人体关节点呈现如图5的(b)所示的姿态时,表示水平伸展,此时肱二头肌被动拉伸,肱三头肌主动收缩,摄像头分别测量两种姿态下的关节角度θ,结合解刨学肌腹肌腱连接点和骨骼的比例,再根据对应肌腹在正常状
态下的长度,可以直接计算出分别对应肱二头肌和肱三头肌的肌肉被动拉伸最大长度l
st
和肌肉主动收缩最小长度l
sr
;其中,肌肉被动拉伸最大长度l
st
为肌肉在被拉伸到最大长度时的肌肉长度和在正常状态时的肌肉长度的差值,肌肉主动收缩最小长度l
sr
为肌肉在被收缩到最小长度时的肌肉长度和在正常状态时的肌肉长度的差值;另外,解剖学上肌腱相对附着在骨骼上的位置有较为明确的定义,即测量肌肉长度的技术视为已知技术,在此不再赘述。
52.进一步的,肌肉由肌腹和肌腱两部分组成,骨的位置的变化产生运动,但是骨本身不能运动,骨的运动要靠肌肉的牵拉,肌肉两端连接有肌腱.肌腱可绕过关节连在不同的骨上,肌腹收缩牵引骨骼而产生关节的运动,肌腹两端的肌腱附着在两块或两块以上的骨,当肌肉收缩时,联带着骨骼进行活动,人体的运动大致可分为伸曲、内收外展以及旋转运动,因此,每一块骨头上为了满足以上活动的需要,均附着着肌肉,而肌腱类似一种绳索,可将自己永久的附着在骨骼上,从而将肌肉的一端固定在骨骼上,骨骼的运动是通过将力从肌肉通过肌腱传递到骨骼上而产生的,没有肌腱肌肉无法运动,骨骼肌通过拉动肌腱产生运动,而肌腱又拉动连接的骨骼。
53.因此,在现有技术中,如图4所示,肌肉力学模型被定义为弹簧pe、执行器ce、套筒的组合,其中,弹簧pe、执行器ce对应的为肌腹m,套筒对应的为肌腱t,f
mt
表示肌肉对外输出力,fm表示肌肉中的肌腹对外输出力,f
t
表示肌肉中的肌腱对外输出力,首先,由于肌肉fm和肌腱f
t
在任何时候都处于平衡状态,得到:,,再通过对fm进行计算,得到:,,;其中,的意思为,当肌肉为拉伸状态时,采用得到fm的值,而当肌肉为收缩状态时,采用得到fm的值,另外,需要注意的是,由于肌腱只会被拉伸而不会收缩,因此,当肌肉拉伸时,;而判断在不同姿态时肌肉为拉伸状态还是收缩状态的技术为现有技术,本实施例不做详细说明。
54.也就是说,根据上述得到的肌肉动力学函数后,由于人体各个肌肉的肌腱刚度k
t
和对应肌腹的肌腹收缩刚度k
pe
、肌腹最大发力、肌肉被动拉伸最大长度l
st
和肌肉主动收缩最小长度l
sr
已经都在前期被测量得到,那为了得到人体的各个肌肉在收缩状态时的实际肌肤激活度z、在拉伸状态时的肌腹长度lm的具体参数,则在通过计算得到不同肌肉的肌肉对外输出力f
mt
后,再根据输入到刚体模型的实时测量得到的用户在不同运动状态时的肌纤维夹角α就可以测得肌腹激活度z、肌腹长度lm,使得可以将物理人体在运动时的各个肌肉的在收缩状态时的实际肌肤激活度z、在拉伸状态时的肌腹长度lm与刚体模型保持同步,从而判断人体的各个肌肉的状态,与真实人体状态保持同步,并对人体进行保护。
55.综上,在建立得到刚体模型、多刚体运动学函数、肌骨动力学函数、肌肉动力学函数后;本实施例通过获取人体部位与环境交互的力fex,再根据人体部位与环境交互的力fex和多刚体运动学函数、肌骨动力学函数、肌肉动力学函数反推出人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t、各个肌肉的肌肉对外输出力f
mt
、肌腹激活度z、肌腹长度lm;让数字孪生虚拟人同步物理人的
动作和生理状态,包括骨骼运动、关节运动如角度和角速度、关节力矩、肌肉状态甚至进一步推算出虚拟人其他肢体对外界的交互力。
56.如图11所示,在根据测量得到反推得到人体部位与环境交互的力fex后输入多刚体运动学函数,得到各个人体关节点的对外输出合力f和围绕对应各个人体关节点旋转的力矩t同步到刚体模型并输入肌骨动力学函数,输出人体关节点对应的各个肌肉的肌肉对外输出力f
mt
同步到刚体模型,并输入肌肉动力学函数,输出肌腹激活度z同步到刚体模型,最终将所有获取的参数都更新到所述刚体模型中,从而将刚体模型与人体进行同步模拟,得到与人体对应的虚拟人,使得最终输出是广义坐标系下的运动。
57.进一步的,在得到肌腹激活度z、肌腹长度lm后,还包括以下步骤:判断肌腹激活度z是否大于肌腹最大发力对应的激活度阈值;若是则执行保护动作或进行风险提示,防止人体肌肉受到损害;判断肌腹长度lm是否大于肌肉的自身最大被动伸展长度l
st
或小于最小主动收缩长度l
sr
,若是则执行保护动作或风险提示,防止人体肌肉受到损害。
58.具体的,通过判断肌腹激活度z是否在区间[0,1]之内,其中,0代表肌肉松弛不发力时对应的激活度阈值,1代表肌腹最大发力对应的激活度阈值;若在则是安全的,如果大于1则直接进行风险提示,或者在健身的时候,直接控制健身机器进入保护状态,如进行电机停机等操作,防止对人体造成损害,同时还可通过判断肌腹长度lm来对肌肉是否会拉伤进行判断和保护,当肌肉长度lm大于肌肉的自身最大被动伸展长度l
st
或小于最小主动收缩长度l
sr
的时候,则意味着肌肉面临受伤风险,机器会执行保护动作或风险提示。
[0059]
相比较通过判断人体姿态和相对空间位置来进行保护,通过获取人体对外交护力并间接的推导获得人体的肌肉情况的方法,可以从肌肉状态的角度对使用者进行保护,这样一些因为内力的肌肉损伤就可以有效地避免或者预警。
[0060]
以人体的肘关节为例,如图12所示为人体肘关节对应的肌肉力学模型示意图,首先根据多刚体运动学函数,可以得到肘关节的对外输出合力f和围绕对应人体关节点旋转的力矩t,同时,肘关节是一个2自由度椭圆面关节,小臂刚体沿着半径为r的圆周运动,有2个广义自由度β1和β2,其运动受2部分即肱二头肌和肱三头肌控制,肘关节对应对外输出合力f和力矩t、两个肌肉对应的肌纤维夹角α1和α2也为已知,而f和t是由肱二头肌的肌肉对外输出力f
mt1
和肱三头肌的肌肉对外输出力f
mt2
合成的,其中假设肱二头肌是收缩的肌肉,肱三头肌是舒张的肌肉,可知在不同的状态下,同一块肌肉舒张和收缩发力不同,则可求出肌肉的当前状态的肌肉对外输出力f
mt
和肌腹激活度z,具体计算过程如下:,,,;其中,f和t是可以通过逆向运动学推算得到的值,而l1、l2为构建虚拟人模型时可以得到的长度数据,l
mt
和l
st
也为构建虚拟人时可以获得的数据,α是可以通过关节角度直接测量得到,则需要求得的数据便是fm和肌腹长度lm的值,从而推导出,,,从而得到fm和lm的值,再由于,,,得到收缩肌肉对应的肌腹激活度z的值;
其中,推到得到fm的具体推导过程为:,,,,,;推到得到lm的具体推导过程为:,,,,,,。
[0061]
其中,由于肌肉在拉伸和收缩时表现得发力效果不同,因此可以通过t和f的发力方向判断具体某块肌肉是收缩还是伸展,再结合fm和lm的两个等式,可以求出收缩肌肉的肌腹激活程度z和伸展肌肉的肌腹长度lm,从而确定肌肉的状态;自此,通过获取肢体末端的力矢量(方向和大小)和人体关节状态(角度和速度)进而推断获取关节的肌肉骨骼状态已经闭环。这些数据实时更新从而推广到整个人体,使得数字孪生虚拟人系统与真实物理系统保持同步。
[0062]
本发明实施例将动力学引入肌腹激活度z、肌腹长度lm作为物理运动行为的反馈,在基于生物力学虚拟人运动仿真过程中,肌肉腱单元驱动关节的收缩力以及其内部单元的状态变化是相互关联的。在仿真计算过程中,外部输入是已知的,由外部状态的变化计算肌肉的状态变化,使得模拟到的人体状态更加真实。
[0063]
本发明基于肌肉、骨骼和关节的参数化原理设计更加符合人体的真实肌骨系统,在构建完成虚拟人后,使用虚拟人对人体实时活动进行模拟,首先通过传感器等方式直接获取人体的身体部位与外界交互时形成的压力也就是人体部位与环境交互的力fex,再通过上述步骤进行反推,最终得到肌腹激活度z和肌腹长度lm,从而根据实时得到人体在活动时各个肌肉的肌腹激活度z和肌腹长度lm的变化,判断人体肌肉的具体状态;其中得到的肌肉在拉伸状态时的肌腹长度lm也比现有技术中直接根据视频图像测得的数据更加准确;相比较多刚体建模更真实提出一种神经控制方法,使得肌骨运动形成闭环控制,更有效的模拟了生物体的真实运动原理。
[0064]
基于同一发明构思,本发明还提供一种数字孪生虚拟与人体交互系统,包括以下模块:获取模块,获取人体部位与环境交互的力fex;多刚体运动学交互模块,基于多刚体运动学函数、人体部位与环境交互的力fex得到人体部位在与环境交互时涉及到发力的各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t并更新到与人体对应的刚体模型中;肌骨动力学交互模块,基于肌骨动力学函数和各个人体关节点的对外输出合力f、围绕对应人体关节点旋转的力矩t得到人体关节点对应的各个肌肉的肌肉对外输出力f
mt
并更新到所述刚体模型中;肌肉运动学交互模块,基于建立肌肉动力学函数和肌肉的肌肉对外输出力f
mt
得到各个肌肉的肌腹激活度z、肌腹长度lm并更新到所述刚体模型中,从而使所述刚体模型与真实人体系统保持同步。
[0065]
基于同一发明构思,本发明还提供一种电子设备,包括:至少一个处理器,与至少一个所述处理器通信连接的存储器;至少一个所述处理器用于读取所述存储器中的程序,用于执行所述数字孪生虚拟人与人体的交互方法。
[0066]
所述电子设备可以为智能健身设备,也可以为智能手机、电脑、智能大屏等智能终端设备。
[0067]
相应的,本发明还提供一种健身设备,包括:至少一个处理器,与至少一个所述处理器通信连接的存储器;至少一个所述处理器用于读取所述存储器中的程序,用于执行所述方法。
[0068]
基于同一发明构思,本发明还提供计算机可读存储介质,所述介质上存储有指令,当所述指令在计算机上运行时,使得计算机执行所述的方法。
[0069]
本发明虽然己以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献