In this section, we provide results obtained with our framework and compare against other algorithms. For most studies, the code for other frameworks were obtained either from the authors or official project page. For fairness, we also implemented a per-element, numerically projected Newton, similar to the PN solvers used in Simplex Assembly [Fu and Liu
2016] and TLC-PN [Du et al.
2020a].
For completeness, we also implemented the Hessian modified version of FFM which performs a semidefinite-indefinite decomposition as presented in Garanzha et al. [
2021a] (see Appendix A.2 in that paper and Appendix
B here). We call this version
Modified-FFM. The paper presented but did not implement the approach, and their final version of FFM used an L-BFGS solver. A direct comparison with other code bases give us approximate performance comparisons, but a clearer picture emerges by comparing our framework’s results to our own implementation of other techniques such as Modified-FFM and numerical PN. Unless otherwise stated, all analyses were performed single-threaded on an Intel Xeon(R) E5-2650. We use MKL PARDISO, Eigen [Guennebaud and Jacob
2010] and Fastor [Poya et al.
2017] for tensor manipulations.
5.2 Locally Injective Mappings Benchmark
We conducted a parametrisation study with SA, ABCD, FFM, TLC, and our regularised energies on the most challenging examples from the recent benchmark of Du et al. [
2020b]: the Lucy-to-G and Gargoyle-to-S embeddings (Figure
9). To cover the spectrum from conformal to isometric, we used RMIPS (and FFM with
\(\lambda =1/128\), though quasi-isometric maps can also be obtained by increasing the value of
\(\lambda\)), RSD and RSARAP energies. The initial embeddings for these models have
\(\sim\)98K triangles and over 3K fold-overs, requiring the optimisation to move a large layer of elements into a concave shape. SA and ABCD (PN) were unable to create inversion-free domains, and respectively failed after
\(\sim\)300 and
\(\sim\)400 seconds. TLC (PN) succeeded, but yielded nearly collapsed elements (
\(J\approx 0\)) due to stopping criterion. FFM succeeded but took over an hour on the Lucy model.
Our framework minimised the RMIPS energy almost
75\(\times\) faster than FFM on this model. It successfully minimised RMIPS, RSD, and RSARAP in a few seconds, and yielded high-quality, fixed-boundary, locally injective maps. The results of FFM and our RMIPS energy were visually identical, so only FFM is shown in Figure
9. However, the histograms should give a better representation of quality (
J, conformal
\(\frac{\sigma _1}{\sigma _2}\) and isometric
\(II_F\)) distribution.
We ran our regularised energies over all the 2D and 3D benchmarks of Du et al. [
2020b], as shown in Figure
10. Our framework passed the entire benchmark (similar to TLC and FFM). The benchmark covers a variety of 2D parameterisations, 3D polycube parameterisations and 3D deformations, and range from easy to extremely difficult. We chose
\(\lambda =0.01\) in 2D (to be compatible with FFM although, this creates low quality elements) and
\(\lambda =1\) in 3D for the RAMIPS energy. Unlike Du et al. [
2020a]; Garanzha et al. [
2021a], we used the significantly more challenging
source mesh as the rest configuration, instead of an auxiliary “ideal” element.
We also ran a side-by-side comparison with FFM, Modified-FFM, and ABCD by tuning all solver parameters (e.g., number of steps, termination criteria, and
\(\epsilon _k\) decay (for FFM and ours)) to be identical. Figure
11 shows our framework was statistically
12.9\(\times\) faster than FFM over 10,000 2D meshes and
2\(\times\) faster over 900 3D meshes. ABCD did not have 100% success rate (91.1% in 2D and 88.3% in 3D) but, it was the second fastest method in 2D for cases that it succeeded (within 1.8
\(\times\) of our analytic PN). The performance of ABCD and our framework confirms that for 2D problems, PN solvers are preferred.
In many 3D cases, ABCD stalled at the repair phase and in general performed over 10\(\times\) slower (excluding failure times) compared to ours. For some 3D cases when the initialisation was close to the rest shape, FFM’s L-BFGS was faster than our framework. However, it had a more non-uniform convergence pattern and dispersed performance profile over the entire dataset. As expected, FFM’s performance was closer to ours in 3D since, unlike L-BFGS, the cost of the linear solver factors in for our framework. The second fastest method in 3D was our implementation of Modified-FFM, which was 43% slower than our analytic PN. This is because Modified-FFM, despite doing more iterations than analytic PN, does not require an SVD which dominates the assembly cost in 3D.
Overall, our framework was strictly faster than other methods on 72% (7728/10706) of the 2D cases and 65% (593/904) of the 3D cases. Such performance disparities between different optimisers have been well documented in the context of locally injective methods [Kovalsky et al.
2016; Rabinovich et al.
2017; Zhu et al.
2018]. Quality-wise, best performing methods were our RSD (see Figure
10 instead) and ABCD, although all frameworks yielded comparable results.
5.4 Free Boundary Surface Parametrisation
In Figure
13 we embed multiple 3D models onto star-shaped domains, resulting in
\(\sim\)10K fold-overs. We used RSARAP to optimise our map and obtained results similar to previous works [Claici et al.
2017; Rabinovich et al.
2017; Shtengel et al.
2017; Smith et al.
2019] in approximately the same number of iterations as Shtengel et al. [
2017] and Smith et al. [
2019]. Our RSARAP energy is stabler, and converges quickly despite starting from an invalid Tutte embedding. Since the energy has a barrier, regularising
J decreases the residual, which accelerates convergence. These problems each took 10–12 iterations to converge.
In Figure
1, we start from an invalid mapping and use our RSD energy. As described in Section
2, using regularised barrier energies and filtered Hessians within PN solvers can cause oscillatory convergence, (see Figure
13), while unfiltered Hessians lead to stalls. Over a wide range of examples, we observed that our solver did not have this issue.
5.5 Globally Injective Surface Parametrisation
The purpose of our framework is to generate inversion-free mappings; a first step towards local injectivity. However, many frameworks (including ours), cannot ensure a locally injective map due to overwinding issue and
k-covering traps (see Figure
4). Overlaps can occur under free boundaries, which means the parametrisation may not be globally injective as well. The authors of TLC fixed this issue with the
Smooth Excess Area (SEA) proposal [Du et al.
2021], while FFM proposed using phantom triangulation [Garanzha et al.
2021b].
Our regularisation scheme allows for the complete re-use of existing techniques for locally injective mappings. To circumvent both overwinding and boundary self-intersection, we can use a “curve-repulsive” energy on the boundaries, such as those proposed in Smith and Schaefer [
2015] and Su et al. [
2020]. In Figure
14 we combined a simplified implementation of Smith and Schaefer [
2015] contact penalty with our RSD energy to obtain a globally injective mesh parametrisation. We used the triangle inequality enhancement of Su et al. [
2020] but did not use a surrounding shell mesh. In some hard cases, overwinding can still occur around interior vertices [Weber and Zorin
2014]. Furthermore, such boundary energies do not work when the initialisation has a self-intersecting boundary. However, this is a limitation of Smith and Schaefer [
2015], and we leave a more thorough investigation to future work.
5.7 Pathological Test Cases
The 3D benchmark in (Figure
11) covers a wide range of practical problems, and our framework passes 100%. Nevertheless, it is possible to handcraft pathological tests that are more difficult to optimise. Following on from Figure
15, we optimise a severely twisted bar (Figure
17) by fixing its ends and using FFM, ABCD, and our RAMIPS and RSD energies. This is a corner case where both our RAMIPS energy and FFM generate inversion-free maps, but the final mesh overwinds around itself. ABCD generates a superior map, but with multiple twists and our RSD unfolds the bar to the least feasible number of twists with the same termination criterion. This difference is due to ABCD’s block-wise repair. Our framework instead needs to “blow” the whole mesh in order to un-flip hence, resulting in a global minimum. However, the difference between RAMIPS and RSD, lies in the underlying energy rather than our regularisation scheme.
We further stress test our framework with two randomised ogre heads that are then shrunk by 100
\(\times\). In Figure
18, the second initialisation is challenging because intermediate configurations develop around two lines (fixed vertices around ears) and the optimiser has to step through low curvature regions. Neither FFM nor TLC are suitable for such cases, as they perform best under fixed boundary simulations. With our regularisation scheme we were able to minimise RAMIPS/RSD/RSARAP and recover the rest shape, albeit under a much tighter
\(10^{-6}\) residual tolerance.
5.8 Comparison with Invertible Elasticity
Models that intentionally remove barriers in an attempt to extend energies to the infeasible zone are known as
invertible [Irving et al.
2004; Smith et al.
2018; Stomakhin et al.
2012]. Irving et al. [
2004] proposed an invertible model at the gradient level (PK1), resulting in an inconsistent treatment of gradients. Energetic consistency was restored by Stomakhin et al. [
2012] via
\(C^2\) extension, while a state-of-the-art
Stable Neo-Hookean (SNH) energy was proposed by Smith et al. [
2018] which removed barriers altogether.
Our regularisation also extends distortion energies into the infeasible zone at the singular-value level, so how is it related? Invertible elasticity removes barriers, making it unsuitable for generating inversion-free mappings in the presence of positional constraints. Our regularisation includes the barrier for repaired elements, and only regularises degenerate elements. Once the map is repaired, our approach reduces to those of locally injective methods.
Invertible elasticity is not a suitable substitute for locally injective methods. We deform an elephant in Figure
19 by pushing the boundary vertices to extremes, and compare our RAMIPS energy with SNH [Smith et al.
2018]. While SNH is suitable for invertible simulations, it fails to generate an inversion-free mapping. With a traditional line search, the energy is minimised at a non-injective state, and with a Smith and Schaefer [
2015] line search, the simulation stalls.