mne_denoise.sound.compute_sound#

mne_denoise.sound.compute_sound(data: ndarray, leadfield: ndarray, *, lambda_: float = 0.1, n_iter: int = 5, tol: float | None = None, random_state=None, callback=None, verbose: bool | str | int | None = None) tuple[ndarray, ndarray, ndarray][source]#

Compute the SOUND cleaning operator.

Parameters:
datandarray, shape (n_channels, n_times)

Sensor data in the same reference as leadfield.

leadfieldndarray, shape (n_channels, n_sources)

Lead-field matrix in the same reference as data.

lambda_float, default=0.1

Non-negative regularization scale.

n_iterint, default=5

Maximum number of iterations.

tolfloat or None, default=None

Stop when the maximum relative noise-level change is below this value.

random_stateint, numpy.random.Generator, or None, default=None

Random state for channel-update order.

callbackcallable or None, default=None

Synchronous callback after each iteration.

verbosebool, str, int, or None, default=None

Logging level.

Returns:
operatorndarray, shape (n_channels, n_channels)

Linear operator such that cleaned = operator @ data.

sigmasndarray, shape (n_channels,)

Estimated channel noise amplitudes.

convergencendarray, shape (n_iter_run,)

Maximum relative noise-level change per iteration.

Notes

The input data and lead field must use a common reference [1][2].

References