Efficient Bounds for PointBased Animations - PowerPoint PPT Presentation

1 / 45
About This Presentation
Title:

Efficient Bounds for PointBased Animations

Description:

Deformed vertex = convex combination of n affine transforms of undeformed vertex ... Affine combinations? Any linear combination? ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 46
Provided by: CGL66
Category:

less

Transcript and Presenter's Notes

Title: Efficient Bounds for PointBased Animations


1
Efficient Bounds for Point-Based Animations
  • Submitted to Point-Based Graphics 2007
  • Denis Steinemann, Miguel Otaduy

2
Overview
  • Motivation
  • Related Work
  • Point-Based Animation, BVH
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Where to go next?

3
Motivation
  • Collision detection a key part of animation of
    deformable objects
  • In general, still rather expensive
  • Accelerate with spatial partioning, BVH
  • Data structures must be updated to account for
    deformation, cost depends on surface complexity

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

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
  • Point-Based Animation, BVH
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Where to go next?

8
Point-Based Animation
  • Elastic deformations derived from continuum
    mechanics MKN04
  • Deformation field defined at a discrete set of
    simulation nodes
  • Position of a vertex/surfel

deformation field u
x
xu
simulation nodes xj
wkj in 0,1, add up to 1
vertices vk
9
Point-Based Animation
  • As wk is a vector of convex weights
  • Deformed vertex convex combination of n affine
    transforms of undeformed vertex

Aj
tj
10
Bounding Volume Hierarchy
  • Construction Initialization
  • Use AABBs
  • Top-down splitting in reference position
  • For every AABB, store
  • n influencing simulation nodes
  • Do not store m vertices
  • Center, extensions in ref. pos
  • Max/min weight per node

11
Bounding Volume Hierarchy
  • Run-time update
  • Usually bottom-up
  • O(verts)
  • On-demand (top-down)
  • Update AABB before testing for intersection
  • O(sim.nodes)

12
Overview
  • Motivation
  • Related Work
  • Point-Based Animation, BVH
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Where to go next?

13
Computing Bounds
  • Goal
  • We want to tightly re-fit any AABB using only
    information from simulation nodes and not the
    surface itself

14
Definitions
  • Set of convex weights in Rn

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 combination of AABBs
  • Lemma 2 Convex combination of AABBs Bj
    another AABB with extrema defined by same convex
    combination of extrema of Bj

B1
B2
17
Overview
  • Motivation
  • Related Work
  • Point-Based Animation, BVH
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Where to go next?

18
AABB-Refitting
  • Bounding a single vertex

Lemma 1
19
AABB-Refitting
  • Bounding a set of vertices
  • Bound convex hull
  • Finally,

From prev. slide
Swapping sums
20
AABB-Refitting
  • Bounding a set of vertices
  • Bound convex hull
  • Finally,

From prev. slide
Swapping sums
Simply another AABB! (Lemma 2)
21
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

22
Limited Convex Combinations
  • Set of limited convex weights
  • Is a subset of Wn and Rn
  • Our vector of convex weights

23
Limited Convex Combinations
  • How does Wn look?
  • Example for n3

1
0
1
0
1
24
Limited Convex Weight Space
  • Wn 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
25
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
26
Evaluating Corners
  • Remember Corners simply represent some 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!

27
Evaluating Corners
  • Since we use AABB, were only interested in
    extremes
  • 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

28
Evaluating Extreme Corners
  • Sort scalar values along

29
Evaluating Extreme Corners
  • Sort scalar values along

30
Evaluating Extreme Corners
  • Sort scalar values along

Extreme corner
31
Evaluating Extreme Corners
  • Finally, evaluate extreme along
  • Same for max/min, just switch signs

32
Evaluating Extreme Corners
  • It turns out that
  • In Wn, weight vector of extreme corner along
    direction is defined as
  • j1 and j2 indices of largest and second largest
    values ? can be found in O(n)

33
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

34
Overview
  • Motivation
  • Related Work
  • Point-Based Animation, BVH
  • Computing Bounds
  • General
  • Efficient evaluation
  • Results
  • Where to go next?

35
Results
  • Tightness of AABB

36
Results
  • Tightness

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

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

39
Results
  • Performance (in ms)

40
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

41
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

42
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

43
Where to go next?
  • General linear combinations
  • Affine combinations?
  • Any linear combination?
  • Bound set of m 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,,?

44
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?
  • ???

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