Kernel Flow TD-fNIR...
Clear all

Kernel Flow TD-fNIRS Analysis Options

John Griffiths
Posts: 2
Topic starter
Joined: 3 weeks ago

Dear openfnirsers,


I would like to initiate a general open information-sharing discussion thread on analysis approaches people are pursuing for TD-fNIRS data recorded from the new Kernel Flow system. 


Myself and my group are in early stages of work on this topic (device arrived this week), but are keen to make progress fast. Sharing knowledge and resources across this new user community is clearly the way to do that. 



Please reply to this thread with your thoughts on this topic. In particular: 

  • Any analysis code you have been using / have developed and are interested to share and collaborate on
  • Any technical hardware/software issues you have encountered that would be useful for others to know about
  • If you are not currently working with a KF device but are interested in collaborating on the above we get you some data to play with
  • Any interest in a discord user group or similar, for some more organic back-and-forth discussions where useful?
  • Anything else worth mentioning!  


I’ll kick things off on the next reply to this with my current knowledge of options. I’m quite certain others have more advanced knowledge than me, so looking forward to hearing comments and updates.   



More generally, very much looking forward to connecting and working with people in this great community.   


John Grif

1 Reply
John Griffiths
Posts: 2
Topic starter
Joined: 3 weeks ago

Ok - starting at the beginning, namely i/o options.



In my group we are assessing three analysis options for Kernel Flow: 1. Homer3, 2. MNE-Python, and 3. Kernel’s new cloud-based tools.  


Option 3 is still a bit of an unknown, and in general like the rest of the neuroimaging community we don’t use closed-source tools. But it will be interesting to see what’s supported. 


Re: 1 and 2 - Obviously Homer3 is the mature fNIRS option here, and MNE is the ‘young upstart’. But MNE is also very well established in the broader nipy neuroimaging community, and has a very active and well-organized developer community and processes. Plus, Python.



So, I’m very grateful to Zahra Aghajan for implementing Kernel Flow .snirf file i/o capability in both these tools. 






Zahra’s Homer3 KF i/o patch

is now merged to master, and I understand David Boas and co are off to the races with it already.

We are getting stuck into this now - but would be really helpful if anyone has some analysis scripts that we could build on 😉






Zahra’s MNE PR for KF .snirf compatibility had an informative discussion

but was declined for reasonable sounding support and compatibility reasons, not all of which I fully understand. 



Not sure what the plans of Zahra or others are to address the issues raised, but for now the reader functionality can at least be accessed from this github branch


(git clone; git checkout to this branch)

and I can confirm that it seems to work ok and provides a useful access point to the .snirf file contents



Some other misc MNE comments:


Rob Luke, the main mne-nirs developer, started a discussion a while back on options for proper photon migration simulation functionality


Looks like they're looking for people to chip in on this. 


In Lieu of that, mne-nirs does appear to have some newish brain source space functionality


( go to 30 mins in )


It's in the code but not in any examples or documentation as far as I've seen.


Some brief discussion in some PRs


It's not a proper photon migration calculation, it's a channels-nearest-brain projection. But does look potentially useful. 


Please drop comments, corrections, additions on the above in replies and let's move this forward together 🙂