You are here: Start » AVL.NET » AVS.FitCircleToRidges3D_Direct Method

AVS.FitCircleToRidges3D_Direct Method

Performs a series of 1D ridge detections in 3D and finds a circle that best matches the detected points.

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax

public static void FitCircleToRidges3D_Direct
(
	AvlNet.Surface inSurface,
	AvlNet.CircleFittingField inFittingField,
	AvlNet.CoordinateSystem2D? inFittingFieldAlignment,
	int inScanCount,
	float? inSamplingStep,
	int inScanWidth,
	AvlNet.InterpolationMethod inSurfaceInterpolation,
	AvlNet.RidgeScanParams3D inRidgeScanParams,
	AvlNet.Selection inRidgeSelection,
	AvlNet.LocalBlindness? inLocalBlindness,
	int? inMaxProfileGapWidth,
	float inMaxIncompleteness,
	AvlNet.CircleFittingMethod inFittingMethod,
	AvlNet.MEstimator? inOutlierSuppression,
	INullable<AvlNet.Circle3D> outCircle,
	NullableRef<List<AvlNet.SurfaceRidge1D?>> outRidges,
	NullableRef<NullableRef<AvlNet.Profile>> outDeviationProfile,
	NullableValue<AvlNet.CircleFittingField> outAlignedFittingField,
	NullableRef<List<AvlNet.Point3D>> outInliers
)

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. Default value: atl::NIL.
inScanCountint<3, INF>10The number of points that will be searched to estimate the position of the circle. Default value: 10.
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. Default value: atl::NIL.
inScanWidthint<1, INF>5The width of each scan field (in pixels). Default value: 5.
inSurfaceInterpolationAvlNet.InterpolationMethodBilinearInterpolation method used for extraction of surface points. Default value: Bilinear.
inRidgeScanParamsAvlNet.RidgeScanParams3DRidgeScanParams3D ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 0.6f RidgeWidth: 5.0f RidgeMargin: 2.0f RidgeOperator: Minimum MinMagnitude: 5.0f RidgePolarity: Low )Parameters controlling the ridge extraction process. Default value: RidgeScanParams3D ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 0.6f RidgeWidth: 5.0f RidgeMargin: 2.0f RidgeOperator: Minimum MinMagnitude: 5.0f RidgePolarity: Low ).
inRidgeSelectionAvlNet.SelectionSelection mode of ridges.
inLocalBlindnessAvlNet.LocalBlindness?Defines conditions in which weaker ridges can be detected in the vicinity of stronger ridges. Default value: atl::NIL.
inMaxProfileGapWidthint?<0, INF>1Maximal number of consecutive not existing profile points. Default value: 1.
inMaxIncompletenessfloat<0.0f, 0.999f>0.1fMaximal fraction of ridge points not found. Default value: 0.1f.
inFittingMethodAvlNet.CircleFittingMethodAlgebraicTaubinMethod used to fit a circle. Default value: AlgebraicTaubin.
inOutlierSuppressionAvlNet.MEstimator?Selects a method for ignoring incorrectly detected points. Default value: atl::NIL.
outCircleAvlNet.INullable<AvlNet.Circle3D>Fitted circle or nothing if the fitting fails. This parameter cannot be null.
outRidgesAvlNet.NullableRef<System.Collections.Generic.List<AvlNet.SurfaceRidge1D?>>Found ridges. Can be null to skip this parameter calculation.
outDeviationProfileAvlNet.NullableRef<AvlNet.NullableRef<AvlNet.Profile>>Profile of distances between the actual circle points and the corresponding reference circle points. Can be null to skip this parameter calculation.
outAlignedFittingFieldAvlNet.NullableValue<AvlNet.CircleFittingField>Fitting field used; in the image coordinate system. Can be null to skip this parameter calculation.
outInliersAvlNet.NullableRef<System.Collections.Generic.List<AvlNet.Point3D>>Points matching the fitting Circle. Can be null to skip this parameter calculation.

Function Overrides

See also