Back to Adaptive Vision Library Lite website

You are here: Start » 2D Edge Detection » DetectEdges


Extracts a pixel-precise image of continuous edges.


void avl::DetectEdges
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	avl::EdgeFilter::Type inEdgeFilter,
	float inStdDevX,
	atl::Optional<float> inStdDevY,
	float inEdgeThreshold,
	float inEdgeHysteresis,
	float inMaxJoiningDistance,
	const int inMinBlobArea,
	avl::Image& outEdgesImage,
	avl::Image& diagGradientMagnitudeImage


Name Type Range Default Description
inImage const Image& Image from which edges will be extracted
inRoi Optional<const Region&> NIL Region of the image from which edges will be extracted
inEdgeFilter EdgeFilter::Type Type of edge filter used for computing gradients
inStdDevX float 0.0 - 2.0f Amount of horizontal smoothing used by the edge filter
inStdDevY Optional<float> 0.0 - NIL Amount of vertical smoothing used by the edge filter (Auto = inStdDevX)
inEdgeThreshold float 0.0 - 15.0f Sufficient edge strength; edges of that strength will always be detected
inEdgeHysteresis float 0.0 - 5.0f Value by which the edge threshold is decreased for edge points neighboring with sufficiently strong edges
inMaxJoiningDistance float 0.0 - 0.0f Maximal distance between edges that can be joined
inMinBlobArea const int 0 - 1 Minimal area of an edge blob
outEdgesImage Image& Image of found edges
diagGradientMagnitudeImage Image& Visualization of the gradient magnitude

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.