mohamedhassanmus / prox

Resolving 3D Human Pose Ambiguities with 3D Scene Constraints https://prox.is.tue.mpg.de
Other
220 stars 19 forks source link

How to project human skeleton joints in the dataset to the world coordinate system? #15

Closed sunshineatnoon closed 3 years ago

sunshineatnoon commented 4 years ago

Hi, I've downloaded the human skeleton data from the website and visualized the joints in the 3D scene mesh. But it seems that the human joints coordinates are not aligned to the world coordinate system as shown below, could you please tell me if it's possible to project the joints to world coordinate?

ZZWENG commented 4 years ago

Here is the line that does that. https://github.com/MohameHassan/prox/blob/master/prox/viz/viz_fitting.py#L81

sunshineatnoon commented 4 years ago

Here is the line that does that. https://github.com/MohameHassan/prox/blob/master/prox/viz/viz_fitting.py#L81

Thanks! This camera seems only fit for the SMPL model but not for the skeleton. I ended up extracting joints from the SMPL fittings.

mohamedhassanmus commented 4 years ago

If I remember correctly, the raw Kinect skeleton is in the IR camera coordinates. I transform everything to the color camera coordinates first and then transform it to the world coordinates.

So to use the give camera2world transformation, you would need to transform the skeleton to the color camera coordinates first. You can check how I did it for the body scan here https://github.com/MohameHassan/prox/blob/cf2c5f84e87a7d4a17621cfe71d855cfbcf31656/prox/projection_utils.py#L86

ZZWENG commented 4 years ago

Here is the line that does that. https://github.com/MohameHassan/prox/blob/master/prox/viz/viz_fitting.py#L81

Thanks! This camera seems only fit for the SMPL model but not for the skeleton. I ended up extracting joints from the SMPL fittings.

Hi @sunshineatnoon , may I ask how you extracted joints from the SMPL fittings? Is there a function that lets you extract the joints from the mosh meshes? (.ply file)

sunshineatnoon commented 4 years ago

Here is the line that does that. https://github.com/MohameHassan/prox/blob/master/prox/viz/viz_fitting.py#L81

Thanks! This camera seems only fit for the SMPL model but not for the skeleton. I ended up extracting joints from the SMPL fittings.

Hi @sunshineatnoon , may I ask how you extracted joints from the SMPL fittings? Is there a function that lets you extract the joints from the mosh meshes? (.ply file)

You can recover SMPL first and get the joints from the recovered SMPL parameters.