|
有任何问题可电话咨询:15011062927
您需要 登录 才可以下载或查看,没有账号?立即注册
x
在 MVN 中,可以导出 MVNX 格式(MVN Open XML 格式)的文件。这些是可以在 Microsoft Excel、Access、MATLAB 和 C-Motion Visual 3D 等程序中打开的 XML 文件。
可以通过单击导出窗口中的“显示选项”来选择可以以 MVNX 格式导出的变量。
MVN 融合引擎根据地球固定参考坐标系 G 计算每个身体部分 B 的位置和方向以及其他运动学数据。默认情况下,使用的地球固定参考坐标系是定义为右手笛卡尔坐标系。
全局参考系统的轴定义为:- X(红色)指向当地的磁北。
- Y(绿色)根据右手坐标系(西)
- Z(蓝色)朝上
当主体以 T 姿势站立时,每个身体框架 (B) 的轴与此全局参考框架 (G) 对齐。
初始化
MVNX 文件以 XML 版本号开头。然后是引用 XSD(XML 架构定义)和 MVNX 版本的根元素“mvnx”。
- <mvn version="..." build="..."/>
- <comment>...</comment>
复制代码 后面跟着一个字段“mvn”,其中包含 MVN 分析/动画版本和生成此 MVNX 文件的构建详细信息,然后是添加到原始记录中的注释:
- <subject label=".." torsoColor="#21ae00" frameRate="240" segmentCount="23" recDate="week day month day time year" recDateMSecsSinceEpoch="1517300960213" originalFilename="DIRECTORY\FILENAME.mvn" configuration="FullBody" userScenario="singleLevel" processingQuality="HD">
- <comment>...</comment>
复制代码 文件继续提供会话信息,包括套装标签(= MVN 系统的名称)、使用的采样频率、计算的段数(指示全身或半身);录制发生的日期,以及 MVNX 文件所基于的原始录制文件的文件名。创建录制文件时,用户可以插入评论。
- <subject label=".." torsoColor="#21ae00" frameRate="240" segmentCount="23" recDate="week day month day time year" recDateMSecsSinceEpoch="1517300960213" originalFilename="DIRECTORY\FILENAME.mvn" configuration= "FullBody" userScenario="singleLevel" processingQuality="HD"> <comment>...</comment>
复制代码 Segments
<segments> 部分定义了连接关节(以“j”为前缀)和解剖标志(以“p”为前缀)的所有位置 (pos_b) 相对于该部分的起源(在身体名称 B 中)。
每个段的结构如下:
- <segments>
- <segment label=“RightUpperLeg” id=“16”>
- <points>
- <point label="jRightHip">
- <pos_b>0.000000 0.000000 0.000000</pos_b>
- </point>
- <point label="jRightKnee">
- <pos_b>0.000000 0.000000 -0.423469</pos_b>
- </point>
- etc.
- </points>
- </segment>
复制代码 人体工程学关节数据
“人体工程学关节角度”部分是人体工程学分析中使用的特定关节角度列表,以及每个给定关节的段和连接:<人体工程学关节角度> <ergonomicJointAngle label="T8_Head" index="0" parentSegment="T8" childSegment="Head"/> 等等。</ergonomicJointAngles>
脚接触检测
“脚接触定义”部分是给定脚接触点的列表,以及它们在每个给定时间范围的脚接触定义数组中的索引,如果该点与地面接触,则给出值1,而如果它不接触
- <sensors>
- < sensor label ="Pelvis"/>
- < sensor label ="Head"/>
- < sensor label ="RightShoulder"/>
- etc.
- </sensors>
复制代码 注意: 需要注意的是,在 MVNX 格式中计算接触点的方式与在 MVN 中表示接触点的方式不同。在 MVN 中,多个段可以有接触点,并且接触点在每个骨性标志中定义。相反,在 MVNX 中,只有 4 个接触点可用,并且它们不在该段的骨性标志上:
- LeftFoot_Heel
- 左脚_脚趾
- RightFoot_Heel
- 右脚_脚趾
外部数据
随着 MVN 2020.2 的发布,一种新型数据也可以在 mvnx 中导出,即来自 EMG 的外部数据。该索引包含每个通道的帧速率、ID、名称和来源。
- <joints>
- <joint label=“ jLeftHip”>
- <connector1>Pelvis/jLeftHip </connector1>
- <connector2>LeftUpperLeg/jLeftHip </connector2>
- </joint>
- etc.
- </joints>
复制代码
请注意,外部数据的帧速率可能与 MVN 不同。外部数据以外部系统的速率运行。下图表示 EMG 数据帧速率为 2148 Hz,即 EMG 系统的输出速率。
符合人体工程学的联合数据
“人体工程学关节角度”部分是人体工程学分析中使用的特定关节角度的列表,以及每个给定关节的片段和连接:
- <ergonomicJointAngles>
- <ergonomicJointAngle label=“ T8_Head” index="0" parentSegment="T8" childSegment="Head"/>
- etc.
- </ergonomicJointAngles>
复制代码
脚接触检测
“脚接触定义”部分是一个给定的脚接触点的列表,和他们的脚接触定义数组索引对于每一个给定的时间框架,如果问题是与地面接触,这是考虑到值1,同时在接触,如果不是考虑到价值0:
- <footContactDefinition>
- <contactDefinition label="LeftFoot_Heel" index="0"/>
- <contactDefinition label="LeftFoot_Toe" index="1"/>
- <contactDefinition label="RightFoot_Heel" index="2"/>
- <contactDefinition label="RightFoot_Toe" index="3"/>
- </footContactDefinition>
复制代码 注意:
需要注意的是,在MVNX格式中计算接触点的方式与在MVN中表示接触点的方式是不同的。在MVN中,多个节段可以有接触点,接触点在每个骨地标中定义。相反,在MVNX中只有4个接触点可用,它们不在节段的骨地标上:
- LeftFoot_Heel
- LeftFoot_Toe
- RightFoot_Heel
- RightFoot_Toe
外部数据
随着MVN 2020.2的发布,一种新的数据类型也可以在mvnx中导出,这是来自EMG的外部数据。索引包含每个通道的帧速率、ID、名称和源。
注意,外部数据可能与MVN的帧速率不同。外部数据以外部系统的速率运行。下图显示肌电图数据帧率为2148 Hz,这是肌电图系统的输出速率。
- <externalChannels>
- <channel frameRate="2148" id="0" name="channel 1" source="Delsys" sourceChannel="1"/>
- <channel frameRate="2148" id="1" name="channel 2" source="Delsys" sourceChannel="2"/>
- <channel frameRate="2148" id="2" name="Delsys channel 9" source="Delsys" sourceChannel="9"/>
- <channel frameRate="2148" id="3" name="Delsys channel 10" source="Delsys" sourceChannel="10"/>
- </externalChannels>
复制代码 数据位于“externalData”下,包含通道号、总样本号和数据本身。数据速率基于上述的帧速率。
- <frame time="0" index="0" tc="11:59:56:45" ms="1627559996749" type="normal">
- <externalData channel="0" sample="0">...</externalData>
- <externalData channel="1" sample="0">...</externalData>
- <externalData channel="2" sample="0">...</externalData>
- <externalData channel="3" sample="0">...</externalData>
- </frame>
复制代码 帧
帧部分以段、传感器和关节计数打开。该部分包含所有参数的数据,包括校准位姿数据。<frames segmentCount="23" sensorCount="17" jointCount="22"> 帧类型“身份”表示空姿势或身份姿势。此姿势中的所有段方向都与全局坐标对齐并具有单位四元数。
- <frames segmentCount="23" sensorCount="17" jointCount="22">
复制代码- <frame time="0" index="" tc="00:00:00:000" ms="0" type="identity">
- <orientation>1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 </orientation>
- <position>...</position>
- </frame>
复制代码
描述了T-pose中所有段的位置和方向。某些片段的位置和方向与身份姿势略有不同。
- <frame time="0" index="" tc="00:00:00:000" ms="0" type="tpose">
- <orientation>...</orientation>
- <position>...</position>
- </frame>
复制代码- <frame time="0" index="0" tc="08:29:20:050" ms="1517300960209" type="normal">
- <orientation>GB-q_seg1 GB-q_seg2 … GB-q_seg23</orientation>
- <position>G-pos_seg1 G-pos_seg2 … G-pos_seg23</position>
- <velocity>G-v_seg1 G-v_seg2 …G-v_seg23</velocity>
- <acceleration>G-a_seg1 G-a_seg2 … G-a_seg23</acceleration>
- <angularVelocity>G-w_seg1 G-w_seg2 … G-_wseg23</angularVelocity>
- <angularAcceleration>G-aw_seg1 G-aw_seg2 … G-aw_seg23</angularAcceleration>
- <externalData channel="0" sample="0">value1, value2 ... value36</externalData>
- <externalData channel="1" sample="0">value1, value2 ... value36</externalData>
- <externalData channel="2" sample="0">value1, value2 ... value36</externalData>
- <externalData channel="3" sample="0">value1, value2 ... value36</externalData>
- <footContacts>I1 I2 I3 I4 </footContacts>
- <sensorFreeAcceleration>S-a_sen1 S-a_sen2 … S-a_sen17</sensorFreeAcceleration>
- <sensorMagneticField>S-m_sen1 S-m_sen2 … S-m_sen17</sensorMagneticField>
- <sensorOrientation>GS-q_sen1 GS-q_sen2 … GS-q_sen17</sensorOrientation>
- <jointAngle>j_jnt1 j_jnt2 …j_jnt22</jointAngle>
- <jointAngleXZY>j_jntx1 j_jntx2 … j_jntx22</jointAngleXZY>
- <jointAngleErgo>JE_jnt1 JE_jnt2 … JE_jnt4</jointAngleErgo>
- <jointAngleErgoXZY>JE_jntx1 JE_jntx2 …JE_jntx4</jointAngleErgoXZY>
- <centerOfMass>G-CM</centerOfMass>
- </frame>
复制代码
时间说明: 时间 | 每帧增量相当于([帧编号/更新速率]*1000 [毫秒])。例如对于 240Hz 的帧率,增量时间为 4.16ms。 | 指数 | 包含原始帧号 | tc | 时间码值,即记录该特定帧的绝对实时时间(通常用于将此记录与同时收集的其他数据同步和组合)。 | 多发性硬化症 | 包含相对于计算时期记录特定帧的绝对时间(以毫秒为单位)(开始于 1970 年 1 月 1 日定义) |
参数说明:范围 | 格式 | 单位 | 描述 | 方向 (GB-q_segi) | 1x4 向量(q0、q1、q2、q3) | | 段相对于全局框架的四元数方向。 | 位置 (G-pos_seg1) | 1x3 向量(x、y、z) | 米 [m] | 段的原点在全局框架中的位置。 | 速度(G-v_seg1) | 1x3 向量(x、y、z) | 米每秒 [m/s] | 全局坐标系中分段原点的速度。 | 加速度 (G-a_seg1) | 1x3 向量(x、y、z) | 米每秒平方 [m/s2] | 全局坐标系中线段原点的加速度。 | 角速度(G-seg1) | 1x3 向量(x、y、z) | 每秒弧度 [rad/s] | 段在全局坐标系中的角速度。 | 角加速度
(G-wa_seg1) | 1x3 向量(x、y、z) | 弧度每秒平方 [rad/s2] | 全局坐标系中线段原点的角加速度。 | 脚接触
(I1 I2 I3 I4) | 1x4 布尔值向量 | 0 或 1 | 定义是否为每帧检测到接触点的布尔向量。 | sensorFreeAcceleration
(S-a_sen1) | 1x3 向量(x、y、z) | 米每秒平方 [m/s2] | 传感器的自由加速度。 | 传感器磁场
(S-m_sen1) | 1x3 向量(x、y、z) | 解剖单位 [au] | 传感器的传感器磁场。 | 传感器方向
(GS-q_sen1) | 1x4 向量(q0、q1、q2、q3) | | 传感器在全局框架中的传感器方向四元数。 | 关节角度 ( j_jnt1) | 1x3 向量(x、y、z) | 度 [度] | 使用基于 ISB 的坐标系的欧拉序列 ZXY 计算的关节角度的欧拉表示。 | 关节角度XZY(j_jntx1) | 1x3 向量(x、y、z) | 度 [度] | 使用基于 ISB 的坐标系,使用欧拉序列 XZY 计算的关节角度的欧拉表示。
注意:使用欧拉序列XZY的关节角度是针对所有关节计算导出的,但通常只用于肩关节,如果使用合适,可能取决于肩部的运动。 | JointAngleErgo (JE_jnt1) | 1x3 向量(x、y、z) | 度 [度] | 使用基于 ISB 的坐标系,使用欧拉序列 ZXY 计算的人体工程学关节角度的欧拉表示。 | JointAngleErgoXZY
(JE_jntx1) | 1x3 向量(x、y、z) | 度 [度] | 使用基于 ISB 的坐标系的欧拉序列 XZY 计算出的人体工程学关节角度的欧拉表示。 | 质量中心 ( G-CM) | 1x3 向量(x、y、z) | 米 [m] | 身体重心在全局坐标系中的位置。从 MVN 2020.2 开始,还有速度和加速度。 | 外部数据 | 1x1 向量(肌肉活动) | 毫伏 [mV] | 肌电图数据以确定肌肉活动 |
|
|