ranahanocka / MeshCNN

Convolutional Neural Network for 3D meshes in PyTorch
MIT License
1.56k stars 313 forks source link

What's the reason of this error #125

Open Xelawk opened 3 years ago

Xelawk commented 3 years ago
#training meshes = 1004
---------- Network initialized -------------
[Network] Total number of parameters : 1.321 M
-----------------------------------------------
Traceback (most recent call last):
  File "/Dev/xelawk_dev/MeshCNN/train.py", line 30, in <module>
    model.optimize_parameters()
  File "/Dev/xelawk_dev/MeshCNN/models/mesh_classifier.py", line 64, in optimize_parameters
    out = self.forward()
  File "/Dev/xelawk_dev/MeshCNN/models/mesh_classifier.py", line 55, in forward
    out = self.net(self.edge_features, self.mesh)
  File "/home/anaconda3/envs/dev/lib/python3.6/site-packages/torch/nn/modules/module.py", line 532, in __call__
    result = self.forward(*input, **kwargs)
  File "/home/anaconda3/envs/dev/lib/python3.6/site-packages/torch/nn/parallel/data_parallel.py", line 150, in forward
    return self.module(*inputs[0], **kwargs[0])
  File "/home/anaconda3/envs/dev/lib/python3.6/site-packages/torch/nn/modules/module.py", line 532, in __call__
    result = self.forward(*input, **kwargs)
  File "/Dev/xelawk_dev/MeshCNN/models/networks.py", line 159, in forward
    x = getattr(self, 'pool{}'.format(i))(x, mesh)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 21, in __call__
    return self.forward(fe, meshes)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 34, in forward
    self.__pool_main(mesh_index)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 50, in __pool_main
    value, edge_id = heappop(queue)
IndexError: index out of range
Xelawk commented 3 years ago

I tried to change the pool_res to [10000, 5000, 1200, 1000], then this error occured

#training meshes = 1004
---------- Network initialized -------------
[Network] Total number of parameters : 1.321 M
-----------------------------------------------
Traceback (most recent call last):
  File "/Dev/xelawk_dev/MeshCNN/train.py", line 30, in <module>
    model.optimize_parameters()
  File "/Dev/xelawk_dev/MeshCNN/models/mesh_classifier.py", line 64, in optimize_parameters
    out = self.forward()
  File "/Dev/xelawk_dev/MeshCNN/models/mesh_classifier.py", line 55, in forward
    out = self.net(self.edge_features, self.mesh)
  File "/home/anaconda3/envs/dev/lib/python3.6/site-packages/torch/nn/modules/module.py", line 532, in __call__
    result = self.forward(*input, **kwargs)
  File "/home/anaconda3/envs/dev/lib/python3.6/site-packages/torch/nn/parallel/data_parallel.py", line 150, in forward
    return self.module(*inputs[0], **kwargs[0])
  File "/home/anaconda3/envs/dev/lib/python3.6/site-packages/torch/nn/modules/module.py", line 532, in __call__
    result = self.forward(*input, **kwargs)
  File "/Dev/xelawk_dev/MeshCNN/models/networks.py", line 159, in forward
    x = getattr(self, 'pool{}'.format(i))(x, mesh)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 21, in __call__
    return self.forward(fe, meshes)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 34, in forward
    self.__pool_main(mesh_index)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 53, in __pool_main
    self.__pool_edge(mesh, edge_id, mask, edge_groups)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 61, in __pool_edge
    elif self.__clean_side(mesh, edge_id, mask, edge_groups, 0)\
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 79, in __clean_side
    self.__remove_triplete(mesh, mask, edge_groups, invalid_edges)
  File "/Dev/xelawk_dev/MeshCNN/models/layers/mesh_pool.py", line 181, in __remove_triplete
    assert(len(vertex) == 1)
AssertionError