EricGuo5513 / momask-codes

Official implementation of "MoMask: Generative Masked Modeling of 3D Human Motions (CVPR2024)"
https://ericguo5513.github.io/momask/
MIT License
689 stars 56 forks source link

Why there are 2 different mean and variance? #37

Closed exitudio closed 2 months ago

exitudio commented 2 months ago

Hi, thank you for opensource your amazaing work. Why there are 2 different mean and variance from training and testing? Doesn't that cause the discrepancy between training and testing?

  1. Training https://github.com/EricGuo5513/momask-codes/blob/d4d34120ea01e3fda09944c3c030e8befe8c19e2/train_t2m_transformer.py#L134-L135

  2. Testing https://github.com/EricGuo5513/momask-codes/blob/d4d34120ea01e3fda09944c3c030e8befe8c19e2/motion_loaders/dataset_motion_loader.py#L15-L16

Murrol commented 2 months ago

Hi, thanks for you interests and careful review of our codes.

We strictly follow the benchmark setting in HumanML3D. Consequently, these two distinct metafiles are numerically identical, sourced directly from the raw dataset's available metadata (Mean.npy and Std.npy) along with the associated weights (opt.feat_bias).

We recognize the importance of using the training mean and std to de-normalize the predicted motion and then re-normalize it with the evaluator's mean and std for a more reliable evaluation process. While they are the same in the basic benchmark setting.

exitudio commented 2 months ago

Thank you for your clarification.