RuntimeError: Subtraction, the `-` operator, with a bool tensor is not supported
I am using this github repo: https://github.com/vchoutas/smplify-x and I am running a script. I get the following error. How can I fix it? I understand I might have to convert - to ~ however not sure where it exactly is. I don't want to downgrade my PyTorch.
$ cat fit.sh
export CUDA_VISIBLE_DEVICES=0
python smplifyx/main.py --config cfg_files/fit_smplx.yaml --data_folder ../../data/smplify-x/DATA_FOLDER --output_folder ../../data/smplify-x/RESULTS --visualize=&quot;False&quot; --model_folder ../../data/smplify-x/models_smplx_v1_1/models/smplx/SMPLX_NEUTRAL.npz --vposer_ckpt ../../data/smplify-x/vposer_v1_0 --part_segm_fn ../../data/smplify-x/smplx_parts_segm.pkl

--------------------------------------

(smplifyx) mona@ubuntu:~/mona/code/smplify-x$ ./fit.sh 
Processing: ../../data/smplify-x/DATA_FOLDER/images/woman_bike.jpg
Found Trained Model: ../../data/smplify-x/vposer_v1_0/snapshots/TR00_E096.pt
Traceback (most recent call last):
  File &quot;smplifyx/main.py&quot;, line 272, in &lt;module&gt;
    main(**args)
  File &quot;smplifyx/main.py&quot;, line 262, in main
    **args)
  File &quot;~/mona/code/smplify-x/smplifyx/fit_single_frame.py&quot;, line 274, in fit_single_frame
    focal_length=focal_length, dtype=dtype)
  File &quot;/home/mona/venv/smplifyx/lib/python3.6/site-packages/torch/autograd/grad_mode.py&quot;, line 26, in decorate_context
    return func(*args, **kwargs)
  File &quot;~/mona/code/smplify-x/smplifyx/fitting.py&quot;, line 75, in guess_init
    pose_embedding, output_type='aa').view(1, -1) if use_vposer else None
  File &quot;../../data/smplify-x/vposer_v1_0/vposer_smpl.py&quot;, line 114, in decode
    if output_type == 'aa': return VPoser.matrot2aa(Xout)
  File &quot;../../data/smplify-x/vposer_v1_0/vposer_smpl.py&quot;, line 152, in matrot2aa
    pose = tgm.rotation_matrix_to_angle_axis(homogen_matrot).view(batch_size, 1, -1, 3).contiguous()
  File &quot;/home/mona/venv/smplifyx/lib/python3.6/site-packages/torchgeometry/core/conversions.py&quot;, line 233, in rotation_matrix_to_angle_axis
    quaternion = rotation_matrix_to_quaternion(rotation_matrix)
  File &quot;/home/mona/venv/smplifyx/lib/python3.6/site-packages/torchgeometry/core/conversions.py&quot;, line 302, in rotation_matrix_to_quaternion
    mask_c1 = mask_d2 * (1 - mask_d0_d1)
  File &quot;/home/mona/venv/smplifyx/lib/python3.6/site-packages/torch/tensor.py&quot;, line 511, in __rsub__
    return _C._VariableFunctions.rsub(self, other)
RuntimeError: Subtraction, the `-` operator, with a bool tensor is not supported. If you are trying to invert a mask, use the `~` or `logical_not()` operator instead.

I also have:
(smplifyx) mona@ubuntu:~/mona/code/smplify-x$ python
Python 3.6.9 (default, Oct  8 2020, 12:12:24) 
[GCC 8.4.0] on linux
Type &quot;help&quot;, &quot;copyright&quot;, &quot;credits&quot; or &quot;license&quot; for more information.
&gt;&gt;&gt; import torch
&gt;&gt;&gt; torch.__version__
'1.7.1'
&gt;&gt;&gt; import torchgeometry
&gt;&gt;&gt; torchgeometry.__version__
'0.1.2'


$ vi /home/mona/venv/smplifyx/lib/python3.6/site-packages/torchgeometry/core/conversions.py

and comment and add lines similarly for mask conversion compatibility in PyTorch 1.7.1
mask_c0 = mask_d2 * mask_d0_d1
#mask_c1 = mask_d2 * (1 - mask_d0_d1)
mask_c1 = mask_d2 * ~(mask_d0_d1)
#mask_c2 = (1 - mask_d2) * mask_d0_nd1
mask_c2 = ~(mask_d2) * mask_d0_nd1
#mask_c3 = (1 - mask_d2) * (1 - mask_d0_nd1)

