mesh processing - 计算机图形学 mesh processing.pdf · advantage and disadvantage in polygon...

98
Mesh Processing Teacher: A.prof. Chengying Gao(高成英) E-mail: [email protected] School of Data and Computer Science Computer Graphics

Upload: others

Post on 16-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Processing

Teacher: A.prof. Chengying Gao(高成英)

E-mail: [email protected]

School of Data and Computer Science

Computer Graphics

Page 2: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

What is Polygon Mesh?

• A polygon mesh is a collection of vertices, edges, and faces that

defines the shape of a polyhedral object in 3D computer

graphics and solid modeling.

2Computer Graphics

Page 3: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Example – Polyhedral widgeon

3Computer Graphics

6656 faces (面),3474 vertices (顶点)

Page 4: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Categories of Polyhedron (多面体)

• Polyhedron are essentially linear approximation

• Triangular meshes (三角网格)

• Quadrilateral meshes (四边形网格)

• Polygonal meshes (多边形网格)

4Computer Graphics

Page 5: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Volumetric Scanning

• Build voxel structure by scanning slices

5Computer Graphics

Page 6: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Volumetric Scanning

• Build voxel structure by scanning slices

6Computer Graphics

Page 7: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Photogrammetry

7Computer Graphics

• Reconstruction from photographs

Page 8: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Photogrammetry

• Reconstruction from a series of photos (video)

8Computer Graphics

Page 9: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Range Scanning

• Reconstruction from point cloud

9Computer Graphics

Page 10: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Getting Meshes from Real Objects

• Many models used in Graphics are obtained from real objects

10Computer Graphics

Stanford dragon

• Faces : 871414

• Vertices:437645

• Compressed:8.2 MB

in PLY format

Page 11: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Getting Meshes from Real Objects

11Computer Graphics

Page 12: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Range Scanning

• Accurate calibration is crucial

• Multiple scans required for complex objects

• scan path planning

• scan registration

• Scans are incomplete and noisy

• model repair, hole filling

• smoothing for noise removal

12Computer Graphics

Page 13: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Range Scanning: Reconstruction

13Computer Graphics

Set of raw scans Reconstructed model

Page 14: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

General Used Mesh Files

• General used mesh files

• Wavefront OBJ (*.obj)

• 3D Max (*.max, *.3ds)

• VRML(*.vrl)

• Inventor (*.iv)

• PLY (*.ply, *.ply2)

• User-defined(*.m, *.liu)

14Computer Graphics

• Storage

• Text – (Recommended)

• Binary

Page 15: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Wavefront OBJ File Format

• Vertices

• Start with char ‘v’

• (x,y,z) coordinates

• Faces

• Start with char ‘f’

• Indices of its vertices in the file

• Other properties

• Normal, texture coordinates, material, etc.

15Computer Graphics

v 1.0 0.0 0.0

v 0.0 1.0 0.0

v 0.0 -1.0 0.0

v 0.0 0.0 1.0

f 1 2 3

f 1 4 2

f 3 2 4

f 1 3 4

Page 16: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Wavefront .obj file

16Computer Graphics

Page 17: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Meshes:

Definitions & Terminologies

17Computer Graphics

Page 18: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Standard Graph Definition

18Computer Graphics

J

H

Page 19: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Graph Embedding

19Computer Graphics

Page 20: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Triangulation

20Computer Graphics

Page 21: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Meshes

21Computer Graphics

Page 22: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Topology

22Computer Graphics

亏格

Page 23: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Developablity (可展性)

23Computer Graphics

Page 24: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Developablity (可展性)

24Computer Graphics

Page 25: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Data Structure

• How to store geometry and connectivity?

• Geometry queries

• What are the vertices of face #k?

• Are vertices #i and #j adjacent?

• Which faces are adjacent face #k?

• Geometry operations

• Remove/add a vertex/face

• Mesh simplification

• Vertex split, edge collapse

25Computer Graphics

Page 26: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Define a mesh

• Geometry• Vertex coordinates

• Connectivity• How do vertices connected?

26Computer Graphics

• List of Edge

• Vertex-Edge

• Vertex-Face

• Combined

Page 27: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

List of Faces

• List of vertices

• Position coordinates

• List of faces

• Triplets of pointers to face vertices (c1,c2,c3)

• Queries:

• What are the vertices of face #3?

• Answered in O(1) - checking third triplet

• Are vertices i and j adjacent?

• A pass over all faces is necessary – NOT GOOD

27Computer Graphics

Page 28: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

List of Faces – Example

28Computer Graphics

Page 29: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

List of Faces – Analysis

• Pros:

• Convenient and efficient (memory wise)

• Can represent non-manifold meshes

• Cons:

• Too simple - not enough information on relations between

vertices & faces

29Computer Graphics

Page 30: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Adjacency Matrix – Definition

• View mesh as connected graph

• Given n vertices build n*n matrix of adjacency

information

• Entry (i,j) is TRUE value if vertices i and j are adjacent

• Geometric info

• list of vertex coordinates

• Add faces

• list of triplets of vertex indices (v1,v2,v3)

30Computer Graphics

Page 31: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Adjacency Matrix – Example

31Computer Graphics

Page 32: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Adjacency Matrix – Queries

• What are the vertices of face #3?

• O(1) – checking third triplet of faces

• Are vertices i and j adjacent?

• O(1) - checking adjacency matrix at location (i,j).

• Which faces are adjacent to vertex j?

• Full pass on all faces is necessary

32Computer Graphics

Page 33: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Adjacency Matrix – Analysis

• Pros:

• Information on vertices adjacency

• Stores non-manifold meshes

• Cons:

• Connects faces to their vertices, BUT NO connection

between vertex and its face

33Computer Graphics

Page 34: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Half-Edge Structure

• Orientable 2D manifolds and its sub set: special polygonal

meshes (适用于有向的二维流形)

34Computer Graphics

Page 35: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Half-Edge Structure

• Half-edge (each edge corresponds to two half-edges)

• Pointer to the first vertices

• To adjacent face

• To next half-edge (逆时针方向)

• To the other half-edge of the same edge

• To previous half-edge (opt.)

35Computer Graphics

struct HE_edge {

HE_vert* vert; // vertex at the start of the half-edge

HE_face* face; // face the half-edge borders

HE_edge* pair; // oppositely oriented adjacent half-edge

HE_edge* next; // next half-edge around the face

HE_edge* prev; // prev half-edge around the face

};

Page 36: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Half-Edge Structure

• Face:we only need a pointer to one of its half-edge

36Computer Graphics

struct HE_face { HE_edge* edge; // one of the half-edges bordering the face

};

Page 37: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Half-Edge Structure

• Vertices• 3D coordinates

• Pointer to the half-edge starting from it

37Computer Graphics

struct HE_vert { float x; float y; float z; HE_edge* edge; // one of the half-edges

//emantating from the vertex };

Page 38: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Example: half-edge structure

38Computer Graphics

Page 39: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Example (continued)

39Computer Graphics

Page 40: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

One-Ring Traversal

40Computer Graphics

Page 41: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

One-Ring Traversal

41Computer Graphics

Page 42: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

One-Ring Traversal

42Computer Graphics

Page 43: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

One-Ring Traversal

43Computer Graphics

Page 44: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

One-Ring Traversal

44Computer Graphics

Page 45: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

One-Ring Traversal

45Computer Graphics

Page 46: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Traversal operations

46Computer Graphics

Page 47: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Basic operations

• Mark mesh boundary (标记边界点)

• Create edge adjacency (创建邻接边)

• Add vertex (增加顶点)

• Add edge (增加边)

• Add polygonal face (增加面)

• Delete polygonal face (删除面)

• Delete edge (删除边)

• Delete vertex (删除顶点)

47Computer Graphics

Page 48: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Discussion

• Advantage and disadvantage(优缺点):

• Adv.:Query time O(1),operation time O(1)

• Dis.: redundancy & only applicable to 2D manifolds

• For more information refer to

• CGAL:

• the Computational Geometry Algorithms Library, http://www.cgal.org/

• Free for non-commercial use

• OpenMesh: http://www.openmesh.org/

• Mesh processing

• Free, LGPL licence

• Meshlab: http://meshlab.sourceforge.net/

48Computer Graphics

Page 49: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Advantage and disadvantage in polygon representation

• Advantage

• Simplicity - ease of description

• Based data for rendering software/hardware

• Input to most simulation/analysis tools

• Output of most acquisition tools

• laser scanner, CT, MRI, etc...

49Computer Graphics

Page 50: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Advantage and disadvantage in polygon representation

• Disadvantage

• Approximation, it is hard to satisfy real time interaction

• It is hard to edit mesh with traditional method.

• Without analytical form, geometric attribute is hard to

compute

• When expressed object with complex topology and rich

details, modeling/editing/rendering/storing will have more

burden.

50Computer Graphics

Page 51: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Spline Surfaces

• Tensor product surfaces (“curves of curves”)

• Rectangular grid of control points

51Computer Graphics

Page 52: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Spline Surfaces

• Tensor product surfaces (“curves of curves”)

• Rectangular grid of control points

• Rectangular surface patch

52Computer Graphics

Page 53: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Spline Surfaces

• Tensor product surfaces (“curves of curves”)

• Rectangular grid of control points

• Rectangular surface patch

• Problems:

• Many patches for complex models

• Smoothness across patch boundaries

• Trimming for non‐rectangular patches

53Computer Graphics

Page 54: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Subdivision Surfaces

54Computer Graphics

• Generalization of spline curves/surfaces

• Arbitrary control meshes

• Successive refinement(subdivision)

• Converges to Smooth limit surface

• Connection between splines and meshes

Page 55: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Subdivision Surfaces

55Computer Graphics

• Generalization of spline curves/surfaces

• Arbitrary control meshes

• Successive refinement(subdivision)

• Converges to Smooth limit surface

• Connection between splines and meshes

Page 56: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Discrete Surfaces: Point Sets, Meshes

56Computer Graphics

Page 57: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Processing & Editing

57Computer Graphics

Page 58: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Denoising

• Mesh Denoising (aka Smoothing, Filtering, Fairing)

58Computer Graphics

Page 59: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian Smoothing

• An easier problem: How to smooth a curve?

59Computer Graphics

Page 60: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian Smoothing

60Computer Graphics

Page 61: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian Smoothing on Meshes

61Computer Graphics

Page 62: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Denoising

• We generate artificially a noisy mesh by random normal

displacement along the normal.

62Computer Graphics

Page 63: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Denoising with Filtering

63Computer Graphics

Page 64: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Denoising with Filtering

64Computer Graphics

Page 65: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Subdivision

• No regular structure as for curves

• Arbitrary number of edge-neighbors

• Different subdivision rules for each valence

65Computer Graphics

Page 66: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Subdivision Rules

66Computer Graphics

Page 67: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Subdivision Zoo

67Computer Graphics

Page 68: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Subdivision Zoo

68Computer Graphics

Page 69: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Catmull-Clark Subdivision

69Computer Graphics

Page 70: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Loop Subdivision

70Computer Graphics

Page 71: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Doo-Sabin Subdivision

71Computer Graphics

Page 72: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Simplification

• Surface mesh simplification is the process of reducing the number of

faces used in a surface mesh while keeping the overall shape, volume

and boundaries preserved as much as possible. It is the opposite of

subdivision.

72Computer Graphics

Page 73: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Simplification

• Edges are collapsed according to a priority given by a user-supplied cost

function, and the coordinates of the replacing vertex are determined by

another user-supplied placement function.

• The algorithm terminates when a user-supplied stop predicate is met, such as

reaching the desired number of edges.

73Computer Graphics

Page 74: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Simplification

74Computer Graphics

Page 75: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Shapes and Deformations

• Why deformations?

• Sculpting, customization

• Character posing, animation

• Criteria?

• Intuitive behavior and interface

• Interactivity

75Computer Graphics

Page 76: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Linear Surface-Based Deformation

• Mesh Deformation

76Computer Graphics

Page 77: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Mesh Deformation

77Computer Graphics

Page 78: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Differential Geometry

78Computer Graphics

Page 79: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Differential Coordinates

• Manipulate differential coordinates instead of spatial

coordinates

• Gradients, Laplacians, local frames

• Intuition: Close connection to surface normal

• Find mesh with desired differential coords

• Cannot be solved exactly

• Formulate as energy minimization

79Computer Graphics

Page 80: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Differential coordinates

• Differential coordinates are defined for triangular mesh vertices

80Computer Graphics

( )

1( )

j N ii

Ld

i i i jδ v v v

average of

the neighborsthe relative

coordinate vector

Page 81: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

81Computer Graphics

Differential coordinates

• Differential coordinates are defined for triangular mesh vertices

( )

1( )

j N ii

Ld

i i i jδ v v v

Page 82: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Why differential coordinates?

• They represent the local detail / local shape description

• The direction approximates the normal

• The size approximates the mean curvature

82Computer Graphics

1

( )ds

len

i

v

v v

( ) 0

1lim ( )

( )lends H

len

i i i

v

v v v n

( )

1

N iid

i i

v

δ v v

Page 83: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian reconstruction

• Denote by 𝐺 = (𝑉, 𝐸, 𝑃) a triangular mesh with geometry 𝑃,

embedded in 𝑅³ .

• For each vertex 𝑝𝑗 ∈ 𝑃 we define the Laplacian vector:

• The Laplacians represents the details locally.

83Computer Graphics

: ,

1( )j j i

i i j Ej

L P p pd

jp

Page 84: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian reconstruction

• The operator 𝐿 is linear and thus can be represented by the

following matrix:

84Computer Graphics

1

1: ( , )

0

ij

i

i j

M j j j i Ed

otherwise

Page 85: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian reconstruction

• A small example of a triangular mesh and its associated

Laplacian matrix

85Computer Graphics

Page 86: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian reconstruction

• Thus for reconstructing the mesh from the Laplacian

representation:

add constraints to get full rank system and therefore unique

solution, i.e. unique minimizer to the functional

where 𝐼 is the index set of constrained vertices , 𝑤𝑖 > 0 are

weights and 𝑐𝑖 are the spatial constraints.

86Computer Graphics

22

( ) ( ) ( ) ( )x x x x

i i i

i I

M P w p c

Page 87: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Laplacian reconstruction

• Laplacian reconstruction gives smooth transformation, interactive time and ease of user interface -using few spatial constraints

• but doesn’t preserve details orientation and shape

87Computer Graphics

Page 88: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

As-Rigid-As-Possible Deformation

88Computer Graphics

Page 89: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

As-Rigid-As-Possible Deformation

• Smooth large scale deformation

• Local as-rigid-as-possible behavior

• Preserves small-scale details

89Computer Graphics

Page 90: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Space Deformation

90Computer Graphics

Page 91: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Space Deformation

91Computer Graphics

Page 92: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Lattice as Control Object

92Computer Graphics

Page 93: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Cage‐based Deformations

93Computer Graphics

[Ju et al. 2005]

Page 94: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Cage‐based Deformations

94Computer Graphics

[Ju et al. 2005]

Page 95: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Cage‐based Deformations

95Computer Graphics

Page 96: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Coordinate Functions

• Harmonic coordinates (Joshi et al. 2007)

96Computer Graphics

MVC HC

Page 97: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Green coordinates

• Closed‐form solution

• Conformal in 2D, quasi‐conformal in 3D

97Computer Graphics

MVCGC GC

Page 98: Mesh Processing - 计算机图形学 Mesh Processing.pdf · Advantage and disadvantage in polygon representation •Disadvantage •Approximation, it is hard to satisfy real time

Polygon Mesh Processing

• http://www.pmp-book.org/

• “Geometric Modeling Based on Polygonal Meshes”

• https://hal.inria.fr/inria-00186820/document

98Computer Graphics