mne-tools / mne-bids-pipeline

Automatically process entire electrophysiological datasets using MNE-Python.
https://mne.tools/mne-bids-pipeline/
BSD 3-Clause "New" or "Revised" License
139 stars 66 forks source link

Align report sections with pipeline steps #880

Closed SophieHerbst closed 5 months ago

SophieHerbst commented 7 months ago

I think the epochs should be after the ICA cleaning, to reflect the order of processing steps, no?

Capture d’écran du 2024-03-08 15-34-50

SophieHerbst commented 7 months ago

In the same vein, I don't quite get the logic/ distinction between the three ICA-related reports: Capture d’écran du 2024-03-08 15-42-20

larsoner commented 6 months ago

I think the epochs should be after the ICA cleaning, to reflect the order of processing steps, no?

So the order in the image is:

Epochs (before cleaning)
ICA
Epochs (after cleaning)

which I think is correct (though not complete, which is probably okay). ICA here is really meant to be "ICA components and artifact rejection" or similar. If you use SSP you get a similar order but SSP shows up where ICA is, basically saying "this is what was selected for removal".

In terms of what the pipeline actually does you could in principle do:

ICA fitting
ICA artifact identification
Epochs (before cleaning)
ICA application / artifact rejection
Epochs (after cleaning)

or so, but I'm not sure it would help readability too much.

In the same vein, I don't quite get the logic/ distinction between the three ICA-related reports:

The icafit is from that initial fitting phase only. I can't remember what the other ones are offhand, but it can be pieced together from looking at their contents and also where they are generated for icafit in _06a1, ica+components in _06a2, and ica in _08a. Feel free to give it a shot and update the doc if you have time!

SophieHerbst commented 6 months ago

@larsoner I would find that more clear, but not urgent:

In terms of what the pipeline actually does you could in principle do:

ICA fitting ICA artifact identification Epochs (before cleaning) ICA application / artifact rejection Epochs (after cleaning)

SophieHerbst commented 6 months ago

In the same vein, I don't quite get the logic/ distinction between the three ICA-related reports:

The icafit is from that initial fitting phase only. I can't remember what the other ones are offhand, but it can be pieced together from looking at their contents and also where they are generated for icafit in _06a1, ica+components in _06a2, and ica in _08a. Feel free to give it a shot and update the doc if you have time!

Currently, there are 3 separate report files related to ICA, but I only use the one which has all the information. In my view, we could completely get rid of:

They are completely redundant, as the rejected components are displayed in the general report with all preprocessing steps, and the detailed info about ICA is in sub-155_task-tiwm_proc-ica+components_report.html

WDYT @hoechenberger?

hoechenberger commented 6 months ago

I think #845 is related to this

larsoner commented 6 months ago

I didn't think #845 is related really, that has to do with parallelization and this more an issue of what reports do we want generated for ICA at all

hoechenberger commented 6 months ago

Ah, I see. Will collapse my comment then