gauss_image ( Image : ImageGauss : Size : )

Smooth using discrete gauss functions.

The operator gauss_image smoothes images using the discrete Gaussian. The smoothing effect increases with increasing filter size. The following filter sizes (Size) are supported (the sigma value of the gauss function is indicated in brackets):

    3    (0.65)
    5    (0.87)
    7    (1.43)
    9    (1.88)
    11   (2.31)
For border treatment the gray values of the images are reflected at the image borders.


Parameters

Image (input_object)
(multichannel-)image(-array) -> object : byte / int2 / uint2 / int4
Image to be smoothed.

ImageGauss (output_object)
(multichannel-)image(-array) -> object : byte / int2 / uint2 / int4
Filtered image.

Size (input_control)
integer -> integer
Required filter size.
Default value: 5
List of values: 3, 5, 7, 9, 11


Example
gauss_image(Input,Gauss,7) 
regiongrowing(Gauss,Segments,7,7,5,100).

Complexity

For each pixel: O(Size * 2).


Result

If the parameter values are correct the operator gauss_image returns the value 2 (H_MSG_TRUE). The behavior in case of empty input (no input images available) is set via the operator set_system('no_object_result',<Result>). If necessary an exception handling is raised.


Parallelization Information

gauss_image is reentrant and automatically parallelized (on tuple level, channel level, domain level).


Possible Predecessors

read_image, grab_image


Possible Successors

regiongrowing, threshold, sub_image, dyn_threshold, auto_threshold


Alternatives

smooth_image, derivate_gauss, isotropic_diffusion


See also

mean_image, anisotropic_diffusion, sigma_image, gen_lowpass


Module

Foundation



Copyright © 1996-2008 MVTec Software GmbH