%================ FUNCTIONAL MAPS =============================
\section{Advances in the Functional Map Framework}
\label{sec:advances_in_the_functional_maps_framework}

We begin by giving an overview of the most important aspects of the functional map framework. Afterwards, we present recent advances in this framework, including both axiomatic and learning-based approaches.

\subsection{Functional Map Framework}
The functional map framework provides a compact representation for correspondences and has become very popular, with a large body of literature covering various aspects. We refer the reader to \cite{ovsjanikov2012fm-main, ovsjanikov2016fm-course} for more details, while offering a brief overview here for completeness and clarity.

Recall that \(\surfaceA\) is equipped with a set of basis functions \(\Phi^{\surfaceA} = \{ \phi_0^{\surfaceA}, \dots, \phi_{n}^{\surfaceA} \}\) and likewise \(\surfaceB\) is equipped with \(\Phi^{\surfaceB}\). A function \(f\)  on \(\surfaceA\) can be expressed in terms of the basis as a linear combination: \( f = \sum_i a_i \phi^{\surfaceA}_i \), with scalar coefficients \(a_i\). Therefore, \(f\) can be represented in the basis \(\Phi^{\surfaceA}\) as \(\mathbf{a} = (a_0, \dots, a_{n})^\top\). Further, assume \(\mathbf{b}\) is the representation of the \emph{corresponding} function \(g\) on \(\surfaceB\) in the basis \(\Phi^{\surfaceB}\). Then, for some \(\{c_{ij}\}\), it holds: 
%
\begin{align}
g  = \sum_j\sum_i a_i c_{ij}\phi_j^{\surfaceB}.
\end{align}
%
The matrix \(C\) with entries \(\{c_{ij}\}\) is the matrix representation of the functional map and it holds \(\mathbf{b} = C\mathbf{a}\).

The representation is flexible since the basis can be chosen freely. However, using an orthonormal basis simplifies computations. The representation can further be compactified, and thus made computationally more efficient, by working with a reduced set of \(k\) basis elements. For simplicity, usually the same \(k\) is chosen for both input surfaces. An important property of the basis should therefore be its \emph{compactness}: many natural functions on a shape should be well approximated using a small number of basis elements. Further, the basis should be \emph{stable}, meaning the basis functions on both surfaces should not differ drastically, and the function space spanned by the reduced set of eigenvectors should be nearly identical.

The most prevalent choice for the basis are the eigenvectors of the Laplace--Beltrami Operator (LBO). Analogous in spirit to the Fourier transform, the LBO eigenvectors oscillate more if they correspond to larger eigenvalues, see \Cref{fig:LBOeigenfunc}. Truncating eigenvectors with large corresponding eigenvalues removes high frequencies from a function, which can be regarded as a low-pass filter operating on the mapped functions. The eigenvectors are stable up to sign flip for near-isometries. In such scenarios, \(C\) is nearly diagonal and sparse, see Figure \ref{fig:FM-diag} \cite{ovsjanikov2012fm-main}. A more in depth overview on spectral bases can be found in \cite{cammarasana2021fm-survey}. 

\begin{figure}[htb]
  \centering
  \includegraphics[width=.95\linewidth]{fig/fm-LBO-basis-sign.png}
  \caption{\label{fig:LBOeigenfunc}
           The first eight eigenvectors of the LBO on two near-isometric shapes. They are invariant up to a sign flip. Further, the eigenvectors corresponding to larger eigenvalues (right) oscillate more than the eigenvectors of smaller eigenvalues (left). Taken from \cite{bensaid2023fm-piecewiseSmoothFunc}.}
\end{figure} 

\begin{figure}[htb]
  \centering
  \includegraphics[width=.75\linewidth]{fig/06-FMdiag.png}
  \caption{\label{fig:FM-diag}
           Depiction of the magnitude of the matrix entries of \(C\) using the LBO basis. For a near-isometric correspondence, \(C\) is close to diagonal. Taken from \cite{ovsjanikov2012fm-main}.}
\end{figure}

Using the matrix representation, shape matching can be formulated as a system of linear equations with linear constraints. A simple approach is to solve~\cite{ovsjanikov2016fm-course}:
\begin{align}
C = \arg\min_X\,\,||XA-B||^2 + \alpha\ E_\text{reg}(X),
\end{align}
where \(A\) and \(B\) are \emph{function preservation} constraints represented in a chosen basis, and \(\alpha\) is the weighting factor for the map regularization term \(E_\text{reg}\), \eg, promoting commutativity with the LBO.

For function preservation constraints, a popular choice are descriptor functions corresponding to surface properties, such as the Gaussian curvature, or shape signature functions (see \Cref{sec:eval}: Feature Matching).

In the following, we discuss approaches that explore various aspects of the functional map framework and its integration in machine learning methods.

\begin{comment}
%
%\subsection{Surveys on Basis Functions}
%\begin{itemize}
%    \item surveys on different basis functions/descriptors, they give a more in-depth overview and comparison
%    \item Localised and shape-aware functions for spectral geometry processing and shape analysis: A survey \& perspectives \cite {cammarasana2021fm-survey}
%    \item Spectral Descriptors for 3D Deformable Shape Matching: A Comparative Survey \cite{liu2024fm-survey} -> survey on descriptors
%\end{itemize}
\end{comment}
%%%%%%%%%% own chapter for basis functions
\subsection{Basis Functions} \label{sec:fm-basis}
While the eigenvectors of the LBO are a popular choice for basis vectors, other operators have been proposed. For a summary of the methods presented in this part, see \Cref{tab:fm-basis}.

\begin{table*}[h]
\centering
\begin{tabular}{l||c|c|c|c|c|c}
\textbf{Method} & 
\makecell{Descriptor\\Function} &
Basis & 
Similarity & 
Initialization &
Partiality & 
Supervision \\
\hline\hline
% wavelet based heat kernel
\makecell{\cite{kirgo2021fm-waveletBasedHeatKernel}} & \makecell{\no} & \makecell{Mexican hat wavelets} & \makecell{non-isometric} & \makecell{landmarks} & \makecell{\yes} & \makecell{ - } \\
\hline
% landmark adapted basis
\makecell{\cite{panine2022fm-landmarkAdaptedBases}} & \makecell{\no} & \makecell{landmark-adapted} & \makecell{non-isometric} & \makecell{landmarks} & \makecell{\no} & \makecell{ - }  \\
\hline
% data driven basis
\makecell{\cite{azencot2021fm-dataDrivenBasis}} & \makecell{WKS} & \makecell{data-driven\\using POD modes} & \makecell{non-isometric} & \makecell{\del{(}landmarks\del{)}} & \makecell{\no} & \makecell{ - }  \\ % they only use features i think, but landmarks are used for map computation??
\hline
% PC GAU
\makecell{\cite{colombo2022fm-pc-gau}} & \makecell{WKS} & \makecell{PCA of dictionary\\of sparse Gaussians} & \makecell{non-isometric} & \makecell{landmarks} & \makecell{\no} & \makecell{ - }  \\
%\hline
%\makecell{\cite{colombo2023fm-pcaBasis}} & \makecell{TODOdesc} & \makecell{PCA of dictionary\\of functions} & \makecell{non-isometric} & \makecell{TODOinit} & \makecell{\no} & \makecell{\no}  \\
\hline
% elastic basis
\makecell{\cite{hartwig2023fm-elasticBasis}} & \makecell{WKS} & \makecell{elastic} & \makecell{non-isometric} & \makecell{landmarks} & \makecell{\no} & \makecell{ - }  \\
\hline
% hybrid basis
\makecell{\cite{bastian2024fm-hybrid}} & \makecell{DiffusionNet features\\WKS descriptors} & \makecell{LBO + elastic} & \makecell{non-isometric} & \makecell{\no} & \makecell{\no} & \makecell{ - }  \\
\hline


% linearly invariant embedding
\makecell{\cite{marin2020fm-linearlyInvariantEmbedding}} & \makecell{learned} & \makecell{high-dimensional\\linear embedding} & \makecell{non-isometric} & \makecell{\no} & \makecell{\yes} & \makecell{\yes}  \\
\hline
\makecell{\cite{siddiqi2023network}} & \makecell{learned} & \makecell{high-dimensional\\linear embedding} & \makecell{non-isometric} & \makecell{\no} & \makecell{\no} & \makecell{\no}  \\
\hline
% lbo net
\makecell{\cite{yigit2025fm-lbonet}} & \makecell{HKS} & \makecell{weighted LBO} & \makecell{near-isometric} & \makecell{\no} & \makecell{\no} & \makecell{\yes}  \\
\hline
% NIM
\makecell{\cite{jiang2023fm-neuralIntrinsicEmbedding}} & \makecell{learned} & \makecell{high-dimensional neural\\intrinsic embedding} & \makecell{near-isometric} & \makecell{\no} & \makecell{\yes} & \makecell{weakly}  \\

%  \makecell{TODOmethod} & \makecell{TODOdesc} & \makecell{TODObasis} & \makecell{TODOsimi} & \makecell{TODOinit} & \makecell{TODOpart} & \makecell{TODOsuper}  \\
\end{tabular}
\caption{Summary of recent methods with new basis functions for the functional map framework. \add{In the supervision column, - indicates that a method is not learning-based. We use the following abbreviations: WKS: Wave Kernel Signature, HKS: Heat Kernel Signature, POD: Proper Orthogonal Decomposition, PCA: principal component analysis.}} \label{tab:fm-basis}
\end{table*}


Using the LBO basis breaks down for partial meshes, so \cite{kirgo2021fm-waveletBasedHeatKernel} address this problem by using Mexican hat wavelets computed by approximating the derivative of the heat kernel. This family of functions is mutli-scale with local support, enabling matching between partial meshes. The family of functions is located at a set of sample points, so they rely on an initial set of sparse correspondences.

If landmarks are incorporated via constraints using the LBO basis, they are only promoted but typically not guaranteed. To incorporate landmark constraints strictly, Panine \etal \cite{panine2022fm-landmarkAdaptedBases} present a landmark-adapted basis using an intrinsic Dirichlet-Steklov eigenproblem. They aim for near-conformal shape correspondences that preserve landmarks exactly by representing landmarks as one-dimensional boundaries. The Dirichlet-Steklov eigenfunctions resonate near those boundaries. Using this basis, landmark preservation is achieved by only allowing a certain structure for the functional map matrix \(C\), \ie, \(C\) must be block-diagonal. % nov 20

Since the truncated LBO basis acts as a low-pass filter, functional maps computed with that basis often struggle aligning high frequency features. Therefore, \cite{azencot2021fm-dataDrivenBasis} compute the basis alongside with the functional map \(C\). They use Proper Orthogonal Decomposition modes for dimensionality reduction, making it possible to capture high frequency data. The optimization problem is solved using Alternating Direction Method of Multipliers. 
Using such an adaptive basis allows to better exploit non-smooth descriptors.

The truncated LBO basis does not cover the surface uniformly, resulting in functions being approximated with varying accuracy across different regions. As a result, the quality of the correspondence may also vary over the surface. Therefore, \cite{colombo2022fm-pc-gau} propose to compute a basis from the principal component analysis (PCA) of a dictionary of sparse Gaussian functions defined on the surfaces. This basis covers the surface more evenly. In \cite{colombo2023fm-pcaBasis}, a generalization of this approach is introduced making it applicable to other dictionaries, \eg, based on adaptive Gaussians or the WKS.

