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;
143 PData get_delta_feature(
const IndexSet& plus,
const IndexSet& minus)
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;
std::set< size_t > IndexSet
defines a set of indices used for mixing
std::shared_ptr< Image > normalize(const Image &image)
a normalizer for image intensities
#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...
#define EXPORT_TDataSeriesICA
std::vector< std::vector< float > > CSlopeColumns
class to store the ICA weight matrix
Templated representation of a ICA series analyis.
#define NS_MIA_END
conveniance define to end the mia namespace