hassony2 / handobjectconsist

[cvpr 20] Demo, training and evaluation code for joint hand-object pose estimation in sparsely annotated videos

Home Page:https://hassony2.github.io/handobjectconsist.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

about self.reorder_idxs

MengHao666 opened this issue · comments

Hi, thanks for the great work!

In ho3dv2.py line54 , u use self.reorder_idxs. An d I have checked that the joints 3d location after passing params. to mano_layer(which u proposed as manopth) are different from the ground truth 3d joint loactions.But after u use self.reorder_idxs to change order , they are nearly same.
So do u change the order through self.reorder_idxs to adapt to the mano layer? In code of ho3d, such order change is used only for simpler visualization.
So after training on ho3d subset, do you use an "inverse_reorder_idxs" to recover the original order which are used in evaluation datast? Is it necessary? How do you achieve it?

Hope to get some suggestions from u.
Merci beaucoup!

commented

Hi @MengHao666 !

Thank you for your interest in our work :)
As you can see here I use self.reorder_idxs to transform from HO3D to manopth convention. After that, I always stay in manpth joint convention (for training & visualization).
Does this answer your question ?

All the best,

Yana

Thanks a lot for the generous reply !

As u say, u always use manopth joint convention after transformation with self.reorder_idxs. So at last ,the network would output joint locations in the order of self.reorder_idxs. And it's better to "inverse" the order of joint locations outputs to fit the original HO3D convention when testing model in test set. I have seen much higher joint locations errors when omitting the "inverse" process in HO3D_v2 dataset.But I cannot find such "inverse" process in your code.

Another question, dose the order of 778 vertexes of hand mesh also need to reorder? It seems that both label and predictions of hand mesh vertexes come from manopth layer.So I guess vertexes don't need to "reorder". Is that true?

Merci bien! Bonne journée!

commented

Hi @MengHao666,

Just to make sure we are on the same page, when you say " I have seen much higher joint locations errors when omitting the "inverse" process" are you talking about the HO3D leaderboard submission ?

About vertex ordering I am actually not sure.

Best !

Thanks for reply!

Yes, when I say the " I have seen much higher joint locations errors when omitting the "inverse" process" , I do mean the HO3D_v2 leaderboard submission.
When I did what I say " "inverse" process", I saw a lot performance improvment on Mean Joint Error. It is the reason why I guess "inverse" process is necessary.
About vertex order, I just follow the convention of your manopth. And I guess it is consistent with HO3D_v2 leaderboard submission.They just follow MANO Hand Model Convention

Best!

commented

@MengHao666

Thank you for your feedback, I am closing this as it looks like it is resolved, feel free to reopen if you run into issues !

Best,

Yana