Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Questions about the Euler angles of the trinity dataset. #18

Open
PKUFlyingPig opened this issue Nov 21, 2020 · 4 comments
Open

Questions about the Euler angles of the trinity dataset. #18

PKUFlyingPig opened this issue Nov 21, 2020 · 4 comments

Comments

@PKUFlyingPig
Copy link

I print out the rightforehand rotation information of the trinity dataset bvh file, and found some really confused phenomenon. As the following image shows, when the X rotation reaches 90 degrees, the Z rotation and Y rotation will change suddenly from -180 or 180 to nearly 0. This looks quite like the so called "gimbal lock".
image
But will this kind of sudden change in data affect the performance of your model? I found my full-body model will output some samples will hands rotating unnaturally. But your full-body samples look quite well. Do you ever encounter this problem? If so, can you offer some advice?

@ghenter
Copy link
Collaborator

ghenter commented Nov 21, 2020

I am not very experienced with 3D, so my experience will not go far here. But what do the avatar poses look like for the corresponding frames? I'm thinking that, if the poses and motion look natural, it is likely a data parameterisation/representation issue; if they do not, it's likely an issue with the motion capture itself.

@simonalexanderson
Copy link
Owner

simonalexanderson commented Nov 23, 2020

Euler angles are discontinuous by nature, so we convert them to exponential maps (in the preprocessing stage) and back (after synthesis). These should be continuous and reside in your 'data/GENEA/processed/features_20fps/joint_rot' folder. If you want to double-check, you can plot them by using the code in the last section of the following script:

https://github.com/simonalexanderson/PyMO/blob/master/demos/bvh2features.ipynb

@PKUFlyingPig
Copy link
Author

Thank you for your insightful advice. I found another problem in the preprocessing.py file. When I want to extract the joint angles for the full body, it will call the RootTransformer's transform method and use the specified "pos_rot_deltas" method. But the supplied preprocessing.py doesn't support this method. As your paper said, the smoothing step for the root rotation angles is quite important, so could you please check if the preprocessing.py is an old version? Looking forward to your advice, thank you in advance.

@simonalexanderson
Copy link
Owner

Hi again, the 'pos_rot_deltas' are now included in the pymo scipts.

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

No branches or pull requests

3 participants