EdgeDetect

EdgeDetect[image]

finds edges in image and returns the result as a binary image.

EdgeDetect[image,r]

finds edges at the scale of the specified pixel range r.

EdgeDetect[image,r,t]

uses a threshold t for selecting image edges.

Details and Options

• Edges of an image are a set of points between image regions and are typically computed by linking high-gradient pixels. In practice, an edge can have an arbitrary shape.
• EdgeDetect uses gradient methods to find edges and works with arbitrary 2D and 3D images.
• EdgeDetect[image] is equivalent to EdgeDetect[image,2].
• The following range specifications r can be used:
•  r radius r in every dimension (default r=2) {rrow,rcol} in 2D, range rrow in height, rcol in width {rslice,rrow,rcol} in 3D, range rslice in height, rrow in depth, and rcol in width
• EdgeDetect[image,r,t] uses hysteresis thresholding with a global threshold t. For additional forms of the threshold parameter, see the reference page for MorphologicalBinarize.
• The following options can be specified:
• Possible settings for Method include:
•  "Canny" first-order directional Gaussian derivatives (default) "ShenCastan" first-order derivatives of exponentials "Sobel" binomial generalization of Sobel masks
• By default, all straight and curved edges are returned. Selection of edges based on their straightness can be done by setting Method->{"method","StraightEdges"->s}. The default behavior is equivalent to "StraightEdges"->0. A setting "StraightEdges"->1 selects only the longest and strongest lines.
• "StraightEdges" is ignored when used with Image3D objects.

Examples

open allclose all

Basic Examples(2)

Detecting edges in a color image:

Edges of a 3D image:

Scope(3)

Find edges in a color image:

Specify the scale of edges to detect:

Specify larger scale to detect coarse features:

Edge selection using an explicit global threshold:

Options(2)

Method(2)

ShenCastan edge detection:

By default, all edges are returned, regardless of their straightness:

Filter detected edges with their straightness:

Properties & Relations(1)

EdgeDetect might return edges that are thicker than one pixel:

Use Thinning to get single-pixel-wide edges:

Wolfram Research (2010), EdgeDetect, Wolfram Language function, https://reference.wolfram.com/language/ref/EdgeDetect.html (updated 2014).

Text

Wolfram Research (2010), EdgeDetect, Wolfram Language function, https://reference.wolfram.com/language/ref/EdgeDetect.html (updated 2014).

BibTeX

@misc{reference.wolfram_2021_edgedetect, author="Wolfram Research", title="{EdgeDetect}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/EdgeDetect.html}", note=[Accessed: 23-September-2021 ]}

BibLaTeX

@online{reference.wolfram_2021_edgedetect, organization={Wolfram Research}, title={EdgeDetect}, year={2014}, url={https://reference.wolfram.com/language/ref/EdgeDetect.html}, note=[Accessed: 23-September-2021 ]}

CMS

Wolfram Language. 2010. "EdgeDetect." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2014. https://reference.wolfram.com/language/ref/EdgeDetect.html.

APA

Wolfram Language. (2010). EdgeDetect. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/EdgeDetect.html