Sigma Filter

Authors: Michael Schmid (schmid at iap.tuwien.ac.at)
Tony Collins (tcollins at macbiophotonics.ca)
History: 2007/10/25: First version
Requires: ImageJ 1.38n or later
Source: Sigma_Filter_Plus.java
Installation: Copy Sigma_Filter_Plus.class to the plugins folder and restart ImageJ.
Description: This plugin-Filter provides a selective mean (averaging) filter. In contrast to the standard mean filter, it preserves edges better and is less sensitive to outliers. Based on Lee's sigma filter algorithm "Digital image noise smoothing and the sigma filter" in Computer Vision, Graphics and Image Processing, vol. 24, 255-269 (1983). example The filter smooths an image by taking an average over the neighboring pixels, but only includes those pixels that have a value not deviating from the current pixel by more than a given range. The range is defined by the standard deviation of the pixel values within the neighborhood ("Use Pixels Within ... Sigmas"). If the number of pixels in this range is too low (less than "Minimum Pixel Fraction"), averaging over all neighboring pixels is performed. With the "Outlier Aware" option, averaging over all neighboring pixels excludes the center pixel. Thus, outliers having a value very different from the surrounding are not included in the average and, thus, completely eliminated.

dialog
For preserving the edges, values of "Use Pixels Within" between 1 and 2 sigmas are recommended. With high values, the filter will behave more like a traditional averaging filter, i.e., edges are smoothed. Typical values of the minimum pixel fraction are around 0.2, with higher values resulting in more noise supression, but smoother edges.

If preserving the edges is not desired, "Use Pixels Within" 2-3 sigmas and a minimum pixel fraction around 0.8-0.9, together with the "Outlier Aware" option will smoothen the image, similar to a traditional filter, but without being influenced by outliers strongly deviating from the surrounding pixels (hot pixels, dead pixels etc.).

|Plugins | Home |