uhlmanngroup / muMatch

Pipeline for putting surface meshes into correspondence
BSD 3-Clause "New" or "Revised" License
23 stars 4 forks source link

using muMatch to find correspondence points in different type of mesh models #2

Open ttsesm opened 2 years ago

ttsesm commented 2 years ago

Hi,

I would like to ask whether the muMatch approach could be used to find correspondence points between two meshes that snap together and not overlapping. For example I have the following two meshes: image Now I would like to find the correspondent matched points on the sides that the two meshes snap together. Would that be possible?

I've tried to adjust the code to run it on my sample meshes and see what the output is but then I've encountered the following issue:

------------------------------------------------------------
Resampling meshes
------------------------------------------------------------

100%|██████████| 2/2 [00:07<00:00,  3.62s/it]

------------------------------------------------------------
Calculating geodesic matrices
------------------------------------------------------------

100%|██████████| 2/2 [00:05<00:00,  2.68s/it]

------------------------------------------------------------
Calculating Laplacian eigendecomposition
------------------------------------------------------------

100%|██████████| 2/2 [05:08<00:00, 154.24s/it]
  0%|          | 0/2 [00:00<?, ?it/s]
------------------------------------------------------------
Calculating signature functions
------------------------------------------------------------

/home/ttsesm/Development/muMatch/micro_match/preprocessing/feature_descriptors.py:37: RuntimeWarning: invalid value encountered in log
  dE = util.differenceMatrix(eps, np.log(evals))
100%|██████████| 2/2 [00:27<00:00, 13.95s/it]

Preprocessing complete.

Epoch 1, Loss: nan
Epoch 2, Loss: nan
Epoch 3, Loss: nan
Epoch 4, Loss: nan
Epoch 5, Loss: nan
Epoch 6, Loss: nan
Epoch 7, Loss: nan
Epoch 8, Loss: nan
Epoch 9, Loss: nan
Epoch 10, Loss: nan
Traceback (most recent call last):
  File "/home/ttsesm/.conda/envs/mumatch-clean/lib/python3.8/site-packages/tensorflow/python/training/py_checkpoint_reader.py", line 96, in NewCheckpointReader
    return CheckpointReader(compat.as_bytes(filepattern))
RuntimeError: Unsuccessful TensorSliceReader constructor: Failed to find any matching files for /home/ttsesm/Development/muMatch/micro_match/preprocessing/deep_functional_maps/checkpoints/Presius_dataset

Thanks.

ttsesm commented 2 years ago

@jjk01 any hints for the issue above?

jjk01 commented 1 year ago

Hello, sorry for the very late reply to this. I'm afraid that this algorithm is not able to solve your problem (it is for finding a match between two similar meshes rather than being able to align two halves of the same mesh).