SLIDE 1
Implicit Objects for Computer Graphics Jonas Gomes Luiz Velho - - PDF document
Implicit Objects for Computer Graphics Jonas Gomes Luiz Velho - - PDF document
Implicit Objects for Computer Graphics Jonas Gomes Luiz Velho IMPA Instituto de Matem atica Pura e Aplicada Motivation State of the Art Overview Consolidation of the Area Intense Reseach Activities Workshop of Implicit Surfaces
SLIDE 2
SLIDE 3
References
Introduction to Implicit Surfaces
Jules Bloomenthal (editor) Chandrajit Bajaj Marie-Paule Gascuel Brian Wyvill Geoff Wyvill1997, Morgan-Kaufmann Implicit Objects in Computer Graphics
Jonas Gomes Luiz Velho1992, IMPA / 1998, Springer-Verlag
SLIDE 4
Outline of the Course
Introduction and Overview– Basic Concepts (Book)
Symbolic Methods– Algebraic Varieties and Symbolic Perturbations
(J. Canny)
Numeric Methods– PL Approximation and Interval Methods
(L. Velho, L. Figueiredo, J. Gomes)
Representation and Modeling– Multiresolution Models and Conversion
(L. Velho, J. Gomes)
Visualization and Animation– Particle Systems: Texturing and Morphing
(Velho, Figueiredo, Gomes, Zonenschein, Wyvil)
Survey of Recent Research– Groups and Papers
SLIDE 5
Basic Concepts
Shape Description– Parametric and Implict Forms – Implicit Manifolds
Defining Implicit Objects– Properties – Mathematical Characterization – Computational Implementation
Operations with Implicit Objects– Modification – Combination
SLIDE 6
Shape Description
Parametric Description g : R m ! R ng
Implicit Description f : R n ! R (nm)f f -1 c
where
–
m: dimension of the object–
n: dimension of ambient space* Direct versus Indirect Representation
SLIDE 7
Examples
Parametric2π
θ
f
S 1 = f(x; y ) : x = cos- ;
- ;
- 2
r p 2 || || = r p
S 1 = f(x; y ) : x 2 + y 2 = 1; x; y 2 R 2 g SLIDE 8
Comparison: Parametric Implicit
Parametric– More Popular – Intrinsic Description
Implicit– Gaining Acceptance – Extrinsic Description – Unifies Geometric and Volumetric Modeling – Suitable for Constraint Definitions
Basic Operations– Enumeration of Points – Classification of Points
Pros and Cons Parametric Implicit Enumeration +
- Classification
- +
* Complementary Descriptions
SLIDE 9
Implicit Model
Implicit Function– Space Decomposition – Metrics
Gradient of F– Regularity – Orientability
SLIDE 10
Intuitive View
Implicit Function (Density)- 0.8
- 0.4
- 0.8
- 0.4
- 0.8
- 0.4
volume data function graph
Implicit SurfaceU F
−1
c F (c)
inverse image of
ca
c
level curves intersection
SLIDE 11
Space Decomposition
- f is a Point-Membership Classification Function
- c
+
- f
f
Characteristic Function of a Shape S- :
SLIDE 12 F and Metrics F (p) indicates algebraic (signed) distance: p 2 R n to F 1 (c)
induced by a pseudo-metric
d : R n ! R- m-norms
d0 d1 d oo
Properties of F– Invariance
G(x) = F (x) for F 1 (0) G(x) = F (x) for F 1 (1)– Redundancy
F given; G 1 (c)- F
– Contours
H (x) = F (x) SLIDE 13
Regularity
Regular Value c of F : R n ! R F 0 is surjective, 8x 2 F 1 (c)i.e.
( @ F x 1 ; : : : ; @ F x n ) 6= 0; 8x 2 F 1 (c)- F
–
F is a differentiable function–
c is a regular value of F Transversalityc
* Sards Theorem: Can always satisfy regularity (perturbation)
SLIDE 14
Orientability
- rF
*
F 1 (c) is an Orientable Manifold SLIDE 15
Implicit Representation
Definition– Surfaces and Solids – Canonical Forms
Characterization– Mathematical – Computational
SLIDE 16
Definition
Implicit Object O = (f ; A)where
f : R n ! R, and A = [c; 1] Solid Shape: f (x)- c
f c f < c f=c
– Boundary
f (x) = c, codimension 1 manifold– Interior
f (x) < c, submanifold of R n SLIDE 17
Canonical Forms
O = (F ; c ) F : R n ! (1; 1) c = O 1 = (F 1 ; c 1 ) F 1 : R n ! (0; 1) c 1 = 1 Converting from O 0 to O 1 F (x) = exp(F 1 (x)) Converting from O 1 to O F 1 (x) = log(F (x))* Important in Applications
F 1 (0) ! F 1 1 (1) SLIDE 18
Mathematical Characterization
Implicit Function F : R 3 ! R Gradient Vector Field rF (p) = ( @ F x 1 ; : : : ; @ F x n ) Normal Field N = rF jrF j Gauss Map (Hessian) N x– Normal Curvature at
x, in the direction v N x (v )- v
– Principal Directions (Eigenvectors of
N 0)– Principal Curvatures (Eigenvalues of
N 0)– Mean Curvature (Trace of
N 0)– Gaussian Curvature (Determinant of
N 0) SLIDE 19
Computational Characterization
Object-Oriented Approach– Parameters (Local State) – Procedures (System Interface)
Public Functions– Bounding Box
(domain of
F)– Range and Value
(
R and c)– Point Classification
(implicit function
F)– Normal
(gradient of
F)– Curvature
(hessian)
General vs. Particular– Object Classes – Instancing
SLIDE 20
Operations with Implicit Objects
ModificationUnary Ops
F : R 3 ! R– Range Operations
Metric (Density) Transformations– Domain Operations
Spatial Transformation CombinationN-ary Ops
C (F 1 (x); : : : ; F k (x))– Blend Operations
Smooth Joining– Point-Set Operations
CSG Combination SLIDE 21
Range Operations
Dilatations and Erosionsc
- ffset
- c
density
m (d; F (x)) = d- F
density
p (d; F (x)) = F (x) d Complement F (x) = F (x) SLIDE 22
Domain Operations
T : R 3 ! R 3- bs: inverse transformation
– Affine Mappings
T (x) = L(x) + v Rigid Motions– Deformations
W injective, W 0 non-singular Simple Warps- fold, pull
- taper, bend, twist
– Physically Based Deformations
SLIDE 23
Blend Operations
Linear Blendy = 1 − x
B L (F 1 (x); : : : ; F k (x)) = k X i=1 F i (x)- 1
y = 1/x
B H (F 1 (x); : : : ; F k (x)) = k Y i=1 F i (x)- 1
(1− x) + (1− y) = 1
2 2
B S (F 1 (x); : : : ; F k (x)) = 1- P
- F
- 1
SLIDE 24
Point-Set Operations
Boolean Operations– Union
F 1 [ F 2 = min (F 1 ; F 2 )– Intersection
F 1 \ F 2 = max (F 1 ; F 2 )– Difference
F 1 n F 2 = F 1 \ F 2 = max (F 1 ; F 2 ) Differentiable Booleans– Union
lim p!1 (F p 1 + F p 2 ) 1 p = min (F 1 ; F 2 )– Intersection
lim p!1 (F p 1 + F p 2 )- 1
SLIDE 25
Computational Methods
Basic Procedures– Sampling (root finding) geometry
One SolutionIntersection with a Line
Many SolutionsDynamic Particles
– Structuring topology
Subdivide Space- Domain of
- Solid Region
- Boundary
– PL Approximation – Higher Order Approximations
SLIDE 26
Modeling
Model Description– Object Representation
Primitives Composite– Groups
Geometric Constraints Other Purposes– Auxiliary Structures
Space Subdivision Enumeration Polygonization Modeling Techniques– Constructive – Free-Form – Physically Based
Conversion– Parametric - Implicit – Exact vs. Approximate
SLIDE 27
Primitive Implicit Objects
Analytic– Plane – Quadrics / Tori – Superquadrics
Skeletons– Points – Curves – Surfaces
Volumetric– Scattered Data – Voxel Array
Procedural– Hypertextures – Fractals
* Multiresolution
SLIDE 28
Visualization
Points– Particles
Curves– Discontinuity Lines – Contour Lines
Surfaces– Scan Line – Ray Tracing – Polygonal
Volumes– Projection – Ray Casting
Slice Rendering SLIDE 29
Texture Mapping
Mapping Diagram g- t
- R
- t
- R
- R
- R
- R
- R
SLIDE 30
Types of Texture Mapping
Texture Attribute– Color – Surface Properties – Displacement – Density
Texture Space– 2D texture (m
= 2)– 3D texture (m
= 3) Surface Representation– Parametric
p : U ! V(2D texture)
g = p 1– Implicit
f : V ! R(3D texture)
g = I SLIDE 31
Animation
Skeletons– Particle Systems – Articulated Objects
Metamorphosis– Interpolation
tF 1 + (1- t)F
– Correspondence
Dynamics Collision Detection SLIDE 32