def compute_moments(pose_seq_input):
labs, poses = pose_seq_input.load_to_ram(True)
mask = np.zeros(np.shape(poses), dtype=np.bool)
print('Computing Masks...')
t = trange(len(pose_seq_input.train_keys), dynamic_ncols=True)
for k in t:
mask[k, :, :, :labs[k, 3]] = True
poses = np.transpose(poses, [1, 2, 3, 0])
mask = np.transpose(mask, [1, 2, 3, 0])
masked_pose = np.reshape(poses[mask], [pose_seq_input.pshape[0], pose_seq_input.pshape[1], -1])
del mask
del labs
del poses
print('Computing Moments...')
skel_mean = np.reshape(np.mean(masked_pose, axis=(0, 2)), [1, 1, 1, 3])
skel_std = np.reshape(np.std(masked_pose, axis=(0, 2)), [1, 1, 1, 3])
del masked_pose
print(skel_mean, skel_std)
save_arr(pose_seq_input, skel_mean, 'skel_mean')
save_arr(pose_seq_input, skel_std, 'skel_std')
评论列表
文章目录