You are here: Start » AVL.NET » AVL.ScanExactlyNEdges(AvlNet.Image, AvlNet.ScanMap, AvlNet.EdgeScanParams, int, AvlNet.Selection, float, float?, AvlNet.LocalBlindness, AvlNet.Edge1D[], AvlNet.Gap1D[], AvlNet.Profile, AvlNet.Profile)

AVL.ScanExactlyNEdges(AvlNet.Image, AvlNet.ScanMap, AvlNet.EdgeScanParams, int, AvlNet.Selection, float, float?, AvlNet.LocalBlindness, AvlNet.Edge1D[], AvlNet.Gap1D[], AvlNet.Profile, AvlNet.Profile)

Locates a specified number of the strongest transitions between dark and bright pixels along a given path.

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax


public static void ScanExactlyNEdges(
	AvlNet.Image inImage,
	AvlNet.ScanMap inScanMap,
	AvlNet.EdgeScanParams inEdgeScanParams,
	int inEdgeCount,
	AvlNet.Selection inEdgeSelection,
	float inMinDistance,
	float? inMaxDistance,
	AvlNet.LocalBlindness inLocalBlindness,
	out AvlNet.Edge1D[] outEdges,
	out AvlNet.Gap1D[] outGaps,
	out AvlNet.Profile diagBrightnessProfile,
	out AvlNet.Profile diagResponseProfile
)

Parameters

inImage
Type: AvlNet.Image
Input image
inScanMap
Type: AvlNet.ScanMap
Data precomputed with CreateScanMap
inEdgeScanParams
Type: AvlNet.EdgeScanParams
Parameters controlling the edge extraction process
inEdgeCount
Type: System.Int32
Number of edges to be found
inEdgeSelection
Type: AvlNet.Selection
Selection mode of the resulting edges
inMinDistance
Type: System.Single
Minimal distance between consecutive edges
inMaxDistance
Type: System.Nullable<System.Single>
Maximal distance between consecutive edges, or null.
inLocalBlindness
Type: AvlNet.LocalBlindness
Defines conditions in which weaker edges can be detected in the vicinity of stronger edges, or null.
outEdges
Type: AvlNet.Edge1D
Found edges
outGaps
Type: AvlNet.Gap1D
Gaps between consecutive edges
diagBrightnessProfile
Type: AvlNet.Profile
Extracted image profile
diagResponseProfile
Type: AvlNet.Profile
Profile of the edge (derivative) operator response

Description

The operation scans the image using inScanMap previously generated from a scan path and finds a set of inEdgeCount image edges perpendicular to the path. If no subset (of inEdgeCount elements) of detected edges meets the requirements of inEdgeScanParams.minMagnitude, inMinDistance, inEdgeScanParams.edgeTransition then the outputs are set to NIL.

Note that in case of a scan path which is closed, the parameters controlling the distances between consecutive found objects do not control the distance between the first and the last of the found objects (counting from the beginning of the scan path).

Examples

ScanExactlyNEdges locates the edges using a scan map representing the scan path above (inEdgeCount = 61).

Remarks

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

This filter is a part of the 1D Edge Detection toolset. For a comprehensive introduction to this technique please refer to 1D Edge Detection and 1D Edge Detection - Subpixel Precision chapters of our Machine Vision Guide.

See also