
vmcustom(1)                  Khoros                   vmcustom(1)

PROGRAM
     vmcustom - Customizes a morphological kernel via keyboard
     entry

SYNTAX
     vmcustom

     -o             output morphological kernel

     [-r]           specify the number of rows

     [-c]           specify the number of columns

     [-x]           specify x position of upper left

     [-y]           specify y position of upper left

     [-V]           Gives the version for vmcustom

     [-U]           Gives the usage for vmcustom

     [-P]           Prompts for command line options

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

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

DESCRIPTION
     vmcustom Creates a new morphological kernel via keyboard
     entry.

     The term Structuring element is more often used than morpho-
     logical kernel.

     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 (or
     morphological kernel). Essentially, 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.

     The definition of a structuring element is very important,
     and depending on the applications, users have to create the
     appropriate kernel.

     A Structuring Element can be described by :

     _    A matrix or small image containing pixels with a value
          from 0 to 255.

     _    The position of the upper left hand corner of this
          "matrix" relative to the origin.

     The kernel is stored in an image form file, but it is
     strongly advisable to use the extension ".mor" to avoid any
     confusion with normal images.

     This routine also ensures that the given dimensions are
     optimal.  For example, a user could give a dimension such
     that the first or last, column or row only contains values
     of 0. In this case the dimension must be reduced for the
     following two reasons:

     _    Increase of computation time.

     _    Could cause errors for some morpho-function on the
          border of the image.

     Set of morphological functions:

     vmerode is part of a set of morphological functions avail-
     able.

     vmcustom:   Customizes a structuring element

     vm180:      180 degrees rotation of a structuring element.

     vmdilate:   dilation.

     vmopen:     opening.

     vmclose:    closing.

     vmoredge:   edge extractor.

     vmskeleton: skeleton extractor.

     These algorithms are obtained from:

          "Morphological Methods in Image and Signal Processing"

          Charles R.Giardina

          Edward R. Dougherty

          Prentice Hall, Englewood Cliffs, New Jersey 07632

REQUIRED ARGUMENTS
     -o     type: outfile
            desc: output morphological kernel

OPTIONAL ARGUMENTS
     -r     type: integer
            desc: specify the number of rows
            default: 3
            bounds: 1 < [-r] < 64

     -c     type: integer
            desc: specify the number of columns
            default: 3
            bounds: 1 < [-c] < 64

     -x     type: integer
            desc: specify x position of upper left
            default: 0
            bounds: -64 < [-x] < 64

     -y     type: integer
            desc: specify y position of upper left
            default: 0
            bounds: -64 < [-y] < 64

EXAMPLES
     vmcustom -o kernel -r rows -c columns -x startx -y starty
     Creates a new kernel for morphological functions via key-
     board entry.  The number of rows and columns for the kernel
     are specified by rows and columns.

SEE ALSO
     intro(1), verror(3), vgparms(3), vutils(3), lvmcustom(3)
     lvmcustom(3)

RESTRICTIONS
     vmcustom accepts only 0 or 1 for kernel pixel values.

     The row and column size are limited to 64.

     The range of x and y kernel position is between -64 and 64.

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

Khoros                    Release: 1.0                          1

