rofunc.utils.datalab.poselib.xsens_fbx_to_hotu_npy#

Attention: Since the Autodesk FBX SDK just supports Python 3.7, this script should be run with Python 3.7.

1.  Module Contents#

1.1.  Functions#

motion_from_fbx

motion_retargeting

npy_from_fbx

This scripts shows how to retarget a motion clip from the source skeleton to a target skeleton. Data required for retargeting are stored in a retarget config dictionary as a json file. This file contains:

1.2.  API#

rofunc.utils.datalab.poselib.xsens_fbx_to_hotu_npy.motion_from_fbx(fbx_file_path, root_joint, fps=60, visualize=True)[source]#
rofunc.utils.datalab.poselib.xsens_fbx_to_hotu_npy.motion_retargeting(retarget_cfg, source_motion, visualize=False)[source]#
rofunc.utils.datalab.poselib.xsens_fbx_to_hotu_npy.npy_from_fbx(fbx_file)[source]#

This scripts shows how to retarget a motion clip from the source skeleton to a target skeleton. Data required for retargeting are stored in a retarget config dictionary as a json file. This file contains:

  • source_motion: a SkeletonMotion npy format representation of a motion sequence. The motion clip should use the same skeleton as the source T-Pose skeleton.

  • target_motion_path: path to save the retargeted motion to

  • source_tpose: a SkeletonState npy format representation of the source skeleton in it’s T-Pose state

  • target_tpose: a SkeletonState npy format representation of the target skeleton in it’s T-Pose state (pose should match source T-Pose)

  • joint_mapping: mapping of joint names from source to target

  • rotation: root rotation offset from source to target skeleton (for transforming across different orientation axes), represented as a quaternion in XYZW order.

  • scale: scale offset from source to target skeleton