Teleop Implementation Notes
这个文档只放实现细节,README 只保留操作 步骤和注意事项。
Publisher payload
sim2real.teleop.pico_g1_zmq_publisher 发布的消息是 JSON,主要字段包括:
seqt_nspublish_t_nssmplx_t_nsjoint_posbody_pos_wbody_quat_wqposroot_posroot_quatdof_pos
字段约定:
qpos长度是 36。joint_pos是 G1 的 29 维关节角。body_pos_w形状是[num_bodies, 3]。body_quat_w形状是[num_bodies, 4]。root_pos是 3 维。root_quat是 4 维。dof_pos是兼容旧 subscriber 的冗余字段,等价于joint_pos。
旋转格式:
- 四元数顺序统一使用
wxyz。
Recording format
sim2real.teleop.record_xrobot_smplx 输出 .npz,主要字段包括:
metadata_jsonbody_joint_namesbody_posbody_rot_wxyzcapture_time_nsframe_validframes
字段约定:
body_pos形状是[T, J, 3]。body_rot_wxyz形状是[T, J, 4]。- 旋转四元数顺序是
wxyz。
Benchmark output
sim2real.teleop.benchmark_smplx_retarget 常见输出包括:
overall_fpsavg_ms_per_framemedian_ms_per_framep95_ms_per_framemin_ms_per_framemax_ms_per_frame
Common parameters
和 retarget 相关的常用参数:
--actual_human_height--publish_hz--viewer_hz--min_link_height--min_link_height_align_strategy--min_link_height_bootstrap_frames
补充说明:
--actual_human_height会传给 GMR,影响人体尺度匹配。--publish_hz是 publisher 主循环频率。--viewer_hz是 viewer 刷新频率。--min_link_height用于控制目标最小 link 高度。--min_link_height_align_strategy支持none、startup_fixed、per_frame。--min_link_height_bootstrap_frames用于startup_fixed模式下估计固定高度偏移。