Problem with importing Biosemi active cap net

Dear Brainstorm team,

I am fairly new to EEG data processing and having a problem with importing net file into Brainstorm.
The data sets I am currently working on are publicly available pre-processed EEG data files in .mat and .set which were recorded with Biosemi 256 Active cap (A001). When I imported the file into Brainstorm, I ran into this pop-up below.

When I selected yes so that Brainstorm could automatically adjust the electrode position, it did not look right. According to Biosemi, A001 should be Cz but with the adjustment, B12 turned to Cz.


The default Brainstorm nets did not work, I guess because each data set has different number of channels per-processed.

Could you please let me know how I can import the channel files? I have attached the data set here for your information. Thank you.

The default Brainstorm nets did not work, I guess because each data set has different number of channels per-processed.

I'm not sure what you mean here.
You should be able to right-click on the channel file > Add EEG positions > ICBM152 > BioSemi > BioSemi 256 (A001), no matter how many channels are included in the dataset. The channels are matched by name, their order or number doesn't matter.
If you are using individual anatomy for your subjects, you need then to adjust the positions manually: right-click on the channel > MRI registration > Edit > Resize/rotate/translate, then project on the head surface.

Could you please let me know how I can import the channel files?

The .set files you have do not include correct 3D positions. If you want to use them in Brainstorm either for source estimation of simply for correct 2D/3D topography views, you need either to adjust the spherical positions yourself on the head of your subjects, or to use template positions provided for the ICBM152 anatomy.

I'd be curious to see why the automatic attempt to "individualize" the EEGLAB spherical positions fails like this, even if it might not help you. But there was no dataset linked to your post.
Could you please upload a short example file somewhere and post the download link here?
Thanks

Hi all,

I have three questions regarding EEG channel location.
I am using preprocessed EEG fie in .mat and .set which was recorded with BioSemi 256 acticap. Each data set contains channel locations and names (according to Biosemi naming conventions) but .locs file was not available. I am assuming that I need .loc file to import the channel location to Brainstorm. So, I manually edited the channel locations using Channel Edit in Brainstorm. When I plot the modified channel location on cortex, it looks like this (below). So, my three questions are,

  1. Could anyone please let me know how I can fix this?
  2. Also, is there any way that I can export and convert the xyz coordinates I can find in .set file into .loc file?
  3. But I guess this will introduce other problem. As they are all preprocessed, each channel numbers are different across participants and when I compare xyz of each participants, they are slightly different.
  4. Then, do I have to edit it for each participant? Considering the number of channels and number of participants, I don't see this is very effective. So, would it be better to contact the author to get .loc file? I have googled it for days to no avail.
    I would rally appreciate your help. Thank you so much.

Just for your information.

I moved your second post here, as most of the questions are already addressed.

So, I manually edited the channel locations using Channel Edit in Brainstorm. When I plot the modified channel location on cortex, it looks like this (below).

If you right-click on the channel file > MRI registration > Edit, you define the position of the electrodes yourself. If the result is poor, there is no one else to blame :slight_smile:

Then, do I have to edit it for each participant?

If you are using individual anatomy for each subject but don't have the matching 3D positions, yes you need to place the electrodes on each head surface one by one.
If you are using an anatomy template, you use set it once and use the same positions for all the subjects.

Considering the number of channels and number of participants, I don't see this is very effective. So, would it be better to contact the author to get .loc file?

If they have them, yes. But they probably don't. Most people doing EEG analysis without sources do not need accurate 3D positions for the electrodes.
If this is too boring for you, use an anatomy template...

Hi Francois,

Thank you so much for your reply.
1.EEG channel template
As for the issue with EEG channel template, I did use the BioSemi 256 A001 channel template offered by Brainstorm but then realized that the channel name of CZ was different. The CZ in the BioSemi256 A001 is A1 (or A001) while the CZ is B12 when I plot the channel using the channel locations information included in the .set file. Please see the screenshots I attached in my first post, then you'll see what I mean. I don't know why they don't match, but I think the CZ is B12, not A1. I also check BioSemi official website and somehow, in the channel layout, the CZ is A1. I am not sure what I am missing here though...

  1. ERD/ERS
    What I actually want to do with this data set is to run ERD/ERS analysis. I am interested in mu suppression over the motor cortex, so the only channels I am interested in are Cz, C3, and C4. I saw some of your previous posts and checked the steps. So it should not be this much complicated as I have preprocessed data. The only reason I am going through all this complication is that because when I ran ERD/ERS analysis with epoched data extracting signals only from those three sites, somehow, there is no activity above theta and this was same across all sites and all participants.
    image
    However, when I checked the signal in Matlab, I can see the signals from all frequency ranges.


    I had to run additional average referencing in Matlab, but still, the outcome from Brainstorm doesn't seem right. I checked the data from other participants and there was no signal above theta..

  2. Spatial filter
    So, I thought, maybe this is due to volume conduction and that's when I had a problem with the channel location issue because I needed a head model to run DICS Beamformer which would serve as a spatial filter. Since I have an issue with channel location /anatomy, I could not run DICS Beamformer though.

  3. Editing channel location (MRI registration vs. EEG channel file)
    So I edited the channel location manually. Though, when I edited the channel location, I used EEG channel file <- Channel file, not MRI registration <- Channel file. Could it be the reason?

I think all these came down to two questions: 1) Why I don't see signals above theta? and 2) which channel is Cz? Is it B12 as indicated by the channel info from the original .set file, or is it A1 as indicated by the default BioSemi 256 channel layout.

This is the link to the .set file I am working with. Could you please let me know what I need to do to run ERD/ERS analysis with this data set? I do have background theoretical knowledge on ERD/ERS and EEG data processing but fairly new to Brainstorm and BioSemi system.

Please let me know if you have an issue with downloading it.

Thank you so much!

The template in Brainstorm is correct. A1 is really at the vertex.
Right-click on the channel file > Add EEG positions > ICBM152 > BioSemi > BioSemi 256 A1. (not A001...)

The problem comes from your .set EEGLAB file: the positions in this file are not spherical but they are incorrect. The locations are in meters instead of millimeters or centimeters, and the vertex is at B12/B17.
You should check the process created these files.

If you want to use the positions in the file: answer NO to the question "try to adjust spherical coordinates", then right-click on the channel file > MRI registration > Edit, resize/rotate/translate/project. If will fix the shape, not the order of the electrode names.

From the BioSemi website: Headcap, Headcaps

What you did in Matlab obviously doesn't correspond to what was is done in Brainstorm.
If you want to start using Brainstorm, I recommend you start by following the introduction tutorials (section "Get started"), at least until #24, using the example dataset provided.
https://neuroimage.usc.edu/brainstorm/Tutorials

Please get back to us with more precise questions.
And please create one new thread for each topic, it makes the forum easier to use, both for us and for users searching for information.

Hi Francois,

Thank you so much for the help with the channel location. I can now plot the channel location on the default cortex. Thank you so much!