Segmenting With HALCON’s MSER

In machine vision, segmentation is the means by which an object in an image is separated from the background in an image. HALCON offers many tools for segmentation including Thresholding, Region Growing, and others. With the release of HALCON 13, MVTec added another segmentation operator which makes use of what are called “Maximally Stable Extremal Regions”, or MSER.

The purpose of MSER segmentation is to extract objects with homogenous gray values from inhomogeneous backgrounds or in applications with changing illumination.

As demonstrated in the gif to the right, MSERs are the result of applying a series of threshold values to an image and monitoring the rate at which the area of a connected region grows. If the area of the connected region remains stable over a range of threshold values, the region is an MSER. 

Unlike a standard threshold operation, MSERs segmentation provides a very robust segmentation result despite changing illumination conditions because it monitors the local region surrounding and adapts the threshold accordingly. A standard threshold operation is fixed so it cannot adapt under changing conditions, and standard thresholds do not perform well on noisy regions.

How is this useful? One application where MSER segmentation may be applied is in automatically detecting and segmenting vegetation from cluttered backgrounds. For autonomous guidance this can help robots avoid driving over rows of crops. It may also be useful for monitoring the health and growth of plants, or for robotic pruning.

Another application in which MSER segmentation can be useful is inspection of contact lenses. Since MSER segmentation does not divide an image into disjunct regions, but rather indicates where MSERs occur in an image, it is possible to have overlapping regions or regions inside of regions. This would allow the user to isolate certain inspection regions on the contact lens or inspect over the entire lens.

MSER segmentation on vegetation

MSER with overlapping regions