From 953ead2c0c96883b0c84c746938c278a13de5f65 Mon Sep 17 00:00:00 2001 From: Yuzhe Qin Date: Wed, 3 Jul 2024 22:12:05 +0800 Subject: [PATCH] [fix] fix seq retargeting reset bug --- dex_retargeting/retargeting_config.py | 8 +++++++- dex_retargeting/seq_retarget.py | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/dex_retargeting/retargeting_config.py b/dex_retargeting/retargeting_config.py index 1b5695e..8e1b900 100644 --- a/dex_retargeting/retargeting_config.py +++ b/dex_retargeting/retargeting_config.py @@ -45,10 +45,14 @@ class RetargetingConfig: # For example, Allegro is 1.6 times larger than normal human hand, then this scaling factor should be 1.6 scaling_factor: float = 1.0 - # Optimization hyperparameter + # Optimization parameters normal_delta: float = 4e-3 huber_delta: float = 2e-2 + # DexPilot optimizer parameters + project_dist: float = 0.03 + escape_dist: float = 0.05 + # Joint limit tag has_joint_limits: bool = True @@ -191,6 +195,8 @@ def build(self) -> SeqRetargeting: wrist_link_name=self.wrist_link_name, target_link_human_indices=self.target_link_human_indices, scaling=self.scaling_factor, + project_dist=self.project_dist, + escape_dist=self.escape_dist, ) else: raise RuntimeError() diff --git a/dex_retargeting/seq_retarget.py b/dex_retargeting/seq_retarget.py index 5c28133..8f2ab81 100644 --- a/dex_retargeting/seq_retarget.py +++ b/dex_retargeting/seq_retarget.py @@ -130,7 +130,7 @@ def verbose(self): print(f"Last distance: {min_value}") def reset(self): - self.last_qpos = self.joint_limits.mean(1)[self.optimizer.idx_pin2target] + self.last_qpos = self.joint_limits.mean(1).astype(np.float32) self.num_retargeting = 0 self.accumulated_time = 0