DESCRIPTIONBlurs an image by convolution with a 2D Gaussian kernel. The size of kernel in I and J directions and the degree of Blur can be specified. For a given kernel size the 'degree of Blur' changes the shape of the Gaussian curve. This is achieved by adjusting the standard deviation sigma of the Gaussian curve. For an n x n kernel, 2*sigma = n/2 * degree of Blur. For degree of Blur = 0, sigma is 0 and the Gaussian curve is reduced to a spike which produces no blurring. For degree of Blur = 1.0, sigma is n/4 and the curve is broader and flatter, thus achieving more blurring. Also the bigger the kernel, the more blurring.
Because the Gaussian kernel is separable, the convolution is computed as two convolutions with length n vector kernels, to yield a reduction in computation time. The vector is computed as
v(j) = c exp( - 0.5 * ( j / sigma )2 )where the index j is taken to be 0 at the center of the kernel vector, and where c is chosen so that the vector weights sum to 1.0. An additive Bias can also be supplied. The additive Bias is used as the initial value when accumulating the sum of the products (image data*kernel value) for each neighborhood.
The Gaussian blurring operation is discussed in:
Digital Image Processing, Gonzales, R.C., Wintz, P., Addison Wesley, Second Edition, 1987, pp 163--173.
Port: Img In
Source frequency domain image.
Additive bias constant.
Degree of blur.
Port: I Size
Kernel size in I direction.
Port: J Size
Kernel size in J direction.
Port: Img Out
Filtered frequency domain image.
© The Numerical Algorithms Group Ltd, Oxford UK. 2000