This page uses CSS to present the content in the best possible manner.
If you can see this message, then CSS is not enabled in your browser, and the page will not appear as the designer intended.

Medial Axis/Surface Transforms

Introduction

Definition: The Medial Axis of a 2D region is defined as the locus of the centre of all the maximal inscribed circle of the object.




Medial Axis for 2D objects




More Medial Axis Examples, CLICK Here







In most commercial computer aided design systems, physical objects are represented at a low level as a collection of boundary topological elements; faces, edges, vertices, together with the geometry associated with each elements. Often this representation does not provide the shape information which is required for subsequent modelling applications. Medial Axis can be used as a complimentary representation which captures the geometric proximity of the boundary elements in a simple forms. This led to an abstract shaped representation known as skeleton. it provides the unique description of shape which is of lower dimension than the original object.



The term Medial Axis Transform is use to describe a method which reduces an objects to its medial axis and associated radius function (distance from the medial axis to the closest point on the object boundary) and provide a unique representation of the object.





Medial Axis Computation

Given a set of points S in the plane, the Delaunay triangulation constructs a set of triangles whose vertices are the points S such that the circumcircle associated with each triangle contains no other point in S. This is the geometric dual of the Voronoi diagram of S. Each Delaunay triangle satisfies the empty circumcircle property. Therefore, if the triangulation can be constructed to conform to; the object boundary, then the circumcircle approximate maximal circles and their circumcentres approximate point on the medial axis (see figure below).



circumcentre of a dense triangulation approximate the medial axis



Since the density of the boundary point set required to give a correct topological representation of the medial axis cannot be established priori, and also to extract medial axis from a dense triangulation will be too computationally expensive even with today computing power; an adaptive refinement strategy is adopted in research conducted by the QUB FE Group.



The algorithm has the following steps:



Medial Axis Tracing Algorithm

Since we are not using a dense triangulation mesh to approximate a medial axis, it is rather important to have a robust and accurate algorithm to trace out the medial axis from the coarse triangulation.



The topological entities of the medial surface can be defined quite simply on the basis of the number of degrees of the translative freedom of the maximal sphere. In essence a medial vertex, medial edge and medial face is associated with the centre of a maximal sphere which has zero, one and two degrees of freedom respectively. Therefore they are locally homeomorphic to a point, line and plane respectively.



Tracing Algorithm

For each Medial Surface Vertex(MSV)

    While neighbour not visited or NULL

       Do Tracing



Tracing

     if common entities >= 3

         if neighbour is not a MSV

               recursively do Tracing

         else if neighbour is MSV

              end Tracing

for this algorithm to work, first we need to classify the tetrahedra inside the triangulation to different type according to their vertices touching entities.

 

Medial Surface Vertex tetrahedron - this type of tetrahedra will be touching 3 different boundary entities of the 2D object ( respect. 4 different boundary entities for a 3D object). This type of tetrahedra will corresponding to a medial surface vertex (as the name suggest) in the medial axis topology.

Medial Edge tetrahedron - a medial edge tetrahedra will be one that corresponding to a medial edge topology in the object skeleton.
Medial Surface tetrahedron - a medial surface tetrahedra will be one that corresponding to a medial surface topology in the object skeleton. 




I have created a little animated gif(~121k) file to help you visualize how the tracing can be done. Hope it can give you a better idea of how tracing is used in this topic. If you still have any doubts, please don't hesitate to contact me.








Medial Surface Construction

As for the medial surface, we can briefly approximate it by creating a faceted medial surface from the Medial Surface type tetrahedra.





Input: model triangulation

Output: faceted medial surface



 for each Medial Surface type tetrahedra

    Do Rotate Around DelaunayEdge touching two and the

         only two of the governor entities of the tetrahedra

         till a polygon is formed



Facet the polygon




Again there are gifs(~155k) file to help you visualize this particular procedure.







Examples

Object Medial Axis Both






You can simply browse to this page where you can find more examples of the medial objects in VRML format.



Just like the wed browser, in order to view VRML files, you would need to have a VRML browser install, if you are not sure, check it out over here.