This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Computing Harmonic Maps and Conformal Maps on Point Clouds

Tianqi Wu Center of Mathematical Sciences and Applications, Harvard University, Cambridge, MA 02138. Email: [email protected]    Shing-Tung Yau Department of Mathematics, Harvard University, Cambridge, MA 02138. Email: [email protected]
Abstract

We propose a novel meshless method to compute harmonic maps and conformal maps for surfaces embedded in the Euclidean 3-space, using point cloud data only. Given a surface, or a point cloud approximation, we simply use the standard cubic lattice to approximate its ϵ\epsilon-neighborhood. Then the harmonic map of the surface can be approximated by discrete harmonic maps on lattices. The conformal map, or the surface uniformization, is achieved by minimizing the Dirichlet energy of the harmonic map while deforming the target surface of constant curvature. We propose algorithms and numerical examples for closed surfaces and topological disks.

1 Introduction

Roughly speaking, a map between two surfaces is called conformal if it preserves angles, and is called harmonic if it minimizes the stretching energy. Computing harmonic maps and conformal maps has a wide range of applications, such as surface matching, surface parameterization, shape analysis and so on. See [1][2][3][4][5][6][7][8][9][10][11] for examples of applications of conformal maps, and [12][13][14][15][16] for examples of applications of harmonic maps.

Existing methods for computing harmonic maps and conformal maps mostly rely on the triangle mesh approximation of a surface. However, it is often much easier to get point cloud data, rather than the triangle mesh data. Contemporary 3D scanners can easily provide 3D point cloud data sampled from the surfaces of solid objects, but sometimes it is inconvenient to generate meshes upon point clouds. Since point clouds data do not contain information about the connectivity, a lot of algorithms, which were well-established on meshes, cannot be extended to point clouds.

This paper introduces a novel meshless method for computing harmonic maps and conformal maps for a surface in the Euclidean 3-dimensional space. The basic idea is to use a dense 3-dimensional lattice to approximate the ϵ\epsilon-neighborhood of the surface, and then compute the discrete harmonic map from the lattice to the target surface, by minimizing the Dirichlet energy (i.e., the stretching energy). Conformal maps are computed by minimizing the Dirichlet energy of the harmonic maps, as we deform the target surface of constant Gaussian curvature. In this paper, we focus on harmonic diffeomorphisms and conformal diffeomorphisms to surfaces of constant curvature ±1\pm 1 or 0. These maps are particularly useful for global surface parameterizations. More specifically, we propose algorithms and numerical examples for (1) maps to the unit sphere, and (2) maps to flat rectangles, and (3) maps to flat tori, and (4) maps to closed hyperbolic surfaces.

1.1 Previous Works

Comparing to methods for triangle meshes, there are much fewer works on meshless methods of computing conformal and harmonic maps, especially for higher genus surfaces. Guo et al. [17] computed global conformal parameterizations of surfaces by computing holomorphic 1-forms on point clouds. Li et al. [18] computed harmonic volumetric maps by grids discretizations. Meng-Lui [19] developed the theory of computational quasiconformal geometry on point clouds. Using approximations of the differential operators on point clouds, Liang et al. [20] and Choi et al. [21] computed the spherical conformal parameterizations of genus-0 closed surfaces, and Meng et al. [22] computed quasiconformal maps on topological disks. Li-Shi-Sun [23] computed quasiconformal maps from surfaces to planar domain, using the so-called point integral method for discretizing integral equations for point clouds.

There is an extensive literature on computing conformal maps for triangle meshes. Gu-Yau [24][25] developed the method of computing conformal structures of surfaces by computing the discrete holomorphic one-forms. Pinkall-Polthier [13] proposed a method of conformal parameterization by computing a pair of conjugate harmonic functions. Lévy et al. [26] and Lipman [27] and Lui et al. [28] computed conformal or quasiconformal maps by minimizing or controlling the conformal distortion. There is also a big family of methods based on various notions of discrete conformality for triangle meshes, such as circle patterns [29][30][31][32], and inversive distances [33][34], and vertex scalings [35][36][32], and modified vertex scalings [37] [38] [39][40] allowing diagonal switches. Some related convergence results for discrete conformality can be found in [29][41][42][43][44], and other mathematical analysis can be found in [45][46][47][48][49]. Other works on computing conformal maps on triangle meshes include [50][51][52][53][26][54][55][56][57][58].

For computing harmonic maps on triangle meshes, Gaster-Loustau-Monsaingeon [59][60] give detailed discussions on the mathematical analysis and algorithms, and produced a computer software. Notions of discrete Dirichlet energy have been discussed and used to compute discrete harmonic maps, not only in Gaster-Loustau-Monsaingeon’s work [59][60], but also extensively in other works such as [61][13][62][63][64][65][66][67][68].

1.2 Contribution

To the best of the authors’ knowledge, our method is the first meshless method in computing harmonic and conformal maps to surfaces of genus greater than 1.

Existing meshless methods always use approximating differential operators on point clouds, to compute harmonic or conformal maps. Our method provides a novel type of approach, by jumping out of the point clouds to cubic lattices. It also has the following nice properties.

  • The idea of lattice approximation is conceptually simple, and could be implemented for any topological types of surfaces.

  • One can simply tune the density of the lattices to get satisfactory accuracy, within the ability of the computing powers.

  • Numerical experiments indicate that sparse lattices already work well.

  • The lattice structure should be suitable for parallel computation, and multi-grid methods.

We proposed algorithms of computing harmonic maps and conformal maps for any closed surfaces and topological disks, embedded in 3\mathbb{R}^{3}, to constant curvature surfaces.

1.3 Notations

Given a point, or equivalently a vector xx in 3\mathbb{R}^{3}, denote

|x|2=x12+x22+x32|x|_{2}=\sqrt{x_{1}^{2}+x_{2}^{2}+x_{3}^{2}}

as the l2l^{2}-norm of xx.

Given two points x,y3x,y\in\mathbb{R}^{3}, denote

d(x,y)=|xy|2d(x,y)=|x-y|_{2}

as the distance between xx and yy.

Given a subset A3A\subset\mathbb{R}^{3} and a point x3x\in\mathbb{R}^{3}, denote

d(x,A)=infyAd(x,y)d(x,A)=\inf_{y\in A}d(x,y)

as the distance from xx to AA.

Given a subset A3A\subset\mathbb{R}^{3} and r>0r>0, denote

B(A,r)={x3:yA,s.t.|xy|2<r}B(A,r)=\{x\in\mathbb{R}^{3}:\exists y\in A,s.t.~{}|x-y|_{2}<r\}

as the rr-neighborhood of the subset AA.

Given a closed surface MM embedded in 3\mathbb{R}^{3}, we say a finite subset P3P\subset\mathbb{R}^{3} is a δ\delta-point cloud of MM if

PB(M,δ)andMB(P,δ).P\subset B(M,\delta)\quad\text{and}\quad M\subset B(P,\delta).

If G=(V,E)G=(V,E) is an undirected connected simple graph, and w>0Ew\in\mathbb{R}^{E}_{>0} is an edge weight, then L=LG,wL=L_{G,w} denotes the discrete Laplacian such that for any f:Vkf:V\rightarrow\mathbb{R}^{k},

(Lf)(i)=j:ijEwij(f(j)f(i)).(Lf)(i)=\sum_{j:ij\in E}w_{ij}(f(j)-f(i)).

1.4 Organization of the Paper and Acknowledgement

The remaining of the paper is organized as follows. We review the basic mathematical theory in Section 2, and then introduce the lattice approximation of a surface in Section 3. The algorithms, as well as numerical examples, are given in Section 4, 5, 6, 7, for the cases of spheres, rectangles, flat tori, and hyperbolic surfaces respectively.

This work is partially supported by Center of Mathematical Sciences and Applications at Harvard University, and Yau Mathematical Sciences Center at Tsinghua University, and NSF 1760471.

2 Mathematical Background

2.1 Conformal Maps and the Uniformizations

We give a formal definition of a conformal map as follows.

Definition 2.1 (Conformal Map)

A diffeomorphsim ff between two Riemannian surfaces (M,g)(M,g) and (N,h)(N,h) is called a conformal map if fh=λ2gf^{*}h=\lambda^{2}g for some smooth positive function λ\lambda, or equivalently, the local angles are preserved under ff.

In this paper we always assume that a conformal map is a diffeomorphism between two surfaces. By the celebrated uniformization theorem, it is well known that any closed orientable surface is conformally equivalent to a surface of constant Gaussian curvature.

Theorem 2.2 (Uniformization for Closed Surfaces)

