v2.0.0
Loading...
Searching...
No Matches
src
libraries
dsp
extended_infomax.h
Go to the documentation of this file.
1
//=============================================================================================================
34
35
#ifndef EXTENDED_INFOMAX_H
36
#define EXTENDED_INFOMAX_H
37
38
//=============================================================================================================
39
// INCLUDES
40
//=============================================================================================================
41
42
#include "
dsp_global.h
"
43
44
//=============================================================================================================
45
// EIGEN INCLUDES
46
//=============================================================================================================
47
48
#include <Eigen/Core>
49
#include <Eigen/Dense>
50
51
//=============================================================================================================
52
// DEFINE NAMESPACE UTILSLIB
53
//=============================================================================================================
54
55
namespace
UTILSLIB
{
56
57
//=============================================================================================================
61
struct
DSPSHARED_EXPORT
InfomaxResult
{
62
Eigen::MatrixXd
matUnmixing
;
63
Eigen::MatrixXd
matMixing
;
64
Eigen::MatrixXd
matSources
;
65
int
nIterations
;
66
bool
converged
;
67
};
68
69
//=============================================================================================================
76
class
DSPSHARED_EXPORT
ExtendedInfomax
{
77
public
:
91
static
InfomaxResult
compute
(
92
const
Eigen::MatrixXd& matData,
93
int
nComponents = -1,
94
int
maxIterations = 200,
95
double
learningRate = 0.001,
96
double
tolerance = 1e-7,
97
bool
extendedMode =
true
,
98
unsigned
int
seed = 0);
99
100
private
:
108
static
Eigen::VectorXd estimateSignVector(
const
Eigen::MatrixXd& matSources);
109
};
110
111
}
// namespace UTILSLIB
112
113
#endif
// EXTENDED_INFOMAX_H
dsp_global.h
dsp library export/import macros.
DSPSHARED_EXPORT
#define DSPSHARED_EXPORT
Definition
dsp_global.h:56
UTILSLIB
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
Definition
rtfiffrawview.h:72
UTILSLIB::InfomaxResult
Definition
extended_infomax.h:61
UTILSLIB::InfomaxResult::matUnmixing
Eigen::MatrixXd matUnmixing
Definition
extended_infomax.h:62
UTILSLIB::InfomaxResult::nIterations
int nIterations
Definition
extended_infomax.h:65
UTILSLIB::InfomaxResult::matSources
Eigen::MatrixXd matSources
Definition
extended_infomax.h:64
UTILSLIB::InfomaxResult::matMixing
Eigen::MatrixXd matMixing
Definition
extended_infomax.h:63
UTILSLIB::InfomaxResult::converged
bool converged
Definition
extended_infomax.h:66
UTILSLIB::ExtendedInfomax
Definition
extended_infomax.h:76
UTILSLIB::ExtendedInfomax::compute
static InfomaxResult compute(const Eigen::MatrixXd &matData, int nComponents=-1, int maxIterations=200, double learningRate=0.001, double tolerance=1e-7, bool extendedMode=true, unsigned int seed=0)
Definition
extended_infomax.cpp:65
Generated on
for MNE-CPP by
1.16.1