Efficient Bounds for PointBased Animations - PowerPoint PPT Presentation

1 / 41
About This Presentation
Title:

Efficient Bounds for PointBased Animations

Description:

In many deformation models, surface deformation defined by few degrees-of-freedom ... Parallelepiped def. by. transformed corners. vk0. 16. Definitions ... – PowerPoint PPT presentation

Number of Views:48
Avg rating:3.0/5.0
Slides: 42
Provided by: CGL66
Category:

less

Transcript and Presenter's Notes

Title: Efficient Bounds for PointBased Animations


1
Efficient Bounds for Point-Based Animations
  • Point-Based Graphics 2007
  • Denis Steinemann
  • Miguel Otaduy
  • Markus Gross

2
Motivation
  • Point-based animation increasingly popular
  • Collision detection a key part of animation
  • In general, still rather expensive
  • Accelerate with spatial partioning, BVH
  • Data structures must be updated
  • Cost depends on surface complexity

3
Motivation
  • In many deformation models, surface deformation
    defined by few degrees-of-freedom
  • Reduced linear deformations
  • Skinning
  • Low-res FEM
  • Point-based animation
  • Exploit it to update BVH in O(dofs)

4
Overview
  • Motivation
  • Related Work
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Conclusion

5
Related Work
  • Reduced linear deformations (BD-Tree JPo4)
  • p pUq
  • Compute conservative bound per deformation field,
    add them up ? tight only for low of def. fields
  • Linear-blend Skinning (KZ05)
  • Few joints that define deformation
  • Vertices convex combinations of joint transforms
  • Exploit limited convex weights to get tight
    bounds




6
Related Work
  • Low-res FEM (OGRG07)
  • Surface embedded in tet mesh defining deformation
  • Surface vertices convex combinations of
    simulation nodes
  • Point-Based Animation (AKP05)
  • Adaptation of BD-Tree
  • Tightness depends on dofs

7
Overview
  • Motivation
  • Related Work
  • Preliminaries
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Conclusion

8
Point-Based Animation
  • Elastic deformations derived from continuum
    mechanics MKN04
  • Deformation field u(x) defined at a discrete
    set of simulation nodes
  • Compute

deformation field u
x
xu
9
Point-Based Animation
u1
  • Surface animation
  • Extrapolate displacement field to vertices
  • Convex combination
  • Position of a vertex/surfel

vk0
u2
u3
simulation nodes xj
extrapolation
wkj in 0,1, add up to 1
10
Point-Based Animation
u1
  • Surface animation
  • Extrapolate displacement field to vertices
  • Convex combination
  • Position of a vertex/surfel

vk0
u2
u3
simulation nodes xj
  • Deformed vertex convex combination of n affine
    transforms of undeformed vertex

11
Bounding Volume Hierarchy
  • Construction
  • Top-down splitting in ref. pos
  • Run-time update
  • Usually bottom-up
  • O(verts)
  • On-demand (top-down)
  • Update BV right before testing for intersection
  • O(sim.nodes)

12
Bounding Volume Hierarchy
  • Goal Re-compute AABB
  • Fixed set of vertices
  • Linear in the of simulation nodes
  • Reasonably tight

13
Bounding Volume Hierarchy
  • Initialization
  • For every AABB, store
  • n influencing simulation nodes
  • Extrema in reference pos
  • Max/min weight per node
  • No need to store surface info!

14
Overview
  • Motivation
  • Related Work
  • Preliminaries
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Where to go next?

15
Definitions
  • Definition 1 Transformed AABB
  • Lemma 1 Transf. vertex bounded by transf. AABB

Parallelepiped def. by transformed corners
vk0
16
Definitions
  • Definition 2 Convex combinations of AABBs
  • Lemma 2 Convex combination of AABBs Bj
    another AABB with extrema defined by same convex
    combination of extrema of Bj

B1
B1
B2
17
AABB-Refitting
  • Bounding a single vertex

Lemma 1
18
AABB-Refitting
  • Bounding a set of vertices
  • Bound convex hull

