-
Notifications
You must be signed in to change notification settings - Fork 6
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
Why doesn't my smplx.pkl file work? #5
Comments
I found the 'body_pose' part of pkl you provided had more parameters. |
Hi! First please make shure that you use SMPL-X model for producing your .pkl with the same parameters as in dataloader: Line 20 in 7368958
If it doesn't help please provide some additional information. Like the line on witch you get this error. And if it's possible the example of your .pkl |
Hi David! I try to follow your parameters, but it doesn't work. These are all preprocessed data I used, and I also add a pkl file produced by me from your dataset. Here is the google drive link. |
I have the same problem. |
Moreover, when I use pickle check the pkl file, there is a parameter which is 'ltrb': (28, 65, 1046, 1083) misses too. |
你好,这个问题我已经有解决方式了,fit_single_frame.py中把result['body_pose'] = pose_embedding.detach().cpu().numpy()改成 result['body_pose'] = (vposer.decode(pose_embedding).get('pose_body').detach().cpu().numpy()).reshape((1,63)),就可以得到正确的结果。 dict中 如果没有'ltrb': (28, 65, 1046, 1083),代码也能正常运行。 |
你好,我用修改过的代码得到了如下报错: Traceback (most recent call last): |
我也试图按你的办法这样进行修改,
但是vposer解码出来的vp没有pose_body这个东西,直接报错了。 |
你能把dict发给我看一下吗?看下字典里是哪些元素 |
你好,你这里代码写错了,pose_embedding是tensor,vposer.decode(pose_embedding)得到字典,然后才能用get方式得到这个字典里的key 'pose_body' 里的值。 |
我copy您的代码还是报错 当我在fit_single_frame前print了vposer.decode(pose_embedding), |
step 1human_body_prior工程不要用cvpr19分支去安装编译,git checkout到master分支去安装编译 step 2 - changeold versionfrom human_body_prior.tools.model_loader import load_vposernew versionfrom human_body_prior.tools.model_loader import load_model step 3 - changeold versionvposer, _ = load_vposer(vposer_ckpt, vp_model='snapshot')new versionvposer, _ = load_model(vposer_ckpt, model_code=VPoser, remove_words_in_model_weights='vp_model.', disable_grad=True). step 4官网去下载新的vposer的ckpt文件,替换原来的pt文件,放到相应文件夹下。 |
Hi @wf1024966 I tried to follow your steps but it gives the following error: Traceback (most recent call last):
File "smplifyx/main.py", line 274, in <module>
main(**args)
File "smplifyx/main.py", line 247, in main
fit_single_frame(img, keypoints[[person_id]],
File "/home/ma982513/Projects/smplify-x/smplifyx/fit_single_frame.py", line 274, in fit_single_frame
init_t = fitting.guess_init(body_model, gt_joints, edge_indices,
File "/home/ma982513/.conda/envs/smplifyx/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 26, in decorate_context
return func(*args, **kwargs)
File "/home/ma982513/Projects/smplify-x/smplifyx/fitting.py", line 74, in guess_init
body_pose = vposer.decode(
TypeError: decode() got an unexpected keyword argument 'output_type' |
@Dragonkingpan @wf1024966 @Ginjing-Yuan anyone of you getting strange output from smplifyx like this : vchoutas/smplify-x#210 |
I see there was quite a long discussion here. I took a new machine, ran the code on it, and wrote down all the steps I took to fix it in this document: |
When I put my photo trained pkl file in DINAR, it reports:
RuntimeError: The size of tensor a (134) must match the size of tensor b (165) at non-singleton dimension 1.
If I change my pkl to random one of your pkls, the training will start. I suppose our pkl files may generate from different model. Which one are you using?
The text was updated successfully, but these errors were encountered: