Pink 0.9

skeletonlab.c File Reference

ultimate binary skeleton on label image guided by a priority image (see [BC07]) More...


Detailed Description

ultimate binary skeleton on label image guided by a priority image (see [BC07])

Usage: skeletonlab in.pgm prio connex [inhibit] out.pgm

Description: Ultimate binary skeleton on label image guided by a priority image. For simple point testing, each label is treated as if all other labels are turned to 0 (background). For computing distance maps, all labels are turned to 1 (foregroung). The lowest values of the priority image correspond to the highest priority.

The parameter prio is either an image (byte, int32_t, float or double), or a numerical code indicating that a distance map will be used as a priority image; the possible choices are:

The parameter connex indicates the connectivity of the binary object. Possible choices are 4, 8 in 2d and 6, 26 in 3d.

If the parameter inhibit is given and is an integer different from -1, then the points which correspond to this priority value will be left unchanged. If the parameter inhibit is given and is a binary image name, then the points of this image will be left unchanged.

Let X be the set corresponding to the input image in.pgm. Let P be the function corresponding to the priority image. Let I be the set corresponding to the inhibit image, if given, or the empty set otherwise. The algorithm is the following:

Repeat until stability
    Select a point x in X \ I such that P[x] is minimal
    If x is simple for X then
        X = X \ {x}
Result: X

Reference:
[BC07] G. Bertrand and M. Couprie: "Transformations topologiques discretes", in Géométrie discrète et images numériques, D. Coeurjolly and A. Montanvert and J.M. Chassery, pp. 187-209, Hermès, 2007.
Types supported: byte 2d, byte 3d

Category: topobin

Author:
Michel Couprie