diff_of_gauss diff_of_gauss DiffOfGauss DiffOfGauss diff_of_gauss (Operator)
Name
diff_of_gauss diff_of_gauss DiffOfGauss DiffOfGauss diff_of_gauss
— Approximate the LoG operator (Laplace of Gaussian).
Signature
Description
diff_of_gauss diff_of_gauss DiffOfGauss DiffOfGauss DiffOfGauss diff_of_gauss
approximates the Laplace-of-Gauss
operator by a difference of Gaussians. The standard deviations of
these Gaussians can be calculated, according to Marr, from the
Parameter Sigma Sigma Sigma Sigma sigma sigma
of the LoG and the ratio of the two
standard deviations (SigFactor SigFactor SigFactor SigFactor sigFactor sig_factor
) as:
For a
, according
to Marr, an approximation to the Mexican-Hat-Operator results. The
resulting image is stored in DiffOfGauss DiffOfGauss DiffOfGauss DiffOfGauss diffOfGauss diff_of_gauss
.
Attention
Note that filter operators may return unexpected results if
an image with a reduced domain is used as input. Please refer to the
chapter Filters .
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Automatically parallelized on tuple level.
Automatically parallelized on channel level.
Automatically parallelized on domain level.
Parameters
Image Image Image Image image image
(input_object) (multichannel-)image(-array) →
object HImage HObject HImage Hobject (byte / uint2)
Input image
DiffOfGauss DiffOfGauss DiffOfGauss DiffOfGauss diffOfGauss diff_of_gauss
(output_object) (multichannel-)image(-array) →
object HImage HObject HImage Hobject * (int2)
LoG image.
Sigma Sigma Sigma Sigma sigma sigma
(input_control) real →
HTuple float HTuple Htuple (real) (double ) (double ) (double )
Smoothing parameter of the Laplace operator to
approximate.
Default:
3.0
Suggested values:
2.0, 3.0, 4.0, 5.0
Minimum increment:
0.01
Recommended increment:
0.1
Restriction:
Sigma > 0.0
SigFactor SigFactor SigFactor SigFactor sigFactor sig_factor
(input_control) real →
HTuple float HTuple Htuple (real) (double ) (double ) (double )
Ratio of the standard deviations used (Marr
recommends 1.6).
Default:
1.6
Minimum increment:
0.01
Recommended increment:
0.1
Restriction:
SigFactor > 0.0
Example (HDevelop)
read_image(Image,'fabrik')
diff_of_gauss(Image,Laplace,2.0,1.6)
zero_crossing(Laplace,ZeroCrossings)
Example (C)
read_image(&Image,"mreut");
diff_of_gauss(Image,&Laplace,2.0,1.6);
zero_crossing(Laplace,&ZeroCrossings);
Example (HDevelop)
read_image(Image,'fabrik')
diff_of_gauss(Image,Laplace,2.0,1.6)
zero_crossing(Laplace,ZeroCrossings)
Example (HDevelop)
read_image(Image,'fabrik')
diff_of_gauss(Image,Laplace,2.0,1.6)
zero_crossing(Laplace,ZeroCrossings)
Example (HDevelop)
read_image(Image,'fabrik')
diff_of_gauss(Image,Laplace,2.0,1.6)
zero_crossing(Laplace,ZeroCrossings)
Complexity
The execution time depends linearly on the number of pixels and the
size of sigma.
Result
diff_of_gauss diff_of_gauss DiffOfGauss DiffOfGauss DiffOfGauss diff_of_gauss
returns 2 (
H_MSG_TRUE )
if all parameters are
correct. If the input is empty the behavior can be set via
set_system('no_object_result',<Result>) set_system("no_object_result",<Result>) SetSystem("no_object_result",<Result>) SetSystem("no_object_result",<Result>) SetSystem("no_object_result",<Result>) set_system("no_object_result",<Result>)
. If
necessary, an exception is raised.
Possible Successors
zero_crossing zero_crossing ZeroCrossing ZeroCrossing ZeroCrossing zero_crossing
,
dual_threshold dual_threshold DualThreshold DualThreshold DualThreshold dual_threshold
Alternatives
laplace laplace Laplace Laplace Laplace laplace
,
derivate_gauss derivate_gauss DerivateGauss DerivateGauss DerivateGauss derivate_gauss
References
D. Marr: “Vision (A computational investigation into human
representation and processing of visual information)”; New York,
W.H. Freeman and Company; 1982.
Module
Foundation