olivia23333 / E3Gen

MIT License
55 stars 3 forks source link

FileNotFoundError: [Errno 2] No such file or directory: 'work_dirs/cache/thuman_train_wbg_inception_stylegan.pkl' #5

Open CHMimilanlan opened 1 day ago

CHMimilanlan commented 1 day ago

I only want to test the inference code, so I skip traning stage when I ran command

python test.py configs/ssdnerf_avatar_uncond_thuman_conv_16bit.py work_dirs/cache/iter_160000.pth --gpu-ids 0 1

I get following Error:

unexpected key in source state_dict: decoder.init_pcd, decoder.init_rot, decoder.face_mask, decoder.hands_mask, decoder.outside_mask, decoder.deformer.init_spdir, decoder.deformer.init_podir, decoder.deformer.init_faces, decoder.deformer.init_lbsw, decoder.deformer.tfs_inv_t, decoder.deformer.vs_template, decoder.deformer.smpl_faces, decoder.deformer.pose_offset_cano, decoder_ema.init_pcd, decoder_ema.init_rot, decoder_ema.face_mask, decoder_ema.hands_mask, decoder_ema.outside_mask, decoder_ema.deformer.init_spdir, decoder_ema.deformer.init_podir, decoder_ema.deformer.init_faces, decoder_ema.deformer.init_lbsw, decoder_ema.deformer.tfs_inv_t, decoder_ema.deformer.vs_template, decoder_ema.deformer.smpl_faces, decoder_ema.deformer.pose_offset_cano

missing keys in source state_dict: decoder.deformer.body_model_45.shapedirs, decoder.deformer.body_model_45.faces_tensor, decoder.deformer.body_model_45.v_template, decoder.deformer.body_model_45.J_regressor, decoder.deformer.body_model_45.posedirs, decoder.deformer.body_model_45.parents, decoder.deformer.body_model_45.lbs_weights, decoder.deformer.body_model_45.left_hand_mean, decoder.deformer.body_model_45.right_hand_mean, decoder.deformer.body_model_45.pose_mean, decoder.deformer.body_model_45.lmk_faces_idx, decoder.deformer.body_model_45.lmk_bary_coords, decoder.deformer.body_model_45.expr_dirs, decoder.deformer.body_model_45.vertex_joint_selector.extra_joints_idxs, decoder_ema.deformer.body_model_45.shapedirs, decoder_ema.deformer.body_model_45.faces_tensor, decoder_ema.deformer.body_model_45.v_template, decoder_ema.deformer.body_model_45.J_regressor, decoder_ema.deformer.body_model_45.posedirs, decoder_ema.deformer.body_model_45.parents, decoder_ema.deformer.body_model_45.lbs_weights, decoder_ema.deformer.body_model_45.left_hand_mean, decoder_ema.deformer.body_model_45.right_hand_mean, decoder_ema.deformer.body_model_45.pose_mean, decoder_ema.deformer.body_model_45.lmk_faces_idx, decoder_ema.deformer.body_model_45.lmk_bary_coords, decoder_ema.deformer.body_model_45.expr_dirs, decoder_ema.deformer.body_model_45.vertex_joint_selector.extra_joints_idxs

2024-10-31 18:10:35,886 - mmgen - INFO - Try to load Tero's Inception Model from 'work_dirs/cache/inception-2015-12-05.pt'. 2024-10-31 18:10:36,361 - mmgen - INFO - Load Tero's Inception Model successfully. Traceback (most recent call last): File "/data/xch/Avatar/3D/E3Gen/./tools/test.py", line 257, in main() File "/data/xch/Avatar/3D/E3Gen/./tools/test.py", line 202, in main metric.prepare() File "/data/xch/Avatar/3D/E3Gen/lib/core/evaluation/metrics.py", line 152, in prepare with open(self.inception_pkl, 'rb') as f: FileNotFoundError: [Errno 2] No such file or directory: 'work_dirs/cache/thuman_train_wbg_inception_stylegan.pkl' 2024-10-31 18:10:37,733 - mmgen - INFO - FID: Adopt Inception in StyleGAN style Traceback (most recent call last): File "/data/xch/Avatar/3D/E3Gen/./tools/test.py", line 257, in main() File "/data/xch/Avatar/3D/E3Gen/./tools/test.py", line 202, in main metric.prepare() File "/data/xch/Avatar/3D/E3Gen/lib/core/evaluation/metrics.py", line 152, in prepare with open(self.inception_pkl, 'rb') as f: FileNotFoundError: [Errno 2] No such file or directory: 'work_dirs/cache/thuman_train_wbg_inception_stylegan.pkl'

**My first question is: Is the "missing keys in source state_dict" matters ? The next question is: How I can get the file "work_dirs/cache/inception-2015-12-05.pt"?

I will be grateful for your timely response!**

olivia23333 commented 1 day ago
  1. For the first question: The warning comes from the self.register_buffer('xxx', xxx, persistent=False) in the code, which means don't save parameters. So these parameters will not be saved to the checkpoint and will be reloaded when running inference, which should not affect the final result.
  2. For the second question: See the data preparation part in the readme,
    # generate test cache, we use configs/ssdnerf_avatar_uncond_thuman_conv_16bit.py here
    conda deactivate
    conda activate e3gen
    CUDA_VISIBLE_DEVICES=0 python tools/inception_stat.py /PATH/TO/CONFIG

    After running this, you can get the thuman_train_wbg_inception_stylegan.pkl and the file work_dirs/cache/inception-2015-12-05.pt will also be download during the running of inception_stat.py.
    If you run into any issues, feel free to ask.