Closed leng-yue closed 2 years ago
SPIN's h36m_train.py
can't be wrong directly since there are some typos. Here is a fixed version.
https://gist.github.com/leng-yue/25125cd13bbdae31717ea078f1786028
@zengwang430521 Could you please offer some help?
Hi, Human3.6m dataset is used for 2 different tasks in MMPose, namely human mesh recovery and 3D keypoint detection. The data preprocessing tool tools/dataset/preprocess_h36m.py
is only for the latter, thus its output follows a different convention and cannot be used for HMR. Please follow this guide to prepare HMR training data. Sorry for the confusion.
Also, please note that we have a new codebase MMHuman3D for the 3D parametric model, which has already support HMR and several other 3D mesh recovery algorithms. Check it out!
Thanks a lot.
Describe the bug
The
h36m_train.npz
generated bytools/dataset/preprocess_h36m.py
only contains 17 joints, which is different from the SPIN's preprocess tool. And this leads to a training error inconfigs/body/3d_mesh_sview_rgb_img/hmr/mixed/res50_mixed_224x224.py
.Reproduction
Did you make any modifications on the code or config? Did you understand what you have modified? I only disable the decompressing part on
tools/dataset/preprocess_h36m.py
.What dataset did you use? Human3.6m
Bug fix
Following SPIN's joints generation code should solve this problem.
https://github.com/nkolot/SPIN/blob/5c796852ca7ca7373e104e8489aa5864323fbf84/datasets/preprocess/h36m_train.py#L92-L105