Implicit Objects for Computer Graphics Jonas Gomes Luiz Velho - - PDF document

implicit objects for computer graphics
SMART_READER_LITE
LIVE PREVIEW

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-1
SLIDE 1

Implicit Objects for Computer Graphics

Jonas Gomes Luiz Velho

IMPA

Instituto de Matem´ atica Pura e Aplicada

slide-2
SLIDE 2

Motivation

State of the Art Overview

Consolidation of the Area Intense Reseach Activities

– Workshop of Implicit Surfaces

(1995, 1996, 1998)

– SIGGRAPH Courses and Papers – Recent Books

Review of VISGRAF Research

Main Research Area People: jonas, lvelho, lhf, ruben

– Papers – Thesis – Book

slide-3
SLIDE 3

References

Introduction to Implicit Surfaces

Jules Bloomenthal (editor) Chandrajit Bajaj Marie-Paule Gascuel Brian Wyvill Geoff Wyvill

1997, Morgan-Kaufmann Implicit Objects in Computer Graphics

Jonas Gomes Luiz Velho

1992, IMPA / 1998, Springer-Verlag

slide-4
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
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
SLIDE 6

Shape Description

Parametric Description g : R m ! R n

g

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
SLIDE 7

Examples

Parametric

θ

f

S 1 = f(x; y ) : x = cos
  • ;
y = sin
  • ;
  • 2
[0; 2 ]g Implicit

r p 2 || || = r p

S 1 = f(x; y ) : x 2 + y 2 = 1; x; y 2 R 2 g
slide-8
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
SLIDE 9

Implicit Model

Implicit Function

– Space Decomposition – Metrics

Gradient of F

– Regularity – Orientability

slide-10
SLIDE 10

Intuitive View

Implicit Function (Density)
  • 0.8
  • 0.4
0.4 0.8 x
  • 0.8
  • 0.4
0.4 0.8 y
  • 0.8
  • 0.4
0.4 0.8

volume data function graph

Implicit Surface

U F

−1

c F (c)

inverse image of

c

a

c

level curves intersection

slide-11
SLIDE 11

Space Decomposition

  • f is a Point-Membership Classification Function
f (p)
  • c
8 > < > : > p 2 exterior points = p 2 boundary points < p 2 interior points

+

  • f

f

Characteristic Function of a Shape S
  • :
R n ! [0; 1] (p) ( 1 p 2 S p 62 S
slide-12
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
d m (p; q ) = " X i jjp i ; q i jj m # 1=m ex: circle

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
1 (c)

– Contours

H (x) = F (x)
slide-13
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
(p) = c defines a Differentiable Implicit Manifold

F is a differentiable function

c is a regular value of F Transversality

c

* Sards Theorem: Can always satisfy regularity (perturbation)

slide-14
SLIDE 14

Orientability

  • rF
= ( @ F x 1 ; : : : ; @ F x n ) Normal Vector Fields: N 1 (p) = N 2 (p) = rF (p) krF (p)k

*

F 1 (c) is an Orientable Manifold
slide-15
SLIDE 15

Implicit Representation

Definition

– Surfaces and Solids – Canonical Forms

Characterization

– Mathematical – Computational

slide-16
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
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
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
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
SLIDE 20

Operations with Implicit Objects

Modification

Unary Ops

F : R 3 ! R

– Range Operations

Metric (Density) Transformations

– Domain Operations

Spatial Transformation Combination

N-ary Ops

C (F 1 (x); : : : ; F k (x))

– Blend Operations

Smooth Joining

– Point-Set Operations

CSG Combination
slide-21
SLIDE 21

Range Operations

Dilatations and Erosions

c

  • ffset
(c; F (x)) = F (x)
  • c
Density Change

density

m (d; F (x)) = d
  • F
(x)

density

p (d; F (x)) = F (x) d Complement F (x) = F (x)
slide-22
SLIDE 22

Domain Operations

T : R 3 ! R 3
  • bs: inverse transformation
T 1

– Affine Mappings

T (x) = L(x) + v Rigid Motions

– Deformations

W injective, W 0 non-singular Simple Warps
  • fold, pull
Extrinsic Deformations
  • taper, bend, twist
Free Form Deformations

– Physically Based Deformations

slide-23
SLIDE 23

Blend Operations

Linear Blend

y = 1 − x

B L (F 1 (x); : : : ; F k (x)) = k X i=1 F i (x)
  • 1
Hyperbolic Blend

y = 1/x

B H (F 1 (x); : : : ; F k (x)) = k Y i=1 F i (x)
  • 1
Super-Elliptic Blend

(1− x) + (1− y) = 1

2 2

B S (F 1 (x); : : : ; F k (x)) = 1
  • P
max (0; 1
  • F
i (x))
  • 1
slide-24
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
p = max (F 1 ; F 2 )
slide-25
SLIDE 25

Computational Methods

Basic Procedures

– Sampling (root finding) geometry

One Solution

Intersection with a Line

Many Solutions

Dynamic Particles

– Structuring topology

Subdivide Space
  • Domain of
F Subdivide Object
  • Solid Region
  • Boundary
Approximations

– PL Approximation – Higher Order Approximations

slide-26
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
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
SLIDE 28

Visualization

Points

– Particles

Curves

– Discontinuity Lines – Contour Lines

Surfaces

– Scan Line – Ray Tracing – Polygonal

Volumes

– Projection – Ray Casting

Slice Rendering
slide-29
SLIDE 29

Texture Mapping

Mapping Diagram g
  • t
: V
  • R
n ! R k V @ @ @ @ @ @ @ g
  • t
R U g ? t
  • R
k Spaces V
  • R
n: object space U
  • R
m: texture space R k: attribute space Functions t : U
  • R
m ! R k: texture function g : V
  • R
n ! U: mapping function
slide-30
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
SLIDE 31

Animation

Skeletons

– Particle Systems – Articulated Objects

Metamorphosis

– Interpolation

tF 1 + (1
  • t)F
2, t 2 [0; 1]

– Correspondence

Dynamics Collision Detection
slide-32
SLIDE 32

Conclusion

Advantages

– Representation of Surfaces & Volumes – Description of Solids, Liquids, Gases – Flexible Formulation for CAD/CAM – Resolution and Levels of Detail – Higher Dimensional Problems

Topics

– Computation – Modeling – Visualization – Animation

Current Research