# What is the Use of the Opening Operator

Just wondering what the opening operator is in image processing? What does it do? Just deletes bits of the image that you don't want?

-
I think it's just like a convolution or something? I'm not sure what mathematical steps are involved in making it work though... – BenjaminFranklin May 6 '14 at 17:24
No, this is not a convolution. Morphological operations are highly non-linear and cannot be implemented through convolution. – pichenettes May 6 '14 at 21:52

Opening is the morphological operation used for example in removal of small particles or some noise in binary image. Additionally it is widely used in hand-writing recognition where you want only the 'skeleton' of your letter.

Mathematically it is a dilation of the erosion. Erosion sets current pixel to 0 if any pixel in neighbourhood is 0. Dilation on the other hand sets pixel to 1 if any neighbour is 1.

You can think of that in following way: first you do the erosion ($N$ steps), which is shrinking boundaries of your objects. After that you perform dilation (also $N$ steps), which is expanding boundaries of your objects. Because small ones were removed in erosion step you will bring back biggest elements.

Here is some image showing this operation:

-

Exactly. It deletes the bits of the image you don't want. For example, when you try to detect moving objects in a video using background subtraction you get back a binary image, in which pixels with the value of 0 belong to the stationary background, and pixels with the value of 1 belong to moving foreground objects. This binary image is typically noisy. Morphological opening is a way to get rid of small noisy specks in the background, and morphological closing is a way to close noisy gaps or small holes in the foreground.

-