pyFM.spectral.convert.mesh_FM_to_p2p_precise

pyFM.spectral.convert.mesh_FM_to_p2p_precise(FM_12, mesh1, mesh2, precompute_dmin=True, use_adj=True, batch_size=None, n_jobs=None, verbose=False)

Compute a precise pointwise map between two meshes.

For each vertex in mesh2, gives barycentric coordinates of its image on mesh1. See [1] for details on notations.

[1] - “Deblurring and Denoising of Maps between Shapes”, by Danielle Ezuz and Mirela Ben-Chen.

Parameters:
  • FM_12 ((k2, k1) np.ndarray) – Functional map from mesh1 to mesh2.

  • mesh1 (TriMesh) – Source mesh (for the functional map) with n1 vertices.

  • mesh2 (TriMesh) – Target mesh (for the functional map) with n2 vertices.

  • precompute_dmin (bool, optional) – Whether to precompute all the values of delta_min. Faster but heavier in memory.

  • use_adj (bool, optional) – Use the adjoint method.

  • batch_size (int, optional) – If precompute_dmin is False, projects batches of points on the surface.

  • n_jobs (int, optional) – Number of parallel jobs. None (default) decides automatically.

  • verbose (bool, optional) – Whether to display progress information.

Returns:

P_21 – (n2, n1) precise point to point map from mesh2 to mesh1.

Return type:

scipy.sparse.csr_matrix