Given a closed orientable Riemannian surface (M,g)(M,g), there exists a Riemannian surface (N,h)(N,h), with constant Gaussian curvature KK, and a conformal map f:MNf:M\rightarrow N such that

  1. (a)

    K=1K=1 if MM has genus 0 and

  2. (b)

    K=0K=0 if MM has genus 11, and

  3. (c)

    K=1K=-1 if MM has genus >1>1.

The Riemannian surface (N,h)(N,h) above is called a uniformization of (M,g)(M,g) and could be viewed as a canonical representative in the conformal equivalence class. A closed surface (N,h)(N,h) of constant curvature 1-1 or 0 can be naturally represented as a planar domain, after a few cuts.

  1. (a)

    If (N,h)(N,h) has constant curvature 0, then it is isometric to the flat complex plane \mathbb{C} modulo a lattice τ\mathbb{Z}\oplus\mathbb{Z}\tau where τ\tau\in\mathbb{C} and Im(τ)>0Im(\tau)>0. If we properly cut two loops on NN, then (N,h)(N,h) can be displayed isometrically as a planar domain in \mathbb{C}.

  2. (b)

    if (N,h)(N,h) has constant curvature -1, then it is isometric to the hyperbolic plane 2\mathbb{H}^{2} modulo a discrete subgroup Γ\Gamma of the orientation-preserving isometry group Isom+(2)Isom^{+}(\mathbb{H}^{2}). In the Poincaré disk model, the hyperbolic plane 2\mathbb{H}^{2} is identified as the unit disk {z:|z|<1}\{z\in\mathbb{C}:|z|<1\} with the complete Riemannian metric

    4|dz|2(1|z|2)2=4(dx2+dy2)(1x2y2)2.\frac{4|dz|^{2}}{(1-|z|^{2})^{2}}=\frac{4(dx^{2}+dy^{2})}{(1-x^{2}-y^{2})^{2}}.

    Similar to the flat case, if we properly cut a few loops, (N,h)(N,h) can be displayed, isometrically in the hyperbolic sense, as a domain in the unit disk {|z|<1}\{|z|<1\}.

So for genus 0 surfaces, there is essentially a unique conformal equivalence class. For genus 1 surfaces, the conformal equivalence classes can be parameterized by a complex number τ\tau with Im(τ)>0Im(\tau)>0. For a surface MM with genus >1>1, the conformal equivalence classes can be parameterized by the generators of the discrete subgroup Γ\Gamma of Isom+(2)Isom^{+}(\mathbb{H}^{2}). As shown above, a surface of constant curvature ±1\pm 1 or 0 can always been identified as a planar domain, by a stereographic projection or cutting loops. So computing diffeomorphisms to such surfaces gives rise to global parameterizations and surface flattening, which have fundamental applications in computational graphics.

For nonclosed surfaces, the most important case is the topological disk. Assume (M,g)(M,g) is a Riemannian surface homeomorphic to a closed disk, then again by the uniformization theorem it is conformally equivalent to a closed unit disk. However, for our convenience in utilizing the method of harmonic maps, we consider conformal maps and harmonic maps to rectangles instead of disks. The following uniformization-type theorem for rectangles is well-known.

Theorem 2.3

Assume (M,g)(M,g) is a Riemannian surface homeomorphic to a closed disk. Given 4 ordered points A1,A2,A3,A4A_{1},A_{2},A_{3},A_{4} on M\partial M, there exists unique a>0a\in\mathbb{R}_{>0} and a conformal map

f:M[0,a1]×[0,a]f:M\rightarrow[0,a^{-1}]\times[0,a]

such that

f(A1)=(0,0),f(A2)=(a1,0),f(A3)=(a1,a),f(A4)=(0,a).f(A_{1})=(0,0),\quad f(A_{2})=(a^{-1},0),\quad f(A_{3})=(a^{-1},a),\quad f(A_{4})=(0,a).

2.2 Harmonic Maps

Let (M,g)(M,g) and (N,h)(N,h) be two smooth Riemannian surfaces. The Dirichlet energy, i.e., the stretching energy of a smooth map f:MNf:M\rightarrow N is formally defined as

(f)=12Mdf2𝑑vg\mathcal{E}(f)=\frac{1}{2}\int_{M}\|df\|^{2}dv_{g}

where dvgdv_{g} denotes the volume element on (M,g)(M,g), and df\|df\| is the norm of the differential of ff, with respect to the induced metric on TMf(TN)T^{*}M\otimes f^{*}(TN).

Definition 2.4

A smooth map f:MNf:M\rightarrow N is called harmonic if it is a critical point of the Dirichlet Energy.

Smooth harmonic maps have been extensively studied. See [69][70] for examples. Here we focus on harmonic diffeomorphisms to surfaces of constant curvature ±1\pm 1 or 0, and harmonic diffeomorphisms to rectangles with given boundary correspondences. Some relevant well-known facts are summarized as the following 2 theorems.

Theorem 2.5

Assume M,NM,N are two closed orientable Riemannian surfaces, and NN has constant curvature K=±1K=\pm 1 or 0, and ff is a diffeomorphism from MM to NN.

  1. (a)

    (f)Area(N),\mathcal{E}(f)\geq Area(N), and the equality holds if and only if ff is conformal.

  2. (b)

    If ff is harmonic, ff minimizes the Dirichlet energy in its homotopy class.

  3. (c)

    If ff is conformal, then ff is harmonic.

  4. (d)

    If ff is harmonic and NN is a unit sphere, then ff is conformal.

  5. (e)

    ff is always homotopic to a harmonic diffeomorphism, which is (i) unique up to a Möbius transformation if K=1K=1, and (ii) unique up to a translation if K=0K=0, and (iii) unique if K=1K=-1.

Theorem 2.6

Assume

  1. (i)

    (M,g)(M,g) is a Riemannian surface homeomorphic to a closed disk, and

  2. (ii)

    A1,A2,A3,A4A_{1},A_{2},A_{3},A_{4} are 4 ordered points on M\partial M, and

  3. (iii)

    a>0a\in\mathbb{R}_{>0}, and

  4. (iv)

    \mathcal{F} contains all the diffeomorphisms

    f:M[0,a1]×[0,a]f:M\rightarrow[0,a^{-1}]\times[0,a]

    such that

    f(A1)=(0,0),f(A2)=(a1,0),f(A3)=(a1,a),f(A4)=(0,a).f(A_{1})=(0,0),\quad f(A_{2})=(a^{-1},0),\quad f(A_{3})=(a^{-1},a),\quad f(A_{4})=(0,a).

Then

  1. (a)

    For any ff\in\mathcal{F}, [f]1\mathcal{E}[f]\geq 1 and the equality holds if and only if ff is conformal.

  2. (b)

    There exists a unique harmonic map ff\in\mathcal{F}, and it is the unique minimizer of the Dirichlet energy in \mathcal{F}.

  3. (c)

    If ff\in\mathcal{F} is conformal, then it is harmonic.

By part (b) and (e) of Theorem 2.5, for closed surfaces it makes good sense to compute the harmonic map within a fixed homotopy class. Such a topological constrain also often naturally arises in applications. Part (b) of Theorem 2.5 and part (b) of Theorem 2.6 somewhat justify the physical intuition that harmonic maps minimize the stretching energy. Minimizing the Dirichlet energy would also be an important idea for computing harmonic maps. Part (c) of Theorem 2.5 and part (c) of Theorem 2.6 connect the notions of conformal maps and harmonic maps. So conformal maps are really special harmonic maps, and the converse is true if the target surface is a unit sphere. Part (a) of Theorem 2.5 and Part (a) of Theorem 2.6 point out that conformal maps minimize the normalized Dirichlet energy (f)/Area(N)\mathcal{E}(f)/Area(N) among the harmonic maps. This optimality provides a method to compute the uniformization using harmonic maps.

  1. (a)

    If MM is a topological sphere, a harmonic diffeomorphism from (M,g)(M,g) to a unit sphere is already a conformal map.

  2. (b)

    If MM is a genus 1 closed orientable surface, one can first compute the harmonic map to a flat torus (N,h)=/τ(N,h)=\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau for some parameter τ\tau, and then minimize the normalized Dirichlet energy, by tuning the parameter τ\tau in the upper half plane.

  3. (c)

    If MM is a closed orientable surface with genus >1>1, one can first compute the harmonic map to a hyperbolic surface (N,h)=2/Γ(N,h)=\mathbb{H}^{2}/\Gamma for some discrete subgroup Γ\Gamma of Isom+(2)Isom^{+}(\mathbb{H}^{2}), and then minimize the normalized Dirichlet energy, by continuously deforming the subgroup Γ\Gamma.

  4. (d)

    If MM is homeomorphic to a closed disk, then one can compute the harmonic map to a rectangle [0,a1]×[0,a][0,a^{-1}]\times[0,a], and then minimize the Dirichlet energy, by tuning the parameter a>0a\in\mathbb{R}_{>0}.

