  A topology preserving skeleton is a synthetic representation of an object
that retains its topology and many of its significant morphological properties.
The process of obtaining the skeleton, referred to as skeletonization or
thinning, is a very active research area. It plays a central role in reducing
the amount of information to be processed during image analysis and
visualization, computer-aided diagnosis or by pattern recognition algorithms.
  This paper introduces a novel topology preserving thinning algorithm which
removes \textit{simple cells}---a generalization of simple points---of a given
cell complex. The test for simple cells is based on \textit{acyclicity tables}
automatically produced in advance with homology computations. Using acyclicity
tables render the implementation of thinning algorithms straightforward.
Moreover, the fact that tables are automatically filled for all possible
configurations allows to rigorously prove the generality of the algorithm and
to obtain fool-proof implementations. The novel approach enables, for the first
time, according to our knowledge, to thin a general unstructured simplicial
complex. Acyclicity tables for cubical and simplicial complexes and an open
source implementation of the thinning algorithm are provided as additional
material to allow their immediate use in the vast number of practical
applications arising in medical imaging and beyond.
