Open a region with a rectangular structuring element.
opening_rectangle1 performs an erosion_rectangle1 followed by a dilation_rectangle1 on the input region Region. The size of the rectangular structuring element is determined by the parameters Width and Height. As is the case for all opening variants, larger structures are preserved, while small regions like lines or points are eliminated.
Region (input_object) |
region(-array) -> object |
Regions to be opened. |
RegionOpening (output_object) |
region(-array) -> object |
Opened regions. |
Width (input_control) |
extent.x -> integer / real |
Width of the structuring rectangle. | |
Default value: 10 | |
Suggested values: 1, 2, 3, 4, 5, 7, 9, 12, 15, 19, 25, 33, 45, 60, 110, 150, 200 | |
Range of values: 1 <= Width <= 511 (lin) | |
Minimum increment: 1 | |
Recommended increment: 1 |
Height (input_control) |
extent.y -> integer / real |
Height of the structuring rectangle. | |
Default value: 10 | |
Suggested values: 1, 2, 3, 4, 5, 7, 9, 12, 15, 19, 25, 33, 45, 60, 110, 150, 200 | |
Range of values: 1 <= Height <= 511 (lin) | |
Minimum increment: 1 | |
Recommended increment: 1 |
Let F1 be the area of an input region and H be the height of the rectangle. Then the runtime for one region is:
O(2 * sqrt(F1) * ld(H)) .
opening_rectangle1 returns TRUE if all parameters are correct. The behavior in case of empty or no input region can be set via:
a) no region: set_system(::'no_object_result',<RegionResult>:) b) empty region: set_system(::'empty_region_result',<RegionResult>:)Otherwise, an exception is raised.
threshold__, regiongrowing__, watersheds, class_ndim1__
reduce_domain, select_shape, area_center, connection
opening, rectangle1, dilation_rectangle1, erosion_rectangle1