Opening (morphology)

In mathematical morphology, opening is the dilation of the erosion of a set A by a structuring element B:
where formula_2 and formula_3 denote erosion and dilation, respectively.
Together with closing, the opening serves in computer vision and image processing as a basic workhorse of morphological noise removal. Opening removes small objects from the foreground (usually taken as the bright pixels) of an image, placing them in the background, while closing removes small holes in the foreground, changing small islands of background into foreground. These techniques can also be used to find specific shapes in an image. Opening can be used to find things into which a specific structuring element can fit (edges, corners, ...).
One can think of "B" sweeping around the inside of the boundary of "A", so that it does not extend beyond the boundary, and shaping the "A" boundary around the boundary of the element.
Extension: Opening by reconstruction.
In morphological opening formula_10 , the erosion operation removes objects that are smaller than structuring element B and the dilation operation (approximately) restores the size and shape of the remaining objects. However, restoration accuracy in the dilation operation depends highly on the type of structuring element and the shape of the restoring objects. The opening by reconstruction method is able to restore the objects more completely after erosion has been applied. It is defined as the reconstruction by geodesic dilation of formula_11 erosions of formula_12 by formula_13 with respect to formula_12 :
formula_15
where formula_16 denotes a marker image and formula_12 is a mask image in morphological reconstruction by dilation. formula_18 formula_19 denotes geodesic dilation with formula_20 iterations until stability, i.e., such that formula_21 Since formula_22, the marker image is limited in the growth region by the mask image, so the dilation operation on the marker image will not expand beyond the mask image. As a result, the marker image is a subset of the mask image formula_23 (Strictly, this holds for binary masks only. However, similar statements hold when the mask is not binary.)
The images below present a simple opening-by-reconstruction example which extracts the vertical strokes from an input text image. Since the original image is converted from grayscale to binary image, it has a few distortions in some characters so that same characters might have different vertical lengths. In this case, the structuring element is an 8-pixel vertical line which is applied in the erosion operation in order to find objects of interest. Moreover, morphological reconstruction by dilation, formula_24 iterates formula_25 times until the resulting image converges.