greg humphreys cs445: intro graphics university of virginia, fall 2003 3d object representations...
TRANSCRIPT
![Page 1: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/1.jpg)
Greg Humphreys
CS445: Intro Graphics
University of Virginia, Fall 2003
3D Object Representations
Greg Humphreys
University of Virginia
CS 445, Fall 2003
![Page 2: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/2.jpg)
Course Syllabus
I. Image processing
II. Rendering
III. Modeling
IV. Animation
![Page 3: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/3.jpg)
Course Syllabus
I. Image processing
II. Rendering
III. Modeling
IV. Animation
![Page 4: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/4.jpg)
Modeling• How do we ...
Represent 3D objects in a computer?
Construct such representations quickly and/or automatically with a computer?
Manipulate 3D objects with a computer?
Different methods for different object representations
![Page 5: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/5.jpg)
3D Objects
How can this object be represented in a computer?
![Page 6: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/6.jpg)
3D Objects
This one? H&B Figure 10.46
![Page 7: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/7.jpg)
3D Objects
How about this one?Stanford Graphics Laboratory
![Page 8: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/8.jpg)
3D Objects
This one? Lorensen
![Page 9: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/9.jpg)
3D Objects
This one? H&B Figure 9.9
![Page 10: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/10.jpg)
3D Objects
This one?
![Page 11: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/11.jpg)
Representations of Geometry
• 3D Representations provide the foundations for Computer Graphics, Computer-Aided Geometric Design,
Visualization, Robotics
• They are languages for describing geometrySemantics Syntax
values data structures
operations algorithms
• Data structures determine algorithms!
![Page 12: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/12.jpg)
3D Object Representations• Raw data
Point cloud Range image Polygon soup
• Surfaces Mesh Subdivision Parametric Implicit
• Solids Voxels BSP tree CSG Sweep
• High-level structures Scene graph Skeleton Application specific
![Page 13: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/13.jpg)
Point Cloud• Unstructured set of 3D point samples
Acquired from range finder, computer vision, etc
Hoppe
Hoppe
![Page 14: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/14.jpg)
Range Image• Set of 3D points mapping to pixels of depth image
Acquired from range scanner
Brian CurlessSIGGRAPH 99
Course #4 Notes
Range Image Tesselation Range Surface
![Page 15: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/15.jpg)
Polygon Soup• Unstructured set of polygons
Created with interactive modeling systems?
Larson
![Page 16: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/16.jpg)
3D Object Representations• Raw data
Point cloud Range image Polygon soup
• Surfaces Mesh Subdivision Parametric Implicit
• Solids Voxels BSP tree CSG Sweep
• High-level structures Scene graph Skeleton Application specific
![Page 17: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/17.jpg)
Mesh• Connected set of polygons (usually triangles)
May not be closed
Stanford Graphics Laboratory
![Page 18: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/18.jpg)
Subdivision Surface• Coarse mesh & subdivision rule
Define smooth surface as limit of sequence of refinements
Zorin & SchroederSIGGRAPH 99 Course Notes
![Page 19: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/19.jpg)
Parametric Surface• Tensor product spline patchs
Careful constraints to maintain continuity
FvDFH Figure 11.44
![Page 20: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/20.jpg)
Implicit Surface• Points satisfying: F(x,y,z) = 0
Polygonal Model Implicit Model
Bill LorensenSIGGRAPH 99
Course #4 Notes
![Page 21: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/21.jpg)
3D Object Representations• Raw data
Point cloud Range image Polygon soup
• Surfaces Mesh Subdivision Parametric Implicit
• Solids Voxels BSP tree CSG Sweep
• High-level structures Scene graph Skeleton Application specific
![Page 22: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/22.jpg)
Voxels• Uniform grid of volumetric samples
Acquired from CAT, MRI, etc.
FvDFH Figure 12.20
Stanford Graphics Laboratory
![Page 23: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/23.jpg)
BSP Tree• Binary space partition with solid cells labeled
Constructed from polygonal representations
a
b
c
d
e
f
1
2
3
7
4
5
6
a
bc
de
fg
Object
a
b
cdef
1
2
3
4
5
6
7
Binary Spatial Partition
Binary Tree
Naylor
![Page 24: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/24.jpg)
CSG• Hierarchy of boolean set operations (union,
difference, intersect) applied to simple shapes
FvDFH Figure 12.27 H&B Figure 9.9
![Page 25: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/25.jpg)
Sweep• Solid swept by curve along trajectory
Removal Path Sweep Model
Bill LorensenSIGGRAPH 99
Course #4 Notes
![Page 26: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/26.jpg)
3D Object Representations• Raw data
Point cloud Range image Polygon soup
• Surfaces Mesh Subdivision Parametric Implicit
• Solids Voxels BSP tree CSG Sweep
• High-level structures Scene graph Skeleton Application specific
![Page 27: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/27.jpg)
Scene Graph• Union of objects at leaf nodes
Bell Laboratories
avalon.viewpoint.com
![Page 28: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/28.jpg)
Skeleton• Graph of curves with radii
Stanford Graphics Laboratory
SGI
![Page 29: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/29.jpg)
Application Specific
Apo A-1(Theoretical Biophysics Group,
University of Illinois at Urbana-Champaign)
Architectural Floorplan(CS Building, Princeton University)
![Page 30: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/30.jpg)
Taxonomy of 3D Representations
Discrete Continuous
Combinatorial Functional
Parametric ImplicitTopologicalSet Membership
Voxels
MeshSubdivision
BSP TreeCell Complex
BezierB-Spline
Algebraic
Naylor
![Page 31: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/31.jpg)
Equivalence of Representations• Thesis:
Each fundamental representation has enough expressive power to model the shape of any geometric object
It is possible to perform all geometric operations with any fundamental representation!
• Analogous to Turing-Equivalence: All computers today are turing-equivalent,
but we still have many different processors
![Page 32: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/32.jpg)
Computational Differences• Efficiency
Combinatorial complexity (e.g. O( n log n ) ) Space/time trade-offs (e.g. z-buffer) Numerical accuracy/stability (degree of polynomial)
• Simplicity Ease of acquisition Hardware acceleration Software creation and maintenance
• Usability Designer interface vs. computational engine
![Page 33: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/33.jpg)
Complexity vs. Verbosity Tradeoff
Verbosity / Inaccuracy
Complexity / Accuracy
pixels/ voxels
piecewise linear polyhedra
low degree piecewise non-linear
single general functions
![Page 34: Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 3D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003](https://reader036.vdocuments.mx/reader036/viewer/2022062519/5697c00f1a28abf838cca5c9/html5/thumbnails/34.jpg)
Summary• Raw data
Point cloud Range image Polygon soup
• Surfaces Mesh Subdivision Parametric Implicit
• Solids Voxels BSP tree CSG Sweep
• High-level structures Scene graph Skeleton Application specific