Exemple #1
0
def transform_world_to_camera(poses_set, cams, ncams=4):
    """
    Project 3d poses from world coordinate to camera coordinate system
    Args
      poses_set: dictionary with 3d poses
      cams: dictionary with cameras
      ncams: number of cameras per subject
    Return:
      t3d_camera: dictionary with 3d poses in camera coordinate
    """
    t3d_camera = {}
    for t3dk in sorted(poses_set.keys()):

        subj, action, seqname = t3dk
        #      if t3dk not in poses_set:
        #          logging.info('debug')
        t3d_world = poses_set[t3dk]

        for c in range(ncams):
            R, T, f, c, k, p, name = cams[(subj, c + 1)]
            camera_coord = cameras.world_to_camera_frame(
                np.reshape(t3d_world, [-1, 3]), R, T)
            camera_coord = np.reshape(camera_coord, [-1, len(H36M_NAMES) * 3])

            sname = seqname[:-3] + "." + name + ".h5"  # e.g.: Waiting 1.58860488.h5
            t3d_camera[(subj, action, sname)] = camera_coord

    return t3d_camera
Exemple #2
0
def transform_world_to_camera(poses, cams):
    """
    Project 3d poses from world coordinate to camera coordinate system
    return: list of 3D poses in camera coordinate systems
    """
    p_3d_cam = []
    for cam in cams:
        R, T, f, c, k, p, name = cam
        camera_coord = cameras.world_to_camera_frame(
            np.reshape(poses, [-1, 3]), R, T)
        camera_coord = np.reshape(camera_coord, [-1, len(H36M_NAMES) * 3])
        p_3d_cam.append(camera_coord)
    return p_3d_cam