Hartwig \etal \cite{hartwig2023fm-elasticBasis} propose a basis based on the Hessian of the elastic thin shell energy. The eigenvectors of this resonate near creases, making the basis crease aware. Since this basis is not orthogonal, they also describe how to adapt the functional map framework to enable the use of such a non-orthogonal basis. Bastian \etal \cite{bastian2024fm-hybrid} propose a crease-aware basis using a hybrid approach. They incorporate intrinsic information with the LBO as well as extrinsic information with the Hessian of the elastic thin shell energy. They use their basis, among others, within the Deep Geometric Functional Maps method \cite{donati2020fm-deepGeometric}.

\cite{marin2020fm-linearlyInvariantEmbedding} extend and generalize the functional map framework for point cloud data and propose a fully differentiable pipeline for correspondence establishment. As such, both the basis and the descriptors are learned from data.
Using the basis and the descriptor functions, the two bases are brought into correspondence by calculating the linear transformation between them, and the correspondence is estimated using nearest-neighbor search. The learning process is supervised, as it requires data with annotated ground truth.
In \cite{siddiqi2023network}, this method is improved by introducing a new training scheme. By using random sampling during the training, the resulting network is more robust against sampling inconsistencies. It also allows for unsupervised training via an unsupervised loss, aiming to preserve pairwise distances and the orthonormality of the basis as well as of the functional map matrix \(C\).

In \cite{yigit2025fm-lbonet}, a weighing of the LBO is learned. More precisely, three different networks are used to predict the stiffness and mass matrix used in the computation of the LBO: A network for predicting the Riemannian Metric, \ie the edge weights, a network for the Voronoi cell weighting and a network for the anisotropy direction and factor.

In \cite{jiang2023fm-neuralIntrinsicEmbedding}, the authors propose a neural intrinsic embedding for point clouds as a replacement for the LBO basis. The embedding is trained to approximate geodesic distances between points, meaning geodesic supervision is required during training but not at inference time. 
Descriptors are obtained using a neural intrinsic mapping network that is trained using a cycle-consistency and isometry loss.

\subsection{Vertexwise Map Recovery}\label{sec:fm-map-recovery}
For many applications, the functional map representation is  insufficient as a vertex-to-vertex map is required. Therefore, the vertex-to-vertex map must be extracted from the functional map representation \(C\).

To obtain a vertex-to-vertex map, one needs to identify for every vertex $v$ of $\surfaceA$ the corresponding vertex $w$ of $\surfaceB$ given the map \(C\).
A straightforward approach would be to use an indicator function \(\chi_v(x)\), which equals 1 for vertex $v$ and 0 otherwise, which is transported via \(C\) to $\surfaceB$. The corresponding vertex of $v$ is the maximum of the image on $\surfaceB$. The computation is in \(O(n_{\surfaceA}n_{\surfaceB})\), as for every vertex of $\surfaceA$ an indicator function needs to be transported and the maximum must be found among all \(n_{\surfaceB}\) vertices of $\surfaceB$, making this approach inefficient \cite{ovsjanikov2012fm-main}.

An alternative is proposed in \cite{ovsjanikov2012fm-main}. The goal is to recover a vertex-to-vertex map \(T : V_{\surfaceB} \rightarrow V_{\surfaceA}\), mapping the vertices \(V_{\surfaceB}\) to the vertices of \(V_{\surfaceA}\). Note that \(T\) must not be bijective. This map can be extracted using nearest neighbor search in the \(k\)-dimensional embedding space: 

\begin{align}
T(w) = \underset{v \in V_{\surfaceA}}{\operatorname{arg \; min}}
\left\| C\,(\Phi^{\surfaceA}(v))^\top - (\Phi^{\surfaceB}(w))^\top \right\|_2,
\quad \forall\, w \in V_{\surfaceB}.
\label{eq:pointwise_map_recovery}
\end{align}


%!!!!!!!!!!!!!!!!!!!!!!!!!!! 
%A more efficient alternative \cite{ovsjanikov2012fm-main} is to find the images of all vertices at once by computing $C(\Phi^{\surfaceA})^\top$. The corresponding points are then found by determining the nearest neighbor of $C(\Phi^{\surfaceA})^\top$ in $(\Phi^{\surfaceB})^\top$, \ie, finding for every vertex $v \in \surfaceA$ the vertex $w \in \surfaceB$ that has the most similar values.
%which corresponds to finding the vertex $w \in \surfaceB$ that has the most similar values for a vertex $v \in \surfaceA$.

Alternatives and modifications to this approach include that of 
\cite{pai2021fm-fastSinkhorn}, where the explicit map is extracted with an optimal transport approach. The method is faster and more memory efficient than previous approaches. The conversion procedure to a vertex-map is modified by introducing the adjoint map. Thereby, the existence of an inverse is assumed, which leads to improvement in bijectivity of the correspondence. Xia \etal \cite{xia2024fm-localityPreservingRefinement} introduce locality preserving refinement: They compute inliers of the initial noisy vertexwise correspondence. Using this, the correspondence is refined aiming for local consistency.
Hartwig \etal \cite{hartwig2023fm-elasticBasis} propose a vertexwise map recovery method that works with non-orthonormal bases.

\subsection{Refinement}
A common approach within the functional map framework is the refinement of the map \(C\), where the resolution, determined by the size of the basis, of a given functional map is increased, yielding a map of higher quality. 
\subsubsection{ZoomOut}\
The most prominent example for map refinement is \emph{ZoomOut} \cite{melzi2019fm-zoomout}. An initial functional map with low resolution or noise is iteratively refined to a high-quality high-resolution map, as depicted in Figure \ref{fig:ZoomOut}. To this end, a \(k\)-dimensional functional map is converted to a vertexwise map, using \Cref{eq:pointwise_map_recovery}.  

