xh38 / FusionDeformer

5 stars 1 forks source link

Where is the new_rhs.npz ? #2

Open wjy0501 opened 1 month ago

wjy0501 commented 1 month ago

I have encountered this problem:

Traceback (most recent call last): File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/MeshProcessor.py", line 168, in get_differential_operators self.load_differential_operators() File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/MeshProcessor.py", line 190, in load_differential_operators self.diff_ops.rhs = SparseMat.from_coo(load_npz(os.path.join(self.source_dir, 'new_rhs.npz')), ttype=torch.float64) File "/home/jingyiwu/anaconda3/envs/FusionDeformer/lib/python3.9/site-packages/scipy/sparse/_matrix_io.py", line 134, in load_npz with np.load(file, **PICKLE_KWARGS) as loaded: File "/home/jingyiwu/anaconda3/envs/FusionDeformer/lib/python3.9/site-packages/numpy/lib/_npyio_impl.py", line 455, in load fid = stack.enter_context(open(os.fspath(file), "rb")) FileNotFoundError: [Errno 2] No such file or directory: 'outputs/demo/final-test/bird-dragon/tmp/new_rhs.npz'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/jingyiwu/FusionDeformer/main.py", line 100, in main() File "/home/jingyiwu/FusionDeformer/main.py", line 93, in main loop_sds(cfg) File "/home/jingyiwu/FusionDeformer/loop_sds.py", line 188, in loop_sds jacobian_source.load() File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/SourceMesh.py", line 130, in load self.__init_from_mesh_data() File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/SourceMesh.py", line 70, in init_from_mesh_data self.mesh_processor.prepare_differential_operators_for_use(self.ttype) #call 1 File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/MeshProcessor.py", line 222, in prepare_differential_operators_for_use diff_ops = self.get_differential_operators() # call 1 File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/MeshProcessor.py", line 171, in get_differential_operators self.compute_differential_operators() File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/MeshProcessor.py", line 205, in compute_differential_operators poisson_sys_mat = poisson_system_matrices_from_mesh(V= self.vertices, F=self.faces, cpuonly=self.cpuonly) File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/PoissonSystem.py", line 415, in poisson_system_matrices_from_mesh grad = SparseMat.from_M(_convert_sparse_igl_grad_to_our_convention(grad), torch.float64) File "/home/jingyiwu/FusionDeformer/NeuralJacobianFields/PoissonSystem.py", line 261, in _convert_sparse_igl_grad_to_our_convention Ty[:, 0] -= Ty[0, 0] IndexError: index 0 is out of bounds for axis 0 with size 0 image

Why doesn't my training process have this temporary file ?

xh38 commented 1 month ago

It is not the missing new_rhs.npz that cause this error.

It is the _convert_sparse_igl_grad_to_our_convention function meets the problem "y[:, 0] -= Ty[0, 0] IndexError: index 0 is out of bounds for axis 0 with size 0".

maybe you should check you mesh or try another mesh instead.

this code can handle only one connected component.

wjy0501 commented 1 month ago

It is not the missing new_rhs.npz that cause this error.

It is the _convert_sparse_igl_grad_to_our_convention function meets the problem "y[:, 0] -= Ty[0, 0] IndexError: index 0 is out of bounds for axis 0 with size 0".

maybe you should check you mesh or try another mesh instead.

this code can handle only one connected component.

The mesh I am using is the obj file in the meshes directory of your code. I have tried many times and have encountered the same error.

xh38 commented 3 weeks ago

have you tried other meshes come with the code ?

xh38 commented 3 weeks ago

It is most likely something went wrong at line 389 grad = igl.grad(vertices, faces)