2.3 Discrete Harmonic Maps

Since we will be computing discrete harmonic maps on lattice graphs, here we briefly introduce the theory of discrete harmonic maps, which has been well-studied. See [68][71][61] for references of the related definitions and theorems. In this subsection, we always assume that G=(V,E)G=(V,E) is an undirected connected simple graph, and w>0Ew\in\mathbb{R}^{E}_{>0} denotes the edge weight, and (N,h)(N,h) is a flat rectangle or a closed orientable surface of constant curvature ±1\pm 1 or 0.

A discrete map ff from GG to (N,h)(N,h) maps each vertex iVi\in V to a point in NN, and each edge ijEij\in E to a geodesic segment in NN with endpoints f(i),f(j)f(i),f(j). Given a discrete map ff, we denote lij(f)l_{ij}(f) as the length of f(ij)f(ij). Assuming the stretching energy on a single edge ijij is 12wijlij2\frac{1}{2}w_{ij}l_{ij}^{2}, we have the following definition of the discrete Dirichlet energy.

Definition 2.7

Given a discrete map ff from (G,w)(G,w) to (N,h)(N,h), the discrete Dirichlet energy is defined to be

(f)=12ijEwijlij(f)2.\mathcal{E}(f)=\frac{1}{2}\sum_{ij\in E}w_{ij}\cdot l_{ij}(f)^{2}.

The notion of discrete harmonic maps can be defined by the balanced conditions on vertices.

Definition 2.8

A discrete map ff is harmonic if for any iVi\in V

j:ijEwijlij(f)eij=0,\sum_{j:ij\in E}w_{ij}\cdot l_{ij}(f)\cdot\vec{e}_{ij}=0, (1)

where eij\vec{e}_{ij} is the unit vector in Tf(i)NT_{f(i)}N representing the direction of the geodesic f(ij)f(ij).

This definition consists with the continuous one in the following sense.

Proposition 2.9

A discrete harmonic map ff is a critical point of \mathcal{E}, if NN is not a sphere or lij(f)<πl_{ij}(f)<\pi for any ijEij\in E.

Here the assumption on NN and lij(f)l_{ij}(f) is to guarantee that locally ff can be parameterized by [f(i)]iVNV[f(i)]_{i\in V}\subset N^{V}. For the cases of non-positive curvatures, we have the following two well-known theorems partially analogue to Theorem 2.5 and 2.6.

Theorem 2.10

If (N,h)(N,h) is closed and has constant curvature 0 or 1-1, then any discrete map f0f_{0} from GG to NN is homotopic to a discrete harmonic map ff, which is a minimizer of the discrete Dirichlet energy \mathcal{E} in the homotopy class. Such discrete harmonic map ff is

  1. (a)

    unique up to a translation, if (N,h)(N,h) is a flat torus, and

  2. (b)

    unique if (N,h)(N,h) has constant curvature 1-1.

Theorem 2.11

Assume (N,h)(N,h) is a flat rectangle with four ordered edges B1,B2,B3,B4B_{1},B_{2},B_{3},B_{4}, and V1,V2,V3,V4V_{1},V_{2},V_{3},V_{4} are 4 subsets of VV such that V1V3=V_{1}\cap V_{3}=\emptyset and V2V4=V_{2}\cap V_{4}=\emptyset. Then there exists a unique discrete map ff from GG to NN such that

f(V1)B1,f(V2)B2,f(V3)B3,f(V4)B4,f(V_{1})\subset B_{1},\quad f(V_{2})\subset B_{2},\quad f(V_{3})\subset B_{3},\quad f(V_{4})\subset B_{4},

and the balanced condition (1) holds for any iVV1V2V3V4i\in V-V_{1}\cup V_{2}\cup V_{3}\cup V_{4}. Such constrained discrete harmonic map minimizes the discrete Dirichlet energy (f)\mathcal{E}(f) among all the constrained maps.

3 Cubic Lattice Approximation

3.1 Construction of Lattices

Assume that MM is a closed smooth surface embedded in 3\mathbb{R}^{3}, and PP is a δ\delta-point cloud of MM. If δ\delta is sufficiently small, comparing to some constant ϵ>0\epsilon>0, then the ϵ\epsilon-neighborhood B(P,ϵ)B(P,\epsilon) of PP would be a good approximation of the ϵ\epsilon-neighborhood B(M,ϵ)B(M,\epsilon) of MM. If nn is sufficiently large, comparing to 1/ϵ1/\epsilon, then

V=B(P,ϵ)(/n)3V=B(P,\epsilon)\cap(\mathbb{Z}/n)^{3}

would be a good cubic lattice approximation of B(P,ϵ)B(M,ϵ)B(P,\epsilon)\approx B(M,\epsilon) (see Figure 1). Connect two vertices x,yx,y in VV by an edge if d(x,y)=1/nd(x,y)=1/n, and then we obtain a lattice graph G=(V,E)G=(V,E). Since we are using standard cubic lattice, the weight function is set to be constant wij=1w_{ij}=1. Such weighted graph (G,w)(G,w) would be our lattice approximation of MM.

In practice, if the pointcloud data PP is given, we need to choose a proper ϵ>0\epsilon>0 such that

  1. (a)

    ϵ\epsilon is sufficiently large such that B(P,ϵ)B(P,\epsilon) forms a connected domain in 3\mathbb{R}^{3} and has uniform thickness, and

  2. (b)

    ϵ\epsilon is sufficiently small such that B(P,ϵ)B(M,ϵ)B(P,\epsilon)\approx B(M,\epsilon) is a good approximation of MM.

For our second parameter nn, if we choose a larger integer nn, the lattice graph GG should approximates the domain B(P,ϵ)B(M,ϵ)B(P,\epsilon)\approx B(M,\epsilon) better. However, in practice we find that sparse lattices already work well.

Refer to caption
Refer to caption
Figure 1: Lattice approximation of a cat

3.2 Trilinear interpolation

Suppose G=(V,E)G=(V,E) is a lattice approximation of PP constructed as before, then given a function f:Vkf:V\rightarrow\mathbb{R}^{k}, we can use the standard trilinear interpolation to extend ff to the point cloud PP. Assume p=(p1,p2,p3)Pp=(p_{1},p_{2},p_{3})\in P lies inside a cubic cell [x0,x1]×[y0,y1]×[z0,z1][x_{0},x_{1}]\times[y_{0},y_{1}]\times[z_{0},z_{1}] of the lattice GG. Denote aijk=f(xi,yj,zk)a_{ijk}=f(x_{i},y_{j},z_{k}) where i,j,k={0,1}i,j,k=\in\{0,1\}, and

x0=p1x0,y0\displaystyle x_{0}^{\prime}=p_{1}-x_{0},\quad y_{0}^{\prime} =p2y0,z0=p3z0,\displaystyle=p_{2}-y_{0},\quad z_{0}^{\prime}=p_{3}-z_{0},
x1=x1p1,y1\displaystyle x_{1}^{\prime}=x_{1}-p_{1},\quad y_{1}^{\prime} =y1p2,z1=z1p3,\displaystyle=y_{1}-p_{2},\quad z_{1}^{\prime}=z_{1}-p_{3},

then

f(p)=n3i,j,k{0,1}aijkxiyjzkf(p)=n^{3}\sum_{i,j,k\in\{0,1\}}a_{ijk}x^{\prime}_{i}y^{\prime}_{j}z^{\prime}_{k}

is the trilinear interpolation of ff on PP.

4 Computing Harmonic and Conformal Maps to Spheres

By part (c)(d) of Theorem 2.5, in the spherical case harmonic maps and conformal maps are really the same. This section solves the following problem of computing harmonic and conformal maps.

Problem 4.1

Assume that MM is a genus 0 closed smooth surface embedded in 3\mathbb{R}^{3}. Given a point cloud approximation PP of MM, how to compute harmonic diffeomorphisms, i.e., conformal diffeomorphisms from MM to the unit sphere?

4.1 Algorithm

Our method is smoothly adapted from Gu-Yau’s method [24] for computing harmonic maps to spheres. First we pick a lattice approximation G=(V,E)G=(V,E) as in Section 3, and then

  1. (1)

    compute the (approximated) discrete harmonic map f:G𝕊2f:G\rightarrow\mathbb{S}^{2}, and

  2. (2)

    extend ff to PP by trilinear interpolation, and then do a normalization xx/|x|2x\mapsto x/|x|_{2} and get an approximation of a harmonic map from MM to the unit sphere.

