[1]:
from matplotlib import pyplot as plt
from ipywidgets import interact

def show_mask(mask):
    plt.figure(figsize=(8, 8), dpi=90)
    m = mask.copy()
    m[m>=1] = 1
    plt.axis('off')
    plt.imshow(m)

Laplacian masker

[2]:
from gcpds.filters.spatial.masker import generate_mask
from gcpds.utils import loaddb
[3]:
channels = ['Fz', 'FC3', 'FC1', 'FCz', 'FC2', 'FC4', 'C5', 'C3', 'C1', 'Cz', 'C2', 'C4', 'C6', 'CP3', 'CP1', 'CPz', 'CP2', 'CP4', 'P1', 'Pz', 'P2', 'POz']
montage_name = 'standard_1020'

generate_mask(channels, montage_name)
[3]:
array([[ 0,  0,  0,  1,  0,  0,  0],
       [ 0,  2,  3,  4,  5,  6,  0],
       [ 7,  8,  9, 10, 11, 12, 13],
       [ 0, 14, 15, 16, 17, 18,  0],
       [ 0,  0, 19, 20, 21,  0,  0],
       [ 0,  0,  0, 22,  0,  0,  0]])

GCPDS.utils databases

[4]:
@interact(database=loaddb.available_databases)
def get_mask(database='GIGA_MI_ME'):
    channels, montage_name = getattr(loaddb, database).metadata['channel_names'], getattr(loaddb, database).metadata['montage']

    print(f"Channels: {channels}")
    print(f"Montage: {montage_name}")

    mask = generate_mask(channels, montage_name)
    print(f"Mask: \n{mask}")
    show_mask(mask)