Skip to content

Conversation

@yl-1993
Copy link

@yl-1993 yl-1993 commented Oct 26, 2022

When use_pca=False, if the device of MANO layer is CPU, it will raise error on this line. This error is due to self.th_posedirs is on cpu device but th_pose_map is on cuda device.

The reason lies in the output value of batch_rotprojs, th_pose_map, is always on GPU. Because inside this function, it always converts the output to GPU. After this PR, the output value will remain on its original device after batch_rotprojs.

In addition, the torch.svd() is deprecated in favor of torch.linalg.svd(), which follows the same convention as np.linalg.svd to output (U, S, V_T).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant