3D Object Representation

Similar documents
3D Object Representation. Michael Kazhdan ( /657)

Overview of 3D Object Representations

3D Modeling I. CG08b Lior Shapira Lecture 8. Based on: Thomas Funkhouser,Princeton University. Thomas Funkhouser 2000

Overview of 3D Object Representations

3D Object Representations. COS 526, Fall 2016 Princeton University

Subdivision Surfaces. Course Syllabus. Course Syllabus. Modeling. Equivalence of Representations. 3D Object Representations

Geometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo

Implicit Surfaces & Solid Representations COS 426

Solid Modeling. Thomas Funkhouser Princeton University C0S 426, Fall Represent solid interiors of objects

Physically-Based Modeling and Animation. University of Missouri at Columbia

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

3D Modeling Parametric Curves & Surfaces

Polygonal Meshes. 3D Object Representations. 3D Object Representations. 3D Polygonal Mesh. 3D Polygonal Mesh. Geometry background

Ray Casting. Connelly Barnes CS 4810: Graphics

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural

o Represent 3D objects in a computer? o Manipulate 3D objects with a computer? o CAD programs o Subdivision surface editors :)

3D Modeling techniques

Geometric Representations. Stelian Coros

Subdivision Surfaces

Geometric Modeling in Graphics

EECS 487: Interactive Computer Graphics

1. Introduction. 2. Parametrization of General CCSSs. 3. One-Piece through Interpolation. 4. One-Piece through Boolean Operations

Modeling 3D Objects: Part 2

Spatial Data Structures

Geometric Modeling For Computer Graphics

3D Modeling: Solid Models

Solid Modeling. Michael Kazhdan ( /657) HB , FvDFH 12.1, 12.2, 12.6, 12.7 Marching Cubes, Lorensen et al.

Spatial Data Structures

9. Three Dimensional Object Representations

Spatial Data Structures

Motivation. Freeform Shape Representations for Efficient Geometry Processing. Operations on Geometric Objects. Functional Representations

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO

Polygonal Meshes. Thomas Funkhouser Princeton University COS 526, Fall 2016

Animating Transformations

Modeling. Michael Kazhdan ( /657) HB FvDFH Modeling Seashells, Fowler et al. 1992

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

Multiresolution Meshes. COS 526 Tom Funkhouser, Fall 2016 Slides by Guskov, Praun, Sweldens, etc.

Computer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011

A Volumetric Method for Building Complex Models from Range Images

Complex Models from Range Images. A Volumetric Method for Building. Brian Curless. Marc Levoy. Computer Graphics Laboratory. Stanford University

Free-Form Deformation and Other Deformation Techniques

3D Modeling: Surfaces

Review. Stephen J. Guy

MODELING AND HIERARCHY

Global Illumination. Connelly Barnes CS 4810: Graphics

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments?

Computer Graphics. Prof. Feng Liu. Fall /21/2016

CS-184: Computer Graphics

Modeling Transformations

Curves and Surfaces 2

Ray Tracing III. Wen-Chieh (Steve) Lin National Chiao-Tung University

Level of Details in Computer Rendering

Computer Graphics. Overview CS 217. Introduction. Applications. Systems & software. What is computer graphics? What is it good for?

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018

Advanced Graphics

Second degree equations - quadratics. nonparametric: x 2 + y 2 + z 2 = r 2

CS-184: Computer Graphics. Today

Introduction to Geometry. Computer Graphics CMU /15-662

Surface and Solid Geometry. 3D Polygons

Lecture 18 of 41. Scene Graphs: Rendering Lab 3b: Shader

Constructive Solid Geometry and Procedural Modeling. Stelian Coros

Geometric and Solid Modeling. Problems

Curve and Surface Basics

Geometric Modeling Mortenson Chapter 11. Complex Model Construction

Chapter 4-3D Modeling

12.3 Subdivision Surfaces. What is subdivision based representation? Subdivision Surfaces

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

