3d object representations - snuvplab.snu.ac.kr/.../07_3dobjectrepresentations(ch8).pdf3d object...

33
3D Object 3D Object Representations Representations Chapter 8

Upload: nguyenquynh

Post on 11-Mar-2018

232 views

Category:

Documents


2 download

TRANSCRIPT

3D Object 3D Object RepresentationsRepresentations

Chapter 8

§ 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