-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable fNIRS in coreg gui #10081
Enable fNIRS in coreg gui #10081
Conversation
@GuillaumeFavelier @larsoner could you please review |
Hi @rob-luke , I'm +1 to add support for fNIRS if there is a need for it. I just wonder how to integrate it. For now we have one checkbox for each element to display (HSP, HPI, EEG), should we add one for fNIRS? Or are those always associated with EEG? Also, do we want to display them by default? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like a good start, and a reasonable direction!
It needs a test. One easy way to test this might be to take one of our existing coreg
functions and set_channel_types
to change the EEG channels to fNIRS ones. On main
you should see that ._actors['eeg_channels']
is None and here it's not None. If that hack doesn't work, using some fNIRS file from testing would also work. (Maybe this is just cleaner anyway.)
I thought about maybe having a separate It'll get trickier with OPMs because you do typically want them up against the scalp, but the technology doesn't really require it (unlike fNIRS, where your signal will degrade much faster with distance from the scalp IIUC). But for now I think just adding fNIRS to what gets shown the same way EEG does is a good start. |
sensor_opacity=self._defaults["sensor_opacity"], | ||
orient_glyphs=self._orient_glyphs, surf=self._head_geo) | ||
eeg_actors = eeg_actors["eeg"] | ||
sens_actors = actors["eeg"] | ||
sens_actors.append(actors["fnirs"]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sens_actors.append(actors["fnirs"]) | |
sens_actors.extend(actors["fnirs"]) |
This could deal with the issues with SetVisibillity()
Thanks @GuillaumeFavelier and @larsoner I also see there is substantial and consistent work being done on the Coreg. Would it be better for this small change to be done via one of @GuillaumeFavelier PRs? Or maybe I should wait until development has stabilised? Or I should continue here? Any preference? |
I'm fine with you adding fNIRS support things here, I don't mind a bad rebase/merge or two along the way in #10015 at least :) |
Looks like it didn't even create a merge conflict. I think if you fix this then we can probably merge:
|
Closed in favour of #10122 |
Reference issue
Conversation started over in mne-tools/mne-nirs#419 and specifically this comment from @larsoner mne-tools/mne-nirs#419 (comment)
However, when I ran the coreg guy with fNIRS data no sensors were displayed.
What does this implement/fix?
Enables plotting of fNIRS sources and detectors in the coreg gui
Additional information
I am totally new to the whole coregistration concept. So please let me know if there is more I should look at.
Also I am new to guis, how do I test this change in the CI?