RidgeScanParams
Description
This structure contains parameters of ridge scanning process. Instance of this structure should be customized and passed as a parameter to ridge scanning related functions.
Structure fields and default values (if defined) are described below:
- ProfileInterpolationMethod ProfileInterpolation = Quadratic4 - Selects the method of sub-pixel precise ridge detection
- real SmoothingStdDev = 0.6f - Parameter for gaussian smoothing of the brightness profile
- int RidgeWidth = 5 - Expected thickness of the ridge in pixels
- int RidgeMargin = 2 - Number of pixels that are sampled outside of the ridge, on both of its sides
- RidgeOperator RidgeOperator - Selects the function used to combine the brightness on the left and on the right side of the ridge
- real MinMagnitude = 5.0f - Minimum acceptable ridge strength
- Polarity RidgePolarity - Specifies the type of ridges to be detected (Bright, Dark or Any)
struct RidgeScanParams
{
ProfileInterpolationMethod ProfileInterpolation;
real SmoothingStdDev;
int RidgeWidth;
int RidgeMargin;
RidgeOperator RidgeOperator;
real MinMagnitude;
Polarity RidgePolarity;
explicit RidgeScanParams
(
ProfileInterpolationMethod ProfileInterpolation_ = Quadratic4,
real SmoothingStdDev_ = 0.6f,
int RidgeWidth_ = 5,
int RidgeMargin_ = 2,
real MinMagnitude_ = 5.0f
) :
ProfileInterpolation(ProfileInterpolation_),
SmoothingStdDev(SmoothingStdDev_),
RidgeWidth(RidgeWidth_),
RidgeMargin(RidgeMargin_),
MinMagnitude(MinMagnitude_)
{}
ProfileInterpolationMethod ProfileInterpolation( void ) const { return ProfileInterpolation; };
real SmoothingStdDev( void ) const { return SmoothingStdDev; };
int RidgeWidth( void ) const { return RidgeWidth; };
int RidgeMargin( void ) const { return RidgeMargin; };
RidgeOperator RidgeOperator( void ) const { return RidgeOperator; };
real MinMagnitude( void ) const { return MinMagnitude; };
Polarity RidgePolarity( void ) const { return RidgePolarity; };
bool operator == ( const avl::RidgeScanParams& rhs ) const
{
return ProfileInterpolation == rhs.ProfileInterpolation &&
SmoothingStdDev == rhs.SmoothingStdDev && RidgeWidth == rhs.RidgeWidth &&
RidgeMargin == rhs.RidgeMargin && RidgeOperator == rhs.RidgeOperator &&
MinMagnitude == rhs.MinMagnitude && RidgePolarity == rhs.RidgePolarity
;
}
bool operator != ( const avl::RidgeScanParams& rhs ) const
{
return !(operator==(rhs));
}
};
