3d object representations - snuvplab.snu.ac.kr/.../07_3dobjectrepresentations(ch8).pdf3d object...
TRANSCRIPT
§ Components for Image Synthesis§ Scene description§ Light source§ Viewpoint
§ Scene = an assembly of one or more models§ A model contains§ A model contains
§ structural description - geometry of the shape§ surface description - appearance (lighting)
§ For a simulation model we need more§ physics§ mechanics - assemblability
* Some of contents from SigGraph Lecture Notes
§ How are models used? § Image synthesis § Design § Manufacturing - part relationships§ Simulation § Art
§ Levels of Detail § Levels of Detail § visual detail vs. structural detail § more detail = more realism/accuracy
= more resources§ procedural objects : more detail when
you need it.
n Issues in Model Selection § Computational cost of the model
§ storage space § object construction time § display time
§ Effectiveness in modeling the desired phenomena § geometry § geometry
– looks good for image-making – accuracy for simulation
§ appearance – looks – accuracy
§ Implementation Complexity § the number of primitives § the number of shapes § complexity of each instance
§ Ease of simulation § match to simulator § cost of conversion
§ Ease of animation § Ease of animation § physics of motion § constraints
n The difference between models and rendering § Models describe the object and its attributes:
§ shape or geometry§ reflectivity, transmittance§ surface smoothness, color§ texture
§ Rendering algorithm transforms the models to a screen-based view from a given: a screen-based view from a given: § PRP, location, view direction, view up direction, projection
type, window clipping plane, FOV angle§ One or more light sources – location,
direction, intensity, color § Atmospheric effects - ambient light, fog§ Image quality parameters – antialiasing, resolution
□ Operations on models
◦ Transformations◦ Change of detail
Interpolation to augment detailAveraging to reduce detailHierarchy of models of the same object at
different levels of detaildifferent levels of detail◦ Measurement
topology - connectivity, featuredistancevolumesurface tangent
◦ Combination union intersection difference cut/slice
◦ Deformation skew stretch bend bend perturb (e.g., randomly, stochastically, or fractally)
◦ Display operation wire-frame visible line/surface ray cast radiosity
u Object representation models§ Polygon, quadric surfaces
§ Simple Euclidean objects (polyhedrons, ellipsoids)
§ Spline surfaces§ Designing aircraft wings, gears and other structures with
curved surfaces
§ Procedural methods§ Fractal, terrain surfaces, clouds§ Fractal, terrain surfaces, clouds
§ Physically based modeling§ Using systems of interacting forces, a piece of cloths, a
glob of gello
§ Octree encoding§ Internal features of objects, medical CT images
§ Volume, etc.
u Representation schemes for solid objects§ Boundary representations (B-reps)
§ Describe a 3D object as a set of surfaces separating the object interior from the environment
§ e.g. polygon facets, spline patches
§ Space-partitioning representations§ Describe interior properties, by partitioning the object’s s
patial region into a set of small non-overlapping, contigupatial region into a set of small non-overlapping, contiguous solids
§ e.g. octree
§ Polyhedra§ The most commonly used B-reps§ A set of surface polygons
§ Vertex, edge, surface structures
§ Relatively simple to define, manipulate, and display§ Polygon descriptions: standard graphics objects
§ Curved surfaces§ Quadric surfaces, polynomial and exponential
functions, spline surfaces§ Quadric surfaces
§ SpheresØ Isotropic primitives, simple geometry
§ EllipsoidsØ Model elongated, symmetric, rounded objectsØ Model elongated, symmetric, rounded objects
§ TorusØ Doughnut-shaped object
( ) 222
22 rzryx axial =+-+
( )( )
fpqpqfpfpqf
sin ,sincos ,coscos
rzrryrrx
axial
axial
=££-+=££-+=
§ Curved surfaces§ Spline surfaces
§ Parametric functions§ True mathematical curvature§ Adjacent patches may be constrained for continuity§ Shape derived from control points and/or tangent
vectors§ Bezier, Hermite, Bicubic, B-spline, NURBS§ Bezier, Hermite, Bicubic, B-spline, NURBS
§ Implicit surfaces/ Algebraic equations§ The surfaces are defined as the solutions to
algebraic formulas. § Quadric surfaces
§ Implicit second-order polynomial equations
§ Double cones
§ Hyperboloids of one sheet
§ Hyperboloids of two sheets
§ Potential functions§ Models for blobby objects
§ Molecular structure, liquids and water droplets, melting objects, muscle, etc.
§ Center-point, radius-dependent decreasing value§ Act like energy sources, summing when overlapping
§ A smooth model§ A combination of Gaussian density functions§ A combination of Gaussian density functions
§ Sweep representations§ 3D objects that possess translational, rotational,
or other symmetries§ Defined by specifying a 2D shape and a sweep
that moves the shape
Translational sweep
Rotational sweep
§ CSG (Constructive Solid-Geometry) § Recursively combine simple primitives by boolean
operations (union, intersection, difference)
§ Simple primitives
Primitives Transformed Combined
Tree structure
§ Octree§ An extension of quadtree encoding§ Space subdivision
§ Using spatial coherence, storage reduction§ Partition space into 8 cubes, recursively§ A heterogeneous octant is subdivided until the
subdivisions are homogeneous
§ Primarily an indexing scheme for access efficiency§ Primarily an indexing scheme for access efficiency
§ BSP(Binary space partitioning) tree§ Subdivide a scene into two sections at each step
with a plane of any position and orientation§ Smaller tree size than octrees
§ Volume§ Voxels (Spatial-occupancy enumeration)
§ Use identical cells Ø cubes or parallelpipeds
§ Density or value associated with each voxel § Expensive storage but simple data structure§ Useful for medical imaging – volume visualization § Special techniques needed to compute surface normals § Special techniques needed to compute surface normals
and shading
ns0s
Image Plane
◦
§ Particle systems§ Sets of many points moving in spatial paths.§ Shape description is combined with physical
simulation
X (position)
v (velocity)
F (Force accumulator)
m (mass)
□ Comparison of Representations ▷ accuracy ◦ spatial-partitioning, polygonal B-reps: approximated ◦ CSG with non-polyhedra primitives, curved B-reps:
accurate ◦ tradeoff: resolution and space or time ▷ domain ▷ domain ◦ primitive instancing, sweeps: limited ◦ B-reps: more widely used ▷ uniqueness◦ octree, volume: unique representation ◦ primitive instancing: does not guarantee uniqueness
▷ validity◦ B-reps: most difficult to validate◦ BSP tree: represent valid spatial set◦ CSG tree: needs local syntactic checking ▷ closure◦ simple sweep: not closed under Boolean operation◦ simple sweep: not closed under Boolean operation◦ B-reps: hard to maintain closure after Boolean
operations
u Fractal-Geometry Methods§ Euclidean-geometry methods
§ Objects are described with equations§ Manufactured objects
§ Smooth surfaces and regular shapes
§ Fractal-geometry methods§ Objects are described with procedures§ Objects are described with procedures§ Natural objects
§ Mountains, clouds§ Irregular or fragmented features
§ Properties of Fractals§ Infinite detail at every point§ Self-similarity
§ Between the object parts and the overall features of object
§ Shapes repeat themselves exactly at different scales
§ Iterative procedure§ Procedure that specifies a repeated operation for
producing the detail in the object subparts
§ Simple algorithms but complex results
§ Fractal Generation Procedures§ Fractal object
§ generated by repeatedly applying a specified transformation
§ Transformation function, F§ Geometric transformations (scaling, translation, rotation)
.... ),P(P ),P(P ),P(P 232201 FFF ===
§ Geometric transformations (scaling, translation, rotation)§ Nonlinear coordinate transformations
§ The number of application of the function, F§ increasing ® more and more detail§ Infinite detail in nature, but a finite # of times in graphics
applications
§ Classification of Fractals§ Self-similar fractals
§ Construct object subparts by applying a scaling parameter s to the overall shape
§ Statistically self-similarØ The parts have the same statistical propertiesØ Trees, shrubs, other vegetation
§ Self-affine fractals § Self-affine fractals § formed with different scaling parameter, sx, sy, and sz in
different coordinate directions§ Statistically self-affine
Ø Terrain, water, clouds
§ Invariant fractal sets§ Formed with nonlinear transformations§ Self-squaring fractals, self-inverse fractals
§ Fractal Dimension§ Fractal dimension, D
§ The amount of variation in the structure of a fractal object§ A measure of roughness, or fragment of the object§ More gagged-looking « larger fractal dimension
1=× EDsn
1=× Dsn
)/1ln(ln
snD =
§ Deterministic (nonrandom) self-similar fractals§ Initiator: a given geometric shape
§ Generator: a pattern replacing the subparts of the initiator
2619.1)3ln(
4ln 4 ,31
»=== DnsKoch curve, “snowflake” pattern
§ Deterministic (nonrandom) self-similar fractals§ Trees and other plants can be constructed with self-
similar geometric-constructions.
§ Statistically self-similar fractals§ Add some random variations ® variability§ Model a scene using transformed instances of the
object
Modified “snowflake” pattern Random scaling patterns & branching direction
§ Affine fractal-construction method§ Fractional Brownian motion
§ An extension of standard Brownian motion, “random walk”Ø Erratic, zigzag movement of particles in a gas or fluid
§ A single fractional Brownian path§ Model a fractal curve
§ 2D array of random fractional Brownian elevations§ Model mountains, valleys, and oceans§ Model mountains, valleys, and oceans
§ Self-squaring fractals§ Invariant fractal sets§ Mandelbrot set
§ defined by a family of complex quadratic polynomials,
§ considers the behavior of the sequence:
czzfc += 2)(
))),....)0((()),0((),0(( cccccc ffffff
§ The Mandelbrot set is defined as the set of all points c such that the above sequence does not escape to infinity
))),....)0((()),0((),0(( cccccc ffffff