Closed GYTuuT closed 1 year ago
We discovered the shapedirs
issue in MANO after we completed the annotation process, so that issue was not taken into account during the annotation process.
Note that for each subject, DexYCB uses the same shape parameter (betas
) for the right and left hand (e.g., see calibration/mano_20200709_140042_subject-01_right/mano.yml
). That said, the shape of right and left hand will be slightly inconsistent due the issue above.
As also mentioned here, flipping the x
values of shapedirs
for the left hand would fix it. For DexYCB, this can be done by adding the following lines after this line in the manopth submodule:
if side == 'left':
self.th_shapedirs[:, 0] *= -1
Thanks for your reply !
But if I fix the inconsistent shape by flipping x
values of shapedirs
in manolayer, the joints produced from MANO layer using annotation label['pose_m']
and betas
, will be a lot different (4~13 mm for Root-Aligned MPJPE) form the annotation label['joint_3d']
when it's left hand. And before flipping shapedirs
, these errors are only about 0.2 mm.
Is that right or I make mistake somwhere ?
That sounds right because label["joint_3d"]
was generated with label["pose_m"]
and betas
without flipping shapedirs
. If you change the shape, the joint location will also change accordingly.
If you want to flip shapedirs
then label["joint_3d"]
will need to be regenerated to be consistent.
Got it ! It helps me a lot, Thanks !
Thank you for your wonderful work ! Many other works which use MANO hands have considered the problem of shapedirs parameters that raised in Bug on shapedirs of MANO. I want to konw if the mano annotations of DexYCB take the problem into acount, as I found the right and left hands may have different shape even though they are of a same person.