Step (2) is pretty clear and simple, so let us discuss the details of step (1). Recall that a discrete map ff from GG to 𝕊23\mathbb{S}^{2}\subset\mathbb{R}^{3} is harmonic if it is a critical point of the energy

(f)=12ijwijlij2(f).\mathcal{E}(f)=\frac{1}{2}\sum_{ij}w_{ij}l_{ij}^{2}(f).

If the edge length lij(f)l_{ij}(f) is small, lij(f)|f(j)f(i)|2l_{ij}(f)\approx|f(j)-f(i)|_{2}, and the discrete energy is approximated by

0(f)=12ijEwij|f(j)f(i)|22.\mathcal{E}_{0}(f)=\frac{1}{2}\sum_{ij\in E}w_{ij}|f(j)-f(i)|_{2}^{2}.

So for simplicity we will minimize 0(f)\mathcal{E}_{0}(f) instead of (f)\mathcal{E}(f) to compute the approximation of the discrete harmonic map. Since

0f(i)=(Lf)(i),\frac{\partial\mathcal{E}_{0}}{\partial f(i)}=-(Lf)(i),

a critical point ff of 0\mathcal{E}_{0} satisfies that for any iVi\in V

(Lf)(i)Tf(i)𝕊2,(Lf)(i)\perp T_{f(i)}\mathbb{S}^{2},

i.e.,

(Lf)(i)=0(L^{\|}f)(i)=0 (2)

where Lf(i)L^{\|}f(i) denotes the tangential component of Lf(i)Lf(i), i.e., the orthogonal projection of Lf(i)Lf(i) to the plane f(i)f(i)^{\perp}. We view a map ff satisfying equation (2) as an approximation of a discrete harmonic map, and wish to compute it by the following discrete heat flow on 𝕊2\mathbb{S}^{2}

dfdt=Lf.\frac{df}{dt}=-L^{\|}f.

We can simply solve the above ODE by the explicit Euler’s method, with a normalization after each iteration to keep that all the points are on the unit sphere. More specifically, if the step size is δt\delta t we have that

ft+δt=π(ftδtLft)f^{t+\delta t}=\pi\circ(f^{t}-\delta t\cdot L^{\|}f^{t})

where π(x)=x/|x|2\pi(x)=x/|x|_{2}.

Two harmonic maps to a sphere can differ by a Möbius transformation. So a smooth harmonic map to a sphere is not unique, and would have large distortion if most of the mass is concentrated near a point of the sphere. To avoid such big distortion, we add a correction mapping mm in each iteration. Here the correction mapping mm first translate all the points f(i)f(i)’s in 3\mathbb{R}^{3} to make the center of mass be at the origin, and then do a normalization xx/|x|2x\mapsto x/|x|_{2}. Now the modified iteration is

ft+δt=mπ(ftδtLft),f^{t+\delta t}=m\circ\pi\circ(f^{t}-\delta t\cdot L^{\|}f^{t}), (3)

and we have the following algorithm.

Algorithm 1 Harmonic and Conformal Maps to Spheres

Input: A point cloud PP in 3\mathbb{R}^{3}
Output: A harmonic map ff from PP to the unit sphere

1:Translate PP such that the origin lies inside of PP.
2:Choose parameters ϵ\epsilon and nn, and then compute the lattice approximation G=(V,E)G=(V,E).
3:Compute f(x)=π(x)f(x)=\pi(x) on VV as the initial map.
4:Do the iteration by equation (3), until the function ff converges.
5:Extend ff to PP by trilinear interpolation.
6:Return π(f|P)\pi\circ(f|_{P}).

4.2 Numerical Examples

See the two numerical examples in Figure 2 and Figure 3.

Refer to caption
Refer to caption
Figure 2: Harmonic map from a moai to a unit sphere
Refer to caption
Refer to caption
Figure 3: Harmonic map from retinal to a unit sphere

5 Computing Harmonic and Conformal Maps to Rectangles

This section solves the following problem on computing harmonic and conformal maps.

Problem 5.1

Assume that MM is a smooth surface embedded in 3\mathbb{R}^{3}, and is homeomorphic to a closed disk, and γ1,γ2,γ3,γ4\gamma_{1},\gamma_{2},\gamma_{3},\gamma_{4} are 4 ordered arcs on M\partial M divided by 4 points on M\partial M. Now we are given the data (P,P1.P2,P3,P4)(P,P_{1}.P_{2},P_{3},P_{4}) such that PP is a point cloud approximating MM, and PiP_{i} is a subset of PP approximating γi\gamma_{i}. Here are two computational problems.

  1. (1)

    Compute the harmonic map f:M[0,a1]×[0,a]f:M\rightarrow[0,a^{-1}]\times[0,a] for a given a>0a>0 such that

    f(γ1)=\displaystyle f(\gamma_{1})= [0,a1]×{0},\displaystyle[0,a^{-1}]\times\{0\}, (4)
    f(γ2)=\displaystyle f(\gamma_{2})= {a1}×[0,a],\displaystyle\{a^{-1}\}\times[0,a], (5)
    f(γ3)=\displaystyle f(\gamma_{3})= [0,a1]×{a},\displaystyle[0,a^{-1}]\times\{a\}, (6)
    f(γ4)=\displaystyle f(\gamma_{4})= {0}×[0,a].\displaystyle\{0\}\times[0,a]. (7)
  2. (2)

    Find a positive number a>0a>0 and a conformal map f:M[0,a1]×[0,a]f:M\rightarrow[0,a^{-1}]\times[0,a] such that the above boundary conditions (4)(5)(6)(7) are satisfied.

We will first discuss the harmonic maps in Section 5.1, and then discuss the conformal maps in Section 5.2.

5.1 Algorithm for Harmonic Maps

First we construct a lattice approximation G=(V,E)G=(V,E) of PP as in Section 3, and let Vi=xPiVxV_{i}=\cup_{x\in P_{i}}V_{x} be the lattice approximation of γi\gamma_{i}, where VxV_{x} consists of the 8 vertices of the cubic cell of GG containing xPx\in P. Then we would like to

  1. (1)

    compute the (constrained) discrete harmonic map f:G[0,a1]×[0,a]f:G\rightarrow\mathbb{[}0,a^{-1}]\times[0,a], such that

    f(V1)\displaystyle f(V_{1})\subset [0,a1]×{0},\displaystyle[0,a^{-1}]\times\{0\},
    f(V2)\displaystyle f(V_{2})\subset {a1}×[0,a],\displaystyle\{a^{-1}\}\times[0,a],
    f(V3)\displaystyle f(V_{3})\subset [0,a1]×{a},\displaystyle[0,a^{-1}]\times\{a\},
    f(V4)\displaystyle f(V_{4})\subset {0}×[0,a],\displaystyle\{0\}\times[0,a],

    and

  2. (2)

    extend ff to PP by trilinear interpolation, and then f|Pf|_{P} is our approximation of the desired harmonic map.

Step (2) is clear and simple. Computing f=(f1,f2)f=(f^{1},f^{2}) in step (1) amounts to solve the following 2 systems of linear equations

