gitextract_3fyqn965/ ├── .gitattributes ├── .githooks/ │ ├── README.md │ └── pre-commit ├── .gitignore ├── .gitlab-ci.yml ├── .gitmodules ├── LICENSE ├── Makefile ├── NOTICE ├── README.md ├── assets/ │ ├── robots/ │ │ └── unitree/ │ │ └── G1/ │ │ └── 29dof/ │ │ ├── g1_29dof.xml │ │ ├── g1_29dof_rev_1_0.urdf │ │ ├── g1_29dof_rev_1_0.xml │ │ ├── g1_29dof_rev_1_0_s100.urdf │ │ └── scene_29dof.xml │ └── test_data/ │ └── motion_retargeting/ │ └── ACCAD/ │ └── Male1Walking_c3d/ │ └── Walk_B10_-_Walk_turn_left_45_stageii.npz ├── deploy.env ├── deployment/ │ ├── deploy_environment.sh │ ├── holomotion_teleop/ │ │ ├── holomotion_teleop_node.py │ │ ├── holomotion_teleop_setup.md │ │ └── setup_holomotion_teleop_x86_ubuntu2204.sh │ └── unitree_g1_ros2_29dof/ │ ├── launch_holomotion_29dof.sh │ ├── launch_holomotion_29dof_docker.sh │ ├── src/ │ │ ├── CMakeLists.txt │ │ ├── config/ │ │ │ └── g1_29dof_holomotion.yaml │ │ ├── humanoid_policy/ │ │ │ ├── __init__.py │ │ │ ├── holomotion_fk_root_only.py │ │ │ ├── obs_builder/ │ │ │ │ ├── __init__.py │ │ │ │ └── obs_builder.py │ │ │ ├── policy_node_29dof.py │ │ │ └── utils/ │ │ │ ├── __init__.py │ │ │ ├── command_helper.py │ │ │ ├── maths.py │ │ │ ├── motor_crc.py │ │ │ ├── remote_controller_filter.py │ │ │ ├── rotation_helper.py │ │ │ └── rotations.py │ │ ├── include/ │ │ │ └── common/ │ │ │ ├── motor_crc.h │ │ │ ├── motor_crc_hg.h │ │ │ ├── ros2_sport_client.h │ │ │ └── wireless_controller.h │ │ ├── launch/ │ │ │ └── holomotion_29dof_launch.py │ │ ├── models/ │ │ │ └── .gitkeep │ │ ├── motion_data/ │ │ │ └── .gitkeep │ │ ├── package.xml │ │ ├── resource/ │ │ │ └── humanoid_control │ │ ├── setup.cfg │ │ ├── setup.py │ │ └── src/ │ │ ├── common/ │ │ │ ├── motor_crc.cpp │ │ │ ├── motor_crc_hg.cpp │ │ │ ├── ros2_sport_client.cpp │ │ │ └── wireless_controller.cpp │ │ └── main_node.cpp │ └── start_container.sh ├── docs/ │ ├── environment_setup.md │ ├── evaluate_motion_tracking.md │ ├── holomotion_motion_file_spec.md │ ├── motion_retargeting.md │ ├── mujoco_sim2sim.md │ ├── realworld_deployment.md │ ├── smpl_data_curation.md │ └── train_motion_tracking.md ├── environments/ │ ├── environment_deploy.yaml │ ├── environment_train_isaaclab_cu118.yaml │ ├── environment_train_isaaclab_cu128.yaml │ ├── requirements_base.txt │ ├── requirements_deploy.txt │ ├── requirements_torch_cu118.txt │ ├── requirements_torch_cu128.txt │ └── requirements_torch_cu130.txt ├── holomotion/ │ ├── config/ │ │ ├── algo/ │ │ │ ├── ppo.yaml │ │ │ └── ppo_tf.yaml │ │ ├── data_curation/ │ │ │ ├── joints2smpl.yaml │ │ │ └── smplify_base.yaml │ │ ├── env/ │ │ │ ├── domain_randomization/ │ │ │ │ ├── NO_domain_rand.yaml │ │ │ │ ├── domain_rand_medium.yaml │ │ │ │ ├── domain_rand_small.yaml │ │ │ │ └── domain_rand_strong.yaml │ │ │ ├── motion_tracking.yaml │ │ │ ├── observations/ │ │ │ │ ├── motion_tracking/ │ │ │ │ │ ├── obs_motion_tracking_mlp.yaml │ │ │ │ │ └── obs_motion_tracking_tf-moe.yaml │ │ │ │ └── velocity_tracking/ │ │ │ │ └── obs_velocity_tracking.yaml │ │ │ ├── rewards/ │ │ │ │ ├── motion_tracking/ │ │ │ │ │ └── rew_motion_tracking.yaml │ │ │ │ └── velocity_tracking/ │ │ │ │ └── rew_velocity_tracking.yaml │ │ │ ├── terminations/ │ │ │ │ ├── NO_termination.yaml │ │ │ │ ├── termination_motion_tracking.yaml │ │ │ │ └── termination_velocity_tracking.yaml │ │ │ ├── terrain/ │ │ │ │ ├── isaaclab_plane.yaml │ │ │ │ └── isaaclab_rough.yaml │ │ │ └── velocity_tracking.yaml │ │ ├── evaluation/ │ │ │ ├── eval_isaaclab.yaml │ │ │ ├── eval_mujoco_sim2sim.yaml │ │ │ └── eval_velocity_tracking.yaml │ │ ├── modules/ │ │ │ ├── motion_tracking/ │ │ │ │ ├── motion_tracking_mlp.yaml │ │ │ │ └── motion_tracking_tf-moe.yaml │ │ │ └── velocity_tracking/ │ │ │ └── velocity_tracking_mlp.yaml │ │ ├── motion_retargeting/ │ │ │ ├── gmr_to_holomotion.yaml │ │ │ ├── holomotion_preprocess.yaml │ │ │ ├── kinematic_filter.yaml │ │ │ ├── pack_hdf5_database.yaml │ │ │ ├── pack_hdf5_v2.yaml │ │ │ └── unitree_G1_29dof_retargeting.yaml │ │ ├── mujoco_eval/ │ │ │ └── sim2sim.yaml │ │ ├── robot/ │ │ │ └── unitree/ │ │ │ └── G1/ │ │ │ └── 29dof/ │ │ │ ├── 29dof_training_isaaclab.yaml │ │ │ └── 29dof_training_isaaclab_s100.yaml │ │ └── training/ │ │ ├── motion_tracking/ │ │ │ ├── train_g1_29dof_motion_tracking_mlp.yaml │ │ │ └── train_g1_29dof_motion_tracking_tf-moe.yaml │ │ ├── train_base.yaml │ │ └── velocity_tracking/ │ │ └── train_g1_29dof_velocity_tracking_mlp.yaml │ ├── scripts/ │ │ ├── data_curation/ │ │ │ ├── convert_to_amass.sh │ │ │ ├── filter_smpl_data.sh │ │ │ ├── video_to_smpl_gvhmr.sh │ │ │ └── visualize_smpl_npz.sh │ │ ├── evaluation/ │ │ │ ├── calc_offline_eval_metrics.sh │ │ │ ├── eval_motion_tracking.sh │ │ │ ├── eval_mujoco_sim2sim.sh │ │ │ ├── eval_velocity_tracking.sh │ │ │ ├── mean_process_5metrics.py │ │ │ └── multi_model_metrics_analysis.sh │ │ ├── motion_retargeting/ │ │ │ ├── apply_gmr_motion_retarget_patch.sh │ │ │ ├── pack_hdf5_v2.sh │ │ │ ├── run_holomotion_preprocessing.sh │ │ │ ├── run_kinematic_filter.sh │ │ │ ├── run_motion_retargeting_gmr_bvh.sh │ │ │ ├── run_motion_retargeting_gmr_smplx.sh │ │ │ ├── run_motion_retargeting_gmr_to_holomotion.sh │ │ │ └── run_motion_viz_mujoco.sh │ │ └── training/ │ │ ├── train_motion_tracking.sh │ │ └── train_velocity_tracking.sh │ ├── src/ │ │ ├── algo/ │ │ │ ├── __init__.py │ │ │ ├── algo_base.py │ │ │ ├── algo_utils.py │ │ │ ├── ppo.py │ │ │ └── ppo_tf.py │ │ ├── data_curation/ │ │ │ ├── .gitignore │ │ │ ├── __init__.py │ │ │ ├── data_smplify.py │ │ │ ├── filter/ │ │ │ │ ├── filter.py │ │ │ │ └── label_data.py │ │ │ ├── smpl_npz_to_html.py │ │ │ ├── smplify/ │ │ │ │ ├── __init__.py │ │ │ │ ├── smplify_humanact12.py │ │ │ │ ├── smplify_motionx.py │ │ │ │ ├── smplify_omomo.py │ │ │ │ └── smplify_zjumocap.py │ │ │ ├── templates/ │ │ │ │ └── index_wooden_static.html │ │ │ ├── video_to_smpl_gvhmr.py │ │ │ ├── vison_mocap/ │ │ │ │ └── joints2smpl.py │ │ │ └── visualize_smpl_npz.py │ │ ├── env/ │ │ │ ├── __init__.py │ │ │ ├── isaaclab_components/ │ │ │ │ ├── __init__.py │ │ │ │ ├── isaaclab_actions.py │ │ │ │ ├── isaaclab_curriculum.py │ │ │ │ ├── isaaclab_domain_rand.py │ │ │ │ ├── isaaclab_motion_tracking_command.py │ │ │ │ ├── isaaclab_observation.py │ │ │ │ ├── isaaclab_rewards.py │ │ │ │ ├── isaaclab_scene.py │ │ │ │ ├── isaaclab_simulator.py │ │ │ │ ├── isaaclab_termination.py │ │ │ │ ├── isaaclab_terrain.py │ │ │ │ ├── isaaclab_utils.py │ │ │ │ ├── isaaclab_velocity_tracking_command.py │ │ │ │ └── unitree_actuators.py │ │ │ ├── motion_tracking.py │ │ │ └── velocity_tracking.py │ │ ├── evaluation/ │ │ │ ├── __init__.py │ │ │ ├── eval_motion_tracking.py │ │ │ ├── eval_motion_tracking_single.py │ │ │ ├── eval_mujoco_sim2sim.py │ │ │ ├── eval_velocity_tracking.py │ │ │ ├── find_worst_clips.py │ │ │ ├── metrics.py │ │ │ ├── multi_model_metrics_report.py │ │ │ ├── obs/ │ │ │ │ ├── __init__.py │ │ │ │ └── obs_builder.py │ │ │ ├── ray_evaluator_actor.py │ │ │ └── ray_metrics_postprocess.py │ │ ├── modules/ │ │ │ ├── __init__.py │ │ │ ├── agent_modules.py │ │ │ └── network_modules.py │ │ ├── motion_retargeting/ │ │ │ ├── __init__.py │ │ │ ├── gmr_to_holomotion.py │ │ │ ├── holomotion_fk.py │ │ │ ├── holomotion_preprocess.py │ │ │ ├── kinematic_filter.py │ │ │ ├── pack_hdf5_v2.py │ │ │ ├── reference_filtering.py │ │ │ └── utils/ │ │ │ ├── __init__.py │ │ │ ├── _schema.json │ │ │ ├── rotation_conversions.py │ │ │ ├── torch_humanoid_batch.py │ │ │ └── visualize_with_mujoco.py │ │ ├── training/ │ │ │ ├── __init__.py │ │ │ ├── h5_dataloader.py │ │ │ ├── reference_filter_export.py │ │ │ └── train.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── config.py │ │ ├── frame_utils.py │ │ ├── isaac_utils/ │ │ │ ├── __init__.py │ │ │ ├── maths.py │ │ │ ├── rotations.py │ │ │ └── setup.py │ │ ├── onnx_export.py │ │ ├── reference_prefix.py │ │ ├── torch_utils.py │ │ └── unitree_g1_actuator_calculator.py │ └── tests/ │ └── __init__.py ├── pyproject.toml ├── tests/ │ ├── benchmark_legacy_onnx_attention.py │ ├── benchmark_moe_router_export.py │ ├── test_actor_export_config.py │ ├── test_algo_base_iteration_logging.py │ ├── test_build_quantization_dataset.py │ ├── test_cache_curriculum_sampler.py │ ├── test_domain_rand_config_builder.py │ ├── test_eval_mujoco_action_delay.py │ ├── test_eval_mujoco_action_ema.py │ ├── test_eval_mujoco_contact_export.py │ ├── test_eval_mujoco_s100_horizon_ptq.py │ ├── test_eval_mujoco_use_gpu.py │ ├── test_eval_onnx_io_dump.py │ ├── test_evaluation_metrics.py │ ├── test_isaaclab_termination.py │ ├── test_mean_process_5metrics.py │ ├── test_motion_cache_gather_state.py │ ├── test_motion_cache_startup.py │ ├── test_motion_tracking_command_reference_prefix.py │ ├── test_motion_tracking_timing.py │ ├── test_mujoco_filtered_ref_compat.py │ ├── test_obs_norm_compile.py │ ├── test_observation_frames.py │ ├── test_onnx_attention_export.py │ ├── test_onnx_export.py │ ├── test_plot_moe_expert_heatmap.py │ ├── test_plot_state_series.py │ ├── test_ppo_checkpoint_sigma_override.py │ ├── test_ppo_entropy_annealing.py │ ├── test_ppo_symmetry_loss.py │ ├── test_ppo_tf_aux_keybody.py │ ├── test_ref_router_actor.py │ ├── test_ref_router_seq_actor.py │ ├── test_reference_filter_export.py │ ├── test_reference_motion_config_wiring.py │ ├── test_root_rel_rewards.py │ ├── test_unitree_actuators.py │ └── test_visualize_with_mujoco.py └── train.env