Download
Download Presentation
3D Object Representations

# 3D Object Representations

Download Presentation

## 3D Object Representations

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
##### Presentation Transcript

1. 3D Object Representations 2012, Fall

2. Introduction • What is CG? • Imaging : Representing 2D images • Modeling : Representing 3D objects • Rendering : Constructing 2D images from 3D objects • Animation : Simulating changes over time

3. Course Syllabus • Image Processing • Modeling • Rendering • Animation

4. Modeling • How do we.. • Represent 3D objects in a computer? • Acquire computer representations of 3D objects? • Manipulate computer representations of 3D objects? • Analyze computer representations of 3D objects? Different methods for different object representations

5. 3D Object

6. Why Different Representations? • Efficiency for different tasks • Acquisition • Rendering • Manipulation • Animation • Analysis • The choice of 3D object representation can have great impact on algorithms • Data structures determine algorithms!

7. 3D Object Representations • Desirable properties depend on intended use • Easy acquisition • Accurate • Concise • Intuitive editing • Efficient editing • Efficient display • Efficient intersections • Guaranteed validity • Guaranteed smoothness • Etc.

8. 3D Scene Representation • Scene is usually approximated by 3D primitives • Point • Line segment • Polygon • Polyhedron • Curved surface • Solid object • etc.

9. 3D point • Specifies a location • Represented by three coordinates • Infinitely small

10. 3D Vector • Specifies a direction and a magnitude • Represented by three coordinates • Magnitude • Has no location

11. 3D Vector • Dot(=Scalar) product of two 3D vectors

12. 3D Vector • Cross(=Vector) product of two 3D vectors • V1 X V2 = vector perpendicular V1 and V2 (dx2, dy2, dz2) (dx1, dy1, dz1)

13. 3D Line Segment • Linear path between two points • Use a linear combination of two points • Parametric representation

14. 3D Ray • Line segment with one endpoint at infinity • Parametric representation

15. 3D Line • Line segment with both endpoints at infinity • Parametric representation

16. 3D Plane • A linear combination of three points • Implicit representation , or • N is the plane “normal” • Unit-length vector • Perpendicular to plane

17. 3D Polygon • Area “inside” a sequence of coplanar points • Triangle • Quadrilateral • Convex • Star-shaped • Concave • Self-intersection • Holes (use > 1 polygon struct) Points are in counter-clockwise order

18. 3D Sphere • All points at distance “r” from point “(cx, cy, cz)” • Implicit representation • Parametric representation

19. 3D Scenes • Comprise set of geometric primitives

20. Other Geometric Primitives • More detail on 3D modeling in course • Point • Line segment • Polygon • Polyhedron • Curved surface • Solid object • etc.

21. Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific 3D Object Representations

22. Point Cloud • Unstructured set of 3D point samples • Acquired from range finer, computer vision, etc

23. Range Image • Set of 3D points mapping to pixels of depth Image • Acquired from range scanner

24. Point Sample Rendering an object representation consisting of a dense set of surface point samples, which contain color, depth and normal information Point Sample Rendering Point Sample Rendering (Surfel)

25. Polygon Soup • Unstructured set of polygons • Many polygon models are just lists of polygons • Created with interactive modeling systems?

26. Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific 3D Object Representations

27. Curved Surfaces • Motivation • Exact boundary representation for some objects • More concise representation than polygonal mesh

28. Mesh • Connected set of polygons (usually triangles) • May not be closed

29. Subdivision Surface Subdivision (Smooth Curve) Subdivision Surface • Coarse mesh & subdivision rule • Define smooth surfaces as limit of sequence of refinements

30. Parametric Surface • Boundary defined by parametric functions • x = fx (u, v) • y = fy (u, v) • z = fz (u, v) • Example: ellipsoid

31. Parametric Surface • Tensor product spline patchs • Each patch is defined by blending control points • Careful constrains to maintain continuity

32. Implicit Surfaces • Boundary defined by implicit function • f(x, y, z) = 0 • Example • linear (plane) • ax + by + cz + d = 0 • Ellipsoid

33. Implicit Surface Examples

34. Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific 3D Object Representations

35. Solid Modeling • Represent solid interiors of objects • Surface may not be described explicitly

36. Voxels • Partition space into uniform grid • Grid cells are called a voxels (like pixels) • Store properties of solid object with each voxel • Occupancy • Color • Density • Temperature • Etc.

37. Quadtrees & Octrees • Refine resolution of voxels hierarchically • More concise and efficient for non-uniform objects <Enumeration vs Quadtree >

38. Quadtree Display

39. Binary Space Partitions (BSPs) • Recursive partition of space by planes • Mark leaf cells as inside or outside object

40. Binary Space Partitions (BSPs) • recursively divide space into pairs of subspaces • each separated by a plane of arbitrary orientation and position

41. Constructive Solid Geometry (CSG) • Represent solid object as hierarchy of boolean operations • Union • Intersection • Difference

42. Constructive Solid Geometry

43. Constructive Solid Geometry (CSG) • CSG Acquisition • Interactive modeling programs • CAD/CAM

44. Surface of Revolution (SOR) • To generate a 3-D surface, revolve a two dimensional entity, e.g., a line or plane about the axis in space. called surfaces of revolution

45. Sweep surfaces (1/2) • A 3-D surface is obtained by traversing an entity such as a line, polygon or curve, along a path in space the resulting surfaces are called sweep surfaces • Frequently used in Geometric modeling • ex) entity : point path : curve Generates curve

46. Sweep surfaces (2/2) • Closed polygons and curves generates finite volume by sweeping transformation ex) square or rectangle swept along a - straight path yields a parallel piped - circle on straight path cylinder - Rotation is also possible

47. Sweep • Solid swept by curve along trajectory

48. Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels Octree BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific 3D Object Representations