prewitt_dir — Detect edges (amplitude and direction) using the Prewitt operator.
prewitt_dir(Image : ImageEdgeAmp, ImageEdgeDir : : )
prewitt_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:
A =
1 1 1
0 0 0
-1 -1 -1
B =
1 0 -1
1 0 -1
1 0 -1
The result image contains the maximum response of the masks A and
B. The edge directions are returned in ImageEdgeDir,
and are stored in 2-degree steps, i.e., an edge direction of
x degrees mathematically positive sense and
with respect to the horizontal axis is stored as
x / 2 in the edge direction image. Furthermore, the
direction of the change of intensity is taken into account. Let
denote the image gradient. Then the
following edge directions are returned as r/2:
Points with edge amplitude 0 are assigned the edge direction 255
(undefined direction).
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') prewitt_dir(Image,PrewittA,PrewittD) threshold(PrewittA,Edges,128,255)
prewitt_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,
frei_dir,
kirsch_dir
bandpass_image,
laplace_of_gauss
Foundation