v2.0.0
Loading...
Searching...
No Matches
xdawn.h
Go to the documentation of this file.
1//=============================================================================================================
17
18#ifndef XDAWN_DSP_H
19#define XDAWN_DSP_H
20
21//=============================================================================================================
22// INCLUDES
23//=============================================================================================================
24
25#include "dsp_global.h"
26
27#include <mne/mne_epoch_data.h>
28
29//=============================================================================================================
30// EIGEN INCLUDES
31//=============================================================================================================
32
33#include <Eigen/Core>
34
35//=============================================================================================================
36// QT INCLUDES
37//=============================================================================================================
38
39#include <QVector>
40
41//=============================================================================================================
42// DEFINE NAMESPACE UTILSLIB
43//=============================================================================================================
44
45namespace UTILSLIB
46{
47
48//=============================================================================================================
55{
56 Eigen::MatrixXd matFilters;
57 Eigen::MatrixXd matPatterns;
58 Eigen::MatrixXd matSignalCov;
59 Eigen::MatrixXd matNoiseCov;
60 Eigen::MatrixXd matTargetEvoked;
61 int iTargetEvent = 1;
62 bool bValid = false;
63};
64
65//=============================================================================================================
72{
73public:
74 //=========================================================================================================
89 static XdawnResult fit(const QVector<MNELIB::MNEEpochData>& epochs,
90 int iTargetEvent = 1,
91 int nComponents = 2,
92 double dReg = 1e-6);
93
94 //=========================================================================================================
103 static Eigen::MatrixXd apply(const Eigen::MatrixXd& matEpoch,
104 const XdawnResult& result);
105
106 //=========================================================================================================
118 static Eigen::MatrixXd denoise(const Eigen::MatrixXd& matEpoch,
119 const XdawnResult& result,
120 int nComponents = -1);
121
122 //=========================================================================================================
132 static QVector<MNELIB::MNEEpochData> denoiseEpochs(const QVector<MNELIB::MNEEpochData>& epochs,
133 const XdawnResult& result,
134 int nComponents = -1);
135};
136
137} // namespace UTILSLIB
138
139#endif // XDAWN_DSP_H
Export/import macros and namespace declaration for the DSP library.
#define DSPSHARED_EXPORT
Definition dsp_global.h:50
Single epoch (one trial slice of preprocessed sensor data) with timing and rejection metadata.
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
Result of an xDAWN decomposition.
Definition xdawn.h:55
Eigen::MatrixXd matSignalCov
Definition xdawn.h:58
Eigen::MatrixXd matPatterns
Definition xdawn.h:57
Eigen::MatrixXd matNoiseCov
Definition xdawn.h:59
Eigen::MatrixXd matFilters
Definition xdawn.h:56
Eigen::MatrixXd matTargetEvoked
Definition xdawn.h:60
Event-related response enhancement with xDAWN spatial filtering.
Definition xdawn.h:72
static Eigen::MatrixXd apply(const Eigen::MatrixXd &matEpoch, const XdawnResult &result)
Definition xdawn.cpp:214
static QVector< MNELIB::MNEEpochData > denoiseEpochs(const QVector< MNELIB::MNEEpochData > &epochs, const XdawnResult &result, int nComponents=-1)
Definition xdawn.cpp:253
static XdawnResult fit(const QVector< MNELIB::MNEEpochData > &epochs, int iTargetEvent=1, int nComponents=2, double dReg=1e-6)
Definition xdawn.cpp:70
static Eigen::MatrixXd denoise(const Eigen::MatrixXd &matEpoch, const XdawnResult &result, int nComponents=-1)
Definition xdawn.cpp:230