LocalBlindness
Description
This structure contains parameters of 1D scanning process that can prevent weaker edges in the vicinity of some strong edges from being detected.
Structure fields and default values (if defined) are described below:
- real Radius - Defines how far the blindness works
- real Threshold = 0.5f - Defines the fraction of a strong edge magnitude that a weaker edge has to have to be detected
- real Fuzziness = 0.0f - Makes effective threshold decrease linearly from 'Threshold' at distance 'Radius - Radius * Fuzziness' to zero at distance 'Radius + Radius * Fuzziness'
struct LocalBlindness
{
real Radius;
real Threshold;
real Fuzziness;
explicit LocalBlindness
(
real Threshold_ = 0.5f,
real Fuzziness_ = 0.0f
) :
Threshold(Threshold_),
Fuzziness(Fuzziness_)
{}
real Radius( void ) const { return Radius; };
real Threshold( void ) const { return Threshold; };
real Fuzziness( void ) const { return Fuzziness; };
bool operator == ( const avl::LocalBlindness& rhs ) const
{
return Radius == rhs.Radius &&
Threshold == rhs.Threshold && Fuzziness == rhs.Fuzziness
;
}
bool operator != ( const avl::LocalBlindness& rhs ) const
{
return !(operator==(rhs));
}
};
