oevislib_net  0.14.3.0
Loading...
Searching...
No Matches
Features

Functions

int oevislib_net.Profile.GetSize ()
 Returns the size of the profile.
Array< ProfileSectionoevislib_net.Profile.DivideInSections (Optional< Range > inRange, Optional< float > inMinValue, Optional< float > inMaxValue, float inMinSectionWidth, Optional< float > inMaxSectionWidth, float inMinGapWidth, Optional< float > inMaxGapWidth, Optional< float > inMaxInnerGapWidth, Optional< Conditional< ProfileSection > > outBoundingSection)
 Divides the profile into sections where the values fall into the specified range.
static Array< ProfileEdgeoevislib_net.Profile.FindProfileEdges (Profile inProfile, bool inCyclic, Optional< Range > inRange, EdgeScanParams inEdgeScanParams, float inMinDistance, Optional< float > inMaxDistance, Optional< LocalBlindness > inLocalBlindness, Optional< Array< float > > outDistances, Optional< Profile > outResponseProfile)
 Finds the positions where profile values change rapidly.
static Array< ProfileRidgeoevislib_net.Profile.FindProfileRidges (Profile inProfile, bool inCyclic, Optional< Range > inRange, RidgeScanParams inRidgeScanParams, float inMinDistance, Optional< float > inMaxDistance, Optional< LocalBlindness > inLocalBlindness, Optional< Array< float > > outDistances, Optional< Profile > outFirstDerivativeProfile, Optional< Profile > outSecondDerivativeProfile)
 Finds the local minima or maxima in the profile.
static Array< ProfileStripeoevislib_net.Profile.FindProfileStripes (Profile inProfile, bool inCyclic, Optional< Range > inRange, StripeScanParams inStripeScanParams, float inMinGapWidth, Optional< float > inMaxGapWidth, Optional< LocalBlindness > inLocalBlindness, Optional< Array< float > > outDistances, Optional< Profile > outResponseProfile)
 Finds segments included between two edges of opposite transition.
float oevislib_net.Profile.GetAverage (Optional< Range > inRange=null)
 Computes the average value of the profile.
Array< Extremum1Doevislib_net.Profile.GetLocalExtrema (bool inCyclic, ExtremumType inExtremumType, bool inConsiderPlateaus, InterpolationMethod1D inInterpolationMethod, Optional< float > inMinValue, Optional< float > inMaxValue, Optional< Range > inRange, Optional< LocalBlindness > inLocalBlindness)
 Finds the local extrema positions (where the profile's values are locally minimum or maximum).
float oevislib_net.Profile.GetMaxValue (InterpolationMethod1D inInterpolationMethod, Optional< Range > inRange, Optional< int > outMaxIndex, Optional< float > outMaxCoordinate)
 Finds the maximum value of the profile.
float oevislib_net.Profile.GetMinValue (InterpolationMethod1D inInterpolationMethod, Optional< Range > inRange, Optional< int > outMinIndex, Optional< float > outMinCoordinate)
 Finds the minimum value of the profile.
float oevislib_net.Profile.GetSum (Optional< Range > inRange=null)
 Computes the sum of all profile values.
Array< float > oevislib_net.Profile.FindZeroCrossings (Optional< Range > inRange=null)
 Finds the X coordinates where the profile intersects the X axis.

Detailed Description

Function Documentation

◆ DivideInSections()

Array< ProfileSection > oevislib_net.Profile.DivideInSections ( Optional< Range > inRange,
Optional< float > inMinValue,
Optional< float > inMaxValue,
float inMinSectionWidth,
Optional< float > inMaxSectionWidth,
float inMinGapWidth,
Optional< float > inMaxGapWidth,
Optional< float > inMaxInnerGapWidth,
Optional< Conditional< ProfileSection > > outBoundingSection )
inline

Divides the profile into sections where the values fall into the specified range.

The values must be part of the range [inMinValue, inMaxValue] and the obtained sections must respect the width range specified. All sections have to be at a certain distance or can be merged if the distance is less than inMaxInnerGapWidth.

Parameters
inRangeRange of indices to consider.
inMinValueValue's lower bound.
inMaxValueValue's upper bound.
inMinSectionWidthMinimal width of the section. Range: [0, +inf).
inMaxSectionWidthMaximal width of the section. Range: [0, +inf).
inMinGapWidthMinimal distance between consecutive sections. Range: [0, +inf).
inMaxGapWidthMaximal distance between consecutive sections. Range: [0, +inf).
inMaxInnerGapWidthMaximal possible gap width between two consecutive sections to join them into one.
outBoundingSectionThe smallest section that contains all output sections.
Returns
Profile sections.

◆ FindProfileEdges()

Array< ProfileEdge > oevislib_net.Profile.FindProfileEdges ( Profile inProfile,
bool inCyclic,
Optional< Range > inRange,
EdgeScanParams inEdgeScanParams,
float inMinDistance,
Optional< float > inMaxDistance,
Optional< LocalBlindness > inLocalBlindness,
Optional< Array< float > > outDistances,
Optional< Profile > outResponseProfile )
inlinestatic

Finds the positions where profile values change rapidly.

Parameters
inProfileInput profile.
inCyclicWhether to consider the profile cyclic.
inRangeRange of indices to consider.
inEdgeScanParamsParameters controlling the edge extraction process.
inMinDistanceMinimal distance between consecutive edges. Range: [0, +inf).
inMaxDistanceMaximal distance between consecutive edges. Range: [0, +inf).
inLocalBlindnessParameters used to prevent the detection of weak edges near strong edges.
outDistancesDistances between consecutive edges.
outResponseProfileResponse profile.
Returns
Found edges.

◆ FindProfileRidges()

Array< ProfileRidge > oevislib_net.Profile.FindProfileRidges ( Profile inProfile,
bool inCyclic,
Optional< Range > inRange,
RidgeScanParams inRidgeScanParams,
float inMinDistance,
Optional< float > inMaxDistance,
Optional< LocalBlindness > inLocalBlindness,
Optional< Array< float > > outDistances,
Optional< Profile > outFirstDerivativeProfile,
Optional< Profile > outSecondDerivativeProfile )
inlinestatic

Finds the local minima or maxima in the profile.

Parameters
inProfileInput profile.
inCyclicWhether to consider the profile cyclic.
inRangeRange of indices to consider.
inRidgeScanParamsParameters controlling the ridge extraction process.
inMinDistanceMinimal distance between consecutive ridges. Range: [0, +inf).
inMaxDistanceMaximal distance between consecutive ridges. Range: [0, +inf).
inLocalBlindnessParameters used to prevent the detection of weak ridges near strong edges.
outDistancesDistances between consecutive edges.
outFirstDerivativeProfileFirst derivative of the profile.
outSecondDerivativeProfileSecond derivative of the profile.
Returns
Found ridges.

◆ FindProfileStripes()

Array< ProfileStripe > oevislib_net.Profile.FindProfileStripes ( Profile inProfile,
bool inCyclic,
Optional< Range > inRange,
StripeScanParams inStripeScanParams,
float inMinGapWidth,
Optional< float > inMaxGapWidth,
Optional< LocalBlindness > inLocalBlindness,
Optional< Array< float > > outDistances,
Optional< Profile > outResponseProfile )
inlinestatic

Finds segments included between two edges of opposite transition.

Parameters
inProfileInput profile.
inCyclicWhether to consider the profile cyclic.
inRangeRange of indices to consider.
inStripeScanParamsParameters controlling the stripe extraction process.
inMinGapWidthMinimal distance between consecutive stripes. Range: [0, +inf).
inMaxGapWidthMaximal distance between consecutive stripes. Range: [0, +inf).
inLocalBlindnessParameters used to prevent the detection of weak stripes near strong edges.
outDistancesDistances between consecutive stripes.
outResponseProfileResponse profile.
Returns
Found stripes.

◆ FindZeroCrossings()

Array< float > oevislib_net.Profile.FindZeroCrossings ( Optional< Range > inRange = null)
inline

Finds the X coordinates where the profile intersects the X axis.

Parameters
inRangeRange of indices to consider.
Returns
X coordinates.

◆ GetAverage()

float oevislib_net.Profile.GetAverage ( Optional< Range > inRange = null)
inline

Computes the average value of the profile.

Parameters
inRangeRange of indices to consider.
Returns
Average value.

◆ GetLocalExtrema()

Array< Extremum1D > oevislib_net.Profile.GetLocalExtrema ( bool inCyclic,
ExtremumType inExtremumType,
bool inConsiderPlateaus,
InterpolationMethod1D inInterpolationMethod,
Optional< float > inMinValue,
Optional< float > inMaxValue,
Optional< Range > inRange,
Optional< LocalBlindness > inLocalBlindness )
inline

Finds the local extrema positions (where the profile's values are locally minimum or maximum).

Parameters
inCyclicWhether to consider the profile cyclic.
inExtremumTypeType of extremum to find (minimum, maximum or both).
inConsiderPlateausWhether the result should include centers of plateau extrema ("groups" of minima/maxima composed by consecutive equal values).
inInterpolationMethodInterpolation method.
inMinValueMinimum value to consider.
inMaxValueMaximum value to consider.
inRangeRange of indices to consider.
inLocalBlindnessWhen to consider weaker local extrema near stronger ones.
Returns
Local extrema.

◆ GetMaxValue()

float oevislib_net.Profile.GetMaxValue ( InterpolationMethod1D inInterpolationMethod,
Optional< Range > inRange,
Optional< int > outMaxIndex,
Optional< float > outMaxCoordinate )
inline

Finds the maximum value of the profile.

Parameters
inInterpolationMethodInterpolation method.
inRangeRange of indices to consider.
outMaxIndexIndex of the maximum value found.
outMaxCoordinateX coordinate where the maximum value is found.
Returns
Maximum value.

◆ GetMinValue()

float oevislib_net.Profile.GetMinValue ( InterpolationMethod1D inInterpolationMethod,
Optional< Range > inRange,
Optional< int > outMinIndex,
Optional< float > outMinCoordinate )
inline

Finds the minimum value of the profile.

Parameters
inInterpolationMethodInterpolation method.
inRangeRange of indices to consider.
outMinIndexIndex of the minimum value found.
outMinCoordinateX coordinate where the minimum value is found.
Returns
minimum value.

◆ GetSize()

int oevislib_net.Profile.GetSize ( )
inline

Returns the size of the profile.

Returns
Size.

◆ GetSum()

float oevislib_net.Profile.GetSum ( Optional< Range > inRange = null)
inline

Computes the sum of all profile values.

Parameters
inRangeRange of indices to consider.
Returns
Sum.