<<

Geometric Modeling Summer Semester 2012

Differential (and a bit of Topology) Multi-Dimensional Derivatives Derivative of a Function

Reminder: The derivative of a function is defined as

d f (t  h) f (t) f (t): lim dt h0 h If limit exists: function is called differentiable.

Other notation:

d  d k f (t)  f '(t)  f (t) f (t)  f (k )(t) dt   k variable time dt from context variables

repeated differentiation (higher order derivatives) Taylor Approximation

Smooth functions can be approximated locally:

• f (x)  f (x0 ) d  f (x )x  x  dx 0 0 1 d 2  f (x )x  x 2  ... 2 dx2 0 0 1 d k ...  f (x )x  x k  O(x k1 ) k! dx k 0 0 • Convergence: holomorphic functions • Local approximation for smooth functions Rule of Thumb

Derivatives and Polynomials 2 3 • Polynomial: 푓 푥 = 푐0 + 푐1푥 + 푐2푥 + 푐3푥 … . 0th-order derivative: 푓 0 = 푐0 . 1st-order derivative: 푓′ 0 = 푐1 . 2nd-order derivative: 푓′′ 0 = 2푐2 . 3rd-order derivative: 푓′′′ 0 = 6푐3 . ...

Rule of Thumb: • Derivatives correspond to polynomial coefficients • Estimate derivatives  polynomial fitting

Partial Derivative

Multivariate functions: • Notation changes: use curly-d  f (x1 ,..., xk1 ,xk ,xk1 ,..., xn ): xk f (x ,..., x ,x  h,x ,..., x ) f (x ,..., x ,x ,x ,..., x ) lim 1 k1 k k1 n 1 k1 k k1 n h0 h • Alternative notation:  f (x)   f (x)  f (x) k xk xk Special Cases

Derivatives for: • Functions f: n   (“heightfield”) • Functions f:   n (“”) • Functions f: n  m (general case)

Special Cases

Derivatives for: f(x, y) • Functions f: n   (“height field”) • Functions f:   n (“curves”) x2 • Functions f: n  m (general case) x1 height field

Gradient

Gradient: • Given a function f: n   (“heightfield”) • The vector of all partial derivatives of f is called the gradient:

         f (x)  x1   x1  f (x)     f (x)              f (x)  x   x   n   n  Gradient

Gradient:

f(x0 )f(x0 )(x  x0 ) f(x) f(x) f(x) x x 0 x1 x1

x2 x2 • gradient: vector pointing in direction of steepest ascent. • Local linear approximation (Taylor):

f (x) f (x0 ) f (x0 )(x  x0 ) Higher Order Derivatives

Higher order Derivatives:      • Can do all combinations:  ...  f  x x x   i1 i2 ik  • Order does not matter for f  Ck

Hessian Matrix

Higher order Derivatives: • Important special case: Second order derivative

 2        2   x1 x2 x1 xn x1     2      2 f (x) : H (x)  x1 x2 x1 xn x2  f            2     x x x x x 2   1 n 2 n n  • “Hessian” matrix (symmetric for f  C2) • Orthogonal Eigenbasis, full Eigenspectrum Taylor Approximation

f(x) x 2nd order approximation x1 (schematic) x2

Second order Taylor approximation: • Fit a to a general function 1 f (x)  f (x ) f (x )(x  x ) (x  x )T H (x )(x  x ) 0 0 0 2 0 f 0 0 Special Cases

Derivatives for: t y • Functions f: n   (“heightfield”) z • Functions f:   n (“curves”) • Functions f: n  m (general case) x curves

Derivatives of Curves

Derivatives of vector valued functions: • Given a function f:   n (“”)

 f1(t)   f (t)        fn(t) • We can compute derivatives for every output dimension:  d   f (t) dt 1 d    f (t):    : f '(t) : f (t) dt d  f (t)  n   dt  Geometric Meaning

f(t)

t0

f ’(t ) Vector: 0

• f ’: tangent vector . • Motion of physical particle: f = velocity. • Higher order derivatives: Again vector functions .. • Second derivative f = acceleration Special Cases

Derivatives for: w y • Functions f: n   (“heightfield”) u z • Functions f:   n (“curves”) v x • Functions f: n  m (general case) general mapping

You can combine it...

