Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Questions about training IKNet #27

Closed
Gel-smile opened this issue May 31, 2020 · 9 comments
Closed

Questions about training IKNet #27

Gel-smile opened this issue May 31, 2020 · 9 comments

Comments

@Gel-smile
Copy link

Thank you for great project,I have a few questions about training IKNet

  1. When changing the original 16 rotations of MANO into 21 rotations, do W, T0, I0, M0, R0, and L0 share the rotation of W in the original MANO?
  2. I found the joints_xyz calculated by using MANO ref_pose and the transformed 21 rotation parameters using the method in hand_mesh.py is not equal to the 'J_transformed' saved in the MANO pkl file , the order of joints has been adjusted according to kinematics.py. When using the MANO dataset to train IKNet, how did you get the ground truth 3D joint annotation in Lxyz? Is the calculation method of FK (Q) the same as the calculation method of joint_xyz in hand_mesh.py
@Gel-smile Gel-smile reopened this May 31, 2020
@Gel-smile Gel-smile changed the title Thank you for great project Questions about training IKNet May 31, 2020
@CalciferZh
Copy link
Owner

  1. Yes that's right.
  2. It's simply applying the rotations to each of the bones.

@Gel-smile
Copy link
Author

1i92kd8mwfcpu5r2a5pz4ao010f7kqzn0fn2eokuahsn2e2nmyt

Thank you for your reply. I have some questions about the second question. Do you calculate the joints_xyz by above method? if so, Do you use the ground truth of rotation and ref_pose to get the ground truth of joints_xyz in MANO datasets by above method?

@CalciferZh
Copy link
Owner

yes

@Gel-smile
Copy link
Author

Using 'j_regressor' in hand_mesh_model.py and mesh vertex coordinates in the pkl file of MANO datasets can also calculate joints_xyz, but the result calculated by this method is inconsistent with the result obtained by the method mentioned above. Have you noticed this problem? Does this have no effect on the results?

@CalciferZh
Copy link
Owner

CalciferZh commented Jun 2, 2020

You may check the idea of linear blend skinning which would be helpful to understand where the difference comes from. The j_regressor and the vertices are all about skinning and is not really related to the IK part. In theory the output rotations can be applied to an arbitrary mesh model. We are only concerned about the joint angles in MANO.

@Gel-smile
Copy link
Author

alright, thank you very much

@Gel-smile
Copy link
Author

The model I trained does not converge, Could you share the training code of IKNet?

@CalciferZh
Copy link
Owner

CalciferZh commented Jun 3, 2020

We now have a different colleague working on v2 to release the training code. We are not sure when it will be ready.

@Gel-smile
Copy link
Author

ok

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants