01 Introduction
01 Introduction
Processing Algorithms
CS468
CS 468
htt // 468.stanford.edu/
http://cs468
http://cs468.stanford.edu/
t f d d /
Objective
• Theory
Theory and algorithms for efficient
and algorithms for efficient
analysis and manipulation of complex 3D
models
• Hands‐on experience
2
Requirements
q
Prerequisites:
‐ IIntroduction to Computer Graphics
t d ti t C t G hi
‐ Experience with C++ programming
‐ Background in geometry or computational geometry
helpful, but not necessary.
Grade (3 units):
‐ Programming exercises
Programming exercises
‐ OpenMesh intro (10%)
‐ Surface smoothing (20%)
‐ Simplification (20%)
Simplification (20%)
‐ Parameterization (25%)
‐ Remeshing (25%)
Work in pairs. Use OpenMesh
ki i O h API
3
References
• Book
“Polygon Mesh Processing”
by Mario Botsch, Leif Kobbelt, Mark Pauly, Pierre Alliez,
Bruno Levy
• Eurographics 2008 course notes
“Geometric
Geometric Modeling Based on
Modeling Based on
Polygonal Meshes”
by Mario Botsch, Mark Pauly, Leif Kobbelt, Pierre Alliez,
Bruno Levy Stephan Bischoff Christian Rössl
Bruno Levy, Stephan Bischoff, Christian Rössl
• More links on web site
4
What is Geometry Processing About?
What is Geometry Processing About?
• Acquiring
• Analyzing
• Manipulating
5
Applications
7
A Geometry Processing Pipeline
A Geometry Processing Pipeline
8
A Geometry Processing Pipeline
High Level Algorithms
Extracting shape structure
9
Acquiring 3
Acquiring 3D Geometry
R
Range Scanners
S
10
Acquiring 3
Acquiring 3D Geometry
R
Range Scanners
S
11
Acquiring 3
Acquiring 3D Geometry
Tomography
Mesh Construction
from contours
from contours
from from point clouds
from point clouds
13
Simplification
Demo
Demo
Applications
Multi‐resolution hierarchies for
– efficient geometry processing
– level‐of‐detail (LOD)
( ) renderingg
15
Size--Quality Tradeoff
Size
error
size
i
16
Compression
VRML = 200K,
200K, zipped VRML = 70
70K,
K, compressed = 15
15KK
demo
Parameterization
3D space (x,y,z)
2D parameter domain (u,v)
boundary
boundary 18
Application ‐‐ Texture Mapping
Application Texture Mapping
19
Remeshing
More Remeshing
More Remeshingg
demo 21
Quad Remeshing
Quad Remeshing
Quad
22
Symmetry Detection
Symmetry Detection
23
Deformation
Deformation
e o a o Transfer
a se
Deformation Transfer
Target Source
28
What’ss Next?
What Next?
• Learn about geometry data structures
Learn about geometry data structures
• Go
Go into detail of a few representative
into detail of a few representative
algorithms
• Code them up!
• Have fun with geometry ☺
29