
vmskel(1)                    Khoros                     vmskel(1)

PROGRAM
     vmskel - Computes the skeletonization of a binary byte image

SYNTAX
     vmskel

     -i             input image filename

     -o             output image filename

     [-V]           Gives the version for vmskel

     [-U]           Gives the usage for vmskel

     [-P]           Prompts for command line options

     [-A [file1]]   Creates the answer file called vmskel.ans or
                    file1

     [-a [file1]]   Uses vmskel.ans or file1 as the answer file

DESCRIPTION
     vmskel Computes the skeleton of a binary byte image using a
     fixed disk as the structuring element.

     From a general scientific perspective, the word MORPHOLOGY
     refers to the study of form and structure.

     The morphological approach is generally based upon the
     analysis of a two valued image in terms of some predeter-
     mined geometric shape known as a structuring element. Essen-
     tially, the manner in which the structuring element fits
     into the image is studied.

     The morphological operations can be employed for many pur-
     poses, including edge detection, segmentation, and enhance-
     ment of images.

     BASIC OPERATIONS :

     Most morphological operations can be defined in terms of two
     basic operations, EROSION (i.e. vmerode) and DILATION (i.e.
     vmdilate)

     SKELETON
     The skeleton or medial axis algorithm thins by creating an
     archetypal stick figure that internally locates the central
     axis of the figure.  The skeleton of a set S in the
     Euclidean plane is defined in the following manner:

          For each x in S, let D(x) denote the largest disk cen-
          tered at x such that, D(x) is a subset of S. Then x is
          in the skeleton of S, if there does not exist a disk
          Ds, not necessarily centered at x, such that Ds prop-
          erly contains D(x), and Ds is contained in S.

     There are several ways to define a digital version of
     Euclidean disks; we will use square disks. This method is
     used in the book referenced at the end of this description.

     This method does not guarantee a continuous skeleton, but
     does guarantee a thin skeleton.
     Also, the skeleton of a square, rectangle, etc. can be sub-
     stantly different from the classic result obtained in con-
     tinuous morphology.

     ADVICE:

          For this skeleton function, all grey levels different
          from 0 are considered "white" or equivalent to 255.
          Therefore, the image is not required to be binary, how-
          ever, it is strongly advisable to use vthresh on grey
          level images before using any morphological function.

     These algorithms were obtained from:

          "Morphological Methods in Image and Signal Processing"
          Charles R. Giardina
          Edward R. Dougherty
          Prentice Hall, Englewood Cliffs, New Jersey 07632

REQUIRED ARGUMENTS
     -i     type: infile
            desc: input image filename

     -o     type: outfile
            desc: output image filename

OPTIONAL ARGUMENTS
     none

EXAMPLES
     vmskel -i image1  -o image2
     Computes the skeletonisation of a byte binary image
     (image1).  The result is stored in image2.

SEE ALSO
     intro(1), verror(3), vgparms(3), vutils(3), lvmskel(3) vmdi-
     late(1), lvmdilate(3), vmerode(1), lvmerode(3), vmopen(1),
     lvmopen(3), vmclose(1), lvmclose(3), vxor(1), lvxor(3)

RESTRICTIONS
     vmskel accepts only BYTE images, and it is strongly advis-
     able to use vthresh to binarize the image before eroding it.

COPYRIGHT
     Copyright 1991, University of New Mexico.  All rights
     reserved.

Khoros                    Release: 1.0                          1

