[ VIGRA Homepage | Class Index | Function Index | File Index | Main Page ]
![]() |
DiffusivityFunctor Class Template Reference | ![]() |
---|
Diffusivity functor for non-linear diffusion. More...
#include "vigra/nonlineardiffusion.hxx"
Public Types | |
typedef Value | first_argument_type |
typedef Value | second_argument_type |
typedef NumericTraits< Value >::RealPromote | result_type |
typedef Value | value_type |
Public Methods | |
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 |
Detailed Description |
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().
|
the functors first argument type (must be an algebraic field with |
|
the functors result 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). |
|
|
|
init functor with given edge threshold |
|
calculate diffusivity from RGB arguments |
|
calculate diffusivity from scalar arguments |
© Ullrich Köthe (koethe@informatik.uni-hamburg.de) |
html generated using doxygen and Python
|