[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
DiffusivityFunctor< Value > Class Template Reference |
Diffusivity functor for non-linear diffusion. More...
#include <vigra/nonlineardiffusion.hxx>
Public Types | |
typedef Value | first_argument_type |
typedef NumericTraits< Value > ::RealPromote | result_type |
typedef Value | second_argument_type |
typedef Value | value_type |
Public Member Functions | |
DiffusivityFunctor (Value const &thresh) | |
result_type | operator() (first_argument_type const &gx, second_argument_type const &gy) const |
result_type | operator() (RGBValue< Value > const &gx, RGBValue< Value > const &gy) const |
Diffusivity functor for non-linear diffusion.
This functor implements the diffusivity recommended by Weickert:
where thresh
is a threshold that determines whether a specific gradient magnitude is interpreted as a significant edge (above the threshold) or as noise. It is meant to be used with nonlinearDiffusion().
typedef Value first_argument_type |
the functors first argument type (must be an algebraic field with exp()
defined). However, the functor also works with RGBValue<first_argument_type> (this hack is necessary since Microsoft C++ doesn't support partial specialization).
typedef Value second_argument_type |
the functors second argument type (same as first). However, the functor also works with RGBValue<second_argument_type> (this hack is necessary since Microsoft C++ doesn't support partial specialization).
typedef NumericTraits<Value>::RealPromote result_type |
the functors result type
typedef Value value_type |
DiffusivityFunctor | ( | Value const & | thresh | ) |
init functor with given edge threshold
result_type operator() | ( | first_argument_type const & | gx, |
second_argument_type const & | gy | ||
) | const |
calculate diffusivity from scalar arguments
result_type operator() | ( | RGBValue< Value > const & | gx, |
RGBValue< Value > const & | gy | ||
) | const |
calculate diffusivity from RGB arguments
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|