vchoutas / smplify-x

Expressive Body Capture: 3D Hands, Face, and Body from a Single Image
https://smpl-x.is.tue.mpg.de/
Other
1.73k stars 335 forks source link

RuntimeError: after reduction step 1: cudaErrorInvalidDevice: invalid device ordinal #165

Open aszxnm opened 2 years ago

aszxnm commented 2 years ago

Thanks for your great work! But i meet a problem. Processing: ./data/images/05_img.jpg /media/perfectworld/C4F286ACF286A272/project/smplify-x/smplifyx/optimizers/lbfgsls.py:238: UserWarning: This overload of add is deprecated: add(Number alpha, Tensor other) Consider using one of the following signatures instead: add(Tensor other, , Number alpha) (Triggered internally at /pytorch/torch/csrc/utils/python_argparser.cpp:1005.) p.data.add(step_size, update[offset:offset + numel].view_as(p.data)) Camera initialization done after 0.9836 Camera initialization final loss 2933.3396 Stage 000 done after 0.6935 seconds
Stage 001 done after 0.8133 seconds
Stage 002 done after 0.9066 seconds
Stage: 60%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 3/5 [00:02<00:01, 1.23it/s] Orientation: 0%| | 0/1 [00:02<?, ?it/s] Traceback (most recent call last): File "smplifyx/main.py", line 272, in main(args) File "smplifyx/main.py", line 262, in main args) File "/media/perfectworld/C4F286ACF286A272/project/smplify-x/smplifyx/fit_single_frame.py", line 444, in fit_single_frame use_vposer=use_vposer) File "/media/perfectworld/C4F286ACF286A272/project/smplify-x/smplifyx/fitting.py", line 175, in run_fitting loss = optimizer.step(closure) File "/home/perfectworld/anaconda3/envs/smplify-x/lib/python3.7/site-packages/torch/optim/optimizer.py", line 89, in wrapper return func(
args, kwargs) File "/media/perfectworld/C4F286ACF286A272/project/smplify-x/smplifyx/optimizers/lbfgs_ls.py", line 280, in step orig_loss = closure() File "/media/perfectworld/C4F286ACF286A272/project/smplify-x/smplifyx/fitting.py", line 249, in fitting_func kwargs) File "/home/perfectworld/anaconda3/envs/smplify-x/lib/python3.7/site-packages/torch/nn/modules/module.py", line 889, in _call_impl result = self.forward(*input, kwargs) File "/media/perfectworld/C4F286ACF286A272/project/smplify-x/smplifyx/fitting.py", line 430, in forward collision_idxs = self.search_tree(triangles) File "/home/perfectworld/anaconda3/envs/smplify-x/lib/python3.7/site-packages/torch/nn/modules/module.py", line 889, in _call_impl result = self.forward(*input, *kwargs) File "/home/perfectworld/anaconda3/envs/smplify-x/lib/python3.7/site-packages/mesh_intersection-0.1.0-py3.7-linux-x86_64.egg/mesh_intersection/bvh_search_tree.py", line 56, in forward return BVHFunction.apply(triangles) File "/home/perfectworld/anaconda3/envs/smplify-x/lib/python3.7/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context return func(args, kwargs) File "/home/perfectworld/anaconda3/envs/smplify-x/lib/python3.7/site-packages/mesh_intersection-0.1.0-py3.7-linux-x86_64.egg/mesh_intersection/bvh_search_tree.py", line 39, in forward max_collisions=BVHFunction.max_collisions) RuntimeError: after reduction step 1: cudaErrorInvalidDevice: invalid device ordinal

It seems that the cuda version is mismatch with the program, but RTX3090 only supports CUDA11.x. How can i solve it?