You are here: Start » AVL.NET » Function Reference » Computer Vision » 1D Edge Detection » AVL.ScanExactlyNStripes

AVL.ScanExactlyNStripes

Locates a specified number of multiple pairs of opposite edges across a given path.

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax

C++
C#
 
public static void ScanExactlyNStripes
(
	AvlNet.Image inImage,
	AvlNet.ScanMap inScanMap,
	AvlNet.StripeScanParams inStripeScanParams,
	int inStripeCount,
	AvlNet.Selection inStripeSelection,
	float inMinGapWidth,
	float? inMaxGapWidth,
	AvlNet.LocalBlindness? inLocalBlindness,
	INullable<List<AvlNet.Stripe1D>> outStripes,
	INullable<List<AvlNet.Gap1D>> outGaps,
	NullableRef<AvlNet.Profile> outBrightnessProfile,
	NullableRef<AvlNet.Profile> outResponseProfile
)

Parameters

Name Type Range Default Description
inImageAvlNet.ImageInput image.
inScanMapAvlNet.ScanMapData precomputed with CreateScanMap.
inStripeScanParamsAvlNet.StripeScanParamsStripeScanParams ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 0.6f MinMagnitude: 5.0f MaxInnerEdgeMagnitude: Nil StripePolarity: Dark MinStripeWidth: 0.0f MaxStripeWidth: Nil )Parameters controlling the stripe extraction process. Default value: StripeScanParams ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 0.6f MinMagnitude: 5.0f MaxInnerEdgeMagnitude: Nil StripePolarity: Dark MinStripeWidth: 0.0f MaxStripeWidth: Nil ).
inStripeCountint<0, INF>1Number of stripes to be found. Default value: 1.
inStripeSelectionAvlNet.Selectionavl::Selection::BestSelection mode of the resulting stripes. Default value: avl::Selection::Best.
inMinGapWidthfloat<0.0f, INF>0.0fMinimal distance between consecutive stripes. Default value: 0.0f.
inMaxGapWidthfloat?<0.0f, INF>Maximal distance between consecutive stripes. Default value: atl::NIL.
inLocalBlindnessAvlNet.LocalBlindness?Defines conditions in which weaker edges can be detected in the vicinity of stronger edges. Default value: atl::NIL.
outStripesAvlNet.INullable<System.Collections.Generic.List<AvlNet.Stripe1D>>Found stripes. This parameter cannot be null.
outGapsAvlNet.INullable<System.Collections.Generic.List<AvlNet.Gap1D>>Distances between consecutive stripes. This parameter cannot be null.
outBrightnessProfileAvlNet.NullableRef<AvlNet.Profile>Extracted image profile. Can be null to skip this parameter calculation.
outResponseProfileAvlNet.NullableRef<AvlNet.Profile>Profile of the edge (derivative) operator response. Can be null to skip this parameter calculation.

Description

The operation scans the image using inScanMap previously generated from a scan path and finds a set of inStripeCount consecutive stripes (i.e. pairs of opposite-polarity edges running across the path). If no subset (of inStripeCount elements) of detected edge pairs meets the requirements of inStripeScanParams.stripePolarity, inStripeScanParams.minMagnitude, inStripeScanParams.minStripeWidth and inMinGapWidth 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

ScanExactlyNStripes locates the edge pairs using a scan map representing the scan path above (inStripeCount = 2, inStripeScanParams.stripePolarity = Dark).

Remarks

Read more about Local Coordinate Systems in Machine Vision Guide: Local Coordinate Systems.

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.

Function Overrides

See also