You are here: Start » AVL.NET » AVL.FitArcToEdges Method

AVL.FitArcToEdges Method

Performs a series of 1D edge detections and finds an arc that best matches the detected points.

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax

public static void FitArcToEdges(
	AvlNet.Image inImage,
	AvlNet.ArcFittingMap inFittingMap,
	AvlNet.EdgeScanParams inEdgeScanParams,
	AvlNet.Selection inEdgeSelection,
	AvlNet.LocalBlindness? inLocalBlindness,
	float inMaxIncompleteness,
	AvlNet.CircleFittingMethod inFittingMethod,
	AvlNet.MEstimator? inOutlierSuppression,
	out AvlNet.Arc2D? outArc,
	out System.Nullable<AvlNet.Edge1D>[] outEdges,
	out AvlNet.Profile outDeviationProfile,
	out AvlNet.Profile[] diagBrightnessProfiles,
	out AvlNet.Profile[] diagResponseProfiles
)

Parameters

Name Type Range Default Description
inImageAvlNet.ImageInput image to fit arc to.
inFittingMapAvlNet.ArcFittingMapInput fitting map.
inEdgeScanParamsAvlNet.EdgeScanParamsParameters controlling the edge extraction process.
inEdgeSelectionAvlNet.Selectionavl::Selection::BestSelection mode of edges. Default value: avl::Selection::Best.
inLocalBlindnessAvlNet.LocalBlindness?Defines conditions in which weaker edges can be detected in the vicinity of stronger edges. Default value: atl::NIL, or null.
inMaxIncompletenessfloat<0.0f, 0.999f>0.1fMaximal fraction of edge points not found. Default value: 0.1f.
inFittingMethodAvlNet.CircleFittingMethodAlgebraicTaubinMethod used to fit an arc. Default value: AlgebraicTaubin.
inOutlierSuppressionAvlNet.MEstimator?Selects a method for ignoring incorrectly detected points. Default value: atl::NIL, or null.
outArcAvlNet.Arc2D?Fitted arc or nothing if the fitting fails.
outEdgesAvlNet.Edge1D?Found edges
outDeviationProfileAvlNet.ProfileProfile of distances between the actual arc points and the corresponding reference arc points
diagBrightnessProfilesAvlNet.ProfileExtracted image profiles.
diagResponseProfilesAvlNet.ProfileProfiles of the edge (derivative) operator response.

Description

The operation tries to fit a given arc to edges present in the inImage image. Internally, it performs a series of scans with the ScanSingleEdge filter using inFittingMap previously generated from the object being fitted. The found points are then used to determine the actual position of the arc in the image. Only inMaxIncompleteness fraction of these scans may fail. If the fitting according to the given parameters is not possible, outArc is set to Nil.

Examples

Fitting an arc to the edges of a semi-hole
(inEdgeScanParams.Transition = BrightToDark).

Remarks

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

This filter is a part of the Shape Fitting toolset. To read more about this technique, one can refer to the Shape Fitting chapter of our Machine Vision Guide

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

Hardware acceleration settings may be manipulated with Settings class.

See also