Frank Schmidt The Laplace-Beltrami-Operator on Riemannian Manifolds The Laplace-Beltrami-Operator on Riemannian Manifolds Frank Schmidt Computer Vision Group - Technische Universit¨at M¨ unchen Abstract This report mainly illustrates a way to compute the Laplace-Beltrami-Operator on a Riemannian Manifold and gives information to why and where it is used in the Analysis of 3D Shapes. After a brief introduction, an overview over the necessary properties of manifolds for calculating the Laplacian is given. Furthermore the two operators needed for defining the Laplace-Beltrami-Operator - the gradient and the divergence - are introduced. Both of them are individually derived from the geometric meaning of the operator in Euclidean space, which then is translated into a Riemannian Manifold. With these operators defined, their formulas are combined into a specification used to calculate the Laplace-Beltrami-Operator. Finally, some examples for its applications are presented. Most of this report uses [1] as a reference, for this reason it won’t be specifically noted. 1 Why do we need the Laplace-Beltrami-Operator? Figure 1: 3D-model of a woman in different positions, coloured by using the 8th eigenfunction of the Laplace-Beltrami operator. The third pose is coloured inverse to the other two. As the title states, the main objective of this report is to illustrate the mathematical basics of how to calculate the Laplace Operator on Riemannian Manifolds. So what does this have to do with 3D-objects? Most of the time 3D-objects are represented as a surface, which (with some math behind it) can be approximated by a manifold e.g. with the help of the Sturm-Liouville’s decomposition [2]. Many methods for analyzing shapes use the Eigenfunctions of the LaplaceBeltrami-Operator (or the Laplacian for short) to calculate a metric bound to vertices. As shown in Figure 1 those Eigenfunctions are not changed by isometric deformations and therefore are a good way to specify a certain point on the object. Since the Laplace operator is defined as ∆ := div ∇, 1 (1) Frank Schmidt The Laplace-Beltrami-Operator on Riemannian Manifolds those two functions need to be introduced first. I would like to begin by looking at the definitions of Riemannian Manifolds. 2 Introduction into Manifolds The set M ⊂ RN is called a submanifold, if it can be superimposed by local charts. The mapping ˜ → M is a local chart, if it is bijective and smooth. In addition to that, the Jacobian matrix ϕ:U ˜ ⊂ Rn to of ϕ has to have full rank. Most of the time, ϕ maps values from the parameter space U N −1 ˜ R with n ≤ N . Furthermore the point x ∈ U = ϕ (p) is the local coordinate of p ∈ M . Now we assume that the function f : M → R takes points from M and maps them to R. One way to ˜ is to use the the local chart ϕ to convert it into local apply that function to the parameter space U ˜ ˜ ˜ coordinates, so that f = f ◦ ϕ with f : U → R. Figure 2: Graphical representation of manifold terminography Tangent Space The tangent space Tp M is a local approximation of the manifold at the point p, defined as Tp M := {v ∈ RN |∃ > 0, γ : (−, ) → M. γ(0) = p, γ(0) ˙ = v}. (2) The tangent space is the set of vectors in RN which are tangential to any function passing through p. In the case of the R3 , the tangent space Tp M of a manifold M is a tangent plane in the point p. For calculation purposes it is practical to have a basis of Tp M , one of which, if a local chart ϕ is given, can be constructed like this: Let x = ϕ−1 (p), then {∂i = ∂ϕ (x) | ∀i ∈ {1 . . . n}} ∂xi (3) is a base of Tp M , by basically projecting x onto the different unit vectors xi ∈ Rn . As a sidenote, the columns of the Jacobian matrix of ϕ are exactly the different ∂i . In other words, the Jacobian matrix has to have full rank, so that the ∂i are linearly independent. Riemannian Manifolds A Riemannian Manifold is the tuple (M, g) with the manifold M and the Riemannian metric g. This metric is used to determine geometric values of the manifold M , for example to measure distances and angles on the manifold. It is given by the scalar product Pn gp over Tp M P , which can be seen in lokal coordinates as a matrix multiplication. Let be v = i=1 vi · ∂i , n w = i=1 wi · ∂i ∈ Tp M with the local chart ϕ(x) = p: ∂ϕ ∂ϕ , for i, j ∈ {1 . . . n} (4) gi,j = ∂xi ∂xj 2 Frank Schmidt The Laplace-Beltrami-Operator on Riemannian Manifolds Figure 3: The tangent plane Tp M gp (v, w) = v T · g · w = n X gi,j · vi · wj (5) i,j=1 As an example for the usage of g, we will take a look at the integration of a function f over a Riemannian Manifold (M, g). With the help of a local chart ϕ we can define differentiable functions on M . To determine it, we set the result on the deformed manifold suface in relation to the integral of f˜ in the parameter space. The equation Z Z q f dS = f˜(x) det(gi,j )dx (6) M ˜ U is used to calculate the integral of f over M . To sketch the proof of this, we will look at a manifold in the R3 . The integral of a function over the parameter space is weightend by the infinitesimal area element uv. Therefore the area element has to be deformed accordingly to get the right result. The area spanned by the two unit vectors x1 and x2 in the parameter space is mapped to the area |∂1 × ∂2 | in the tangent space of the manifold. The calculation h∂1 , ∂2 i = |∂1 ||∂2 | cos(α) (7) |∂1 × ∂2 | = |∂1 ||∂2 | sin(α) ⇒ 2 2 (8) 2 2 2 2 h∂1 , ∂2 i + |∂1 × ∂2 | = |∂1 | |∂2 | · (cos (α) + sin (α)) (9) p p 2 2 ⇒ |∂1 × ∂2 | = |∂1 | |∂2 | − h∂1 , ∂2 i = det(g) (10) p shows, that an area element in the parameter space is related by det(g) to an area element in the tangent space of M .[3] 3 The Gradient In Euclidean space Rn , the gradient is defined as ∂f ∂f ∇f = ,..., . ∂xi ∂xi (11) The resulting vector points into the direction of the greatest increase of the function and its magnitude corresponds to the slope of the function. It is also used to determine the directional 3 Frank Schmidt The Laplace-Beltrami-Operator on Riemannian Manifolds derivative dfp (v) of f at the point p in the direction of the vector v ∈ Rn : h∇f (p), vi = dfp (v) (12) Another way to calculate the directional derivative dfp (v) directly is by watching its behavior over time: d f (p + tv) (13) dfp (v) = dt|t=t0 or, in a more general way, by using γ : (−, ) → Rn fullfilling γ(0) = p, γ(0) ˙ =v dfp (v) = d dt|t=t0 f (γ(t)). (14) Now the second equation can be used in a Riemannian Manifold (M, g), since it is not necessary to use f (p + tv) which could possibly go out of M but any γ. If the directional derivative dfp (v) of f : M → Rn and v ∈ Tp M is calculated, a γ satisfying the conditions exists by the construction of Tp M , so that dfp (v) exists and can be used to define the gradient on the manifold. After converting (12) into Manifold arithmetics, it looks like this: gp (∇f (p), v) = dfp (v) for ∀v ∈ Tp M (15) This equation implies that exactly one ∇f exists for v ∈ Tp M to satisfy the equation above. Now that we know it exists, we want to calculate the gradient. The local chart ϕ is given, leading to the Tp M with the base ∂1 , . . .P , ∂n . Since the gradient is obviously an element Tp M , Pof n n it can be displayed in Tp M as ∇f = a ∂ , the same is true for v ∈ T M = i i p i=1 i=1 vi ∂i . Additionally, dfp (v) has to be determined. Since the directional derivative is linear and by using ◦ϕ) ∂ f˜ ∂ϕ the chain rule ∂x = ∂(f = df ( ∂x ) = df (∂i ) ∂xi i i dfp (v) = n X vi dfp (∂i ) = n X vi i=1 i=1 ∂ f˜ . ∂xi (16) This information can now be used to determine the values of the ai by starting from (15): n X gp (∇f, v) = gi,j vi aj = dfp (v) = i,j=1 n X vi i=1 and therefore n X gi,j aj = j=1 ∂ f˜ , ∂xi ∂ f˜ ∂x1 (17) . ∂ f˜ ∀i ∈ {1 . . . n} ⇔ g · a = .. . ∂xi ˜ (18) ∂f ∂xn Let (g i,j )i,j=1,...,n be the inverse matrix of g, then ∂ f˜ ∂x1 n X . ∂ f˜ = a ⇔ ai = . (g i,j ) · g i,j . ∂xj ∂ f˜ ∂xn (19) j=1 Combining these terms, the Gradient ∇f can be calculated from the formula ∇f = n X ai ∂i with ai = i=1 n X j=1 4 g i,j ∂ f˜ . ∂xj (20) Frank Schmidt 4 The Laplace-Beltrami-Operator on Riemannian Manifolds The Divergence The divergence operator div converts a vector field V : M → Tp M into a scalar field. Even though the formula for doing so in the Rn n X ∂Vi div V = (21) ∂xi i=1 seems complex, the idea behind it is simple: It basically interprets the vector field as a definiton of a flow, where the direction and volume of the flow in a certain point is defined by the corresponding vector. The operator will then compute the current volume change under the influence of V . It can be proven, that for a function f with a compact support and a vectorfield V, the divergence is the negative adjoint operator to the gradient:[3] hV, ∇f i = h−div V, f i If this is integrated over Rn , it leads to Z Z f · div V dx = − Rn h∇f, V i dx. (22) (23) Rn (23) can now be changed into localpcoordinates within a manifold by using g(∇f, V ) instead of h∇f, V i and replacing dx by dS = |det g|dx. An integration by parts will be performed on the result. Z Z p p ˜ f · div V · |det g| dx = − g(∇f, V ) · |det g| dx (24) M M n X p ∂ f˜ Vi · |det g| dx M i=1 ∂xi Z = − Z = M f˜ n X p ∂ (Vi · |det g|) dx ∂xi i=1 (25) (26) for all f , if their support is contained in the coordinates. So the final formula for computing the divergence on manifolds is n X ∂ p 1 (Vi · |det g|). div V = p |det g| i=1 ∂xi 5 (27) The Laplace-Beltrami-Operator After determining (27) and (20), they can be combined into a way to compute the Laplace-BeltramiOperator with local coordinates: ∆ ∆f : C ∞ (M ) → C ∞ := div ∇f = (28) (29) n X 1 ∂ p ∂ p ( |det g| · g i,j · f) ∂xj |det g| i,j=1 ∂xi (30) Since we know a geometric meaning of the gradient and the divergence, it would be desirable to find one for the Laplacian. To find it, we look at the Laplace operator as a generalisation of the 2 second derivate ∂∂ 2 fx . The second derivate is defined as which is related to f 00 = lim f 0 (x + h) − f 0 (x) h→∞ h (31) f (x + h) + f (x − h) − 2f (x) h→∞ 2h2 (32) f 00 = lim 5 Frank Schmidt The Laplace-Beltrami-Operator on Riemannian Manifolds Figure 4: Constraining vertex positions (red) and a set of handle vertices (yellow sphere) yields a smooth deformed surface by solving a linear system. by L’Hˆ opital’s rule. Equation 32 shows, that the second derivate is a measurement of difference of the function values of the point x and the average in a small neighborhood.[3] This concept is used by the Laplacian coordiantes. The Laplacian is applied to each vertex on a mesh/manifold and the resulting vector represents the difference between the vertex and the vertices in a small neighborhood. Using those vectors, one can reconstruct the mesh up to a rigid transformation. Furthermore, by constraining the location of a set of vertices and change the location of a set of handle vertices, one can obtain a smooth deformation of the mesh by solving for a mesh, which has the same Laplacian coordinates in a least square sense as shown in Figure 4. [3] Referring back to the introduction, an eigenfunction is a function, which satisfies ∆φ = λφ. We know, that the Laplacian is a linear self-adjoint operator for compact Riemannian manifolds without a boundary [2]. Therefore non-unique eigenfunctions φ exist, which fullfill that condition. The eigenfunctions of different λ are orthogonal to each other, and even if the representative of the classes of eigenfunctions for the λ are restricted by having to be orthonormal to each other, there can still be two different eigenfunctions φ, −φ which both fullfill the conditions. This explains, why in Figure 1 the colouring of the woman on the right is exactly inverse to the other ones even though it is the same eigenfunction. References [1] Grieser, D.: Der Laplace-Operator auf einer Riemannschen Mannigfaltigkeit (2009) [2] Canzani, Y.: Analysis on manifolds via the laplacian (2013) [3] Herholz, P.: General discrete laplace operators on polygonal meshes. diploma thesis, HumboldUniversit¨ at zu Berlin (2012) 6
© Copyright 2024