{f1(i)=0 if iV4f1(i)=a1 if iV2Lf1(i)=0 if iVV4V2,{f2(i)=0 if iV1f2(i)=a if iV3Lf2(i)=0 if iVV1V3.\left\{\begin{array}[]{lll}f^{1}(i)=0&\quad\text{ if }&i\in V_{4}\\ f^{1}(i)=a^{-1}&\quad\text{ if }&i\in V_{2}\\ Lf^{1}(i)=0&\quad\text{ if }&i\in V-V_{4}-V_{2}\end{array}\right.,\left\{\begin{array}[]{lll}f^{2}(i)=0&\quad\text{ if }&i\in V_{1}\\ f^{2}(i)=a&\quad\text{ if }&i\in V_{3}\\ Lf^{2}(i)=0&\quad\text{ if }&i\in V-V_{1}-V_{3}\end{array}\right.. (8)

These two equations can be solved efficiently by the preconditioned conjugate gradient method.

In a summary we have the following Algorithm 2.

Algorithm 2 Harmonic Maps to Rectangles

Input: A point cloud PP in 3\mathbb{R}^{3} as an approximation of a surface MM, and 4 subsets P1,P2,P3,P4P_{1},P_{2},P_{3},P_{4} as approximations of 4 boundary arcs of MM, and a parameter a>0a\in\mathbb{R}_{>0}.
Output: A harmonic map ff from PP to the rectangle [0,a1]×[0,a][0,a^{-1}]\times[0,a].

1:Choose parameters ϵ\epsilon and nn, and then compute the lattice approximation (G,V1,V2,V3,V4)(G,V_{1},V_{2},V_{3},V_{4}) of (P,P1,P2,P3,P4)(P,P_{1},P_{2},P_{3},P_{4}).
2:Solve the two systems of linear equations (8).
3:Extend ff to PP by trilinear interpolation
4:Return f|Pf|_{P}.

5.2 Algorithm for Conformal Maps

Assume faf_{a} is the discrete harmonic map from the lattice approximation G=(V,E)G=(V,E) to the rectangle [0,a1]×[0,a][0,a^{-1}]\times[0,a]. To compute conformal maps, we only need to find a proper edge length aa such that the computed discrete harmonic map faf_{a} approximates a conformal mapping. Inspired by part (a) of Theorem 2.6, we compute the conformal map by minimizing (fa)\mathcal{E}(f_{a}) over a>0a\in\mathbb{R}_{>0}. If a¯\bar{a} is the minimizer, then fa¯:V[0,a¯1]×[0,a¯]f_{\bar{a}}:V\rightarrow[0,\bar{a}^{-1}]\times[0,\bar{a}] would approximate a conformal map.

Our method is summarized as Algorithm 3.

Algorithm 3 Conformal Maps to Rectangles

Input: A point cloud PP in 3\mathbb{R}^{3} as an approximation of a surface MM, and 4 subsets P1,P2,P3,P4P_{1},P_{2},P_{3},P_{4} as approximations of 4 boundary arcs of MM.
Output: A parameter aa, and a conformal map ff from PP to the rectangle [0,a1]×[0,a][0,a^{-1}]\times[0,a].

1:Choose parameters ϵ\epsilon and nn, and then compute the lattice approximation (G,V1,V2,V3,V4)(G,V_{1},V_{2},V_{3},V_{4}) of (P,P1,P2,P3,P4)(P,P_{1},P_{2},P_{3},P_{4}).
2:For a given a>0a\in\mathbb{R}_{>0}, solve the two systems of linear equations (8) and get a discrete harmonic map faf_{a}.
3:Compute the discrete Dirichlet energy (fa)\mathcal{E}(f_{a}).
4:Compute the minimizer a¯\bar{a} of (fa)\mathcal{E}(f_{a}), and fa¯f_{\bar{a}}.
5:Extend fa¯f_{\bar{a}} to PP by trilinear interpolation.
6:Return a¯\bar{a} and fa¯|Pf_{\bar{a}}|_{P}.

5.3 Numerical Examples

Here are two numerical examples for harmonic maps and conformal maps respectively.

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 4: Harmonic maps to rectangles
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 5: Conformal maps to rectangles

6 Computing Harmonic and Conformal Maps to Flat Tori

This section solves the following problem on computing harmonic and conformal maps.

Problem 6.1

Assume that MM is a genus 1 closed smooth surface embedded in 3\mathbb{R}^{3}, and we are given a point cloud approximation PP of MM.

  1. (1)

    How to compute a harmonic map

    f:M/τf:M\rightarrow\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau

    for a given τ\tau with Im(τ)>0Im(\tau)>0?

  2. (2)

    How to find the complex number τ\tau with Im(τ)>0Im(\tau)>0 and the map

    f:M/τf:M\rightarrow\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau

    such that ff is conformal?

We will first discuss the harmonic maps in Section 6.1, and then discuss the conformal maps in Section 6.2.

6.1 Algorithm for Harmonic Maps

First we construct a lattice approximation G=(V,E)G=(V,E) as in Section 3, and then need to

(1) compute the discrete harmonic map ff from GG to /τ\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau, or equivalently, to a fundamental domain in \mathbb{C}, and

(2) extend ff to PP by trilinear interpolation, and then f|Pf|_{P} represents an approximation of the desired harmonic map.

Step (2) is kind of clear and simple, so let us discuss the details of step (1). First we ”cut” the lattice GG along two ”loops” γ1,γ2\gamma_{1},\gamma_{2}, so that we can represent a discrete map from GG to a torus as a map from VV to a planar domain in \mathbb{C}. Secondly we fix the homotopy class of discrete maps f:G/τf:G\rightarrow\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau, by requiring that γ1\gamma_{1} corresponds to the translation zz+1z\mapsto z+1, and γ2\gamma_{2} corresponds to the translation zz+τz\mapsto z+\tau. Now computing the discrete harmonic map in the fixed homotopy class amounts to solve a system of complex linear equations. For a vertex ii that is away from the loops γ1\gamma_{1} and γ2\gamma_{2}, the balanced condition (1) gives us that

Lf(i)=0.Lf(i)=0.

Things become a bit subtle when the vertex ii is near a loop. Assume the edge ijij pass through the loop γ1\gamma_{1}, and lij(f)l_{ij}(f) is small, and all the other edges adjacent to vertex ii do not pass through γ1\gamma_{1} or γ2\gamma_{2}. Then

f(j)f(i)±τ,f(j)\approx f(i)\pm\tau,

where the sign depends on the orientation of γ1\gamma_{1} and the relative position between γ1\gamma_{1} and ii. For such a vertex ii, the corrected balanced condition should be

Lf(i)=±τ.Lf(i)=\pm\tau.

Similar corrections should be made for all the edges passing through γ1\gamma_{1} or γ2\gamma_{2}. After making all the corrections, we arrived at a system of complex linear equations of the form

Lf(i)=b(i),iLf(i)=b(i),\quad\forall i (9)

where b(i)b(i) is computed by adding up all the correction terms. The equation (9) can be solved efficiently by the preconditioned conjugate gradient method.

In a summary we have the following Algorithm 4.

Algorithm 4 Harmonic Maps to Flat Tori

Input: A point cloud PP in 3\mathbb{R}^{3} as an approximation of a surface MM, and a parameter τ\tau\in\mathbb{C} with Im(τ)>0Im(\tau)>0.
Output: A harmonic map ff from PP to the flat torus /τ\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau.

1:Choose parameters ϵ\epsilon and nn, and then compute the lattice approximation G=(V,E)G=(V,E).
2:Choose two ”loops” γ1,γ2\gamma_{1},\gamma_{2} in GG.
3:Compute the total correction term b(i)b(i)’s.
4:Solve the linear systems (9).
5:Extend ff to PP by trilinear interpolation.
6:Return f|Pf|_{P}.

6.2 Algorithm for Conformal Maps

Assume that fτf_{\tau} is the discrete harmonic map from the lattice approximation G=(V,E)G=(V,E) to the flat torus /τ\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau. Inspired by part (a) of Theorem 2.5, we compute the conformal map by minimizing

(fτ)Area(/τ¯)=(fτ)Im(τ)\frac{\mathcal{E}(f_{\tau})}{Area(\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\bar{\tau})}=\frac{\mathcal{E}(f_{\tau})}{Im(\tau)}

over the parameter τ\tau. If τ¯\bar{\tau} is the minimizer, then fτ¯:V/τ¯f_{\bar{\tau}}:V\rightarrow\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}{\bar{\tau}} would approximate a conformal map.

Our method is summarized as Algorithm 5.

Algorithm 5 Conformal Maps to Flat Tori

Input: A point cloud PP in 3\mathbb{R}^{3} as an approximation of a surface MM.
Output: A parameter τ\tau\in\mathbb{C} with Im(τ)>0Im(\tau)>0, and a conformal map ff from PP to the flat torus /τ\mathbb{C}/\mathbb{Z}\oplus\mathbb{Z}\tau.

1:Choose parameters ϵ\epsilon and nn, and then compute the lattice approximation G=(V,E)G=(V,E).
2:Choose two ”loops” γ1,γ2\gamma_{1},\gamma_{2} in GG.
3:Compute the total correction term b(i)b(i)’s.
4:Solve the linear systems (9).
5:Compute the normalized discrete Dirichlet energy (fτ)/Im(τ)\mathcal{E}(f_{\tau})/Im(\tau).
6:Compute the minimizer τ¯\bar{\tau} of (fτ)/Im(τ)\mathcal{E}(f_{\tau})/Im(\tau), and fτ¯f_{\bar{\tau}}.
7:Extend fτ¯f_{\bar{\tau}} to PP by trilinear interpolation.
8:Return τ¯\bar{\tau} and fτ¯|Pf_{\bar{\tau}}|_{P}.

6.3 Numerical Examples

Here are two numerical examples for harmonic maps and conformal maps respectively.

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 6: Harmonic maps to flat tori
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 7: Conformal maps to flat tori

7 Computing Harmonic and Conformal Maps to Hyperbolic Surfaces

This section solves the following problem on computing harmonic and conformal maps.

Problem 7.1

Assume that MM is a genus 1 closed smooth surface embedded in 3\mathbb{R}^{3}, and we are given a point cloud approximation PP of MM.

  1. (1)

    How to compute a harmonic map

    f:M2/Γf:M\rightarrow\mathbb{H}^{2}/\Gamma

    for a given closed hyperbolic surface 2/Γ\mathbb{H}^{2}/\Gamma homeomorphic to MM?

  2. (2)

    How to find the discrete subgroup Γ\Gamma of Isom+(2)Isom^{+}(\mathbb{H}^{2}) and the map

    f:M2/Γf:M\rightarrow\mathbb{H}^{2}/\Gamma

    such that ff is conformal?

We will first discuss the harmonic maps in Section 7.1, and then discuss the conformal maps in Section 7.2.

7.1 Algorithm for Harmonic Maps

First we construct a lattice approximation G=(V,E)G=(V,E) as in Section 3, and then need to

(1) compute the discrete harmonic map ff from GG to 2/Γ\mathbb{H}^{2}/\Gamma, or equivalently, to a fundamental domain in the unit disk representation 2={|z|<1}\mathbb{H}^{2}=\{|z|<1\}, and

(2) extend ff to PP by trilinear interpolation, and then f|Pf|_{P} represents an approximation of the desired harmonic map.

Step (2) is kind of clear and simple, so let us discuss the details of step (1). First we need to ”cut” the lattice GG along 2genus(M)2\cdot genus(M) ”loops” γi\gamma_{i}, so that we can represent a discrete map from GG to a hyperbolic surface as a map from VV to a planar domain in the unit disk. Secondly we fix the homotopy class of discrete maps f:G2/Γf:G\rightarrow\mathbb{H}^{2}/\Gamma, by requiring that each loop γi\gamma_{i} corresponds to a certain deck transformation αi\alpha_{i} in Γ\Gamma.

Now computing the discrete harmonic map in the fixed homotopy class amounts to solve a system of nonlinear equations. For a vertex ii that is away from any loop γi\gamma_{i}, the balanced condition (1) gives us that

j:jid2(f(i),f(j))e(f(i),f(j))=0\sum_{j:j\sim i}d_{\mathbb{H}^{2}}(f(i),f(j))\cdot\vec{e}(f(i),f(j))=0

where e(x,y)\vec{e}(x,y) denotes the unit tangent vector in Tx2T_{x}\mathbb{H}^{2} indicating the direction to point yy. Things become subtle when the vertex ii is near some loop γi\gamma_{i}. Assume the edge ijij pass through the loop γk\gamma_{k}, and lij(f)l_{ij}(f) is small. Then

f(i)αij(f(j)),f(i)\approx\alpha_{ij}(f(j)),

where αij\alpha_{ij} is a deck transformation in Γ\Gamma, which is determined by

  1. (1)

    the choice of the loops γi\gamma_{i}, and

  2. (2)

    the choice of αi\alpha_{i}’s, and

  3. (3)

    the relative position between ii and γk\gamma_{k}.

Properly choosing αi\alpha_{i}’s and computing αij\alpha_{ij}’s are involved, particularly for higher genus surfaces. One need to use polygonal representations for higher genus surfaces, and parameterizations of the deformation spaces of Γ\Gamma. See [72][73] for references. Once we computed all the αij\alpha_{ij}’s, it remains to solve the following system of nonlinear equations.

j:jid2(f(i),αij(f(j)))e(f(i),αij(f(j)))=0i.\sum_{j:j\sim i}d_{\mathbb{H}^{2}}(f(i),\alpha_{ij}(f(j)))\cdot\vec{e}(f(i),\alpha_{ij}(f(j)))=0\quad\forall i. (10)

The existence and uniqueness of the solution is guaranteed by Theorem 2.10. Notice that equation (10) indicates that f(i)f(i) is the hyperbolic center of mass of αij(f(j))\alpha_{ij}(f(j))’s where jj goes over all the neighbors of ii. So one can use the so-called center of mass method to solve equation (10). This is an iterating method where in each iteration f(i)f(i) is replaced by the mass-center of its neighbors αij(f(j))\alpha_{ij}(f(j)), i.e., the (n+1)(n+1)-th function fn+1(i)f_{n+1}(i) is determined by

j:jid2(fn+1(i),αij(fn(j)))e(fn+1(i),αij(fn(j)))=0i.\sum_{j:j\sim i}d_{\mathbb{H}^{2}}(f_{n+1}(i),\alpha_{ij}(f_{n}(j)))\cdot\vec{e}(f_{n+1}(i),\alpha_{ij}(f_{n}(j)))=0\quad\forall i.

It has been proved by Gaster-Loustau-Monsaingeon [59] that the center of mass method will converge to the unique discrete harmonic map. But the disadvantage is that there is no direct way to compute a hyperbolic mass-center and this iteration is slow. In our numerical experiments, we use the so-called cosh-center of mass method introduced also in Gaster-Loustau-Monsaingeon’s paper [59]. Instead of minimizing the exact discrete Dirichlet energy, we minimize

0[f]=ijE(coshlij(f)1)ijElij(f)22{\mathcal{E}}_{0}[f]=\sum_{ij\in E}(\cosh l_{ij}(f)-1)\approx\sum_{ij\in E}\frac{l_{ij}(f)^{2}}{2}

which is a good approximation of the discrete Dirichlet energy if all the edges lengths lijl_{ij} are small. The balanced condition for critical points of the new energy 0{\mathcal{E}}_{0} is

j:jisinh[d2(f(i),αij(f(j)))]e(f(i),αij(f(j)))=0i,\sum_{j:j\sim i}\sinh[d_{\mathbb{H}^{2}}(f(i),\alpha_{ij}(f(j)))]\cdot\vec{e}(f(i),\alpha_{ij}(f(j)))=0\quad\forall i,

and the induced iterating formula is

j:jisinh[d2(fn+1(i),αij(fn(j)))]e(fn+1(i),αij(fn(j)))=0i.\sum_{j:j\sim i}\sinh[d_{\mathbb{H}^{2}}(f_{n+1}(i),\alpha_{ij}(f_{n}(j)))]\cdot\vec{e}(f_{n+1}(i),\alpha_{ij}(f_{n}(j)))=0\quad\forall i. (11)

The miracle is that such cosh\cosh-center of mass defined as in equation (11) can be computed directly. Using the hyperboloid model

h2={(x,y,z)3:z2x2y2=1},\mathbb{H}^{2}_{h}=\{(x,y,z)\in\mathbb{R}^{3}:z^{2}-x^{2}-y^{2}=1\},

the cosh\cosh-center of points p1,,pnh2p_{1},...,p_{n}\in\mathbb{H}^{2}_{h} is shown, in [59], to be

πH(p1++pnn)\pi_{H}\left(\frac{p_{1}+...+p_{n}}{n}\right)

where (p1++pn)/n(p_{1}+...+p_{n})/{n} is computed as vectors in 3\mathbb{R}^{3}, and πH\pi_{H} is the radial projection to h2\mathbb{H}^{2}_{h}.

In a summary we have the following Algorithm 6.

Algorithm 6 Harmonic Maps to Hyperbolic Surfaces

Input: A point cloud PP in 3\mathbb{R}^{3} as an approximation of a surface MM, and a hyperbolic surface 2/Γ\mathbb{H}^{2}/\Gamma.
Output: A harmonic map ff from PP to the hyperbolic surface 2/Γ\mathbb{H}^{2}/\Gamma.

1:Choose parameters ϵ\epsilon and nn, and then compute the lattice approximation G=(V,E)G=(V,E).
2:Choose 2genus(M)2\cdot genus(M) ”loops” in GG for the cut.
3:Assign a proper deck transformation αiΓ\alpha_{i}\in\Gamma to each loop γi\gamma_{i}.
4:Compute the correction transformations αij\alpha_{ij}.
5:Do the cosh\cosh-center of mass iterations (11), with the trivial initial map f00f_{0}\equiv 0.
6:Extend ff to PP by trilinear interpolation in the unit disk.
7:Return f|Pf|_{P}.

7.2 Algorithm for Conformal Maps

Assume that fΓf_{\Gamma} is the discrete harmonic map from the lattice approximation G=(V,E)G=(V,E) to the hyperbolic surface 2/Γ\mathbb{H}^{2}/\Gamma. Inspired by part (a) of Theorem 2.5, we compute the conformal map by minimizing

(fΓ)Area(2/Γ)=(fΓ)2πχ(2/Γ)=(fΓ)2πχ(M)\frac{\mathcal{E}(f_{\Gamma})}{Area(\mathbb{H}^{2}/\Gamma)}=\frac{\mathcal{E}(f_{\Gamma})}{-2\pi\chi(\mathbb{H}^{2}/\Gamma)}=\frac{\mathcal{E}(f_{\Gamma})}{-2\pi\chi(M)}

over the deformation space of Γ\Gamma. If Γ¯\bar{\Gamma} is the minimizer, then fΓ¯:V2/Γ¯f_{\bar{\Gamma}}:V\rightarrow\mathbb{H}^{2}/{\bar{\Gamma}} would approximate a conformal map. Our numerical experiments used Maskit’s nice parameterization of the deformation space of Γ\Gamma for genus 2 surfaces [72]. Maskit also proposed methods of parameterizing for any genus hyperbolic surfaces using Fenchel-Nielsen coordinates [73].

Our method is summarized as Algorithm 7.

Algorithm 7 Conformal Maps to Hyperbolic Surfaces

Input: A point cloud PP in 3\mathbb{R}^{3} as an approximation of a surface MM.

Output: A hyperbolic surface 2/Γ\mathbb{H}^{2}/\Gamma and a conformal map ff from PP to the hyperbolic surface 2/Γ\mathbb{H}^{2}/\Gamma.

1:Choose parameters ϵ\epsilon and nn, and then compute the lattice approximation G=(V,E)G=(V,E).
2:Choose 2genus(M)2\cdot genus(M) ”loops” in GG for the cut.
3:For a given hyperbolic surface 2/Γ\mathbb{H}^{2}/\Gamma homeomorphic to MM, assign a proper deck transformation αiΓ\alpha_{i}\in\Gamma to each loop γi\gamma_{i}.
4:Compute the correction transformations αij\alpha_{ij}.
5:Do the cosh\cosh-center of mass iterations (11), with the trivial initial map f00f_{0}\equiv 0.
6:Compute the discrete Dirichlet energy (fΓ)\mathcal{E}(f_{\Gamma}).
7:Compute the minimizer Γ¯\bar{\Gamma} of (fΓ)\mathcal{E}(f_{\Gamma}), and fΓ¯f_{\bar{\Gamma}}.
8:Extend fΓ¯f_{\bar{\Gamma}} to PP by trilinear interpolation in the unit disk.
9:Return fΓ¯|Pf_{\bar{\Gamma}}|_{P}.

7.3 Numerical Examples

Here are numerical examples for harmonic maps and conformal maps on genus 2 surfaces.

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 8: Harmonic maps to hyperbolic surfaces
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 9: Conformal maps to hyperbolic surfaces

References

  • [1] Patrice Koehl and Joel Hass. Automatic alignment of genus-zero surfaces. IEEE transactions on pattern analysis and machine intelligence, 36(3):466–478, 2013.
  • [2] Xianfeng Gu, Yalin Wang, Tony F Chan, Paul M Thompson, and Shing-Tung Yau. Genus zero surface conformal mapping and its application to brain surface mapping. IEEE transactions on medical imaging, 23(8):949–958, 2004.
  • [3] Doug M Boyer, Yaron Lipman, Elizabeth St Clair, Jesus Puente, Biren A Patel, Thomas Funkhouser, Jukka Jernvall, and Ingrid Daubechies. Algorithms to automatically quantify the geometric similarity of anatomical surfaces. Proceedings of the National Academy of Sciences, 108(45):18221–18226, 2011.
  • [4] Wei Hong, Xianfeng Gu, Feng Qiu, Miao Jin, and Arie Kaufman. Conformal virtual colon flattening. In Proceedings of the 2006 ACM symposium on Solid and physical modeling, pages 85–93, 2006.
  • [5] Lok Ming Lui, Sheshadri Thiruvenkadam, Yalin Wang, Paul M Thompson, and Tony F Chan. Optimized conformal surface registration with shape-based landmark matching. SIAM Journal on Imaging Sciences, 3(1):52–78, 2010.
  • [6] Yaron Lipman and Thomas Funkhouser. Möbius voting for surface correspondence. ACM Transactions on Graphics (TOG), 28(3):1–12, 2009.
  • [7] Vladimir G Kim, Yaron Lipman, and Thomas Funkhouser. Blended intrinsic maps. ACM transactions on graphics (TOG), 30(4):1–12, 2011.
  • [8] Yousuf Soliman, Dejan Slepčev, and Keenan Crane. Optimal cone singularities for conformal flattening. ACM Transactions on Graphics (TOG), 37(4):1–17, 2018.
  • [9] Haggai Maron, Meirav Galun, Noam Aigerman, Miri Trope, Nadav Dym, Ersin Yumer, Vladimir G Kim, and Yaron Lipman. Convolutional neural networks on surfaces via seamless toric covers. ACM Trans. Graph., 36(4):71–1, 2017.
  • [10] Heli Ben-Hamu, Haggai Maron, Itay Kezurer, Gal Avineri, and Yaron Lipman. Multi-chart generative surface modeling. ACM Transactions on Graphics (TOG), 37(6):1–15, 2018.
  • [11] Josef Kittler, Paul Koppen, Philipp Kopp, Patrik Huber, and Matthias Rätsch. Conformal mapping of a 3d face representation onto a 2d image for cnn based face recognition. In 2018 International Conference on Biometrics (ICB), pages 124–131. IEEE, 2018.
  • [12] Xin Li, Xianfeng Gu, and Hong Qin. Surface mapping using consistent pants decomposition. IEEE Transactions on Visualization and Computer Graphics, 15(4):558–571, 2009.
  • [13] Ulrich Pinkall and Konrad Polthier. Computing discrete minimal surfaces and their conjugates. Experimental mathematics, 2(1):15–36, 1993.
  • [14] Anand A Joshi, David W Shattuck, Paul M Thompson, and Richard M Leahy. Surface-constrained volumetric brain registration using harmonic mappings. IEEE transactions on medical imaging, 26(12):1657–1669, 2007.
  • [15] Ruo Li, Wenbin Liu, Tao Tang, and Pingwen Zhang. Moving mesh finite element methods based on harmonic maps. In Scientific computing and applications, pages 143–156. 2001.
  • [16] Yang Wang, Mohit Gupta, Song Zhang, Sen Wang, Xianfeng Gu, Dimitris Samaras, and Peisen Huang. High resolution tracking of non-rigid motion of densely sampled 3d data using harmonic maps. International Journal of Computer Vision, 76(3):283–300, 2008.
  • [17] Xiaohu Guo, Xin Li, Yunfan Bao, Xianfeng Gu, and Hong Qin. Meshless thin-shell simulation based on global conformal parameterization. IEEE transactions on visualization and computer graphics, 12(3):375–385, 2006.
  • [18] Xin Li, Xiaohu Guo, Hongyu Wang, Ying He, Xianfeng Gu, and Hong Qin. Meshless harmonic volumetric mapping using fundamental solution methods. IEEE Transactions on Automation Science and Engineering, 6(3):409–422, 2009.
  • [19] Ting Wei Meng and Lok Ming Lui. The theory of computational quasi-conformal geometry on point clouds. arXiv preprint arXiv:1510.05104, 2015.
  • [20] Jian Liang and Hongkai Zhao. Solving partial differential equations on point clouds. SIAM Journal on Scientific Computing, 35(3):A1461–A1486, 2013.
  • [21] Gary Pui-Tung Choi, Kin Tat Ho, and Lok Ming Lui. Spherical conformal parameterization of genus-0 point clouds for meshing. SIAM Journal on Imaging Sciences, 9(4):1582–1618, 2016.
  • [22] Ting Wei Meng, Gary Pui-Tung Choi, and Lok Ming Lui. Tempo: Feature-endowed teichmuller extremal mappings of point clouds. SIAM Journal on Imaging Sciences, 9(4):1922–1962, 2016.
  • [23] Zhen Li, Zuoqiang Shi, and Jian Sun. Compute quasi-conformal map on point cloud by point integral method. 2017.
  • [24] Xianfeng Gu and Shing-Tung Yau. Computing conformal structures of surfaces. Communications in Information and Systems, 2(2):121–146, 2002.
  • [25] Xianfeng Gu and Shing-Tung Yau. Global conformal surface parameterization. In Proceedings of the 2003 Eurographics/ACM SIGGRAPH symposium on Geometry processing, pages 127–137, 2003.
  • [26] Bruno Lévy, Sylvain Petitjean, Nicolas Ray, and Jérome Maillot. Least squares conformal maps for automatic texture atlas generation. ACM transactions on graphics (TOG), 21(3):362–371, 2002.
  • [27] Yaron Lipman. Bounded distortion mapping spaces for triangular meshes. ACM Transactions on Graphics (TOG), 31(4):1–13, 2012.
  • [28] Lok Ming Lui, Ka Chun Lam, Shing-Tung Yau, and Xianfeng Gu. Teichmuller mapping (t-map) and its applications to landmark matching registration. SIAM Journal on Imaging Sciences, 7(1):391–426, 2014.
  • [29] Burt Rodin, Dennis Sullivan, et al. The convergence of circle packings to the riemann mapping. Journal of Differential Geometry, 26(2):349–360, 1987.
  • [30] Bennett Chow, Feng Luo, et al. Combinatorial ricci flows on surfaces. Journal of Differential Geometry, 63(1):97–129, 2003.
  • [31] Monica K Hurdal and Ken Stephenson. Discrete conformal methods for cortical brain flattening. Neuroimage, 45(1):S86–S98, 2009.
  • [32] Liliya Kharevych, Boris Springborn, and Peter Schröder. Discrete conformal mappings via circle patterns. ACM Transactions on Graphics (TOG), 25(2):412–438, 2006.
  • [33] Philip L Bowers and Kenneth Stephenson. Uniformizing Dessins and BelyiMaps via Circle Packing, volume 170. American Mathematical Soc., 2004.
  • [34] Philip L Bowers and Monica K Hurdal. Planar conformal mappings of piecewise flat surfaces. In Visualization and mathematics III, pages 3–34. Springer, 2003.
  • [35] Feng Luo. Combinatorial yamabe flow on surfaces. Communications in Contemporary Mathematics, 6(05):765–780, 2004.
  • [36] Alexander I Bobenko, Ulrich Pinkall, and Boris A Springborn. Discrete conformal maps and ideal hyperbolic polyhedra. Geometry & Topology, 19(4):2155–2215, 2015.
  • [37] Xianfeng David Gu, Feng Luo, Jian Sun, Tianqi Wu, et al. A discrete uniformization theorem for polyhedral surfaces. Journal of differential geometry, 109(2):223–256, 2018.
  • [38] Xianfeng Gu, Ren Guo, Feng Luo, Jian Sun, Tianqi Wu, et al. A discrete uniformization theorem for polyhedral surfaces ii. Journal of differential geometry, 109(3):431–466, 2018.
  • [39] Jian Sun, Tianqi Wu, Xianfeng Gu, and Feng Luo. Discrete conformal deformation: algorithm and experiments. SIAM Journal on Imaging Sciences, 8(3):1421–1456, 2015.
  • [40] Boris Springborn. Hyperbolic polyhedra and discrete uniformization. arXiv preprint arXiv:1707.06848, 2017.
  • [41] Zheng-Xu He and Oded Schramm. Thec∞-convergence of hexagonal disk packings to the riemann map. Acta mathematica, 180(2):219–245, 1998.
  • [42] David Gu, Feng Luo, and Tianqi Wu. Convergence of discrete conformal geometry and computation of uniformization maps. Asian Journal of Mathematics, 23(1):21–34, 2019.
  • [43] Feng Luo, Tianqi Wu, and Jian Sun. Discrete conformal geometry of polyhedral surfaces and its convergence. preprint, 2020.
  • [44] Ulrike Bücking. cc^{\infty}-convergence of conformal mappings for conformally equivalent triangular lattices. Results in Mathematics, 73(2):84, 2018.
  • [45] Yves Colin De Verdière. Un principe variationnel pour les empilements de cercles. Inventiones mathematicae, 104(1):655–669, 1991.
  • [46] Ren Guo. Local rigidity of inversive distance circle packing. Transactions of the American Mathematical Society, 363(9):4757–4776, 2011.
  • [47] David Glickenstein. A combinatorial yamabe flow in three dimensions. Topology, 44(4):791–808, 2005.
  • [48] David Glickenstein. A maximum principle for combinatorial yamabe flow. Topology, 44(4):809–825, 2005.
  • [49] David Glickenstein et al. Discrete conformal variations and scalar curvature on piecewise flat two-and three-dimensional manifolds. Journal of Differential Geometry, 87(2):201–238, 2011.
  • [50] Christopher J Bishop. Conformal mapping in linear time. Discrete & Computational Geometry, 44(2):330–428, 2010.
  • [51] Tobin A Driscoll and Stephen A Vavasis. Numerical conformal mapping using cross-ratios and delaunay triangulation. SIAM Journal on Scientific Computing, 19(6):1783–1803, 1998.
  • [52] Kenneth Stephenson. Introduction to circle packing: The theory of discrete analytic functions. Cambridge University Press, 2005.
  • [53] Lloyd N Trefethen and Tobin A Driscoll. Schwarz-christoffel mapping in the computer era. In Proceedings of the International Congress of Mathematicians, volume 3, pages 533–542. Citeseer, 1998.
  • [54] Mathieu Desbrun, Mark Meyer, and Pierre Alliez. Intrinsic parameterizations of surface meshes. In Computer graphics forum, volume 21, pages 209–218. Wiley Online Library, 2002.
  • [55] Mei-Heng Yueh, Wen-Wei Lin, Chin-Tien Wu, and Shing-Tung Yau. An efficient energy minimization for conformal parameterizations. Journal of Scientific Computing, 73(1):203–227, 2017.
  • [56] Nadav Dym, Raz Slutsky, and Yaron Lipman. Linear variational principle for riemann mappings and discrete conformality. Proceedings of the National Academy of Sciences, 116(3):732–737, 2019.
  • [57] Keenan Crane, Ulrich Pinkall, and Peter Schröder. Robust fairing via conformal curvature flow. ACM Transactions on Graphics (TOG), 32(4):1–10, 2013.
  • [58] Tianqi Wu, Xianfeng Gu, and Jian Sun. Rigidity of infinite hexagonal triangulation of the plane. Transactions of the American Mathematical Society, 367(9):6539–6555, 2015.
  • [59] Jonah Gaster, Brice Loustau, and Léonard Monsaingeon. Computing discrete equivariant harmonic maps. arXiv preprint arXiv:1810.11932, 2018.
  • [60] Jonah Gaster, Brice Loustau, and Léonard Monsaingeon. Computing harmonic maps between riemannian manifolds. arXiv preprint arXiv:1910.08176, 2019.
  • [61] Y Colin de Verdière. Comment rendre géodésique une triangulation d’une surface? L’Enseignement Mathématique, 37:201–212, 1991.
  • [62] Nicholas J Korevaar and Richard M Schoen. Sobolev spaces and harmonic maps for metric space targets. Communications in Analysis and Geometry, 1(4):561–659, 1993.
  • [63] Jürgen Jost and Leonard Todjihounde. Harmonic nets in metric spaces. Pacific Journal of Mathematics, 231(2):437–444, 2007.
  • [64] Mu-Tao Wang. Generalized harmonic maps and representations of discrete groups. Communications in analysis and geometry, 8(3):545–563, 2000.
  • [65] Hiroyasu Izeki and Shin Nayatani. Combinatorial harmonic maps and discrete-group actions on hadamard spaces. Geometriae Dedicata, 114(1):147–188, 2005.
  • [66] James Eells and Bent Fuglede. Harmonic maps between Riemannian polyhedra, volume 142. Cambridge university press, 2001.
  • [67] Bent Fuglede. Homotopy problems for harmonic maps to spaces of nonpositive curvature. Communications in Analysis and Geometry, 16(4):681–733, 2008.
  • [68] Joel Hass and Peter Scott. Simplicial energy and simplicial harmonic maps. Asian Journal of Mathematics, 19(4):593–636, 2015.
  • [69] Richard Schoen and Shing-Tung Yau. Existence of incompressible minimal surfaces and the topology of three dimensional manifolds with non-negative scalar curvature. Annals of Mathematics, 110(1):127–142, 1979.
  • [70] James Eells and Luc Lemaire. Two reports on harmonic maps. World Scientific, 1995.
  • [71] Toru Kajigaya and Ryokichi Tanaka. Uniformizing surfaces via discrete harmonic maps. arXiv preprint arXiv:1905.05427, 2019.
  • [72] Bernard Maskit. New parameters for fuchsian groups of genus 2. Proceedings of the American Mathematical Society, 127(12):3643–3652, 1999.
  • [73] Bernard Maskit. Matrices for fenchel-nielsen coordinates. RECON no. 20010088230.; Annales Academiae Scientiarum Fennicae: Mathmatica, 26(2):267–304, 2001.