Closed shanemankiw closed 2 years ago
Hi, @shanemankiw could you please provide the case name of this parameter? It seems like the very old version of smplx parameter dictionary structure. I am afraid there is some miss-alignment of the data version, if you can provide the download link, that will be better.
Hi, thanks for the quick reply. This is from Test10 dataset, and every param npy file in every person(amanda/param, joseph_mantanda/param, etc.) gave this type of parameters. For instance, this is from joseph_matanda/param/0400.npy
Hi, @shanemankiw could you please provide the case name of this parameter? It seems like the very old version of smplx parameter dictionary structure. I am afraid there is some miss-alignment of the data version, if you can provide the download link, that will be better.
As for the download link, I downloaded directly from the onedrive link you provided.
Hi, @shanemankiw , I am afraid that you downloaded data before 5.10 when we reframed data structure. Please re-download the Test10 data from the link.
Oh that's true. Thanks for your reply!
Hi, @shanemankiw , I am afraid that you downloaded data before 5.10 when we reframed data structure. Please re-download the Test10 data from the link.
Hi, I visualized the bbox of the .obj mesh, keypoints3d from the param .npy, along with the camera positions, and this happens:
A closeup at bbox and body_pose:
The red box is the bbox calculated according to the .obj file,
the yellow points are body_pose provided in param npy file.
It seems like the body_pose does not match the mesh file, and also does not match with the camera positions. May I ask how can I transfer the body_pose&mesh to world coordinates?
And also, the scale is multiplied to the body pose already (smplx_scale=1 as provided in fuzhizhi/param/0409.npy)
And F.Y.I, 'joints' in this version of data is consistent with world coordinate.
Hi, thanks for the quick reply. This is from Test10 dataset, and every param npy file in every person(amanda/param, joseph_mantanda/param, etc.) gave this type of parameters. For instance, this is from joseph_matanda/param/0400.npy
Please try to generate smpl mesh using the smpl_from_param
function in here, to quickly check the difference between provided obj mesh and parameter generated mesh, please try
python genebody/genebody.py path_to_genebody fuzhizhi path_to_smplx
fuzhizhi.obj
will be generated in the project directory.
For the bounding box issue, I can not find any misalignment, you can print the bounding box of mesh vertices and keypoints3d in parameter, in the example of the data interface.
Please try to generate smpl mesh using the
smpl_from_param
function in here, to quickly check the difference between provided obj mesh and parameter generated mesh, please trypython genebody/genebody.py path_to_genebody fuzhizhi path_to_smplx
fuzhizhi.obj
will be generated in the project directory.For the bounding box issue, I can not find any misalignment, you can print the bounding box of mesh vertices and keypoints3d in parameter, in the example of the data interface.
Hi, i tried it and it seems like the joints from smpl output: output['joints'], have a huge diffrence with 3dkeypoints from npy file: param['keypoints3d'], as shown here(green is smpl output, purple is keypoints3d): but the mesh and bbox is good and fits in the world coordinates.
Yes, have you tried the genebody/genebody.py
scripts the validate the generated smpl keypoints? As mentioned in Annotation.md, we define a smpl scale 'outside' the smpl model, so all the output in 3d coordinate have to be multiplied by a scalar, both returned 'vertices' and 'joints'.
Check out the reference code to get the aligned keypoints3d here.
In Annotation.md you mentioned that the mesh can be retrieved by parameters in param folder. I noticed that the param npy files only contains the following information: there are 135 joints, and a 66x1 pose provided. But it doesn't seem consistent with the smplx model. Could you explain how can we use the parameters in detail? Thank you very much in advance.