PengfeiRen96 / DIR

[ICCV 2023 Oral] Decoupled Iterative Refinement Framework for Interacting Hands Reconstruction from a Single RGB Image
https://pengfeiren96.github.io/DIR/
MIT License
69 stars 2 forks source link

Test code on KPT method #3

Open ChanglongJiangGit opened 11 months ago

ChanglongJiangGit commented 11 months ago

Thanks for your excellent job! In your table 3 , you tested KPT method under MCP alignment with and without scale alignment. Can you share your testing code of this?

walsvid commented 9 months ago

Hi, @ChanglongJiangGit, we modified the public code of KPT to align the definition of evaluation. Since it was modified based on KPT, this part of the code is not in this codebase. According to the definition of evaluation metrics, this part of the modification is not complicated. If you need more help we can provide guidance on how to modify the code. cc @PengfeiRen96

ChanglongJiangGit commented 8 months ago

Thanks for your response! When we modified the code ourselves, we found that the order of hand joint point coordinates defined by MANO was different from the order defined by the interhand2.6M data set. In MANO, the root joint coordinate is 0 and MCP is 9, but corresponding to interhand2.6m, the root joint is 20 and MCP is 11. So we calculated the result after coordinate transformation, similar code is: pred_joint_coord_cam[self.joint_type['right']] = pred_joint_coord_cam[self.joint_type['right']] - pred_joint_coord_cam[11,None,:] gt_joint_coord[self.joint_type['right']] = gt_joint_coord[self.joint_type['right']] - gt_joint_coord[11,None,:] length_right_gt = np.linalg.norm(gt_joint_coord[11] - gt_joint_coord[20], axis=-1) scale_right = (length_right_gt / (length_right_pred)) Then scale through this scale parameter. Is this code correct?