You are here: Start » AVL.NET » Function Reference » Computer Vision » Shape Fitting 3D » AVL.FitCircleToStripe3D_Direct

AVL.FitCircleToStripe3D_Direct

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax

C++
C#
 
public static void FitCircleToStripe3D_Direct
(
	AvlNet.Surface inSurface,
	AvlNet.CircleFittingField inFittingField,
	AvlNet.CoordinateSystem2D? inFittingFieldAlignment,
	int inScanCount,
	float? inSamplingStep,
	int inScanWidth,
	AvlNet.InterpolationMethod inSurfaceInterpolation,
	AvlNet.StripeScanParams3D inStripeScanParams,
	AvlNet.Selection inStripeSelection,
	AvlNet.LocalBlindness? inLocalBlindness,
	int? inMaxProfileGapWidth,
	float inMaxIncompleteness,
	AvlNet.CircleFittingMethod inFittingMethod,
	AvlNet.MEstimator? inOutlierSuppression,
	INullable<AvlNet.Circle3D> outCircle,
	INullable<AvlNet.Circle3D> outInnerCircle,
	INullable<AvlNet.Circle3D> outOuterCircle,
	NullableRef<List<NullableRef<AvlNet.SurfaceStripe1D>>> outStripes,
	NullableRef<List<AvlNet.Point3D>> outStripePoints,
	NullableRef<NullableRef<AvlNet.Profile>> outDeviationProfile,
	NullableValue<AvlNet.CircleFittingField> outAlignedFittingField
)

Parameters

Name Type Range Default Description
inSurfaceAvlNet.SurfaceSurface to fit the circle to
inFittingFieldAvlNet.CircleFittingFieldCircle fitting field
inFittingFieldAlignmentAvlNet.CoordinateSystem2D?Adjusts the fitting field to the position of the inspected object
inScanCountint<3, INF>10The number of points that will be searched to estimate the position of the circle
inSamplingStepfloat?<0.0f, INF>Desired distance between consecutive sampling points on the scan segments; if Nil, the bigger of surface X and Y scales is chosen
inScanWidthint<1, INF>5The width of each scan field (in pixels)
inSurfaceInterpolationAvlNet.InterpolationMethodBilinearInterpolation method used for extraction of surface points
inStripeScanParamsAvlNet.StripeScanParams3DStripeScanParams3D ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 1.0f MinMagnitude: 5.0f MaxInnerEdgeMagnitude: Nil MinStripeWidth: 0.0f MaxStripeWidth: Nil StripePolarity: High )Parameters controlling the stripe extraction process
inStripeSelectionAvlNet.SelectionSelection mode of stripe
inLocalBlindnessAvlNet.LocalBlindness?Defines conditions in which weaker edges can be detected in the vicinity of stronger edges
inMaxProfileGapWidthint?<0, INF>1Maximal number of consecutive not existing profile points
inMaxIncompletenessfloat<0.0f, 0.999f>0.1fMaximal fraction of stripe points not found
inFittingMethodAvlNet.CircleFittingMethodAlgebraicTaubinMethod used to fit a circle
inOutlierSuppressionAvlNet.MEstimator?Selects a method for ignoring incorrectly detected points
outCircleAvlNet.INullable<AvlNet.Circle3D>Fitted circle in the middle of found stripe or nothing if the fitting fails
outInnerCircleAvlNet.INullable<AvlNet.Circle3D>Fitted inner circle
outOuterCircleAvlNet.INullable<AvlNet.Circle3D>Fitted outer circle
outStripesAvlNet.NullableRef<System.Collections.Generic.List<AvlNet.NullableRef<AvlNet.SurfaceStripe1D>>>Found stripes
outStripePointsAvlNet.NullableRef<System.Collections.Generic.List<AvlNet.Point3D>>Extracted points of middle circle of a surface stripe
outDeviationProfileAvlNet.NullableRef<AvlNet.NullableRef<AvlNet.Profile>>Profile of distances between the actual circle points and the corresponding reference circle points
outAlignedFittingFieldAvlNet.NullableValue<AvlNet.CircleFittingField>Fitting field used; in the image coordinate system

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

Hardware acceleration settings may be manipulated with Settings class.

Errors

List of possible exceptions:

Error type Description
DomainError Sampling step set to zero in FitCircleToStripe3D.

Function Overrides

See also