Download presentation
Presentation is loading. Please wait.
1
Efficient Distance Computation between Non-Convex Objects by Sean Quinlan presented by Teresa Miller tgmiller@stanford.edu CS 326 – Motion Planning Class 3
2
Goal: Find distances between pairs of non- convex objects Also – collision detection Key: bounding representation with simple search
3
Construction of sphere tree A hierarchical representation of the object 3D object is divided into polygons Segments are surrounded by spheres Small spheres are surrounded by larger spheres Binary tree is formed (not in that order)
4
Leaf spheres in 2D Imagine the S below is straight line segments Cover segments with circles Circles remember associated segment
5
Partition leaf circles When you’ve divided as far as possible, surround each pair of circles to form a tree In a good hierarchy, segments in the same circles should be spatially close
6
Resulting Tree Representation
7
A 3D example
8
Collision Detection Use the two sphere trees – they represent two objects If two spheres touch, descend further May need to descend to polygon level (line segment)
9
Collision Detection Runs quickly if objects are: Widely separated Collided
10
Collision Detection Runs less quickly if objects are: Close but not overlapping Close at many points
11
Distance computation Collision detection actually done with a distance computation With two sphere trees larger nodes are expanded first
12
Simple Example (one sphere tree) Set initial distance value to infinity Start at the root node. 20 < infinity, so continue searching
13
Simple Example Set initial distance value to infinity Start at the root node. 20 < infinity, so continue searching. 40 < infinity, so continue searching recursively. Choose the nearest of the two child spheres to search first
14
Simple Example Eventually search reaches a leaf node 40 < infinity; examine the segment to which the leaf node is attached.
15
Simple Example Eventually search reaches a leaf node Find exact distance to the segment. Replace infinity with new minimum distance (42 in this case). 40 < infinity; examine the segment to which the leaf node is attached. d = 42
16
Simple Example Continue depth-first search 45 > 42; don’t search this branch any further d = 45
17
Simple Example Continue depth-first search 60 > 42; we can prune this half of our tree from the search 45 > 42; don’t search this branch any further d = 45
18
Other points Can be done with relative error – eliminates need to completely expand trees when objects are not in contact Empirical trials give good results – especially when 20% error is tolerable, as in collision detection case
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.