Main Content

Opening

Perform morphological opening on binary or intensity images

  • Opening Block

Libraries:
Computer Vision Toolbox / Morphological Operations

Description

The Opening block performs an erosion operation followed by a dilation operation on an intensity or binary image using a predefined neighborhood or structuring element.

To define the structuring element that the block applies to the image, use the Neighborhood or structuring element parameter. Specify this element by entering a vector or matrix of 1s and 0s or by using the strel function.

Below are an input image and the output image after the opening operation, respectively.

This block uses two-dimensional flat structuring elements only.

Examples

Ports

Input

expand all

Specify an input image as a matrix of intensity values. This port is unnamed unless you set the Neighborhood or structuring element source parameter to Input port.

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point

Specify neighborhood values representing a structuring element as a vector or matrix of 1s and 0s or by using the strel function.

Dependencies

To enable this port, set the Neighborhood or structuring element source parameter to Input port.

Data Types: Boolean

Output

expand all

The opened image is returned as a matrix of intensity values. The size and data type of the opened image are the same as those of the input image.

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point

Parameters

expand all

Specify the source of neighborhood or structuring element as one of these options:

  • Specify via dialog — Use the Neighborhood or structuring element parameter to specify a neighborhood or structuring element.

  • Input port — Use the Nhood input port to specify neighborhood values representing a structuring element.

Specify neighborhood or structuring element as a vector or matrix of 1s and 0s, a strel object or an array of strel objects. When you specify this value as an array of strel objects, the block applies each object to the entire image in turn.

If the structuring element is decomposable into smaller elements, the block executes at higher speed due to the use of a more efficient algorithm.

Dependencies

To enable this parameter, set the Neighborhood or structuring element source parameter, to Specify via dialog.

Block Characteristics

Data Types

Boolean | double | fixed point | integer | single

Multidimensional Signals

no

Variable-Size Signals

yes

More About

expand all

References

[1] Soille, Pierre. Morphological Image Analysis. Berlin, Heidelberg: Springer Berlin Heidelberg, 2004. https://doi.org/10.1007/978-3-662-05088-0.

[2] Gonzalez, Rafael C., Richard E. Woods, and Steven L. Eddins. Digital Image Processing Using MATLAB. Third edition. Knoxville: Gatesmark Publishing, 2020.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced before R2006a

See Also

Blocks

Functions

Objects