21 #ifndef mia_core_ica_template_hh
22 #define mia_core_ica_template_hh
27 #ifndef EXPORT_TDataSeriesICA
29 # define EXPORT_TDataSeriesICA __declspec(dllimport)
32 # define EXPORT_TDataSeriesICA __attribute__((visibility("default")))
34 # define EXPORT_TDataSeriesICA
67 typedef typename Data::Pointer
PData;
76 TDataSeriesICA(
const std::vector<Data>& initializer,
bool strip_mean);
84 bool run(
size_t ncomponents,
bool strip_mean,
bool ica_normalize,
85 std::vector<std::vector<float> > guess = std::vector<std::vector<float> >());
96 size_t run_auto(
int max_ica,
int min_ica,
float corr_thresh);
104 void normalize_Mix();
110 Data get_mix(
size_t idx)
const;
113 const Data& get_mean_image()
const;
121 Data get_incomplete_mix(
size_t idx,
const IndexSet& skip)
const;
129 Data get_partial_mix(
size_t idx,
const IndexSet& comps)
const;
135 PData get_feature_image(
size_t idx)
const;
150 void set_mixing_series(
size_t index,
const std::vector<float>& series);
157 void set_max_iterations(
int n);
163 void set_approach(
int approach);
169 typedef typename Data::dimsize_type dimsize_type;