aimsalgo 6.0.0
Neuroimaging image processing
aims::ProbabilisticPcaElement Class Reference

#include <aims/math/ppca.h>

Collaboration diagram for aims::ProbabilisticPcaElement:

Public Member Functions

 ProbabilisticPcaElement (int nbOfSignificativeEV, double PIj=1.)
 
virtual ~ProbabilisticPcaElement ()
 
template<class T>
void doIt (const carto::rc_ptr< carto::Volume< T > > &individuals, double distanceRef=0.)
 
template<class T>
void doIt (const std::list< Point3d > &selectedPoints, const carto::rc_ptr< carto::Volume< T > > &data, double distanceRef=0.)
 
void setPIj (double PIj)
 
double distance (const carto::rc_ptr< carto::Volume< double > > &individual)
 
double posteriorProbability (const carto::rc_ptr< carto::Volume< double > > &individual, double pX)
 
double lnPosteriorProbability (const carto::rc_ptr< carto::Volume< double > > &individual)
 
const carto::VolumeRef< double > & mean () const
 
double noiseVariance () const
 
template<class T>
double noiseVariance (const carto::rc_ptr< carto::Volume< T > > &individuals, double &normMean) const
 
double meanNorm ()
 
const carto::VolumeRef< double > & eigenValues ()
 
const carto::VolumeRef< double > & selectedEigenVectors ()
 
double normFactor () const
 

Protected Member Functions

double exponential (double x)
 

Protected Attributes

double _distanceRef
 
bool _computed
 
bool _valid
 
int _nbOfSignificantEV
 
double _PIj
 
carto::VolumeRef< double > _mean
 
double _meanMean
 
double _meanNorm
 
carto::VolumeRef< double > _x
 
carto::VolumeRef< double > _xT
 
carto::VolumeRef< double > _Wi
 
carto::VolumeRef< double > _invCi
 
carto::VolumeRef< double > _EValues
 
carto::VolumeRef< double > _EVect
 
double _Sigma2
 
double _detCi
 
double _normFactor
 
double _lnAddFactor
 

Static Protected Attributes

static double * _exp
 

Detailed Description

Definition at line 44 of file ppca.h.

Constructor & Destructor Documentation

◆ ProbabilisticPcaElement()

aims::ProbabilisticPcaElement::ProbabilisticPcaElement ( int nbOfSignificativeEV,
double PIj = 1. )

◆ ~ProbabilisticPcaElement()

virtual aims::ProbabilisticPcaElement::~ProbabilisticPcaElement ( )
inlinevirtual

Definition at line 48 of file ppca.h.

Member Function Documentation

◆ distance()

double aims::ProbabilisticPcaElement::distance ( const carto::rc_ptr< carto::Volume< double > > & individual)
inline

Definition at line 190 of file ppca.h.

References _computed, _distanceRef, _invCi, _mean, _valid, and distance().

Referenced by distance(), lnPosteriorProbability(), and posteriorProbability().

◆ doIt() [1/2]

◆ doIt() [2/2]

template<typename T>
void aims::ProbabilisticPcaElement::doIt ( const std::list< Point3d > & selectedPoints,
const carto::rc_ptr< carto::Volume< T > > & data,
double distanceRef = 0. )

Definition at line 52 of file ppca_d.h.

References _computed, _valid, doIt(), and mean().

◆ eigenValues()

const carto::VolumeRef< double > & aims::ProbabilisticPcaElement::eigenValues ( )
inline

Definition at line 91 of file ppca.h.

References _EValues.

◆ exponential()

double aims::ProbabilisticPcaElement::exponential ( double x)
inlineprotected

Definition at line 98 of file ppca.h.

References _exp.

◆ lnPosteriorProbability()

double aims::ProbabilisticPcaElement::lnPosteriorProbability ( const carto::rc_ptr< carto::Volume< double > > & individual)
inline

◆ mean()

const carto::VolumeRef< double > & aims::ProbabilisticPcaElement::mean ( ) const
inline

Definition at line 81 of file ppca.h.

References _mean.

Referenced by doIt(), and noiseVariance().

◆ meanNorm()

double aims::ProbabilisticPcaElement::meanNorm ( )
inline

Definition at line 89 of file ppca.h.

References _meanNorm.

Referenced by noiseVariance().

◆ noiseVariance() [1/2]

double aims::ProbabilisticPcaElement::noiseVariance ( ) const
inline

Definition at line 82 of file ppca.h.

References _Sigma2.

◆ noiseVariance() [2/2]

template<class T>
double aims::ProbabilisticPcaElement::noiseVariance ( const carto::rc_ptr< carto::Volume< T > > & individuals,
double & normMean ) const

◆ normFactor()

