Let an input shape \(\mathcal{S}\), we wish to find the correspondance between this shape and a template shape \(\mathcal{T}\).
We do it using functional map. A functional map is a linear map between the function space \(\mathcal{S} \to \mathbb{R}\) and \(\mathcal{T} \to \mathbb{R}\).
Let \(\Phi_\mathcal{S} \in \mathbb{R}^{n \times n_S}\), \(\Phi_\mathcal{T} \in \mathbb{R}^{n \times n_T}\), the Laplace eigenvectors of both shapes. The functional map can be represented as a matrix \(C\) taking coefficient in \(S\) basis to the ones in \(T\) basis.
Functional map work by matching features in the eigenbasis, but often fails because of underlying symmetry
Suppose now we have a shape diffusion model (here it is in PCA coefficient space). Can we regularize those results with diffusion models?
;
We add a new term to the loss we want to minimize. Given the transferred vertices \(X_{\mathcal{S} \to \mathcal{T}}\), we compute the point correspondance in the spatial coordinates (+normals, to avoid erros when parts are gluing to each other). We then extract a functional map based on this correspondance, \(C_{\text{spatial}}\), and minimize:
\[ \mathcal{L}_{proper} = || C - C_{\text{spatial}}||^2 \]
We also force the PCA reconstruction to be close to the converted vertices.
\[ \mathcal{L}_{res} = ||\text{Rec}(X_{PCA}) - X_{S \to T} ||² \]
Finally, we encourage the matrix to be orthogonal (~ area preserving map) via
\[ \mathcal{L}_{ortho}= || CC^T - I||^2 \]
The full loss optimized is:
\[ \mathcal{L}_{SDS} + \mathcal{L}_{proper} + \mathcal{L}_{res} + 0.1 * \mathcal{L}_{ortho} \]
;
From left to right: Reconstruction from PCA coefficients, Transferred vertices, texture map
From left to right: Reconstruction from PCA coefficients, Transferred vertices, texture map
From left to right: Reconstruction from PCA coefficients, Transferred vertices, texture map
From left to right: Reconstruction from PCA coefficients, Transferred vertices, texture map
Theoretical investigations
Quantitative evaluation?
Different application?
Different dataset?
We transfer the coordinates by convert the matrix \(C_{S \to T}\) to a point to point map \(\Pi_{S \to T}\).
\[ F(X_S, C) = \Pi_{S \to T}^C X_S, \] where \[ \Pi_{S \to T}^C (p, q) = \frac{\exp(-\delta_{pq}*\alpha)}{\sum_q {\exp(-\delta_{pq}*\alpha)}}, \]
with \(\delta_{pq} = ||\Phi_T(q) - C\Phi_S(p)||²\)