Transcript ppt

Level of Detail:
Choosing and Generating LODs
David Luebke
University of Virginia
Recap: Generating LODs

Simplification operator:
– Cell collapse
– Vertex removal
– Edge collapse



Full edge collapse
Half edge collapse
Vertex-pair merge a.k.a. “virtual edge collapse”
Generating LODs

Simplification algorithm
– Outer optimization: where to simplify

No optimization


Greedy optimization



Ex: uniform grid cells
Ex: floating cell clustering
Ex: sort edge collapses by error, resort on collapse
Lazy optimization

Ex: sort edge collapses by error, dirty bit on
collapse
– Inner optimization: how to simplify

Ex: placement of new vertex, retriangulation
Basic Greedy Edge
Collapse Algorithm
Sort all edges (by some metric)
repeat
Collapse edge
choose edge vertex (or compute optimal
vertex)
Fix-up topology
until (no edges left)
Recap: Measuring Error

Most LOD algorithms measure error
geometrically
– What is the distance between the original
and simplified surface?
– What is the volume between the surfaces?
– Etc

Really this is just an approximation to
the actual visual error, which includes:
– Color, normal, & texture distortion
– Importance of silhouettes, background
illumination, semantic importance, etc.
Measuring Visual Error

Measuring error
– Image-based ideas

Lindstrom & Turk, SIGGRAPH 2000
– Perceptually-based ideas


Luebke & Hallen, EGRW 2001
Williams, Luebke, Cohen, Kelley & Schubert, I3D
2003
Perceptually Driven LOD


Idea: measure local simplification
operations against a perceptual model to
predict whether the user can could see
the effect of simplification
Model: contrast sensitivity function
Perception 101:
Contrast Sensitivity Function

Contrast grating tests produce a contrast
sensitivity function
– Threshold contrast
vs. spatial frequency
– CSF predicts the
minimum detectable
static stimuli
Your Personal CSF
Campbell-Robson Chart by Izumi Ohzawa
Perceptual Graphics:
Where To Next?



Incorporate eccentricity, velocity (attention?)
Protect copyrighted media: imperceptible
“watermarking” via mesh distortion
Interactive ray tracing…
Measuring Geometric Error

Measuring error
– Hausdorff distance


One-sided:
h( A, B)  max min a  b
Two-sided:
H ( A, B)  max  h( A, B), h( B, A) 
a A
bB
– Common approximations:



Measure vertex-vertex distance, vertex-plane distance
METRO: Sample H(A,B) by sprinkling points on triangles
Quadric Error Metrics: a variation of vertex-plane
distance that works well in practice
Edge Collapse Algorithm
V2
Collapse
V1
V2
Edge Collapse Benefits


Edge collapse operation is simple
Supports non-manifold topology:
Edge Collapse vs.
Vertex-Pair Merging

Even better: vertex-pair merging merges
two vertices that:
– Share an edge, or
– Are within some threshold distance t

Q: What does vertex-pair merging enable
over edge collapse?
Quadric Error Metric


Minimize distance to all planes at a vertex
Plane equation for each face:
v
p:

Ax + By + Cz + D  0
Distance to vertex v :
p  v  [A
T
B C
x 
y
D ]  
1z 
Squared Distance
At a Vertex
D( v ) 
( p
T
v) 2
(v
T
p )( pT v )
p planes ( v )

p planes ( v )
v

T
( ppT )v
p planes ( v )

 v  ppT
pplanes ( v )
T

v

Quadric Derivation
(cont’d)

ppT is simply the plane equation squared:
 A2

AB
T

pp 
 AC

AD

AD 

BD 
BC C2 CD 
2 
BD CD D 
AB
B2
AC
BC
The ppT sum at a vertex v is a matrix, Q:
D( v )  vT Q v