1 st meeting, industrial geometry, 2005 approximating solids by balls (in collaboration with...
TRANSCRIPT
1st Meeting, Industrial Geometry, 2005
Approximating Solids by Balls(in collaboration with subproject: "Applications of Higher Geometrics")
Bernhard Kornberger
Institute for Software Technology, TU Graz
1st Meeting, Industrial Geometry, 2005
Overview
Motivation: Definition of the Minkowski addition An application for Minkowski sums
Approximation A technique to approximate solids by balls
1st Meeting, Industrial Geometry, 2005
Definition of theMinkowski Addition
• The Minkowski sum of two point sets A and B in Euclidean space is the result of adding every point of A to every point of B:
}|{ BbandAabaBA
A B AB
1st Meeting, Industrial Geometry, 2005
One Application of Minkowski Sums
Motion Planning: Find the shortest path for a robot R through the obstacles P.
Solution: Compute the Minkowski sum RP and thereby fatten the obstacles. This reduces the problem to moving a POINT from the start to the goal using a standard shortest-path algorithm
R
PP
1st Meeting, Industrial Geometry, 2005
Minkowski Additionof two Solids
In our case the surface of a solid is given by a dense 3dimensional point cloud which is triangulated.
1st Meeting, Industrial Geometry, 2005
Minkowski Additionof two Solids
In our case the surface of a solid is given by a dense 3dimensional point cloud which is triangulated.
We replace this representation by an approximation using balls. The Minkowski addition of two primitive elements is easy now: Just the radii and the centers of the balls have to be added.
1st Meeting, Industrial Geometry, 2005
Our Attempt(first shot which uses parts of the powercrust [1] technology)
Minkowski addition using approximations of the models
1st Meeting, Industrial Geometry, 2005
Our Attempt [1/3](here in 2D)
The surface of an object is given as a dense cloud of sample points.
1st Meeting, Industrial Geometry, 2005
Our Attempt [1/3](here in 2D)
The surface of an object is given as a dense cloud of sample points.
From this input we compute the Voronoi diagram which divides the space into cells, each consisting of all points closest to one particular sample point.
VoronoiCell
1st Meeting, Industrial Geometry, 2005
Our Attempt [2/3](here in 2D) The sampling is dense. Therefore
the cells are small, long andapproximately normal to the surface.
VoronoiCell
1st Meeting, Industrial Geometry, 2005
Our Attempt [2/3](here in 2D) The sampling is dense. Therefore
the cells are small, long andapproximately normal to the surface.
A pole is the farthest vertex of a Voronoi cell from the sample point. Each interior pole is part of the approximated medial axis.
VoronoiCell
InteriorPole
1st Meeting, Industrial Geometry, 2005
Our Attempt [2/3](here in 2D) The sampling is dense. Therefore
the cells are small, long andapproximately normal to the surface.
A pole is the farthest vertex of a Voronoi cell from the sample point. Each interior pole is part of the approximated medial axis.
The medial axis consists of all points having more than one nearest point on the surface.
InteriorPole
1st Meeting, Industrial Geometry, 2005
Our Attempt [3/3](here in 2D)
Each interior pole is used as the center of a circle that touches the surface in at least two points.
1st Meeting, Industrial Geometry, 2005
Our Attempt [3/3](here in 2D)
Each interior pole is used as the center of a circle that touches the surface in at least two points.
The centers of all circles approximate the medial axis.
The union of their hulls approximates the hull of the object
1st Meeting, Industrial Geometry, 2005
Real Examples in 3D(..constructed in joint work with the team in Vienna)
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• A CAD model– triangulated with
20 000 points
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• A CAD model– triangulated with
20 000 points
• The approximation– with 20 000 balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• A CAD model– triangulated with
20 000 points
• The approximation– with 20 000 balls
• The approximated medial axis
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Original CAD Model– Triangulation with
20 000 Points
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Approximated Model– 20 000 Balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Approximated Model– 20 000 Balls– 10 000 Balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Approximated Model– 20 000 Balls– 10 000 Balls– 4 000 Balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Approximated Model– 20 000 Balls– 10 000 Balls– 4 000 Balls– 1 000 Balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Approximated Model– 20 000 Balls– 10 000 Balls– 4 000 Balls– 1 000 Balls– 200 Balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Approximated Model– 20 000 Balls– 10 000 Balls– 4 000 Balls– 1 000 Balls– 200 Balls– 100 Balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• Approximated Model– 20 000 Balls– 10 000 Balls– 4 000 Balls– 1 000 Balls– 200 Balls– 100 Balls– 50 Balls
1st Meeting, Industrial Geometry, 2005
Examples in 3D
• The approximated medial axis of the CAD object is not thin and smooth– This leads to
smaller balls near the objects surface
– Not optimal
1st Meeting, Industrial Geometry, 2005
Work is ongoing...
Problems of our first attempt: Extremely strong response of the approximated medial axis to small
distortions on the surface. Balls outside the surface of the original object caused by wrong
inner-/outer- pole labeling A PC with 512 MB RAM can compute no more than 30000 input
points.
Further steps Our first attempt used the Powercrust [1] software which is actually
designed for surface reconstruction. Our own version of the software is planned to use efficient and reliable
algorithms from CGAL A combination with other approaches like octtrees will be investigated
1st Meeting, Industrial Geometry, 2005
References
1. Powercrust, developed by Amenta, Choi and Kollurihttp://www.cs.utexas.edu/users/amenta/powercrust/welcome.html
1st Meeting, Industrial Geometry, 2005
Thank you for your attention!