Back to Adaptive Vision Library website
You are here: Start » Function Reference » Shape Fitting 3D » AvsFilter_MeasureObjectWidth3D
AvsFilter_MeasureObjectWidth3D
This is Filter Equivalent. This function may be present in generated code, but should not be used in hand-written code.
Measures the width of an object using stripe detection.
Header: | AVL.h |
---|
Syntax
void avs::AvsFilter_MeasureObjectWidth3D ( MeasureObjectWidth3DState& ioState, const avl::Surface& inSurface, const avl::SegmentScanField& inScanField, atl::Optional<const avl::CoordinateSystem2D&> inScanFieldAlignment, int inScanCount, int inScanWidth, avl::InterpolationMethod::Type inSurfaceInterpolation, const avl::StripeScanParams3D& inStripeScanParams, avl::MeasureObjectMethod::Type inMeasureMethod, avl::Selection::Type inStripeSelection, atl::Optional<const avl::LocalBlindness&> inLocalBlindness, atl::Optional<int> inMaxProfileGapWidth, atl::Optional<avl::MEstimator::Type> inOutlierSuppression, int inOutlierCount, atl::Conditional<float>& outObjectWidth, atl::Conditional<avl::Segment2D>& outSegment1, atl::Conditional<avl::Segment2D>& outSegment2, atl::Optional<avl::SegmentScanField&> outAlignedScanField = atl::NIL, atl::Array<avl::Segment2D>& diagScanSegments, atl::Array<avl::Point3D>& diagPoints1, atl::Array<avl::Point3D>& diagPoints2 )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
ioState | MeasureObjectWidth3DState& | Object used to maintain state of the function. | |||
inSurface | const Surface& | Input surface | |||
inScanField | const SegmentScanField& | Field in which measurement scans are performed | |||
inScanFieldAlignment | Optional<const CoordinateSystem2D&> | NIL | Adjusts the scan field to the position of the inspected object | ||
inScanCount | int | 2 - | 5 | Number of scans to be performed | |
inScanWidth | int | 1 - | 5 | Width of each single scan | |
inSurfaceInterpolation | InterpolationMethod::Type | Bilinear | Interpolation method used for extraction of surface points | ||
inStripeScanParams | const StripeScanParams3D& | StripeScanParams3D ( ProfileInterpolation: Quadratic4 SmoothingStdDev: 1.0f MinMagnitude: 5.0f MaxInnerEdgeMagnitude: Nil MinStripeWidth: 0.0f MaxStripeWidth: Nil StripePolarity: High ) | Parameters controlling the object stripe extraction process | ||
inMeasureMethod | MeasureObjectMethod::Type | Method used to measure the object | |||
inStripeSelection | Selection::Type | Selection mode of edges of the object | |||
inLocalBlindness | Optional<const LocalBlindness&> | NIL | Defines conditions in which weaker edges can be detected in the vicinity of stronger edges | ||
inMaxProfileGapWidth | Optional<int> | 0 - | NIL | Maximal number of consecutive not existing profile points | |
inOutlierSuppression | Optional<MEstimator::Type> | NIL | Selects a method for ignoring incorrectly detected points | ||
inOutlierCount | int | 0 - | Determines how many points are not count when object width is measured | ||
outObjectWidth | Conditional<float>& | Width of the object | |||
outSegment1 | Conditional<Segment2D>& | First edge of the object | |||
outSegment2 | Conditional<Segment2D>& | Second edge of the object | |||
outAlignedScanField | Optional<SegmentScanField&> | NIL | Field in which the scans are performed | ||
diagScanSegments | Array<Segment2D>& | Segments along which the scans are performed | |||
diagPoints1 | Array<Point3D>& | Detected edge points on the first side | |||
diagPoints2 | Array<Point3D>& | Detected edge points on the second side |