From this vertexwise map, a matrix representation \(P \in \reals^{n_{\surfaceB} \times n_{\surfaceA}}\) can be derived, effectively mapping vertices from \(\surfaceA\) to \(\surfaceB\). A \(k+1\)-dimensional map is obtained by converting the matrix representation \(P\) back to a functional map representation \(C\) with one additional eigenvector added to each basis. The conversion is computed using
\begin{align}
    C_{k+1} = (\Phi^{\surfaceB}_{k+1})^\top A^{\surfaceB} P\; \Phi^{\surfaceA}_{k+1},
\end{align}
where \(\Phi^{\surfaceI}_{k+1}\) are the the basis vectors of increased resolution, and \(A^{\surfaceB}\) is the lumped area element matrix. (Note that, to remain consistent with our definition of \(C\) mapping functions from \(\surfaceA\) to \(\surfaceB\), we define \(T\) and differently from the formulation in \cite{melzi2019fm-zoomout}.) This two-step iterative procedure ensures that each functional map \(C_k\) is induced by a vertex-to-vertex map \(T\), while enforcing orthonormality on every principal submatrix rather than on a fixed-size functional map.


\begin{figure}[htb]
  \centering
  \includegraphics[width=.95\linewidth]{fig/06-ZoomOut.png}
  \caption{\label{fig:ZoomOut}
           ZoomOut iteratively refines an initial (low-resolution) map. Taken from  \cite{melzi2019fm-zoomout}.}
\end{figure} % TODO LICENSE

Numerous methods have adapted ZoomOut. \cite{huang2020fm-czoomout} propose \emph{consistent ZoomOut}, which promotes the consistency of the refined correspondences for map collections. \emph{Adjoint Bijective ZoomOut} \cite{vigano2023fm-abzoomout} is adapted for point cloud matching and modifies ZoomOut such that is uses the adjoint based conversion procedure used in \cite{pai2021fm-fastSinkhorn}. As a result, bijectivity is promoted. This work is extended in \cite{vigano2024fm-bijectiveupsampling}, improving the performance and incorporating it in a novel training strategy. \cite{vigano2025fm-nam} propose Neural Adjoint Maps, where they represent the action of the adjoint operator by a neural network. Therefore, the adjoint operator contains non-linear components. Using this operator, they design an iterative refinement algorithm called \emph{Neural ZoomOut}, which produces maps with higher detail due to the non-linearity of the adjoint operator. 
A differentiable version of ZoomOut is proposed in \cite{magnet2024fm-memoryScalable}. \cite{hartwig2023fm-elasticBasis} adapt ZoomOut to their setting with a non-orthonormal basis, leading to better results for non-isometries.

Maptree \cite{ren2020fm-maptree} uses an adapted version of ZoomOut with bijectivity constraints to refine multiple initial solutions, leading to different high-resolution maps corresponding to different local minima. In particular, this approach allows the exploration of the self-symmetric space of a shape and can be used for symmetry detection.

\subsubsection{Others}\
Other refinement methods for the functional map framework include \cite{liu2022fm-incremental}, which do not recover the vertexwise map by nearest neighbor search but instead formulate it as an optimization problem which is solved using the fast Sinkhorn filters used in \cite{pai2021fm-fastSinkhorn}.
\cite{luo2025fm-deepFAFM} make use of learnable spectral filters to preserve important frequency information. They propose a refinement strategy that leverages the learned spectral filters to enhance the accuracy of the vertex-to-vertex map.
%
\add{\subsection{Coarsening for Spectral Methods}}
\add{Spectral methods, including but not restricted to functional map methods, rely on constructing linear operators whose size scales with the number of elements in the computational domain, \ie, the mesh. To reduce the computational cost of these methods, two strategies have been explored. One approach is to directly compute a coarsened version of the spectral operator while preserving its key spectral properties \cite{Liu2019-CoarseningOperator, Chen2020-ChordalCoarseningOperator}. In particular, Chen \etal~\cite{Chen2020-ChordalCoarseningOperator} leverage chordal decomposition to reformulate the coarsening problem as a convex optimization problem, enabling scalable and robust operator reduction.}

\add{An alternative strategy is to reduce complexity at the geometric level by simplifying the mesh itself. While traditional mesh simplification methods primarily aim to preserve geometric fidelity and to produce visually plausible results, they typically do not preserve the spectral properties of the underlying operators, which limits their applicability to spectral shape analysis and matching. To address this limitation, recent works explicitly aim to peserve the spectral structure during mesh simplification. \cite{Lescoat2020-CoarseningMesh} propose a coarsening scheme designed to maintain spectral consistency by maintaining eigenvectors, while \cite{Yazgan2024-PartitionBasedCoarsening} introduce a partition-based coarsening approach that enables parallelization and operates on eigenvalues, making the coarsening more scalable.}
%
\subsection{Axiomatic Methods}
This section gives an overview of recent axiomatic methods to compute functional maps. Such methods work with the functional map representation but use different or improved approaches for computing the correspondence represented by the functional map \(C\). 

% smooth shells
Smooth Shells \cite{eisenberger2020fm-smoothShells} computes correspondences in a hierarchal manner, where first coarse approximations of the shapes are aligned, followed by refinement, where higher-frequency details are added back to the shapes. The approximations are computed as spectral reconstructions, where higher frequencies are added with each iteration. Since such reconstructions may change drastically from one level of detail to the next, a shell operator is introduced to reasonably bound the change between iterations. The authors combine intrinsic and extrinsic alignment by embedding the shapes into a higher-dimensional intrinsic-extrinsic space. There, they optimize the functional map and the vertex-map for each hierarchy level. This method has also been adapted to Deep Shells \cite{eisenberger2020fm-deepShells}, a learning-based approach. Instead of a strict permutation matrix, a soft matrix is used for differentiability. The used loss computes alignment tightness based on entropy regularized optimal transport.

