mne.beamformer.make_lcmv

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

Compute LCMV spatial filter.

Parameters:
info : dict

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

forward : dict

Forward operator.

data_cov : Covariance

The data covariance.

reg : float

The regularization for the whitened data covariance.

noise_cov : 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.

label : Label

Restricts the LCMV solution to a given label.

pick_ori : None | ‘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

rank : None | int | dict

Specified rank of the noise covariance matrix. If None, the rank is detected automatically. If int, the rank is specified for the MEG channels. A dictionary with entries ‘eeg’ and/or ‘meg’ can be used to specify the rank for each modality.

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_rank : bool

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.

verbose : bool, str, int, or None

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

Returns:
filters : dict

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’ : {instance of SourceSpaces}

Source space information.

Notes

The original reference is [1].

References

[1](1, 2, 3) 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, 3) Sekihara & Nagarajan. Adaptive spatial filters for electromagnetic brain imaging (2008) Springer Science & Business Media