Operators

laplace_of_gauss (Operator)

Name

laplace_of_gauss — LoG-Operator (Laplace of Gaussian).

Signature

laplace_of_gauss(Image : ImageLaplace : Sigma : )

Description

laplace_of_gauss calculates the Laplace-of-Gaussian operator, i.e., the Laplace operator on a Gaussian smoothed image, for arbitrary smoothing parameters Sigma. The Laplace operator is given by:

2            2
d            d
\/ g(x,y)) = --- g(x,y) + --- g(x,y)
2            2
dx           dy

The derivatives in laplace_of_gauss are calculated by appropriate derivatives of the Gaussian, resulting in the following formula for the convolution mask:

/  2   2     \     /    2   2 \
1    | x + y      |     |   x + y  |
\/ G (x,y) = ------- | ------ - 1 | exp | - ------ |
s              4 |     2      |     |       2  |
2 pi s  \  2 s       /     \    2 s   /

Parallelization

• Multithreading type: reentrant (runs in parallel with non-exclusive operators).
• Automatically parallelized on tuple level.
• Automatically parallelized on channel level.
• Automatically parallelized on domain level.

Parameters

Image (input_object)  (multichannel-)image(-array) object (byte / int1 / int2 / uint2 / int4 / real)

Input image.

ImageLaplace (output_object)  (multichannel-)image(-array) object (int2)

Laplace filtered image.

Sigma (input_control)  number (real / integer)

Smoothing parameter of the Gaussian.

Default value: 2.0

Suggested values: 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 4.0, 5.0, 7.0

Typical range of values: 0.7 ≤ Sigma ≤ 5.0

Minimum increment: 0.01

Recommended increment: 0.1

Restriction: Sigma > 0.7 && Sigma <= 25.0

Example (C)

laplace_of_gauss(Image,&Laplace,2.0);
zero_crossing(Laplace,&ZeroCrossings);