43 #ifndef KERNEL_HISTINTERSECT_HH 44 #define KERNEL_HISTINTERSECT_HH 80 template<
typename ForwardIter,
typename Accessor>
90 template<
typename ForwardIter1,
typename Accessor1,
91 typename ForwardIter2,
typename Accessor2 >
108 template<
typename FV>
112 for (
int i = 0; i < static_cast<int>(x.size()); i++)
113 temp += std::min(x[i],y[i]);
117 template<
typename STDATA>
121 template<
typename STDATA>
125 stData.setValue(
"kernel_type",
name());
130 return "histintersect";
135 return "histintersect kernel: min(u(i),v(i))";
void saveParameters(STDATA &stData) const
void updateCache(const ForwardIter &, const ForwardIter &, Accessor, ProgressReporter *) const
#define CHECK_MEMBER_TEMPLATE(c)
void loadParameters(STDATA &)
double k_function(const FV &x, const FV &y) const
static const char * description()
The Kernel_HISTINTERSECT class specifies a HISTINTERSECT kernel function: min(u'(i),v(i))
static void getParamInfos(std::vector< ParamInfo > &)
get information about the parameters, that are used in loadParameters() and saveParameters().
static const char * name()
void updateCache(const ForwardIter1 &, const ForwardIter1 &, Accessor1, const ForwardIter2 &, const ForwardIter2 &, Accessor2, ProgressReporter *=0) const