21 #ifndef mia_core_ica_hh 22 #define mia_core_ica_hh 26 #include <itpp/signal/fastica.h> 32 #include <boost/concept/requires.hpp> 33 #include <boost/concept_check.hpp> 54 CICAAnalysisITPP(
const itpp::mat& ic,
const itpp::mat& mix,
const std::vector<double>& mean );
68 void initialize(
unsigned int series_length,
unsigned int slice_size);
77 bool run(
unsigned int nica, std::vector<std::vector<float> > guess);
81 std::vector<float> get_feature_row(
unsigned int row)
const;
84 std::vector<float> get_mix_series(
unsigned int row)
const;
87 std::vector<float> get_mix(
unsigned int idx)
const;
95 std::vector<float> get_incomplete_mix(
unsigned int idx,
const IndexSet& skip)
const;
103 std::vector<float> get_partial_mix(
unsigned int idx,
const IndexSet& use)
const;
110 std::vector<float> get_delta_feature(
const IndexSet& plus,
const IndexSet& minus)
const;
117 void set_mixing_series(
unsigned int index,
const std::vector<float>& series);
128 void normalize_ICs();
135 std::vector<float> normalize_Mix();
139 unsigned int get_ncomponents()
const;
145 void set_max_iterations(
int n);
151 void set_approach(EApproach approach);
153 void set_row_internal(
unsigned row,
const std::vector<double>& buffer,
double mean);
155 struct CICAAnalysisITPPImpl *impl;
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
CICAAnalysis::IndexSet IndexSet
class for ICA analysis and use of such data. This class implements basic operations for of ICA...
itpp::Vec< itpp::mat::value_type > itppvector
The type of a vector as used by IT++.
#define EXPORT_CORE
Macro to manage Visual C++ style dllimport/dllexport.
std::shared_ptr< CICAAnalysisITPPFactory > PICAAnalysisITPPFactory
CICAAnalysis::Pointer PICAAnalysis
std::vector< std::vector< float > > CSlopeColumns
class to store the ICA weight matrix
#define NS_MIA_END
conveniance define to end the mia namespace