-
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
ecog functionality? #1206
Comments
@choldgraf I have actually used I'd be +1 in general for adding functions to accommodate ECoG data. Do you have a sense of what's missing from the package for your use case? If it's mostly just data I/O for certain formats, for example, that can be fairly easily fixed. Eventually we could think of the "inverse" for ECoG data as being a very simple, maybe smoothed matrix since there is no ambiguity regarding source localization. I think I wrote something simple that mapped the ECoG electrode locations to locations in source space for the purposes of plotting, but that was pretty rudimentary. But it would depend on what you want to do with the data. |
My plan right now is to start trying to incorporate mne more into my own pipeline, so that I can get a better feel for how it works in the context of ECoG. Right now it just looks promising to me so I thought I'd reach out :) I'm currently using EEGLab as a first step in my data cleaning step, and then trying to move the data over to python as soon as possible in the pipeline. That said, I'm largely using EEGlab for the "browsing through data and marking bad timepoints / electrodes" part of the process, and it sounds like maybe MNE can accomplish this just as well? As for data formats, my experience is that there are a LOT of different formats out there because labs don't necessarily have standardized recording equipment / software. That said, our lab has a lot of scripts to interface with formats that we've encountered before (though they're written in matlab), so perhaps an early project could be trying to port those over to python. |
Hi Chris, i'd love to see EcOG features in MNE. And personally I'd be curious to when you can be more specific about your needs please share so we can @Eric89GXL you process EcOG data with MNE in secret :) is there a chance to make some good EcOG data public? is there already any? |
Maybe there is - I'll look into our data sets and see how my PI feels about making some available for development purposes. Main concern is subject identity protection, but if it's only electrode numbers, time series, and MNI coordinates, then perhaps that won't be a problem? Either way, I'm having a hard time figuring out how to import my data into MNE in the first place. Lots of functions for importing from particular data formats, I've literally just got an array loaded into python... |
We don't currently have support for loading arbitrary data from an array to be treated as a @agramfort this might actually be a good time to think about moving toward having a @choldgraf, in terms of getting permission to share data, the data you provide can be very basic and still be quite helpful. The MNE sample dataset for example contains responses during a very simple task, which is very convenient for validation. So if you have any datasets that contain a simple task (like motor movement maybe?) that might be ideal. If you can get them, the data would ideally also include brain surfaces (e.g., what Freesurfer gives you in reconstruction) as well. That would allow for easy visualization and integration with related tools, like PySurfer. If those aren't available, though, it's not critical. |
I guess it would be fine. |
|
@Eric89GXL @agramfort yes, we need a BaseRaw. I'll soon need to hack stuff to merge data from EGI EEG with Neuromag data. So this is really timely. |
Denis do you have to time to work on it? If not I can take a stab at it. |
I think Denis is drawning :-/ |
I was thinking that adding some support for ECoG would be something I'd be interested on working on at the sprint. I certainly need to elevate my belt level to tackle something that big, but the sprint would be a great opportunity with all the Pythonistas there. @agramfort, does the OPENMEEG stuff support 4-shell BEMs? |
Eric, to work on what? The Ecog or the from_data generalization? The latter is bookmarked, I'll add that over the next weeks. Ecog no time :-( |
... realized the discussion was quite dated. @adykstra would be great to have you working in that --- and yes you won't be alone :-) |
Just came across issue #381 when doing a search for OpenMEEG in the repository. @agramfort the OpenMEEG code is accesible from Python, no? Also, I read on the Brainstorm site that OpenMEEG supports the calculation of lead fields for intracranial electrodes (image below). Based on these two facts, how much effort would it take to support source localization for ECoG/sEEG recordings? Also, a specific question about the forward calculations in OpenMEEG - do they take the silastic sheet into account? |
That's ambitious for 3 days. do you have data for it? |
a PhD? just kidding... but I honestly think it's really ambitious for
no we don't. |
I guess I wasn't thinking we'd finish it in such a short time, but rather start it to the point where I (and others? maybe a masters student?) could continue working afterwards. It is something I'd use and would like to see implemented, and I imagine there are many ECoG/sEEG folks who would use such a tool if it were readily available. Brainstorm now does this I guess, but something having been implemented in MATLAB hasn't seemed to stop the folks here from implementing it also. I have intracranial data from my PhD we could likely use - would have to get the necessary approval from powers that be. I guess a first step would be to work on getting OpenMEEG integrated with MNE-Python? |
what you propose is what i have in mind for a student project next year: https://github.com/mne-tools/mne-python/wiki/Paris-Saclay-Software-Project we can discuss the challenges during the sprint and make a more detailed
:) |
Jumping back in this discussion - FWIW I'd also take advantage of an ECoG set of functionality, though in general I think the first step towards doing this would be implementing the aforementioned "general data import" methods. Most ECoG that I've dealt with has come in a wide variety of formats, naming conventions, numbering conventions, etc. It also has high variance in terms of the quality (or existence) of supplementary information like MRI, CT scans, and stimulus information. Most ECoG labs I work with have their data saved in something like a matlab structure with accompanying parameter fields, or in my case an HDF5 file with a set of pickled parameters. All this is to say that I think ECoG functionality in MNE would require more flexibility in the kinds of data that it can import. |
Also, FWIW, I'll be visiting Harvard in mid-June for a few days for a conference (I'm at Berkeley currently). It seems that some folks with MNE are in Boston, no? If any of you are around and want to grab a coffee to talk about contributions that I could make, I'd be happy to chat. |
again +1 did we agree on the API? info = ... # function to generate info easily does not sound good? |
yes @mluessi @mshamalainen @dgwakeman @SherazKhan @haribharadwaj are there... hope I did not forget somebody... |
@agramfort I think that's the plan, yes. @dengemann did you start on it, I can't remember? If not, I can probably do it Monday since it seems to be in high demand, and also holding up contributions / people from potentially using the software. |
@choldgraf I'm not in Boston, but I have experience with intracranial data as well and I'll be in the bay area in early August. I'd be happy to meet/chat with you, especially if it's at Blue Bottle, Philz, Ritual, or the like. :) |
@agramfort I think that's a good start for general import, I'm using something like this in my own code. Another thought would be to have some sort of to_ / from_csv function that could import required parameters. You could even create a "gen_blank_csv" that had fields for any required information that the person could fill out manually. @adykstra happy to chat about MNE if you're in town! |
that's from the ... about reading / generating valid info dict. lets continue discussing to get an API as simple and commonly useful for |
exactly what I had envisioned over the last days @agramfort
Nope. Please feel free to take the first steps. I'll mingle in. Raw from data has a very high priority @Eric89GXL . |
@choldgraf, I don't have any experience with ECOG data but happy to chat when you come to Boston.. |
hey all - it seems like this issue has been discussed in a few threads now, but I'll bring it up here since it's the most focused on ECoG. I've been playing around with MNE now that there's functionality for turning arbitrary arrays into Raw objects. One thing that we've found useful in, e.g., EEGLab, is the ability to have a quick, flexible way to scan through the data for the purposes of marking bad electrodes and bad timepoints (e.g., epileptic activity). plot_raw gets very close to this (and is much snappier than matlab version), though it would be useful to have some more keyboard functionality than is currently there. As a starter, here are some things that would be most useful:
So I suppose a more general question is: how open are you all to expanding the keyboard functionality of plot_raw? Would this be relatively straightforward to do with the backend that you all are using? I am happy to teach myself a bit of interactive plotting and try to throw something together... |
@choldgraf thanks for the feedback. I would love to see the functionality you desire in 'plot_raw'. the scaling would be a bit tricky (increment global scalinig? specific sensor? which sensor?). Also I'm not sure what the re-plot woild do. but in general there is no obstacle, it' absolutely doable to add more interactive functionality to raw plot. only a question of development time available. If you feel inclined you are more than welcome to work on it ;-) |
+1 for making the raw data browser more user friendly. |
I'm going to close this for now, @choldgraf I trust you will make issues and PRs now for the specific things of interest :) |
Good idea - I still like all of these ideas and will work on them as the Chris On Mon, Apr 20, 2015 at 10:38 AM, Eric Larson notifications@github.com
|
hey folks - not sure if this is the right space to post this, so I apologize if it's not, but I wonder how you all feel about including electrocorticography analysis under the scope of this project. It's quite similar to EEG / MEG, so I imagine that it could mostly entail adding extra functions that do things ECoG people may care more about.
Nothing concrete in mind yet, just want to know how you all feel about this, as I think this project looks great and would love to help out however I can.
The text was updated successfully, but these errors were encountered: