When try to run a piece of code from neural_renderer, it report the following error.
The code is based on Cuda 9.2, and I have to upgrade to Cuda 11.1 in order to support latest GPU,
chainer upgrade from version 4.5 to 7.8
cupy upgrade from version 4.2 to 8.1
How to fix this error?
self.faces = chainer.Variable(chainer.cuda.to_gpu(faces, self.cuda_device))
self.vertices = chainer.Variable(chainer.cuda.to_gpu(vertices, self.cuda_device))
self.masks, self.face_index = self.renderer.render_silhouettes(self.vertices, self.faces)
def render_silhouettes(self, vertices, faces, K=None, R=None, t=None, dist_coeffs=None, orig_size=None):
# fill back
if self.fill_back:
faces = torch.cat((faces, faces[:, :, list(reversed(range(faces.shape[-1])))]), dim=1)
File "/media/e/HPBTT/nnutils/nmr.py", line 52, in forward_mask
self.masks, self.face_index = self.renderer.render_silhouettes(self.vertices, self.faces)
File "/home/hx/hp/lib/python3.6/site-packages/neural_renderer/renderer.py", line 86, in render_silhouettes
faces = torch.cat((faces, faces[:, :, list(reversed(range(faces.shape[-1])))]), dim=1)
TypeError: expected Tensor as element 0 in argument 0, but got Variable