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

Discrepancy between AMASS sequence Lengths and Indices in humanml_index.csv #56

Open
vadeli opened this issue Feb 7, 2024 · 7 comments

Comments

@vadeli
Copy link

vadeli commented Feb 7, 2024

I ran into an issue with humanml.py when processing samples like CMU/80/80_63_poses.npy. It seems that the start and end indices in humanml_index.csv don't match the length of the sequence. For instance, CMU/80/80_63_poses.npy has 569 frames, but in humanml.py, there's a line:
pose = pose[int(start_frame*1.5):int(end_frame*1.5)]
And in humanml_index.csv, there's an entry like this:
./pose_data/CMU/80/80_63_poses.npy,516,716,000004.npy
This results in an empty pose. I'm wondering why the start and end indices in the CSV file aren't consistent with the length of the AMASS sequences.
Thanks

@luomingshuang
Copy link

Yes, I also meet this problem. I think it is an error.

@sohananisetty
Copy link

it might be due to the fact that the original humanml dataset (and I guess the csv) was in 20fps but this dataset is in 30fps—thats where the 1.5 factor comes in.

@luomingshuang
Copy link

The mocap_framerate in SMPL_HG is 60, while the mocap_frame_rate in SMPL_XG is 120.

@sohananisetty
Copy link

I meant I think they are using the original csv file (in the original humanml dataset) which had start and end durations according to 20fps.

@LinghaoChan
Copy link
Collaborator

I ran into an issue with humanml.py when processing samples like CMU/80/80_63_poses.npy. It seems that the start and end indices in humanml_index.csv don't match the length of the sequence. For instance, CMU/80/80_63_poses.npy has 569 frames, but in humanml.py, there's a line: pose = pose[int(start_frame*1.5):int(end_frame*1.5)] And in humanml_index.csv, there's an entry like this: ./pose_data/CMU/80/80_63_poses.npy,516,716,000004.npy This results in an empty pose. I'm wondering why the start and end indices in the CSV file aren't consistent with the length of the AMASS sequences. Thanks

@vadeli @sohananisetty @luomingshuang The issue comes from the inconsistency of SMPL-H and SMPL-X annotation in AMASS. The AMASS author team seems not to have replied to it yet. Plz refer to the issue and another issue.

@luomingshuang
Copy link

luomingshuang commented Feb 21, 2024

thanks for your reply. Another question is about the frame-level annotations in humanml. The released frame-level annotations
texts/body_texts/humanml and texts/hand_texts/humanml have some issues. For example, the number of frames in motion-x/texts/body_texts/humanml/000000.json is 97 (0-96). But the number of frames in motion_data/smplx_322/humanml/000000.npy is 146 (based on frame rate=120 and ex_fps=30). So I want to know how to match these two files. Or it still should be modified due to the inconsistent frame rate?
Hope your reply. Thanks.

@luomingshuang
Copy link

luomingshuang commented Feb 21, 2024

So can the generated humanml based on humanml_index.csv and amass/smpl-xg still be used normally? (even humanml_index.csv doesn't match well)

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

4 participants