ExplanationSegmentation techniques are required to analyze images in detailed scale. The Object Analyzer of the Huygens software is dependent on this segmentation. The SeedAndThreshold method with the garbage volume extension shows a simple but effective technique to detect objects. This method however is not efficient when object are very close to each other and blurrings of the point spread function interfere. In those cases the watershed segmentation method provides the solution to separate objects which else would merge in one object.
The watershed method build walls (watersheds) at local minima to prevent merging of objects. This results in objects containing only one local maxima. This is visualized in the images below.
If you take a look at a line-profile of an image, where the image intensities are at the y-scale and their locations are at the x-scale, the image can be seen as a topographic relief. If you invert this view, and slowly flood the relief, the watershed segmentation build watersheds there where else basins would merge into one large basin (where water start to "touch" each other).
This algorithm is implemented in the Object Analyzer and Surface Renderer and is used for the Object Tracker to automatically detect objects.
SigmaThe watershed method has the disadvantage that it is highly sensitive to local minima, since at each minima, a watershed is created. If you have an image with noise, this will influence the segmentation. The sigma setting is the strength of the Gaussian filter which is applied to smoothen the image to filter out these tiny local minima. This improves the functionality of the watershed segmentation. The level of this sigma can be adjusted by the user. Keep in mind however, that when the sigma is set too high, the positions of the watershed may not be where you expect them (shifted due to the Gaussian blurring).
Seed and garbage levelThe seed-level and the garbage volume keep their original functionalities, but with the watershed the functionality of the garbage volume is extended.
When the image is segmentated with the watershed method, objects may share a surface. When an object is below garbage level, it first checks whether the object has neighbours (t.i. share a surface with). If so, the object is merged with the neighbour with the largest shared surface. Otherwise it is removed. If the merged object is still below garbage level this step repeats itself, until all objects are above garbage-level.
Image segmentated with the normal SeedAndThreshold method.
Segmentation with the same seed and threshold as above, but with the watershed turned on.
Segmentation with the same segmentation settings as above and with the garbage level set to 1200.