some questions about transform function, especial batch_orth_proj
batch_orth_proj(j3d_preds, cam_preds) as i understand, j3d_preds is world coords,the reason is cv2. solvePnPRansac to get world translate vec, cam_preds is the camara info of Camera space from other closed issue, from convert_cam_to_3d_trans2() we can know the pj3d is [-1, -1](when mode="2d"), need View transform . but cam_preds =(s, tx, ty), and in function convert_cam_to_3d_trans, depth, dx, dy = 1.0 / s, tx / s, ty / s which is trans3d, and is outputs['cam_trans'], although it can replace by trans caculate from cv2. solvePnPRansac.why depth, dx, dy is trans(transform by convert_cam_to_3d_trans as input cam from output of romp), and batch_orth_proj(j3d_preds, cam_preds, mode="2d") can do projection transform?
- what the means of cam_preds from romp
- function batch_orth_proj in poset_parser.py is Camera transform and Orth Projection transform? or its meanning
- convert_cam_to_3d_trans can transform romp's cam to tranlate vec as world trans vec? or its meanning
- thx.
@foocker , really good question! Sorry for the late reply.
-
The cam_preds represent the position of detected people on the image plane. cam - (s, x, y). s is the scale value of person in the image. Larger the s is, closer the person would be to the camera. x is the 2D translation on image plane in x axis. x, y are within (-1, 1), equals to the left/right and up/down boudary of the image. x=0, y=0 represent the center of the image.
-
batch_orth_proj performs the Orthogonal Projection.
-
convert_cam_to_3d_trans is just a simple convertion from image plane to a predined camera space.