import torch, os def keypoint_xyxyzz_to_xyzxyz(keypoints: torch.Tensor): """_summary_ Args: keypoints (torch.Tensor): ..., 51 """ res = torch.zeros_like(keypoints) num_points = keypoints.shape[-1] // 3 Z = keypoints[..., :2*num_points] V = keypoints[..., 2*num_points:] res[...,0::3] = Z[..., 0::2] res[...,1::3] = Z[..., 1::2] res[...,2::3] = V[...] return res def keypoint_xyzxyz_to_xyxyzz(keypoints: torch.Tensor): """_summary_ Args: keypoints (torch.Tensor): ..., 51 """ res = torch.zeros_like(keypoints) num_points = keypoints.shape[-1] // 3 res[...,0:2*num_points:2] = keypoints[..., 0::3] res[...,1:2*num_points:2] = keypoints[..., 1::3] res[...,2*num_points:] = keypoints[..., 2::3] return res