kirsch_dir — Detect edges (amplitude and direction) using the Kirsch operator.
kirsch_dir(Image : ImageEdgeAmp, ImageEdgeDir : : )
kirsch_dir calculates an approximation of the first
derivative of the image data and is used as an edge detector. The
filter is based on the following filter masks:
-3 -3 5 -3 5 5 5 5 5 5 5 -3
-3 0 5 -3 0 5 -3 0 -3 5 0 -3
-3 -3 5 -3 -3 -3 -3 -3 -3 -3 -3 -3
5 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3
5 0 -3 5 0 -3 -3 0 -3 -3 0 5
5 -3 -3 5 5 -3 5 5 5 -3 5 5
The result image contains the maximum response of all masks. The
edge directions are returned in ImageEdgeDir, and are
stored as x / 2. They correspond to the direction of
the mask yielding the maximum response.
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.
Image (input_object) (multichannel-)image(-array) → object (byte / int2 / uint2)
Input image.
ImageEdgeAmp (output_object) (multichannel-)image(-array) → object (byte / int2 / uint2)
Edge amplitude (gradient magnitude) image.
ImageEdgeDir (output_object) (multichannel-)image(-array) → object (direction)
Edge direction image.
read_image(Image,'fabrik') kirsch_dir(Image,Kirsch_dirA,Kirsch_dirD) threshold(Kirsch_dirA,Res,128,255)
kirsch_dir always returns 2 (H_MSG_TRUE). If the input is empty
the behavior can be set via
set_system('no_object_result',<Result>).
If necessary, an exception is raised.
binomial_filter,
gauss_filter,
sigma_image,
median_image,
smooth_image
hysteresis_threshold,
threshold,
gray_skeleton,
nonmax_suppression_dir,
close_edges,
close_edges_length
edges_image,
sobel_dir,
robinson_dir,
prewitt_dir,
frei_dir
bandpass_image,
laplace_of_gauss
Foundation