boost::gil::anisotropic_diffusion

Performs diffusion according to Perona‐Malik equation

Synopsis

template<
    typename InputView,
    typename OutputView,
    typename LaplaceStrategy = laplace_function::stencil_9points_standard,
    typename BrightnessFunction = brightness_function::identity,
    typename DiffusivityFunction = conductivity::gaussian_conductivity>
void
anisotropic_diffusion(
    InputView const& input,
    OutputView const& output,
    unsigned int num_iter,
    LaplaceStrategy laplace,
    BrightnessFunction brightness,
    DiffusivityFunction diffusivity);

Description

WARNING: Output channel type must be floating point, otherwise there will be loss in accuracy which most probably will lead to incorrect results (input will be unchanged). Anisotropic diffusion is a smoothing algorithm that respects edge boundaries and can work as an edge detector if suitable iteration count is set and grayscale image view is used as an input

Created with MrDocs