mks0601/Hand4Whole_RELEASE

How to calculate the global root (or camera) 3D translation?

Opened this issue · 4 comments

Hi.
I have two questions.

  1. There are only cam_trans in the output in demo.py. It's a little confused with focal length (with what unit), camera_3d_size(why you use this) in config.py file. How can I get the body's global root (or you can say camera) 3D translation in the real world with meter unit.
  2. I find that cam_param is the output of body_rotation_net and cam_trans is calculated by get_camera_trans function. Could you explain what they actually mean?

Please look at Fig.6 and Section 1 of the suppl. The 3D global translation d can be calculated from focal lengths in x- and y-axis (unit: pixel), A_real (xy area of real human. meter x meter), and A_image (xy area of human in the image. unit: pixel x pixel).
(x,y) of cam_param are directly used to get cam_trans, which means they are 3D global translation of (x,y).
Directly calculating z of cam_trans could be ambiguous. Hence, we define initial z of the 3D global translation and refine it following Fig. 5 of the paper. camera_3d_size is to calculate A_real.

Hi, @mks0601, which paper do you mean? I do not find related information in the supplementary of Hand4Whole.
image

Sorry I forgot to add link.
https://arxiv.org/abs/1907.11346

Okay, thank you very mucn.