una-dinosauria/human-motion-prediction

Reading Input File

amoghadishesha opened this issue · 1 comments

Hey, I am trying to recreate the algorithm from scratch and for this, I need to read the Human3.6M dataset. Opening the same just gives me a long text file with no information as to what point corresponds to what and also how I am supposed to use it. Could you please let me know what the input and output is for your rnn ?

Hi @amoghadishesha!

From #15:

We take the data as pre-processed by Jain et al in their CVPR'16 paper "Structural RNN" (that's why the link is from stanford.edu: http://www.cs.stanford.edu/people/ashesh/h3.6m.zip).

Unfortunately, I don't think the authors made their pre-processing code available, but I believe they simply converted the H3.6M dataset to exponential map, and are making sure that every joint is represented by 3 numbers -- some joints never move (eg, you can't move your knee sideways), so some dimensions end up being constants, which are removed when you get rid of the dimensions that have a very small standard deviation. This is what we do in our code.

If you have never worked with joint angles before, looking at the visualization code might help: https://github.com/una-dinosauria/human-motion-prediction/blob/master/src/viz.py

In short, each angle corresponds to the degrees of freedom of a joint, and they are all usually expressed in the coordinate frame of the parent joint (eg, the rotation of your forearm is relative to the rotation of your elbow). Does that help?