mne.beamformer.make_lcmv

mne.beamformer.make_lcmv(info, forward, data_cov, reg=0.05, noise_cov=None, label=None, pick_ori=None, rank='info', weight_norm='unit-noise-gain', reduce_rank=False, depth=None, verbose=None)[source]

Compute LCMV spatial filter.

Parameters
infodict

The measurement info to specify the channels to include. Bad channels in info[‘bads’] are not used.

forwarddict

Forward operator.

data_covinstance of Covariance

The data covariance.

regfloat

The regularization for the whitened data covariance.

noise_covinstance of Covariance

The noise covariance. If provided, whitening will be done. Providing a noise covariance is mandatory if you mix sensor types, e.g. gradiometers with magnetometers or EEG with MEG.

labelinstance of Label

Restricts the LCMV solution to a given label.

pick_oriNone | ‘normal’ | ‘max-power’ | ‘vector’

For forward solutions with fixed orientation, None (default) must be used and a scalar beamformer is computed. For free-orientation forward solutions, a vector beamformer is computed and:

None

Pools the orientations by taking the norm.

‘normal’

Keeps only the radial component.

‘max-power’

Selects orientations that maximize output source power at each location.

‘vector’

Keeps the currents for each direction separate

rankNone | dict | ‘info’ | ‘full’

This controls the rank computation that can be read from the measurement info or estimated from the data. See Notes of mne.compute_rank() for details.The default is “info”.

weight_norm‘unit-noise-gain’ | ‘nai’ | None

If ‘unit-noise-gain’, the unit-noise gain minimum variance beamformer will be computed (Borgiotti-Kaplan beamformer) [2], if ‘nai’, the Neural Activity Index [1] will be computed, if None, the unit-gain LCMV beamformer [2] will be computed.

reduce_rankbool

If True, the rank of the leadfield will be reduced by 1 for each spatial location. Setting reduce_rank to True is typically necessary if you use a single sphere model for MEG.

depthNone | float | dict

How to weight (or normalize) the forward using a depth prior. If float (default 0.8), it acts as the depth weighting exponent (exp) to use, which must be between 0 and 1. None is equivalent to 0, meaning no depth weighting is performed. It can also be a dict containing keyword arguments to pass to mne.forward.compute_depth_prior() (see docstring for details and defaults).

New in version 0.18.

verbosebool, str, int, or None

If not None, override default verbose level (see mne.verbose() and Logging documentation for more).

Returns
filtersinstance of Beamformer

Dictionary containing filter weights from LCMV beamformer. Contains the following keys:

‘weights’array

The filter weights of the beamformer.

‘data_cov’instance of Covariance

The data covariance matrix used to compute the beamformer.

‘noise_cov’instance of Covariance | None

The noise covariance matrix used to compute the beamformer.

‘whitener’None | array

Whitening matrix, provided if whitening was applied to the covariance matrix and leadfield during computation of the beamformer weights.

‘weight_norm’‘unit-noise-gain’| ‘nai’ | None

Type of weight normalization used to compute the filter weights.

‘pick_ori’None | ‘normal’

Orientation selection used in filter computation.

‘ch_names’list

Channels used to compute the beamformer.

‘proj’array

Projections used to compute the beamformer.

‘is_ssp’bool

If True, projections were applied prior to filter computation.

‘vertices’list

Vertices for which the filter weights were computed.

‘is_free_ori’bool

If True, the filter was computed with free source orientation.

‘src_type’str

Type of source space.

Notes

The original reference is [1].

References

1(1,2)

Van Veen et al. Localization of brain electrical activity via linearly constrained minimum variance spatial filtering. Biomedical Engineering (1997) vol. 44 (9) pp. 867–880

2(1,2)

Sekihara & Nagarajan. Adaptive spatial filters for electromagnetic brain imaging (2008) Springer Science & Business Media