This class implements locally adaptive contrast enhancement for microscopy images.
Reference:
Jyh-Ying Peng, Chun-Nan Hsu, Chung-Chih Lin,
"Adaptive Image Enhancement for Fluorescence Microscopy",
Int. Conf. on Technologies and Applications of Artificial Intelligence,
pp. 9-16, 2010.
The basic idea of the algorithm is to enhance contrast by normalizing each pixel's intensity according to the standard intensity deviation in a local region around the pixel. Subsequently it should be easier to distinguish image background and relevant foreground structures from each other.
Although in principal arbitrary segmentation methods could be applied after contrast enhancement, the algorithm is optimized for subsequent binarization, e.g. by Otsu thresholding.
The algorithm does not work very well on images showing small structures on very noisy background (like P-bodies or stress granules), but is much better suited for larger structures like DAPI-stained nuclei which can more easily be distinguished from clutter, at least visually.
As an extension to the original paper this operator features a mode for component-wise application of the algorithm. This means that the image is first of all thresholded and connected components are extracted. Then the contrast enhancement is applied to each component's bounding box separately.
In the end the result image is generated from all enhanced patches after they have been thresholded, i.e. the result image in this case is already a binary segmentation of foreground and background.
This inherent binarization is done as the contrast-enhanced image contains only fractions of reasonable information and, thus, is difficult to post-process without specific knowledge only available inside of this operator.
Input image:
Image to be processed
Maximal Region Radius:
The maximum radius of local regions;
this value should be chosen according to the size of interesting structures in the image, i.e. should be large enough to allow for the local regions to contain likewise foreground as well as background fractions.
Std. Deviation Ratio:
The local radius of each region is chosen such that the standard deviation inside the region exceeds a certain ratio of the overall image standard deviation; use this parameter to specify this ratio.
Note that larger ratios will usually result in a larger standard deviation threshold and consequently yield larger local regions.
Apply component-wise:
If activated the algorithm is applied separately to each connected component segmented from the image by Otsu thresholding and component labeling;
this mode should be used if the image contains large fractions of background and only some few small foreground objects.
Calculate Radius Image:
Yields an additional output image visualizing the local region size for each pixel.
Verbose:
Additional output messages are written to console.
Result Image:
In standard mode the enhanced image of type MTB DOUBLE with intensities in the range of [0,1] is returned, in component-wise mode a binary image is returned.
Radius Image:
Optional image with calculated local region radii.