double aims::ProbabilisticPcaElement::normFactor ( ) const
inline

Definition at line 94 of file ppca.h.

References _normFactor.

◆ posteriorProbability()

double aims::ProbabilisticPcaElement::posteriorProbability ( const carto::rc_ptr< carto::Volume< double > > & individual,
double pX )
inline

Definition at line 228 of file ppca.h.

References _computed, _distanceRef, _exp, _invCi, _mean, _normFactor, _PIj, _valid, and distance().

◆ selectedEigenVectors()

const carto::VolumeRef< double > & aims::ProbabilisticPcaElement::selectedEigenVectors ( )
inline

Definition at line 92 of file ppca.h.

References _EVect.

◆ setPIj()

void aims::ProbabilisticPcaElement::setPIj ( double PIj)
inline

Definition at line 60 of file ppca.h.

References _computed, _detCi, _lnAddFactor, and _PIj.

Member Data Documentation

◆ _computed

bool aims::ProbabilisticPcaElement::_computed
protected

Definition at line 107 of file ppca.h.

Referenced by distance(), doIt(), doIt(), lnPosteriorProbability(), posteriorProbability(), and setPIj().

◆ _detCi

double aims::ProbabilisticPcaElement::_detCi
protected

Definition at line 124 of file ppca.h.

Referenced by doIt(), and setPIj().

◆ _distanceRef

double aims::ProbabilisticPcaElement::_distanceRef
protected

Definition at line 106 of file ppca.h.

Referenced by distance(), doIt(), lnPosteriorProbability(), and posteriorProbability().

◆ _EValues

carto::VolumeRef<double> aims::ProbabilisticPcaElement::_EValues
protected

Definition at line 120 of file ppca.h.

Referenced by doIt(), and eigenValues().

◆ _EVect

carto::VolumeRef<double> aims::ProbabilisticPcaElement::_EVect
protected

Definition at line 121 of file ppca.h.

Referenced by doIt(), and selectedEigenVectors().

◆ _exp

double* aims::ProbabilisticPcaElement::_exp
staticprotected

Definition at line 97 of file ppca.h.

Referenced by exponential(), and posteriorProbability().

◆ _invCi

carto::VolumeRef<double> aims::ProbabilisticPcaElement::_invCi
protected

Definition at line 119 of file ppca.h.

Referenced by distance(), doIt(), lnPosteriorProbability(), and posteriorProbability().

◆ _lnAddFactor

double aims::ProbabilisticPcaElement::_lnAddFactor
protected

Definition at line 126 of file ppca.h.

Referenced by doIt(), lnPosteriorProbability(), and setPIj().

◆ _mean

carto::VolumeRef<double> aims::ProbabilisticPcaElement::_mean
protected

Definition at line 112 of file ppca.h.

Referenced by distance(), doIt(), lnPosteriorProbability(), mean(), and posteriorProbability().

◆ _meanMean

double aims::ProbabilisticPcaElement::_meanMean
protected

Definition at line 113 of file ppca.h.

◆ _meanNorm

double aims::ProbabilisticPcaElement::_meanNorm
protected

Definition at line 114 of file ppca.h.

Referenced by meanNorm().

◆ _nbOfSignificantEV

int aims::ProbabilisticPcaElement::_nbOfSignificantEV
protected

Definition at line 109 of file ppca.h.

Referenced by doIt(), and noiseVariance().

◆ _normFactor

double aims::ProbabilisticPcaElement::_normFactor
protected

Definition at line 125 of file ppca.h.

Referenced by doIt(), normFactor(), and posteriorProbability().

◆ _PIj

double aims::ProbabilisticPcaElement::_PIj
protected

Definition at line 110 of file ppca.h.

Referenced by doIt(), posteriorProbability(), and setPIj().

◆ _Sigma2

double aims::ProbabilisticPcaElement::_Sigma2
protected

Definition at line 122 of file ppca.h.

Referenced by doIt(), and noiseVariance().

◆ _valid

bool aims::ProbabilisticPcaElement::_valid
protected

Definition at line 108 of file ppca.h.

Referenced by distance(), doIt(), doIt(), lnPosteriorProbability(), and posteriorProbability().

◆ _Wi

carto::VolumeRef<double> aims::ProbabilisticPcaElement::_Wi
protected

Definition at line 118 of file ppca.h.

Referenced by doIt().

◆ _x

carto::VolumeRef<double> aims::ProbabilisticPcaElement::_x
protected

Definition at line 115 of file ppca.h.

Referenced by doIt().

◆ _xT

carto::VolumeRef<double> aims::ProbabilisticPcaElement::_xT
protected

Definition at line 116 of file ppca.h.

Referenced by doIt().


The documentation for this class was generated from the following files: