question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

ENH: Agenda for fNIRS processing

See original GitHub issue

The current status of NIRS support can be seen in this tutorial.

Here is a rough plan for the development of fNIRS processing in MNE.

Refactor existing code:

  • Use write wavelengths to info['chs'][ii][loc][9] in addition to the channel name
  • Use the info['chs'][ii][loc][9] value rather than channel names in preprocessing

Integrate fNIRS to existing MNE functions:

  • Add support for hbo/hbr to plot_topomap
  • Add support for hbo/hbr to plot_joint

Channel quality measures:

  • Scalp coupling index. (#7215)

Add overlapping channel support to (these may already work with code changes I made, but don’t have tests if they aren’t ticked):

  • topomap (#7414 )
  • PSD topomap
  • ICA topomap
  • TFR topomap
  • Projs topomap

Movement correction

Interpolation of bad channels:

File support:

  • Add SNIRF reader #7972
  • Add SNIRF writer
  • Add BIDS support
  • Add NIRSport1 file reader
  • Add NIRSport2 file reader (low priority as device will soon export in SNIRF format)
  • Add Artinis file reader

Implement HRF GLM style analysis Moved to MNE-NIRS till mature enough to merge in Source Analysis Moved to MNE-NIRS till mature enough to merge in

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:51 (51 by maintainers)

github_iconTop GitHub Comments

1reaction
larsonercommented, Apr 30, 2020

Why does NIRx.py apply the transform ahead of time? Instead of leaving it up to the user?

Channel locations in MNE-Python are supposed to be stored in Neuromag head coordinates, see:

https://mne.tools/dev/auto_tutorials/source-modeling/plot_source_alignment.html https://mne.tools/dev/overview/implementation.html#the-forward-solution

So the read_raw_nirx transforms them to the head coordinate frame. Since the NIRx are in MNI (apparently?) and fsaverage is in MNI, you can just use fsaverage’s standard transformation to get them to (fsaverage) head coordinates.

1reaction
agramfortcommented, Apr 14, 2020

give me admin access to your repo and I’ll do the transfer

Read more comments on GitHub >

github_iconTop Results From Across the Web

fNIRS 2022 Program
This year special session “Neuroergonomics - fNIRS on the Go” aims to explore possible new directions for fNIRS research. The conference will ...
Read more >
Automated Processing of fNIRS Data—A Visual Guide ... - NCBI
Oscillations underlying fNIRS signals. An fNIRS signal is bandpass filtered to visualize specific frequencies bands that are known to arise from ...
Read more >
Data Processing in Functional Near-Infrared Spectroscopy ...
The purpose of this review is to provide a guide on fNIRS pre-processing and processing techniques pertinent to the field of human motor...
Read more >
Understanding NIRS fNIRS signal: guidelines to increase ...
This 2-day program provides an introduction to fNIRS, with hands-on in the use of NIRS instrumentation for motor and auditory research.
Read more >
Best practices for fNIRS publications
The application of functional near-infrared spectroscopy (fNIRS) in the ... in a great diversity in methodological practices, data processing methods, ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found