Back to Adaptive Vision Library website

You are here: Start » Function Reference » 2D Edge Detection » DetectRidges_AsPaths

DetectRidges_AsPaths


Extracts subpixel-precise paths that represent bright or dark thin lines.

Syntax

C++
C#
 
void avl::DetectRidges_AsPaths
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	float inStdDevX,
	atl::Optional<float> inStdDevY,
	float inRidgeThreshold,
	float inRidgeHysteresis,
	avl::Polarity::Type inPolarity,
	atl::Array<avl::Path>& outRidges
)

Parameters

Name Type Range Default Description
inImage const Image& Input image
inRoi Optional<const Region&> NIL Region of interest
inStdDevX float 0.0 - 3.0f Smoothing standard deviation (horizontal)
inStdDevY Optional<float> 0.0 - NIL Smoothing standard deviation (vertical, or Auto = horizontal)
inRidgeThreshold float 0.0 - 5.0f Sufficient ridge strength; ridges of that strength will always be detected
inRidgeHysteresis float 0.0 - 4.0f Value by which the ridge threshold is decreased for ridge points neighboring with sufficiently strong edges
inPolarity Polarity::Type
outRidges Array<Path>&

Hints

  • Connect an input image to the inImage input.
  • Set inPolarity in accordance to which type of thin lines you want to detect.
  • Start with inRidgeHysteresis = 0 and set inRidgeThreshold so that each important edge is at least partially detected. Then keep increasing inRidgeHysteresis until the edges are detected completely.
  • If the edges are rugged or there are too many false edges, then try increasing inStdDevX.

Remarks

For more information about local coordinate systems please refer to the following article.

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.