Adaptive Gaussian smoothing filter
#include "dip_filtering.h"
dip_Error dip_GaussianSigma ( in, out, boundary, sigma, gaussSigma, outputCount, truncation )
integer, float
The GaussianSigma filter is an adaptive Gauss-ian smoothing filter. The value of the pixel under investigation is replaced by the Gaussian-weighted average of the pixelvalues in the filter region which lie in the interval +/- 2 sigma from the value of the pixel that is filtered. The filter region is specified by gaussSigma and truncation. If outputCount is DIP_TRUE, the output values represent the number of pixel over which the average has been calculated. When threshold is DIP_TRUE, the pixel intensities are thresholded at +/- 2 sigma, when it is set to DIP_FALSE, the intensities are weighted with the Gaussian difference with the intensity of the center pixel.
With threshold set to DIP_FALSE, this filter is also known as the bilateral filter.
Data type | Name | Description |
dip_Image | in | Input image |
dip_Image | out | Output image |
dip_BoundaryArray | boundary | Boundary conditions |
dip_float | sigma | Sigma |
dip_FloatArray | gaussSigma | Sigma of Gaussian |
dip_Boolean | outputCount | Output the Count |
dip_float | truncation | Truncation of Gaussian, see GlobalGaussianTruncationGet |
John-Sen Lee, Digital Image Smoothing and the Sigma Filter, Computer Vision, Graphics and Image Processing, 24, 255-269, 1983