weigq / 3d_pose_baseline_pytorch

A simple baseline for 3d human pose estimation in PyTorch.
MIT License
366 stars 64 forks source link

Problem on Visualizing #33

Closed ghost closed 3 years ago

ghost commented 3 years ago

I follow with https://github.com/weigq/3d_pose_baseline_pytorch/blob/a03094bb479770abc43dc5b87ad394b85bb6dcab/main.py#L226 to unnorm the output of network, and get tensor which has (51, ) shape. I guess it should be the coordinates like x0,y0,z0,x1,y1,z1.......x16,y16,z16 but when I draw all 17 point in 3d plot, it don't like a human skeleton shape,

I want to know how to visualize the output from the (51, ) array, and the index of these 51 nums.

weigq commented 3 years ago

Did you visualize the pose after unnormalization?

ghost commented 3 years ago

Did you visualize the pose after unnormalization?

No, I want to visualize the 3d pose by the (51, ) shape tensor that I got, but it seems not work.

weigq commented 3 years ago

The normalized pose is normalized for each joint separately (i.e., each type of joint has a mean and std), therefore the normalized pose dose not look like a person. If you want to visualize the pose, you need to unnormalize it first.

ghost commented 3 years ago

The normalized pose is normalized for each joint separately (i.e., each type of joint has a mean and std), therefore the normalized pose dose not look like a person. If you want to visualize the pose, you need to unnormalize it first.

Yes, I have done the unnormalize work first, follow with https://github.com/weigq/3d_pose_baseline_pytorch/blob/a03094bb479770abc43dc5b87ad394b85bb6dcab/main.py#L226 and get the parameter which named outputs_unnorm and outputs_use in your code, I think it should be the unnormalized result, and how can I handle this parameter to get the visualizing pose?

weigq commented 3 years ago

You can refer to https://github.com/una-dinosauria/3d-pose-baseline/blob/666080d86a96666d499300719053cc8af7ef51c8/src/data_utils.py#L17 for the orders of joints

ghost commented 3 years ago

You can refer to https://github.com/una-dinosauria/3d-pose-baseline/blob/666080d86a96666d499300719053cc8af7ef51c8/src/data_utils.py#L17 for the orders of joints

This is where I have problem, does your order same as his? For example, for (51, ) shape tensor, first three nums represent the coordinates of Hip, the 4,5,6-th nums represent the coordinates of RHip, the last three nums represent the coordinates of RWrist? Because I have try in this order but got strange result.

I notice that you are from Beijing, can I add your Wechat to talk about it In detail?

weigq commented 3 years ago

You can send your wechat to my email

ghost commented 3 years ago

You can send your wechat to my email

Hi, I have send my WeChat to your @gmail email, please take a look, hope for communicating with you

alexivaner commented 3 years ago

Hi, how you visualize the join? I already have (51,) unnormalized 3d skeleton, how I could visualize it? Thank you. Because I always get this error:

AssertionError: channels should have 96 entries, it has 51 instead image

I am sorry if this is a silly question, how we could get 96 entries if we only have 51 coordinates of join? Is there a way to make it have 96 entries. Thanks