35 #ifndef AIMS_MATH_DISCRIMINANTANALYSIS_H
36 #define AIMS_MATH_DISCRIMINANTANALYSIS_H
55 void doIt(
const std::list< Point3d>& selectedPoints,
103 const std::vector< std::list <Point3d> >& classes,
104 int significantEV = -1,
105 const std::vector<double>& PIj
106 = std::vector<double>() ) ;
127 const std::vector< std::list< Point3d > >& _classes ;
129 std::vector<double> _PIj ;
131 std::vector<DiscriminantAnalysisElement> _discrElements ;
const carto::VolumeRef< double > & mean() const
double posteriorProbability(const carto::rc_ptr< carto::Volume< double > > &individual, double pX) const
double lnPosteriorProbability(const carto::rc_ptr< carto::Volume< double > > &individual) const
carto::VolumeRef< double > _mean
void doIt(const carto::rc_ptr< carto::Volume< T > > &individuals)
DiscriminantAnalysisElement(int significantEV=-1, double PIj=1.)
~DiscriminantAnalysisElement()
std::vector< Point3d > _indivPosition
double distance(const carto::rc_ptr< carto::Volume< double > > &x) const
carto::VolumeRef< double > _invVarCov
bool classification(const carto::rc_ptr< carto::Volume< T > > &dynamicImage, const carto::rc_ptr< carto::Volume< byte > > &mask, carto::rc_ptr< carto::Volume< short > > &segmented)
DiscriminantAnalysis(const carto::rc_ptr< carto::Volume< T > > &data, const std::vector< std::list< Point3d > > &classes, int significantEV=-1, const std::vector< double > &PIj=std::vector< double >())
int affectedTo(const carto::rc_ptr< carto::Volume< double > > &x)
std::vector< double > andersonScores(const carto::rc_ptr< carto::Volume< double > > &x)
std::vector< double > posteriorProbabilities(const carto::rc_ptr< carto::Volume< double > > &x, double px)
bool fuzzyClassification(const carto::rc_ptr< carto::Volume< T > > &dynamicImage, const carto::rc_ptr< carto::Volume< byte > > &mask, carto::rc_ptr< carto::Volume< float > > &fuzzySegmented, const carto::rc_ptr< carto::Volume< double > > &indivPriorProbabilities=carto::rc_ptr< carto::Volume< double > >())
BucketMap< Void > * mask(const BucketMap< Void > &src, const BucketMap< Void > &m, bool intersect=true)