You are here: Start » FIL.NET » Function Reference » Computer Vision » Shape Fitting 3D » FIL.FitPathToStripe3D_Direct
Namespace: | FilNet |
---|---|
Assembly: | FIL.NET.dll |
Syntax
C++
C#
public static void FitPathToStripe3D_Direct ( FilNet.Surface inSurface, FilNet.PathFittingField inFittingField, FilNet.CoordinateSystem2D? inFittingFieldAlignment, float? inScanStep, float? inSamplingStep, int inScanWidth, FilNet.InterpolationMethod inSurfaceInterpolation, FilNet.StripeScanParams3D inStripeScanParams, FilNet.Selection inStripeSelection, FilNet.LocalBlindness? inLocalBlindness, int? inMaxProfileGapWidth, int? inMaxPathInterpolationLength, float? inMaxDeviationDelta, float inMaxIncompleteness, INullable<List<FilNet.Point3D>> outPath, INullable<List<FilNet.Point3D>> outLeftPath, INullable<List<FilNet.Point3D>> outRightPath, IList<NullableRef<FilNet.SurfaceStripe1D>> outStripes, INullable<FilNet.Profile> outDeviationProfile, FilNet.PathFittingField outAlignedFittingField, IList<FilNet.Profile> outHeightProfiles, IList<FilNet.Profile> outResponseProfiles, INullable<List<FilNet.Segment3D>> outPathSegments, IList<FilNet.Segment2D> diagScanSegments, IList<FilNet.Rectangle2D> diagSamplingAreas )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
![]() | inSurface | FilNet.Surface | Surface to fit path to | ||
![]() | inFittingField | FilNet.PathFittingField | Path fitting field | ||
![]() | inFittingFieldAlignment | FilNet.CoordinateSystem2D? | Adjusts the fitting field to the position of the inspected object | ||
![]() | inScanStep | float? | <0.0f, INF> | 5.0f | Optional implicit conversion of the input path to an equidistant one |
![]() | inSamplingStep | float? | <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 | |
![]() | inScanWidth | int | <1, INF> | 5 | The width of each scan field (in pixels) |
![]() | inSurfaceInterpolation | FilNet.InterpolationMethod | Bilinear | Interpolation method used for extraction of surface points | |
![]() | inStripeScanParams | FilNet.StripeScanParams3D | StripeScanParams3D ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 1.0f MinMagnitude: 5.0f MaxInnerEdgeMagnitude: Nil MinStripeWidth: 0.0f MaxStripeWidth: Nil StripePolarity: High ) | Parameters controlling the stripe extraction process | |
![]() | inStripeSelection | FilNet.Selection | Selection mode of stripes | ||
![]() | inLocalBlindness | FilNet.LocalBlindness? | Defines conditions in which weaker edges can be detected in the vicinity of stronger edges | ||
![]() | inMaxProfileGapWidth | int? | <0, INF> | 1 | Maximal number of consecutive not existing profile points |
![]() | inMaxPathInterpolationLength | int? | <0, INF> | 1 | Maximal number of consecutive points not found |
![]() | inMaxDeviationDelta | float? | <0.0f, INF> | Maximal difference between deviations of consecutive path points | |
![]() | inMaxIncompleteness | float | <0.0f, 0.999f> | 0.1f | Maximal fraction of stripe points not found |
![]() | outPath | FilNet.INullable<System.Collections.Generic.List<FilNet.Point3D>> | Fitted path or nothing if the fitting failed | ||
![]() | outLeftPath | FilNet.INullable<System.Collections.Generic.List<FilNet.Point3D>> | Fitted left path | ||
![]() | outRightPath | FilNet.INullable<System.Collections.Generic.List<FilNet.Point3D>> | Fitted right path | ||
![]() | outStripes | System.Collections.Generic.IList<FilNet.NullableRef<FilNet.SurfaceStripe1D>> | Found stripes | ||
![]() | outDeviationProfile | FilNet.INullable<FilNet.Profile> | Profile of distances between the actual path points and the corresponding reference path points | ||
![]() | outAlignedFittingField | FilNet.PathFittingField | Fitting field used; in the image coordinate system | ||
![]() | outHeightProfiles | System.Collections.Generic.IList<FilNet.Profile> | Extracted surface height profiles | ||
![]() | outResponseProfiles | System.Collections.Generic.IList<FilNet.Profile> | Profiles of the edge (derivative) operator response | ||
![]() | outPathSegments | FilNet.INullable<System.Collections.Generic.List<FilNet.Segment3D>> | Segments of the fitted path or nothing if the fitting failed | ||
![]() | diagScanSegments | System.Collections.Generic.IList<FilNet.Segment2D> | Segments along which the scans were run | ||
![]() | diagSamplingAreas | System.Collections.Generic.IList<FilNet.Rectangle2D> | Areas from which the input image is sampled |
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 FitPathToStripe3D. |
Function Overrides
- FitPathToStripe3D_Direct(Surface, PathFittingField, Int32, InterpolationMethod, StripeScanParams3D, Selection, Single, INullable<List<Point3D>>, INullable<List<Point3D>>, INullable<List<Point3D>>)
- FitPathToStripe3D_Direct(Surface, PathFittingField, Nullable<CoordinateSystem2D>, Nullable<Single>, Nullable<Single>, Int32, InterpolationMethod, StripeScanParams3D, Selection, Nullable<LocalBlindness>, Nullable<Int32>, Nullable<Int32>, Nullable<Single>, Single, INullable<List<Point3D>>, INullable<List<Point3D>>, INullable<List<Point3D>>)
- FitPathToStripe3D_Direct(Surface, PathFittingField, Nullable<CoordinateSystem2D>, Nullable<Single>, Nullable<Single>, Int32, InterpolationMethod, StripeScanParams3D, Selection, Nullable<LocalBlindness>, Nullable<Int32>, Nullable<Int32>, Nullable<Single>, Single, INullable<List<Point3D>>, INullable<List<Point3D>>, INullable<List<Point3D>>, NullableRef<List<NullableRef<SurfaceStripe1D>>>, NullableRef<NullableRef<Profile>>, NullableRef<PathFittingField>, NullableRef<SafeList<Profile>>, NullableRef<SafeList<Profile>>, NullableRef<NullableRef<List<Segment3D>>>)
- FitPathToStripe3D_Direct(Surface, PathFittingField, Nullable<CoordinateSystem2D>, Nullable<Single>, Nullable<Single>, Int32, InterpolationMethod, StripeScanParams3D, Selection, Nullable<LocalBlindness>, Nullable<Int32>, Nullable<Int32>, Nullable<Single>, Single, INullable<List<Point3D>>, INullable<List<Point3D>>, INullable<List<Point3D>>, NullableRef<List<NullableRef<SurfaceStripe1D>>>, NullableRef<NullableRef<Profile>>, NullableRef<PathFittingField>, NullableRef<SafeList<Profile>>, NullableRef<SafeList<Profile>>, NullableRef<NullableRef<List<Segment3D>>>, IList<Segment2D>, IList<Rectangle2D>)