gray_closing_rect ( Image : ImageClosing : MaskHeight, MaskWidth : )

Perform a gray value closing with a rectangular mask.

gray_closing_rect applies a gray value closing to the input image Image with a rectangular mask of size (MaskHeight, MaskWidth). The resulting image is returned in ImageClosing. If the parameters MaskHeight or MaskWidth are even, they are changed to the next larger odd value. At the border of the image the gray values are mirrored.

The gray value closing of an image i with a rectangular structuring element s is defined as

  i +- s = (i + s) - s ,
i.e., a dilation of the image with s followed by an erosion with s (see gray_dilation_rect and gray_erosion_rect).


Parameters

Image (input_object)
image(-array) -> object : byte / direction / cyclic / int2 / int4 / real
Input image.

ImageClosing (output_object)
image(-array) -> object : byte / direction / cyclic / int2 / int4 / real
Gray-closed image.

MaskHeight (input_control)
extent.y -> integer
Height of the filter mask.
Default value: 11
Suggested values: 3, 5, 7, 9, 11, 13, 15
Typical range of values: 3 <= MaskHeight <= 511
Minimum increment: 2
Recommended increment: 2
Restriction: odd(MaskHeight)

MaskWidth (input_control)
extent.x -> integer
Width of the filter mask.
Default value: 11
Suggested values: 3, 5, 7, 9, 11, 13, 15
Typical range of values: 3 <= MaskWidth <= 511
Minimum increment: 2
Recommended increment: 2
Restriction: odd(MaskWidth)


Result

gray_closing_rect returns 2 (H_MSG_TRUE) if all parameters are correct. If the input is empty the behavior can be set via set_system('no_object_result',<Result>). If necessary, an exception is raised.


Parallelization Information

gray_closing_rect is reentrant and automatically parallelized (on tuple level, channel level, domain level).


Alternatives

gray_closing, gray_closing_shape


See also

closing_rectangle1, gray_dilation_rect, gray_erosion_rect


Module

Foundation



Copyright © 1996-2008 MVTec Software GmbH