37#ifndef VIGRA_GRADIENT_ENERGY_TENSOR_HXX
38#define VIGRA_GRADIENT_ENERGY_TENSOR_HXX
43#include "array_vector.hxx"
44#include "basicimage.hxx"
45#include "combineimages.hxx"
46#include "numerictraits.hxx"
47#include "convolution.hxx"
48#include "multi_shape.hxx"
156 "gradientEnergyTensor(): output image must have 3 bands.");
162 NumericTraits<typename SrcAccessor::value_type>::RealPromote
TmpType;
179 std::plus<TmpType>());
193 typename DestIterator::row_iterator d =
dupperleft.rowIterator();
203template <
class SrcIterator,
class SrcAccessor,
204 class DestIterator,
class DestAccessor>
207 pair<DestIterator, DestAccessor> dest,
208 Kernel1D<double>
const & derivKernel, Kernel1D<double>
const & smoothKernel)
211 dest.first, dest.second, derivKernel, smoothKernel);
214template <
class T1,
class S1,
218 MultiArrayView<2, T2, S2> dest,
219 Kernel1D<double>
const & derivKernel, Kernel1D<double>
const & smoothKernel)
221 vigra_precondition(src.shape() == dest.shape(),
222 "gradientEnergyTensor(): shape mismatch between input and output.");
224 destImage(dest), derivKernel, smoothKernel);
Class for a single RGB value.
Definition rgbvalue.hxx:128
size_type size() const
Definition tinyvector.hxx:913
iterator begin()
Definition tinyvector.hxx:861
void combineTwoImages(...)
Combine two source images into destination image.
void convolveImage(...)
Convolve an image with the given kernel(s).
void gradientEnergyTensor(...)
Calculate the gradient energy tensor for a scalar valued image.