[mmareaclose] [Up] [mmvmin] Connected Operators

mmareaopen
Area opening

Synopsis

y = mmareaopen ( f , a , Bc = NullStrel )

Input

f Image Gray-scale (uint8 or uint16) or binary image

a Double

non negative integer.

Bc Structuring Element

( connectivity).

Default: NullStrel (3x3 elementary cross)

Output

y Image

Same type of f

Description

mmareaopen removes any grain (i.e., connected component) with area less than a of a binary image f. The connectivity is given by the structuring element Bc. This operator is generalized to gray-scale images by applying the binary operator successively on slices of f taken from higher threshold levels to lower threshold levels.

Examples

Numerical examples:
f=mmbinary(uint8([
 [1, 1, 0, 0, 0, 0, 1],
 [1, 0, 1, 1, 1, 0, 1],
 [0, 0, 0, 0, 1, 0, 0]]))
y=mmareaopen(f,4,mmsecross())
print y
[[False False False False False False False]
 [False False  True  True  True False False]
 [False False False False  True False False]]
f=uint8([
   [10,   11,   0,    0,   0,   0,  20],
   [10,    0,   5,    8,   9,   0,  15],
   [10,    0,   0,    0,  10,   0,   0]])
y=mmareaopen(f,4,mmsecross())
print y
[[10 10  0  0  0  0  0]
 [10  0  5  5  5  0  0]
 [10  0  0  0  5  0  0]]
Binary image
a=mmreadgray('form-1.tif');
b=mmareaopen(a,500);
mmshow(a);
mmshow(b);
a b
Gray-scale image
a=mmreadgray('bloodcells.tif');
b=mmareaopen(a,500);
mmshow(a);
mmshow(b);
a b

Equation

Limitations

The structuring elements allowed are the elementary cross (4-connected) and the elementary box (8-connected).

See also

mmfreedom Control automatic data type conversion.
mmlabel Label a binary image.
mmsebox Create a box structuring element.
mmsecross Diamond structuring element and elementary 3x3 cross.
mmareaclose Area closing
[mmareaclose] [Up] [mmvmin]