Skip to content
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

Online standalone interactive tutorial (“Notebook/Browser-Demo”) using NeuroDesk and or Matlab live scripts #6

Open
2 tasks
likeajumprope opened this issue Jul 18, 2022 · 12 comments

Comments

@likeajumprope
Copy link
Owner

likeajumprope commented Jul 18, 2022

  • using NeuroDesk or Online Matlab or CodeOcean…
  • Matlab live script
@mrikasper
Copy link
Collaborator

mrikasper commented Oct 3, 2022

Idea:

  • Take a Matlab example. e.g., Philips ECG 3T (but use _matlab_script version to start from) and make into a live script
    • e.g., by improving step-by-step comments, explaining output figures...

Question:

@mrikasper
Copy link
Collaborator

Alternative: Video Tutorial of Standalone PhysIO in NeuroDesk

@vijayiyer05
Copy link

vijayiyer05 commented Nov 15, 2022

@mrikasper

Question:

Is it possible to run live scripts with Matlab online with example data stored somewhere? e.g., Matlab Live Script Gallery

It's readily possible to use AWS data (e.g., S3 buckets) from MATLAB Online.

I wonder if using an OpenNeuro dataset would work for this tutorial(s)?

The reason I ask: these datasets are available as S3 buckets.

(There are other pathways too, but this is likely the lowest-hanging fruit.)

@mrikasper
Copy link
Collaborator

Dear Vijay @vijayiyer05,

That's an excellent idea, thank you very much! I think we will have to identify if/which of the OpenNeuro-datasets come with peripheral physiological recordings, because that's what PhysIO modeling is based on. If there are suitable ones, that would be a great example dataset indeed.

@likeajumprope
Copy link
Owner Author

likeajumprope commented Dec 3, 2022

Outline tutorial in matlab livescript @mrikasper

Data set to be used: https://openneuro.org/datasets/ds001168/versions/1.0.1 and https://openneuro.org/datasets/ds000113/versions/1.3.0

Step 1a: Run PhysIO toolbox on data [x]
Step 1b: create github repo [x] see here

Step 2: Start preparing live script [x]

  • the hemodynamic response function [x]
  • brief background of types of physiological noise and need for correction in fmri [ ]
  • modelling and visualizing regressors of physiological noise [ ]
    - recovering physiologcial signal from peripheral recordings [ ]
    - explanation of models and challenges [ ]
    - diagnostic plots for QA of signal recovery [ ]
    - explanation of consultation and use [ ]
    - regressor maps [ ]
  • include regressors in GLM, run GLM [ ] --> integration SPM
  • create and visualize F-contrast and tSNR gain maps of noise correction [ ]
    • explanation of consultation and use [ ]

@mrikasper
Copy link
Collaborator

mrikasper commented Dec 12, 2022

Idea for repository name: physio-live

Template to start from for Step one (run on data with SPM creation of F contrasts and visualization):

https://github.com/BRAIN-TO/cubric-physio

TODO @likeajumprope : Adapt inputs for openneuro dataset --> done

@mrikasper
Copy link
Collaborator

mrikasper commented Dec 13, 2022

Note, for the openneuro dataset you chose, you will have to update PhysIO to support BIDS files with more than 3 columns by extending the following function with a 3rd input parameter nColumns

tapas_physio_read_columnar_textfiles(fileName, fileType, nColumns)

that can be retrieved within tapas_physio_read_physlogfiles_bids via numel(val.Columns) (in line 415)

or you find another example dataset with just 3 columns.

@likeajumprope
Copy link
Owner Author

likeajumprope commented Mar 4, 2023

@mrikasper, I can now run physio fully on the first subject of the forest gump data set..
Some thoughts that I have had:

  • I think it would be best to store the files in the matlab drive/online repository, instead of a git repository
  • I also assume, that given that we need spm for the actual execution of the toolbox, the script will actually not be executable online in the real sense? But more something people can download and I just show what the results should look like?
  • more tomorrow

@likeajumprope
Copy link
Owner Author

likeajumprope commented Mar 26, 2023

Update

The tutorial exists in two versions:

Both use data from the open neuro forest gump repository(sub-01).

There are a few things that need to be considered based on the experience I had with the matlab online space in particular:

  • the processing of the tutorial in matlab online, albeit possible, takes v e r y l o n g, so it might be good to add a statically rendered version of the tutorial. I found a nice example of something similar here.

  • The matlab drive also hits the max. storage space at some point. For example, it is not possible to strore both the output of the glm and glm_smooth files. So I might add a routine to secretively delete files throughout the tutorial.

@likeajumprope
Copy link
Owner Author

Update on speed of Live-script demo on Matlab online.

In order to have the demo, tapas and spm in one repository, tapas and spm were integrated as sub-modules.
This solution works fine if the repository is cloned to a local machine. When opening and running the repository on Matlab online, however, pulling the sub-modules takes ~ 15min. Also, running the demo on matlab online takes significantly longer than running it on a local machine.

@likeajumprope
Copy link
Owner Author

@mrikasper
Copy link
Collaborator

Maybe appropriate dataset for Demo (Brainstem fMRI, native Siemens physio logfiles):

TODO:

  • Assess, whether DataLad interface speeds up access for Matlab Online

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

3 participants