InterpolateMissingChannels¶
Interpolate missing channels in the given data.
Given a list of desired channel labels, this node will attempt to produce an output signal that has all channels in that list, and will interpolate channels that are not present in the data if needed. This node can use spherical-spline or least-squares interpolation. More Info... Version 1.5.1
Ports/Properties¶
data¶
Data to process.
ref_data¶
Reference data. Can be provided as an alternative to the desired_channels.
prior_cov¶
Prior covariance matrix.
desired_channels¶
Desired channels. This node will attempt to ensure that the given channels are present in the output data and interpolate them if necessary. Ignored if ref_data provided.
reinterpolate_existing¶
Whether to reinterpolate channels even if the desired label is already in the current channel list. This can be used to force a reinterpolation of existing channels at locations in a specific template.
montage_type¶
Choose the montage to use from among a list of common options. If set to auto, the best-matching montage will be used.
montage¶
Optionally a montage file (.l ocs format) to use. This may be a montage file that ships with Neuropype (available in resources/montages), in which case only the filename is needed, or the full path to a montage located elsewhere. If specified, this will take precedence over the montage type field.
additive_noise_scale¶
Scale of additive noise. Optional scale factor for Gaussian noise that can be added to each interpolated channel to prevent rank deficiency. Scale is relative to the overall data's standard deviation (assuming that channels are zero mean).
mode¶
Interpolation mode. The spherical-spline mode will interpolate the channel based on its scalp location using spherical spline interpolation. The other two modes, which require that the prior_cov input is provided, will interpolate the channel using a statistical criterion based on a priori between-channel covariance. The lstsq method uses a least-squares solution, and the pinv method uses the pseudoinverse. The former is in theory more accurate but may leave exact zero channels in the data with greater likelihood than the pinv method.
backend¶
Compute backend to use. The cupy and torch backends can be as much as 10x faster on large problems if the system has a CUDA-capable GPU installed. For CPU-only systems, the torch-cpu mode can still yield a substantial speed boost over numpy. Keep means to use whatever was used to create the incoming data.
precision¶
Numeric precision to use. Can be reduced to save memory (e.g. if running on GPU). Only needed for the largest of problems, and only used by the geometric and huber centroids.
min_ev¶
Minimum eigenvalue threshold. If left undefined, this will be set according to the precision. If negative, then the absolute value of negative eigenvalues will be used.
randseed¶
Random seed to use for interpolation.
verbose¶
Show verbose output.
set_breakpoint¶
Set a breakpoint on this node. If this is enabled, your debugger (if one is attached) will trigger a breakpoint.
metadata¶
User-definable meta-data associated with the node. Usually reserved for technical purposes.