Back to Adaptive Vision Library website

You are here: Start » Function Reference » Profile » Profile Features » ProfileEdges

ProfileEdges


Header: AVL.h
Namespace: avl
Module: FoundationPro

Finds the locations at which the profile values raise or fall quickly.

Applications: Can be used for 1D edge detection when the brightness profile is extracted from an image in a non-standard way.

Syntax

C++
C#
 
void avl::ProfileEdges
(
	const avl::Profile& inProfile,
	atl::Optional<const avl::Range&> inRange,
	bool inCyclic,
	const avl::EdgeScanParams& inEdgeScanParams,
	float inMinDistance,
	atl::Optional<float> inMaxDistance,
	atl::Optional<const avl::LocalBlindness&> inLocalBlindness,
	atl::Array<avl::ProfileEdge>& outEdges,
	atl::Optional<atl::Array<float>&> outDistances = atl::NIL,
	avl::Profile& diagResponseProfile = atl::Dummy<avl::Profile>()
)

Parameters

Name Type Range Default Description
inProfile const Profile& Input profile
inRange Optional<const Range&> NIL
inCyclic bool
inEdgeScanParams const EdgeScanParams& EdgeScanParams ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 0.6f MinMagnitude: 5.0f EdgeTransition: BrightToDark ) Parameters controlling the edge extraction process
inMinDistance float 0.0 - 0.0f Minimal distance between consecutive edges
inMaxDistance Optional<float> 0.0 - NIL Maximal distance between consecutive edges
inLocalBlindness Optional<const LocalBlindness&> NIL Defines conditions in which weaker edges can be detected in the vicinity of stronger edges
outEdges Array<ProfileEdge>& Found edges
outDistances Optional<Array<float>&> NIL Output distances between consecutive edges
diagResponseProfile Profile& Profile of the edge (derivative) operator response

Optional Outputs

The computation of following outputs can be switched off by passing value atl::NIL to these parameters: outDistances.

Read more about Optional Outputs.

Errors

List of possible exceptions:

Error type Description
DomainError Range exceeds the input profile in ProfileEdges.