/* MELODIC - Multivariate exploratory linear optimized decomposition into independent components melpca.h - PCA and whitening Christian F. Beckmann, FMRIB Image Analysis Group Copyright (C) 1999-2008 University of Oxford */ /* CCOPYRIGHT */ #ifndef __MELODICPCA_h #define __MELODICPCA_h #include "newimage/newimageall.h" #include "utils/log.h" #include "meloptions.h" #include "meldata.h" #include "melodic.h" //#include "melreport.h" #include "newmatap.h" #include "newmatio.h" using namespace Utilities; using namespace NEWIMAGE; namespace Melodic{ class MelodicReport; class MelodicPCA{ public: MelodicPCA(MelodicData &pmelodat, MelodicOptions &popts, Log &plogger, MelodicReport &preport): melodat(pmelodat), opts(popts), logger(plogger), report(preport){} void perf_pca(Matrix& in, Matrix& weights); inline void perf_pca(){ perf_pca(melodat.get_Data(),melodat.get_RXweight()); } void perf_white(); private: MelodicData &melodat; MelodicOptions &opts; Log &logger; MelodicReport &report; int pcadim(); }; } #endif