StripeScanParams
Description
This structure contains parameters of stripe scanning process. Instance of this structure should be customized and passed as a parameter to stripe scanning related functions.Structure fields and default values (if defined) are described below:
- ProfileInterpolationMethod ProfileInterpolation = Quadratic4 - Selects the method of sub-pixel precise edge detection
- float SmoothingStdDev = 0.6f - Parameter for gaussian smoothing of the brightness profile
- float MinMagnitude = 5.0f - Minimum acceptable edge strength
- float MaxInnerEdgeMagnitude - Maximum strength of edges appearing between the two ends of a stripe
- Polarity StripePolarity - Specifies the type of stripes to be detected (Bright, Dark or Any)
- float MinStripeWidth - Minimum acceptable stripe width in pixels
- float MaxStripeWidth - Maximum acceptable stripe width in pixels
struct StripeScanParams { ProfileInterpolationMethod ProfileInterpolation; float SmoothingStdDev; float MinMagnitude; float MaxInnerEdgeMagnitude; Polarity StripePolarity; float MinStripeWidth; float MaxStripeWidth; explicit StripeScanParams ( ProfileInterpolationMethod ProfileInterpolation_ = Quadratic4, float SmoothingStdDev_ = 0.6f, float MinMagnitude_ = 5.0f ) : ProfileInterpolation(ProfileInterpolation_), SmoothingStdDev(SmoothingStdDev_), MinMagnitude(MinMagnitude_) {} ProfileInterpolationMethod ProfileInterpolation() const { return ProfileInterpolation; }; float SmoothingStdDev() const { return SmoothingStdDev; }; float MinMagnitude() const { return MinMagnitude; }; float MaxInnerEdgeMagnitude() const { return MaxInnerEdgeMagnitude; }; Polarity StripePolarity() const { return StripePolarity; }; float MinStripeWidth() const { return MinStripeWidth; }; float MaxStripeWidth() const { return MaxStripeWidth; }; bool operator == ( const avl::StripeScanParams& rhs ) const { return ProfileInterpolation == rhs.ProfileInterpolation && SmoothingStdDev == rhs.SmoothingStdDev && MinMagnitude == rhs.MinMagnitude && MaxInnerEdgeMagnitude == rhs.MaxInnerEdgeMagnitude && StripePolarity == rhs.StripePolarity && MinStripeWidth == rhs.MinStripeWidth && MaxStripeWidth == rhs.MaxStripeWidth; } bool operator != ( const avl::StripeScanParams& rhs ) const { return !(operator==(rhs)); } };