General case: • Given a function f: n  m (“space warp”)  f (x ,..., x )  1 1 n  f (x)  f (x1 ,..., xn )       fm(x1 ,..., xn ) • Maps points in space to other points in space • First derivative: Derivatives of all output components of f w.r.t. all input directions.

• “Jacobian matrix”: denoted by f or Jf Jacobian Matrix

Jacobian Matrix: f (x)  J (x)  f (x ,..., x ) f 1 n  f (x ,..., x )T    f (x)   f (x)  1 1 n   x1 1 xn 1               f (x ,..., x )T   f (x)   f (x)  m 1 n   x1 m xn m  Use in a first-order Taylor approximation:

f(x) f(x0 ) J f (x0 )x  x0 

matrix / vector product Special Cases

Derivatives for: • Functions f: n   (“heightfield”) • Functions f:   n (“curves”) • Functions f: n  m (general case)

w f(x, y) t y y u z x2 v z x1 x x height field curves general mapping Coordinate Systems

Problem: • What happens, if the coordinate system changes? • Partial derivatives go into different directions then. • Do we get the same result? Total Derivative

First order Taylor approx.: f (x0 ) f (x0 )(x  x0 ) • f (x ) f (x )(x  x ) R (x) 0 0 0 x0 f(x) • Converges for C1 functions x0 f: n  m x1 R (x) x2 lim x0  0, xx 0 x  x0

(“totally differentiable”) Partial Derivatives

Consequences: • A linear function: fully determined by image of a basis • Hence: Directions of partial derivatives do not matter – this is just a basis transform. . We can use any linear independent set of directions T . Transform to standard basis by multiplying with T-1 • Similar argument for higher order derivatives Directional Derivative

The directional derivative is defined as: • Given f: n  m and v  n, ||v|| = 1. • Directional derivative: f d v f (x)  (x): f (x tv) v dt • Compute from Jacobian matrix v v f (x)  f (x) v (requires total differentiability) Multi-Dimensional

Integral of a function • Function f:    b • Integral  f ( t ) dt measures signed under curve: a

+ + + + + + -- Integral

Numerical Approximation • Sum up a series of approximate shapes

• (Riemannian) Definition: limit for baseline  zero Multi-Dimensional Integral

Integration in higher dimensions • Functions f: n   • Tessellate domain and sum up volume of cuboids

1,4 1,4

1,2 1,2

1 1

0,8 0,8

0,6 0,6

0,4 0,4

1 1 0,2 0,8 0,2 0,8 0,6 0,6 0 0,4 0 0,4 0,2 0 0,1 0,2 0 0,1 0,2 0,3 0,2 0,3 0,4 0,5 0,4 0,5 0 0,6 0 0,6 0,7 0,8 0,7 0,8 0,9 1 0,9 1 Integral Transformations

Integration by substitution: f(x) b g1(b)  f (x)dx   f (g(t))g'(t)dt 1 a g (a)

Need to compensate for speed of f(x) movement that shrinks the measured area. g(x)

g(x) Multi-Dimensional Substitution

Transformation of Integrals: 2g(x)

x  f (x)dx   f g(y) detg(y) dy 2 1  g () • g  C1, invertible 1g(x)

• Jacobian approximates x1 local behavior of g() • : local area/volume change • In particular: det (  g ( y ) )  1 means g() is area/volume conserving. Topology - a very short primer - A Few Concepts from Topology

Homeomorphism: • 푓: 푋 → 푌 • 푓 is bijective • 푓 is continuous • 푓−1 exists and is continuous • Basically, a continuous deformation

Topological equivalence • Objects are topologically equivalence if there exists a homeomorphism that maps between them • “Can be deformed into each other”

Surfaces

Boundaries of volumes in 3D • Topological Equivalence classes . . . n-fold Torus • Genus = number of tunnels

...

g = 0 g = 1 g = 2 Manifold

homeomorphism

푥1

푥2 Definition: Manifold • A d-manifold M: At every 푥 ∈ 푀 there exists an 휖-environment homeomorphic to a d-dimensional disc • With boundary: disc or half-disc Further concepts

Connected Set • There exists a continuous curve within the set between all pairs of points

Simply Connected • Every closed loop can be continuously shrunken until it disappears of Curves & Surfaces Part I: Curves Parametric Curves

Parametric Curves: b C = f ((a, b)) • A differentiable function ff f: (a, b)  n a describes a parametric curve n C = f ((a, b)), C   .

• The parametrization is called regular if f ’(t)  0 for all t.

• If || f ’( t )| |  1 for all t, f is called a unit-speed parametrization of the curve C. Length of a Curve

The length of a curve: • The length of a regular curve C is defined as: b  length C  f ' (t ) dt a • Independent of the parametrization (integral transformation theorem).

• Alternative: lengthC = |b – a| for a unit-speed parametrization Reparametrization

Enforcing unit-speed parametrization:

• Assume:|| f ’( t )| |  0 for all t. • We have: x  length C ( x )  f ' (t ) dt (invertible, because f ’(t) > 0) a • Concatenating f o length  1 yields a unit-speed parametrization of the curve

length(t)

length-1(t)

Unit Tangents: • The unit tangent vector at x  (a, b) is given by: f '(t) tangent(t)  f '(t) 2 • For curves C   , the unit vector of the curve is defined as: 0 1 f '(t) normal(t)    1 0  f '(t)

Curvature: • First derivatives: curve direction / speed. • Curvature encoded in 2nd order information.

• Why not just use f ’’? • Problem: Depends on parametrization . Different velocity yields different results . Need to distinguish between acceleration in tangential and non-tangential directions.

Curvature & 2nd Derivatives

C = f ((a, b)) normal(t)

f’’(t) tangent(t) Definition of curvature

• We want only the non-tangential component of f ’’. • Accelerating/slowing down does not matter for curvature of the traced out curve C. • Need to normalize speed. Curvature

Curvature of a Curve C  2:

0  1 f ''(t),  f '(t) 1 0  κ2(t)  3 f '(t) • Normalization factor:

. Divide by || f ’|| to obtain unit tangent vector

. Divide again twice to normalize f ’’ – Taylor expansion / chain rule: 1 f (t)  f (t ) f '(t )(t t ) 2 f ''(t)(t t )2  O(t 3 ) 0 0 0 2 0 – Second derivative scales quadratically with speed Unit-speed parametrization

Unit-speed parametrization: • Assume a unit-speed parametrization, i.e. f '  1 . • Then, 2 simplifies to: κ2(t)  f ''(t)

Easy to see: • Curvature of a is constant,2   1/r (r = radius). • Accordingly: Define radius of curvature as 1/2. • : . Radius: 1/κ2 1 . . Center: f (t) normal(t) κ2 Theorems

Definition: • Rigid motion: x  Ax+b with orthogonal A . Orientation preserving (no mirroring) if det(A) = +1 . Mirroring leads to det(A) = -1 Theorems for curves: • Curvature is under rigid motion . Absolute value is invariant . Signed value is invariant for orientation preserving rigid motion • Two unit speed parameterized curves with identical signed curvature function differ only in a orientation preserving rigid motion. Space Curves

General case: Curvature of a Curve C  n • Given a unit-speed parametrization f of C • The curvature of C at parameter value t is defined as: κ(t)  f ''(t)

• For a general, regular curve C  3 (any regular parametrization): f '(t) f ''(t) C κ(t)  3 f '(t) • General curvature is unsigned f’’(t) f ’(t) Torsion

Characteristics of Space Curves in 3: • Curvature not sufficient • Curve may “bend” in space • Curvature is a 2nd order property • 2nd order curves are always flat . Quadratic curves are specified by 3 points in space, which always lie in a plane . Cannot capture out-of-plane bends • Missing property: Torsion Torsion

Definition: 3 • Let f be a regular parametrization of a curve C   with non-zero curvature • The torsion of f at t is defined as f '(t) f ''(t) f '''(t) detf '(t), f ''(t), f '''(t) τ(t)  2  2 f '(t) f ''(t) f '(t) f ''(t) Illustration

detf '(t), f ''(t), f '''(t) τ(t)  2 f '(t) f ''(t) f ’’’(t)

C

f ’’(t) f ’(t) Theorem

Fundamental Theorem of Space Curves • Two unit speed parameterized curves C  3 with identical, positive curvature and identical torsion are identical up to a rigid motion. Part II: Surfaces Parametric Patches

Parametric Patches: A smoothly differentiable function f: 2   n

describes a patch

n P = f (), P   . Parametric Patches

Function f 퐱 = 푓 푢, 푣 → ℝ3

푑 • Tangents: 푓 퐱 + 푡퐫 = 훻 푓(퐱 ) 푑푡 0 퐫 0

• Canonical tangents:  u f (u,v), v f (u,v)

휕푢푓 푢,푣 ×휕푣푓(푢,푣) • Normal: 퐧 퐱0 = 휕푢푓 푢,푣 ×휕푣푓(푢,푣) Illustration

normal (u, v) v   2 P  3

v f (u, v)

f f (u, v)

(u, v) u f (u, v)

u

Surface Area: • Patch 푃: 푓: Ω → ℝ3 • Computation is simple • Integrate over constant function f  1 over surface • Then apply integral transformation theorem:

area 푃 = 휕푢푓 퐱 × 휕푣푓(퐱) 푑퐱 Ω

Fundamental Forms

Fundamental Forms: • Describe the local parametrized surface • Measure...... distortion of length () . ...surface curvature () • Parametrization independent surface curvature measures will be derived from this First Fundamental Form

First Fundamental Form • Also known as . • Given a regular parametric patch f: 2   3. • f will distort angles and distances • We will look at a local first order Taylor approximation to measure the effect:  f (x ) f (x) f (x0 ) f (x0 )x  x0  v 0 v • Length changes become visible x u u f (x0) in the scalar product... 0 f(x0) First Fundamental Form

First Fundamental Form v f (x0) • First order Taylor approximation: v

f (x) f (x0 ) f (x0 )x  x0  x u u f (x0) • Scalar product of vectors a, b  2: 0 f(x0)

f (x0  a)  f (x0 ), f (x0  b)  f (x0 )  f (x0 )a,f (x0 )b  aT f (x )T f (x ) b 0 0  first fundamental form

f(a+x ) f(b+x ) a b 0 0

x u 0 f(x0) First Fundamental Form

First Fundamental Form • The first fundamental form can be written as a

2  2 matrix:  f  f  f  f  E F T u u u v   T T f f    :  I(x,y): x f f y u f  v f  v f  v f  F G • The matrix is symmetric and positive definite (regular parametrization, semi-definite otherwise) • Defines a generalized scalar product that measures lengths and angles on the surface. Second Fundamental Form

Problems: • The first fundamental form measures length changes only. • A looks like a flat sheet in this view. • We need a tool to measure curvature of a surface as well. • This requires second order information. . Any first order approximation is inherently “flat”. Second Fundamental Form

Definition: • Given: regular parametric patch f: 2   3. • Second fundamental form: (a.k.a. shape operator, curvature tensor)  f (x )n  f (x )n  uu 0 uv 0  S(x0 )    uv f (x0 )n  vv f (x0 )n

• Notation:

T uu f (x0 )n uv f (x0 )n II(x,y)  x  y uv f (x0 )n  vv f (x0 )n Second Fundamental Form

Basic Idea: • Compute second derivative vectors • Project in normal direction (remove tangential acceleration) Alternative Computation

Alternative Formulation (Gauss): • Local height field parameterization f(x,y) = z • Orthonormal x,y coordinates tangential to surface, z in normal direction, origin at zero z • 2nd order Taylor representation: 1 f (x)  xT f ''(x)x  f '(x)x  f (0) 2   x 2 2 0 y  ex  2 fxy  gy • Second fundamental form: Matrix of second derivatives  f  f   e f   xx xy    :   xy f  yy f   f g Basic Idea

In other words: • First fundamental form: I Linear part (squared) of local Taylor approximation. • Second fundamental form: II Quadratic part of heightfield approximation • Both matrices are symmetric. . Next: eigenanalysis, of course...

Eigenanalysis: • Eigenvalues of second fundamental form for an orthonormal tangent basis are called

principal 1, 2. • Corresponding orthogonal eigenvectors are called principal directions of curvature.

...

i > 0 0 > 0, 1 < 0 0 = 0, 1 > 0 0 = 0, 1 = 0 Normal Curvature

Definition: • The normal curvature k(r) in direction r for a unit length

direction vector r at parameter x0 is given by: k (r)  II (r,r)  rTS(x )r x0 x0 0

Relation to Curvature of Plane Curves: normalnormal • Intersect the surface locally with plane r

spanned by normal and r through point x0. • Identical curvatures (up to sign). u v Principal Curvatures

Relation to principal curvature:

• The maximum principal cuvature 1 is the maximum of the normal curvature

• The minimum principal cuvature 2 is the minimum of the normal curvature Gaussian &

More Definitions: • The K is the product of the principal

curvatures: K = 12

• The mean curvature H is the average: H = 0.5·(1 + 2)

Theorems: eg f 2 • K (x )  detS(x ) 0 0 EG  F 2 1 eG 2fF  gE • H (x )  trS(x ) 0 2 0 2EG  F 2  Global Properties

Definition: • : mapping between surfaces that preserves distances on the surface () • : Gaussian curvature zero everywhere (i.e. no curvature in at least one direction) . Examples: Cylinder, Cone, Plane • A developable surface can be locally mapped to a plane isometrically (flattening out, unroll).

Theorema egregium (Gauss): • Any isometric mapping preservers Gaussian curvature, i.e. Gaussian curvature is invariant under isometric maps (“intrinsic surface property”) • Consequence: The earth ( sphere) cannot be mapped to a plane in an exactly length preserving way. Gauss Bonnet Theorem

Gauss Bonnet Theorem: For a compact, orientable surface without boundary in 3, the area integral of the Gauss curvature is related to the genus g of the surface:  K(x)dx  4 π1 g S

...

g = 0 g = 1 g = 2 Fundamental Theorem of Surfaces

Theorem: • Given two parametric patches in 3 defined on the same domain . • Assume that the first and second fundamental form are identical. • Then there exists a rigid motion that maps on surface to the other. Summary

Objects are the same up to a rigid motion, if...: • Curves   2: Same speed, same curvature • Curves   3: Same speed, same curvature, torsion • Surfaces 2  3: Same first & second fundamental form • Volumetric Objects 3  3: Same first fundamental form

= = = =

space curve surface space warp Deformation Models

What if this does not hold? • Deviation in fundamental forms is a measure of deformation • Example: Surfaces

. Diagonals of I1 - I2: scaling (stretching)

. Off-diagonals of I1 - I2: sheering

. Elements of II1 - II2: bending • This is the basis of deformation models.

Reference: D. Terzopoulos, J. Platt, A. Barr, K. Fleischer: Elastically Deformable Models. In: Siggraph '87 Conference Proceedings (Computer Graphics 21(4)), 1987. Part III: Intrinsic Geometry and Intrinsic Mappings Scenario

f S2 S1

Mapping between Surfaces • Intrinsic view – only metric tensor • Ignore isometric deformations • Applications: . Deformable shape matching . Texture mapping (flat  3D) “parametrization” Riemannian Manifolds

Concept: • Abstract surface • “User defined” metric

standard non-standard metric (pos-def. at each point) Riemannian Manifolds

Riemannian Manifold • Manifold topology, d-dimensional . We mostly focus on 2-manifolds, embedded in ℝ3 • Local parametrization: tangent space . We have a tangent space for each point • Intrinsic metric . For every point, we know the metric tensor (i.e., a scalar product) . In tangent space coordinates standard non-standard metric (pos-def. quadric at each point) Types of Mappings

Given: Riemannian Manifolds M1, M2

Consider: Functions f: M1  M2 Important types of mappings:

• Isometric: preserves distances & angles Metric tensors . Jacobian: 훻푓 = 퐑, 퐑 orthogonal . Metric tensor: I • Conformal: preserves (only) angles

. Jacobian: 훻푓 = 휆퐑, 휆 > 0, 퐑 orthogonal . Metric tensor: 휆퐈, 휆 > 0 • Equi-areal (incompressible): preserves area . Jacobian: |det 훻푓 | = 1 . Metric tensor: det 퐌 = 1

Theorems

Isometric mappings • preserve Gaussian curvature (Gauss)

Conformal mappings • Uniformization theorem: . For any simply connected Riemann surface (2-manifold) . There exists a conformal, bijective mapping to either: – the open unit disk – the whole 2D plane – Unit sphere • Any discs, , planes can be mapped to objects of the same topology using a conformal map