13 #ifndef mitkImpurityLoss_h
14 #define mitkImpurityLoss_h
16 #include <vigra/multi_array.hxx>
17 #include <vigra/random_forest.hxx>
22 template <
class TLossFunction = vigra::GiniCriterion,
class TLabelContainer = vigra::MultiArrayView<2,
int>,
class TWeightContainer = vigra::MultiArrayView<2,
double> >
31 vigra::ProblemSpec<T>
const &ext,
36 template <
class TDataIterator>
37 double Increment(TDataIterator begin, TDataIterator end);
39 template <
class TDataIterator>
40 double Decrement(TDataIterator begin, TDataIterator end);
42 template <
class TArray>
43 double Init(TArray initCounts);
45 vigra::ArrayVector<double>
const&
Response();
54 bool m_UsePointWeights;
55 TWeightContainer m_PointWeights;
58 TLabelContainer
const& m_Labels;
59 vigra::ArrayVector<double> m_Counts;
60 vigra::ArrayVector<double> m_ClassWeights;
62 TLossFunction m_LossFunction;
67 #include <../src/Splitter/mitkImpurityLoss.cpp>