Matching and Recognition in 3D. Based on slides by Tom Funkhouser and Misha Kazhdan

: Mesh Processing. Chapter 8

Chapter 12 Solid Modeling. Disadvantages of wireframe representations

Subdivision overview

Introduction to 2D and 3D Computer Graphics. Realistic Rendering. -- Solids Modeling --

3D Representation and Solid Modeling

Multi-view stereo. Many slides adapted from S. Seitz

Lecture 3 Mesh. Dr. Shuang LIANG. School of Software Engineering Tongji University Spring 2013

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

Lecture 25 of 41. Spatial Sorting: Binary Space Partitioning Quadtrees & Octrees

CS 352: Computer Graphics. Hierarchical Graphics, Modeling, And Animation

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces

Lecture notes: Object modeling

Lecture 1 Course Introduction

Object representation

SOME 024: Computer Aided Design. E. Rozos

Advanced 3D-Data Structures

Mesh Simplification. Mesh Simplification. Mesh Simplification Goals. Mesh Simplification Motivation. Vertex Clustering. Mesh Simplification Overview

SPLITTING THE CUBIC UNIFORM B-SPLINE CURVE

Meshless Modeling, Animating, and Simulating Point-Based Geometry

Shape modeling Modeling technique Shape representation! 3D Graphics Modeling Techniques

Subdivision. Outline. Key Questions. Subdivision Surfaces. Advanced Computer Graphics (Spring 2013) Video: Geri s Game (outside link)

Parameterization of Triangular Meshes with Virtual Boundaries

Processing 3D Surface Data

Visualization Computer Graphics I Lecture 20

CPSC / Sonny Chan - University of Calgary. Collision Detection II

Spline Surfaces, Subdivision Surfaces

Curves & Surfaces. MIT EECS 6.837, Durand and Cutler

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

Data Representation in Visualisation

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes

Transcription:

3D Object Representation Connelly Barnes CS 4810: Graphics Acknowledgment: slides by Jason Lawrence, Misha Kazhdan, Allison Klein, Tom Funkhouser, Adam Finkelstein and David Dobkin

3D Object Representation How do we... orepresent 3D objects in a computer? oconstruct such representations quickly and/or automatically with a computer? omanipulate 3D objects with a computer? Different methods for different object representations

3D Objects How can this object be represented in a computer?

3D Objects This one? H&B Figure 10.46

3D Objects How about this one? Imaging Economics

3D Objects This one? H&B Figure 9.9

3D Objects This one?

Representations of Geometry 3D Representations provide the foundations for ocomputer Graphics ocomputer-aided Geometric Design ovisualization orobotics They are languages for describing geometry data structures algorithms Data structures determine algorithms!

3D Object Representations Raw data opoint cloud orange image opolygon soup Surfaces omesh osubdivision oparametric oimplicit Solids ovoxels obsp tree ocsg osweep High-level structures oscene graph oskeleton oapplication specific

Point Cloud Unstructured set of 3D point samples oacquired from range finder, random sampling, particle system implementations, etc Hoppe Czech Academy of Sciences

Point Cloud Unstructured set of 3D point samples oacquired from range finder, random sampling, particle system implementations, etc Can associate colors/normals/etc. Hoppe to the points Czech Academy of Sciences

Range Image An image storing depth instead of color oacquired from range scanners e.g. Microsoft Kinect Range Image Tesselation Range Surface Brian Curless SIGGRAPH 99 Course #4 Notes

Polygon Soup Unstructured set of polygons ocreated with interactive modeling systems, combining range images, etc. Larson

3D Object Representations Raw data opoint cloud orange image opolygon soup Surfaces omesh osubdivision oparametric oimplicit Solids ovoxels obsp tree ocsg osweep High-level structures oscene graph oskeleton oapplication specific

Mesh Connected set of polygons (usually triangles) omay not be closed Stanford Graphics Laboratory

Subdivision Surface Coarse mesh & subdivision rule odefine smooth surface as limit of sequence of refinements Zorin & Schroeder SIGGRAPH 99 Course Notes

Parametric Surface Tensor product spline patches ocareful use of constraints to maintain continuity FvDFH Figure 11.44

Implicit Surface Points satisfying: F(x,y,z) = 0 Polygonal Model Implicit Model Bill Lorensen SIGGRAPH 99 Course #4 Notes

3D Object Representations Raw data opoint cloud orange image opolygon soup Surfaces omesh osubdivision oparametric oimplicit Solids ovoxels obsp tree ocsg osweep High-level structures oscene graph oskeleton oapplication specific

Voxels Uniform grid of volumetric samples oacquired from CT, MRI, etc. FvDFH Figure 12.20 Stanford Graphics Laboratory

BSP Tree Binary space partition with solid cells labeled oconstructed from polygonal representations a b c d e f 1 2 3 7 4 5 6 a b c d e f g Object a b c d e f 1 2 3 4 5 6 7 Binary Spatial Partition Binary Tree Naylor

Constructive Solid Geometry (CSG) Hierarchy of boolean set operations (union, difference, intersect) applied to simple shapes FvDFH Figure 12.27 H&B Figure 9.9

Sweep Solid swept by curve along trajectory Stephen Chenney U Wisconsin

Sweep Solid swept by curve along trajectory Stephen Chenney U Wisconsin ocurve may be arbitrary osweep polygon may deform (scale, rotate) with respect to the path orientation

Example of Several Representations Scalable KinectFusion Which representations are being used? 25

3D Object Representations Raw data opoint cloud orange image opolygon soup Surfaces omesh osubdivision oparametric oimplicit Solids ovoxels obsp tree ocsg osweep High-level structures oscene graph oskeleton oapplication specific

Scene Graph Union of objects at leaf nodes Bell Laboratories avalon.viewpoint.com

Skeleton Graph of curves with radii Stanford Graphics Laboratory SGI

Application Specific Apo A-1 (Theoretical Biophysics Group, University of Illinois at Urbana-Champaign) Architectural Floorplan

Equivalence of Representations Thesis: oeach fundamental representation has enough expressive power to model the shape of any geometric object oit is possible to perform all geometric operations with any fundamental representation! Analogous to Turing-Equivalence: oall computers today are Turing-equivalent, but we still have many different processors

Computational Differences Efficiency ocombinatorial complexity ospace/time trade-offs onumerical accuracy/stability Simplicity oease of acquisition ohardware acceleration Usability

Surfaces What makes a good surface representation? oconcise olocal support oaffine invariant oarbitrary topology oguaranteed continuity onatural parameterization oefficient display oefficient intersections H&B Figure 10.46

Surfaces What makes a good surface representation? oconcise olocal support oaffine invariant oarbitrary topology oguaranteed continuity onatural parameterization oefficient display oefficient intersections Not Local Support

Surfaces What makes a good surface representation? oconcise olocal support oaffine invariant oarbitrary topology oguaranteed continuity onatural parameterization oefficient display oefficient intersections

Surfaces What makes a good surface representation? oconcise olocal support oaffine invariant oarbitrary topology oguaranteed continuity onatural parameterization oefficient display oefficient intersections Topological Genus Equivalences

Surfaces What makes a good surface representation? oconcise olocal support oaffine invariant oarbitrary topology oguaranteed continuity onatural parameterization oefficient display oefficient intersections

Surfaces What makes a good surface representation? oconcise olocal support oaffine invariant oarbitrary topology oguaranteed continuity onatural parameterization oefficient display oefficient intersections A Parameterization (not necessarily natural)

Surfaces What makes a good surface representation? oconcise olocal support oaffine invariant oarbitrary topology oguaranteed continuity onatural parameterization oefficient display oefficient intersections