19
AABB-Refitting
  • Bounding a set of vertices
  • Bound convex hull
  • Bounding a set of vertices
  • Bound convex hull

AABB
sim. nodes
Convex
20
AABB-Refitting
  • We could bound vertices in O(n) by computing
    and simply bound them
  • Assuming
  • Results in loose bounds
  • Exploit
  • cannot have any value in 0,1
  • Bounded by
  • define n-dim weight vectors

21
Limited Convex Combinations
  • Space of weight vectors
  • Example for n3

1
0
1
0
1
22
Limited Convex Weight Space
  • Limited Convex Weight Space
  • Hyperplane of convex weights
  • bounded by n sets of 2 parallel hyperplanes
  • Can be represented as convex comb. of corners

Weight vectors of vertices
corner
23
Constructing Corners
  • Start with (n-1)-dim simplex representing Wn
  • Cut off min-hyperplanes
  • Results in a smaller (n-1)-d simplex
  • Cut n corners of simplex with max-hyperplanes
  • Cut n-1 lines meeting at corner ? n(n-1) corners
    total
  • Each corner defined by 1 , (n-2) , 1x

n4
n3
n5
24
Evaluating Corners
  • Remember Corners simply represent some possible
    weight vectors in
  • We could evaluate all corners and bound resulting
    AABBs
  • Is related to what KZ05 do
  • Would have to evaluate O(n2) corners ? too
    expensive for our deformation model!

25
Evaluating Corners
  • Since we use AABB, were only interested in
    extremes
  • Recall Lemma 2 simply another AABB, where
  • Our problem reduces to finding the two extreme
    scalar (!) values along each axis x,y,z, using
    extreme corners

26
Evaluating Extreme Corners
  • Sort scalar values along

27
Evaluating Extreme Corners
  • Sort scalar values along
  • Sorting defines extreme corner
  • Evaluate

Extreme corner
28
Evaluating Extreme Corners
  • It turns out
  • In n-dim, weight vector of extreme corner can be
    defined similarly

29
Algorithm Summary
  • Given
  • a set of m vertices (v1vm)
  • bounded by AABB B0
  • influenced by n simulation nodes
  • Transform B0 with Tj for every node ? Bj
  • Bound Bj with a new AABB
  • For each direction x,y,z, find with the
    largest extrema, evaluate bounds using extreme
    corners

30
Overview
  • Motivation
  • Related Work
  • Preliminaries
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Where to go next?

31
Results
  • Tightness of AABB

32
Results
  • Tightness

33
Results
  • Scalability
  • Evaluating root of BVH (in microsecs)

independent of surface complexity
O(n)
34
Results
  • Performance
  • Colliding santas

35
Results
  • Performance (in ms)

36
Conclusion
  • Efficiently Update AABBs depending on dof of
    deformation model
  • Tighter bounds than for previous approaches
  • Collision detection with speed-up of more than
    one order of magnitude

37
Where to go next?
  • Is the approach more general?
  • Does it have to be convex comb. of affine
    transforms?
  • Original BV can be any convex set
  • We can transform corners of BV, will bound
    transformed point
  • Find extreme along arbitrary direction in Rn
  • Project point onto direction
  • Results in convex combination of scalar values

38
Where to go next?
  • Corners, extreme corner evaluation
  • Will this always work? Sort of proved it
  • Relation to simplex algorithm?
  • Problem of finding extrema of a limited convex
    combination can be transformed to general LP
  • maximize

39
Where to go next?
  • General linear combinations
  • Affine combinations?
  • Any linear combination?
  • Bound set of points in Rn with convex polytope,
    define them as convex combinations of polytope
    corners
  • How many corners to transform?
  • Will extreme corner evaluation still work?
  • Examples RBF, PCA, Deformable Modelling,,?

40
Where to go next?
  • Self-collisions
  • Can we exploit convexity in our approach to
    efficiently prune BVH in collision queries?
  • Other applications
  • Where we are interested in computing bounds using
    reduced-dim space
  • Screen-space bounds? Projections?
  • ???

41
  • sf
Write a Comment
User Comments (0)
About PowerShow.com