vmopen(1)

PROGRAM
vmopen - computes the opening of an image by a structuring element

SYNTAX

vmopen

-i  input image

-k  input kernel

-o  output image

[-V]
    Gives the version for vmopen

[-U]
    Gives the usage for vmopen

[-P]
    Prompts for command line options

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

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

DESCRIPTION
vmopen computes the opening of an image by a structuring element B

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 predetermined geometric shape known as a structuring element. Essentially, the manner in which the structuring element fits into the image is studied.

The morphological operations can be employed for many purposes, including edge detection, segmentation, and enhancement of images.

BASIC OPERATIONS:

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

Besides the two fundamental operations of EROSION and DILATION, two other operations play a central role in image analysis.

These two secondary operations, called OPENING and CLOSING are defined by combination of erosion and dilation.

Notation:
    erode(A,B) = E(A,B)
    dilate(A,B) = D(A,B)
    open(A,B) = O(A,B)
    close(A,B) = C(A,B)
    complement(A) = Ac

DEFINITION OF THE OPENING
    O(A,B) = D(E(A,B),B)
    For information, C(A,B) = E(D(A,-B),-B) with
    -B = rotation(B,180 degrees) = vm180(B).

PROPERTIES of the OPENING:

1. O(A,B) = { B + x : B + x is included in A }

2. duality between the opening & closing
    O(A,B) = C(complement(A),B)
    Complement [O(A,B)] = C(complement(A),B)
    O(complement(A),B) = complement [ C(A,B) ]
    complement [O(complement(A),B) ] = C(A,B)

3. Antiextensivity
    O(A,B) is a subimage of A

3. Increasing monotonicity
    If A1 is a subimage of A2, the O(A1,B) is a subimage of O(A2,B)

4. Idempotence
    O[O(A,B),B] = O(A,B)

These properties play an important role in the use of opening for the construction of morphological filters. The opening by a disk can have a smoothing effect (from the inside); it acts as a filter, with the exact result being dependent upon the shape of the structuring template.

SET OF MORPHOLOGICAL FUNCTIONS:

vmopen is one of the morphological functions available.

vmcustom:
    Customizes a structuring element

vm180:
    180 degree rotation of a structuring element

vmerode:
    erosion

vmdilate:
    dilation

vmclose:
    closing

vmoredge:
    edge extractor

vmskeleton:
    skeleton extractor

ADVICE: For this binary opening function, all grey levels different from 0 are considered "white" or equivalent to 255.

Therefore, the image is not required to be binary, however, it is strongly advisable to use vthresh on grey level images before using any morphological function.

The structuring element must be a morphological kernel (created by vmcustom).

This kernel is nothing but an image file with two variables, ispare1 and ispare2 that define the origin of the structuring element (refer to vmcustom and lvmcustom).

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

-k  type: infile
    desc: input kernel

-o  type: outfile
    desc: output image

OPTIONAL ARGUMENTS
none

EXAMPLES

vmopen -i image1 -k kernel -o image2
This will compute the opening of image1 by the structuring element (morphological kernel) kernel, and store the result in image2.

SEE ALSO
intro(1), verror(3), vgparms(3), vutils(3), lvmopen(3) lvm180(3)

RESTRICTIONS
vmopen works only on two valued BYTE images and requires a morphological kernel created with vmcustom.

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