% discrete optimization framework
\cite{ren2021fm-discreteOptimization} introduce a discrete optimization framework for functional maps. It is suitable for several functional map based energies such as descriptor preservation. The functional map representation and the vertexwise map are coupled. In an iterative scheme, the vertexwise map is updated while being informed about the functional map \(C\), then \(C\) is updated based on the new vertexwise map. The restriction of the optimization space to valid vertexwise maps leads to higher-quality correspondences as the vertexwise map preserves the properties of the functional map. Magnet \etal \cite{magnet2022fm-effDirichlet} extend this framework by including the Dirichlet energy to promote smooth correspondences.

% complex fm
Complex functional maps \cite{donati2022fm-complexfm} extend functional maps to tangent vector fields on surfaces, which allows for robust and efficient transport of tangent vector fields. A complex-linear operator can be used for regularization, leading to orientation-preserving maps. The approach is improved by introducing additional operator preservation constraints \cite{li2024fm-operatorPreservation}.

% method for multi matching
Functional maps are used for shape collections, targeting cycle-consistency using an artificial template shape \cite{gao2021fm-isomush}. In \cite{cohen2020fm-robustShapeCollection}, the authors find correspondences between two shape collections assuming the intra-collection maps are provided. They first compute the most promising inter-collection pair, and then compute the correspondence for the chosen pair. From this, every pairwise map can be derived.

% methods for huge data
Several methods propose a scalable version of the functional map pipeline. The large computational cost typically comes from the pre-processing costs associated with the computation of the eigenfunctions of the LBO and the manipulation of the vertexwise map, \eg, in ZoomOut. \cite{magnet2023fm-scalableDense} therefore propose to work with a sparse set of samples and compute an approximation of the LBO while controlling the error. \cite{maggioli2024fm-rematching} introduce ReMatching to tackle high-resolution inputs. In this approach, the functional map is computed on low-resolution meshes, obtained via remeshing. Afterwards, the resulting functional map is transported to the high-resolution inputs.

\subsubsection*{Constraints}\
\color{black}
Several new constraints have been proposed, which can be included in functional map pipelines.
\cite{schreck2020fm-si-lbo} use the eigenvectors of the scale-invariant LBO \cite{aflalo2013scaleInvariantGeometry}. Those are then aligned using a band-limited orthogonal transformation to get rid of inconsistencies, such as sign ambiguities, and used as descriptor functions. \cite{yan2024fm-ibks} improve upon the biharmonic kernel signature by including the Gaussian curvature, which is isometry invariant. As a result, the descriptor is more discriminative in the presence of noise and invariant to scaling and isometric transformations. \cite{magnet2021fm-dwks} propose a local pointwise descriptor that reflects deformation around a point within a collection. It is computed based on shape difference operators, which capture the difference between shapes.

Instead of using many high-dimensional descriptor functions, \cite{hu2021fm-spectralManifoldWavelets} require multiscale spectral manifold wavelets to be preserved by the functional map. These preservation constraints allow to extract more information and promote the isometry of the map. 

\color{black}
%%%%%%%%%%%%%%%%%%% TABLE %%%%%%%%%%%%%%%%%%%%%%%%%%%
% papers to check (have table
% Unsupervised Learning of Robust Spectral Shape Matching
% Self-Supervised Learning for Multimodal Non-Rigid 3D Shape Matching
% 
% spalten:
% methods (without name?)       similarity      Supervision     Input Type (pc, mesh)       Partiality (ff, fp, pp)     groupwise (y, n)
\begin{table*}[h]
\centering
\begin{threeparttable}
\begin{tabular}{l||c|c|c|c}
\multicolumn{1}{c||}{\textbf{Method}} & Supervision & Similarity & Partiality & Input Type \\ % maybe add dense/sparse if there is a sparse method
\hline \hline
%\hline
%Method & Supervision & Input Type & Partiality & Groupwise \\ 
%%%%%% supervised
% Deep Geometric Functional Maps
\cite{donati2020fm-deepGeometric,lian2024fm-capsuleGraphNNs} & supervised & near-isometric & \no & triangle meshes  \\ % spatial and spectral, near isometric
\hline
%Deep functional maps
\cite{litany2017fm-deepfm} & supervised & near-isometric & \yes & triangle meshes  \\
\hline
% Learning Piecewise Smooth Functions
\cite{bensaid2023fm-piecewiseSmoothFunc} & supervised &  near-isometric & \yes\tnote{\(\ast\)} & triangle meshes  \\
\hline
% Diff-FMaps
\cite{marin2020fm-linearlyInvariantEmbedding} & supervised & non-isometric & \yes & point clouds  \\ % partial looks bad, near isometric, but they say non-isometric
\hline
% Denoising Functional maps
\cite{zhuravlev2025fm-denoisingFM, pierson2025fm-diffumatch} & supervised & non-isometric & \no & triangle meshes  \\ % non-isometric
% DiffuMatch
%\cite{pierson2025fm-diffumatch} & supervised & non-isometric & \no & triangle meshes  \\ % non-isometric (but not highly ni)
\hline
% EchoMatch
\cite{xie2025fm-echomatch} & supervised & non-isometric & \yes\tnote{\(\ast\)} & triangle meshes  \\ % non-isometric
\hline
%%%%%% weakly supervised
% Weakly-Supervised Deep Functional Maps
\cite{sharma2020fm-weaklySupervised} & weakly-supervised & near-isometric & \yes & point clouds  \\ %do not metion how laplace basis would be computed on pc, but say that their "goal is to learn functional characterizations of point clouds"
% Neural Intrinsic Embedding
%\cite{jiang2023fm-neuralIntrinsicEmbedding} & weakly-supervised & own & near-isometric & \yes (ff, fp) & point clouds  \\ % near-isometric
\hline
%%%%%% unsupervised
% SURFMNet
\cite{roufosse2019fm-surfmnet} & unsupervised & near-isometric & \no & triangle meshes  \\ % or self supervised?, near isometric
\hline
% STS
\cite{efroni2022fm-spectralTeacherSpatialStudent} & unsupervised & near-isometric & \no & triangle meshes\tnote{\dag}  \\ % maybe also self supervised, near-isometric % inference: point clouds trimesh for training
\hline
% Unsupervised Deep Multi-shape Matching
\cite{cao2022fm-multishapeMatching} & unsupervised & near-isometric & \yes & triangle meshes  \\ % only groupwise
\hline
% Self-supervised Multimodal Learning
\cite{cao2023fm-ssMultiModal} & unsupervised & near-isometric & \yes & multimodal\tnote{\ddag}  \\ % self supervised multimodal
\hline
% Deep Shells
\cite{eisenberger2020fm-deepShells, donati2022fm-deepOrientAware, liu2022fm-wtfm, sun2023fm-spatiallySpectrallyConsistent} & \multirow{2}{*}{unsupervised} & \multirow{2}{*}{non-isometric} & \multirow{2}{*}{\no} & \multirow{2}{*}{triangle meshes}  \\ %
\cite{le2024fm-integratingEfficientOptimalTransport,magnet2024fm-memoryScalable, liu2024fm-waveletRegularizer, cao2024fm-spectralMeetsSpatial, luo2025fm-deepFAFM} &&&&\\
% Deep Orientation-Aware Functional Maps
%\cite{donati2022fm-deepOrientAware} & unsupervised & non-isometric & \no & triangle meshes  \\
% WTFM Layer
%\cite{liu2022fm-wtfm} & unsupervised & non-isometric & \no & triangle meshes  \\
% Spatially and Spectrally Consistent
%\cite{sun2023fm-spatiallySpectrallyConsistent} & unsupervised & non-isometric & \no & triangle meshes  \\ % non-isometric
% Integrating Efficient Optimal Transport
%\cite{le2024fm-integratingEfficientOptimalTransport} & unsupervised & non-isometric & \no & triangle meshes  \\
% Memory-scalable and Simplified 
%\cite{magnet2024fm-memoryScalable} & unsupervised & non-isometric & \no & triangle meshes  \\ % self-supervised
% Multiscale Spectral Manifold Wavelet Regularizer
%\cite{liu2024fm-waveletRegularizer} & unsupervised & non-isometric & \no & triangle meshes  \\
% Spectral Meets Spatial
%\cite{cao2024fm-spectralMeetsSpatial} & unsupervised & non-isometric & \no & triangle meshes  \\
% DeepFAFM
%\cite{luo2025fm-deepFAFM} & unsupervised & non-isometric & \no & triangle meshes  \\ % non-isometric
\hline
% Cyclic Functional Mapping
\cite{ginzburg2020fm-cyclicFMapping, cao2023fm-robustSpectralShapeMatching, cao2024fm-revisitingMapRelations, cao2024fm-synchronousDiffusion} & unsupervised & non-isometric & \yes & triangle meshes  \\% use both self and unsupervised in their paper, not to large non-isometries
% Robust Spectral Shape Matching
%\cite{cao2023fm-robustSpectralShapeMatching} & unsupervised & non-isometric & \yes & triangle meshes  \\
% Revisiting Map Relations (self adaptive fm solver)
%\cite{cao2024fm-revisitingMapRelations} & unsupervised & non-isometric & \yes & triangle meshes  \\
% Synchronous Diffusion
%\cite{cao2024fm-synchronousDiffusion} & unsupervised & non-isometric & \yes & triangle meshes  \\
\hline
% RFMNet
\cite{hu2023fm-rfmnet} & unsupervised & non-isometric & \yes & both  \\ % only soft non-isometries
\hline


%%%%%% both 
% DPFM
\cite{attaiki2021fm-dpfm} & both & near-isometric & \yes\tnote{\(\ast\)} & triangle meshes  \\ % pp
\hline
% Multi-Resolution with Spectral Attention
\cite{li2022fm-multires-spectralAttention, attaiki2023fm-understandingAndImprovingFeatures} & both & non-isometric & \no & triangle meshes  \\
% Understanding and Improving Features Learned
%\cite{attaiki2023fm-understandingAndImprovingFeatures} & both & non-isometric & \no & triangle meshes  \\
% Hybrid Functional Maps
%\cite{bastian2024fm-hybrid} & both & non-isometric & \no & triangle meshes  \\
\hline


%%%%%% no training on other data
% SNK
\cite{attaiki2023fm-snk} & -\add{\tnote{\(\diamond\)}} & non-isometric & \no & triangle meshes  \\
%\hline

% TODO
%\hline
% Relation Constrained Capsule Graph NNs
%\cite{lian2024fm-capsuleGraphNNs} & supervised & near-isometric? & \no & triangle meshes \\ % near isometric (but they say non-isometric because smal, but they only show intra class)
%TODOMethod & TODOsupervision & TODObasis & TODOinput & TODOpartiality & TODOgroup  \\
%TODOMethod & TODOsupervision & TODObasis & TODOinput & TODOpartiality & TODOgroup  \\
\end{tabular}
\begin{tablenotes}
\item[\(\ast\)] \del{Also}Capable of partial-to-partial correspondence.
\item[\dag] Inference can be done on point clouds. %\(\ast\)
\item[\ddag] \del{Also}Allows for correspondences between triangle meshes and point clouds.
\item[\add{\(\diamond\)}] \add{Is optimized per shape pair.}
\end{tablenotes}
\end{threeparttable}
\caption{Summary of recent learning-based functional map methods.} \label{tab:lbfm}
\end{table*}
%
%In recent years, many methods make use of the functional map formulation to train a neural network to solve the shape correspondence problem. This section gives an overview on such learning-based methods.


\subsection{Learning-Based Methods}
The popular deep functional map framework was initially proposed by Litany \etal \cite{litany2017fm-deepfm} and has since inspired many works, summarized in \Cref{tab:lbfm}. 

A typical architecture starts either with a feature transformation layer, which modifies hand-crafted descriptors, or with a feature extraction layer, which extracts the features from scratch. The resulting features, computed for both shapes, typically in a Siamese fashion, are projected onto the LBO basis and used as preservation constraints to compute the functional map using a differentiable, parameter-free functional map layer. Additional regularization imposes desired structural properties on the resulting functional map.

There are supervised, weakly-supervised, and unsupervised approaches.
Supervised methods leverage additional training information but require many annotated correspondences, ranging from sparse to dense.
Weakly-supervised methods need less annotation, typically assuming roughly rigid alignment between inputs.
Unsupervised or self-supervised methods require no annotations and instead rely on regularization terms that enforce desired properties of the resulting functional map.

In the following, we review changes made to different aspects of the deep functional map pipeline.
% regularization
\subsubsection*{Regularization}\
%%self supervision
\cite{ginzburg2020fm-cyclicFMapping} introduce cyclic functional mapping. They achieve self-supervision by preserving pairwise distances in the source-to-target-to-source mapping.

%%unsupervised
To achieve unsupervised learning, SURFMNet \cite{roufosse2019fm-surfmnet} promotes structural properties such as bijectivity, orthogonality, and commutativity with the LBO. In \cite{liu2024fm-waveletRegularizer}, commutativity between the functional map and the multiscale spectral manifold wavelet operator is enforced, promoting a map that is as isometric as possible.

\cite{cao2024fm-synchronousDiffusion} propose using synchronous diffusion. The key idea is that diffusing a function on one shape and then transporting it to another should yield the same result as first transporting the function and then diffusing it there. The difference between the two resulting functions serves as a loss term that encourages smoothness.

%learned regularization
Instead of hand-crafting a regularization term, \cite{pierson2025fm-diffumatch} propose to learn functional map regularization from high-quality functional maps. Their approach employs a spectral diffusion model to capture common structural properties of functional map matrices \(C\). Given the initial \emph{raw} functional map recovered from features, the spectral diffusion network produces a mask, which is used to 
regularize the raw map. The resulting learned regularization is category-agnostic, \ie, it can be applied to shape categories beyond those seen during training.

%% promote consistency with pointwise map from features
\subsubsection*{Consistency with Vertexwise Maps}\
Attaiki and Ovsjanikov \cite{attaiki2023fm-understandingAndImprovingFeatures} show that, under mild conditions, features learned in the deep functional map pipeline can be used to construct a vertexwise map directly via feature similarity. They leverage this insight to improve training by promoting consistency between the directly computed vertexwise map and the vertexwise map obtained from the functional map. % june 23 
\cite{magnet2024fm-memoryScalable} avoid storing the soft vertex matrix \(P\) by directly computing the product with the basis \(P\Phi^{\surfaceA}\) without ever explicitly computing the full matrix \(P\). % june 24

% combine spectrally and spatially

SNK \cite{attaiki2023fm-snk} eliminates the need for training data by optimizing the network and thus the map for a pair of input shapes directly. A feature extractor and an encoder-decoder pair are used in parallel. The extracted features are used to compute a functional map, while the encoder generates a latent representation of the source shape. The decoder then uses this representation to deform the source shape into the target shape. The loss penalizes discrepancies between the correspondence implied by the deformation and the vertexwise correspondence obtained from the functional map. % dec 23

\cite{sun2023fm-spatiallySpectrallyConsistent} propose a method for cycle-consistent matching using a spectral latent shape as intermediate domain. They notice that spectral cycle-consistency alone does not suffice for achieving spatial cycle-consistency. They make use of a two-branch approach for training: From the alignment to the latent shape, a functional map as well as a soft vertex map is obtained. The loss enforces that the functional map derived from the soft vertex map matches the directly computed functional map. % oct 23

Cao and Bernard \cite{cao2023fm-ssMultiModal} propose a method that allows for multimodal shape matching, allowing for the computation of correspondences between point clouds and triangle meshes. They train a feature extractor based on DiffusionNet \cite{sharp2022fm-diffusionnet} by using both point clouds and meshes for the two shapes. The features from the meshes are used to compute a functional map, which is used for regularization. The point cloud features are used for soft map computation based on feature similarity. A contrastive loss is used to promote similarity of mesh and point cloud features. At inference, it is decided between functional maps and direct soft maps based on the input modalities: Functional maps can only be employed for mesh-to-mesh matching. % june 23

\subsubsection*{Learning Constraints}\
Pipelines with hand-crafted input descriptors generalize poorly across diverse datasets, so Deep Geometric Functional maps \cite{donati2020fm-deepGeometric} make use of a feature extractor that learns the features directly from the geometry. These features are projected to the spectral bases. They use a spectral loss that avoids the conversion to a pointwise map during training. 
Their architecture is trainable with rather small training data size. % june 20
Numerous methods have since trained feature extractors rather than feature transformers.

To achieve orientation-awareness, complex functional maps are adapted to the deep functional map framework by \cite{donati2022fm-deepOrientAware}. They use an orientation-preserving loss for the training that promotes isometry. % june 22

% do not learn features but spectral filters
\cite{luo2025fm-deepFAFM} introduce a spectral filter operator preservation constraint with the goal to preserve frequency information. A set of spectral filters, based on orthonormal Jacobi polynomials, is learned and used as loss. Due to this, their method better incorporates information of different frequencies. % april 25 ?

In \cite{sharma2020fm-weaklySupervised}, features for point clouds are learned using PointNet++ \cite{qi2017pointnet++} as feature extractor. These features are used for the computation of spectral descriptors.

To get rid of the spectral resolution hyperparameter \(k\) determining the number of basis vectors, \cite{li2022fm-multires-spectralAttention} can adapt the spectral resolution to be well suited to the input. % nov 22

% other kind of constraints
\cite{lian2024fm-capsuleGraphNNs} uses the boundaries of a segmentation as constraints together with a relation constrained capsule graph network. Their method heavily relies on the segmentation: The number of segments needs to be consistent making it mostly suitable for models with limbs. % november 24

% functional map extraction
\subsubsection*{Functional Map Extraction}\
\cite{liu2022fm-wtfm} propose a map extraction layer, which, instead of taking the extracted features as constraints directly, requires the multiscale spectral manifold wavelet transform of the features to be preserved by the functional map. It allows for better incorporation of the information given by the extracted features. % march 23

\cite{hu2023fm-rfmnet} propose RFMNet, a robust method to compute functional maps. They use DiffusionNet \cite{sharp2022fm-diffusionnet} as feature extractor and use the resulting vertexwise features to obtain an initial vertexwise map using optimal transport. The correspondence is then converted to a functional map, where additional regularization in the form of wavelet preservation, inspired by \cite{hu2021fm-spectralManifoldWavelets}, is applied. % july 2023

% completely different approach
Functional maps have also been used in a diffusion based approach \cite{zhuravlev2025fm-denoisingFM}, where a diffusion network predicts the functional map \(C\). The map \(C\) is initialized as a noise-filled matrix and the diffusion network will iteratively denoise it. In addition, an unsupervised sign correction network is used to correct the signs of the LBO eigenvectors, which restricts the solution space and therefore reduces the complexity.


%%%%%%%%%%% FM only for training
\subsubsection{Functional Maps as Regularizer}\
In learning-based approaches, functional maps are commonly employed as regularization during training.
%
% full shapes 
To combine the strengths of spatial and spectral methods, \cite{efroni2022fm-spectralTeacherSpatialStudent} use a spectral teacher for a spatial student, \ie, a spatial network is trained using functional maps. 
This improves the inference speed, as it is purely spatial, while the training can still benefit from the global and local view spectral methods offer. % september 22

In \cite{cao2022fm-multishapeMatching}, the functional map is used for regularization during the unsupervised training by promoting cycle-consistent correspondences between multiple shapes using a virtual template. % december 22
%partial shapes 

\cite{cao2023fm-robustSpectralShapeMatching} propose to couple the functional map directly to the vertexwise map via a loss. They train a feature extractor to compute vertexwise features. Those are then used to compute a functional map and a vertexwise map simultaneously. % july 23 
The method is further refined in \cite{cao2024fm-revisitingMapRelations} using a self-adaptive functional map solver. It can adapt to different shape correspondence scenarios such as non-isometry or partiality, where the functional map matrix \(C\) deviates from being diagonal. Two parameters control the amount of penalty on off-diagonal entries and the overall regularization strength. Those parameters are learned during training.% march 24 

\cite{cao2024fm-spectralMeetsSpatial} propose a method that solves the shape correspondences problem in conjunction with shape interpolation, which allows them to combine intrinsic (spectral) information, via the functional map as regularizer, and extrinsic (spatial) information.

In \cite{le2024fm-integratingEfficientOptimalTransport}, they compute a soft vertex-to-vertex map using an optimal transport problem regularized by a functional map loss. The cost for the optimal transport, which is based on the sliced Wasserstein distance, is computed given soft feature similarity and extracted features.

% partial
\subsubsection*{Partial Matching}\
A key challenge of the functional map framework is the computation of maps between partial shapes. Most partial methods are only capable of full-to-partial matching \cite{sharma2020fm-weaklySupervised, cao2023fm-robustSpectralShapeMatching, cao2023fm-ssMultiModal, hu2023fm-rfmnet, cao2024fm-revisitingMapRelations, cao2024fm-synchronousDiffusion}. In contrast, partial-to-partial matching is significantly more difficult, as the regions of overlap between shapes are unknown. Only a few approaches within the functional map framework currently address this setting \cite{attaiki2021fm-dpfm, bensaid2023fm-piecewiseSmoothFunc, xie2025fm-echomatch}.

\cite{bracha2024dataset-pfaust} argue that the functional map extraction layer used in deep functional maps is fundamentally flawed when dealing with partial shapes. If the features corresponding to regions present in only one of the shapes are nonzero, errors are introduced in the map computation. To address this issue, one would either need to predict the overlapping regions prior to computing the functional map, or account for the non-overlapping regions already during the feature extraction process, which is not possible in a Siamese fashion.

\cite{attaiki2021fm-dpfm} learn features directly from data and present a novel module that allows for communication between the features of the two different shapes via cross-attention. In addition, they train an overlap predictor. % 21

\cite{xie2025fm-echomatch} introduce EchoMatch, which allows for partial-to-partial matching of two shapes by computing two partial-to-full correspondences, one for each direction, using a virtual full shape. They determine the overlapping points via correspondence reflection: If a point corresponds to its neighborhood after being mapped forward and backward, it is considered overlapping. Initial per-vertex features are obtained via DiffusionNet \cite{sharp2022fm-diffusionnet}. Based on them, an overlap score is computed per vertex using a soft point map. % 25, how exactly do they get the map during inference?

Rather than predicting a vertex-to-vertex map, \cite{bensaid2023fm-piecewiseSmoothFunc} address the problem of overlap prediction for partial shape pairs. They first predict landmarks on both full and partial shapes using a pretrained feature extraction network regularized by a functional map. These landmarks are then used to learn an indicator function, represented as a neural intrinsic field, obtained by interpolating the landmark-associated values. The resulting indicator function encodes the support region of one partial shape within the other. % august 2023
















\color{black}