bids-apps / PyMVPA

runs MVPA and RSA analysis BIDS bold derivative data
7 stars 3 forks source link

is the input the bids raw data or the fmriprep output? #4

Closed bakerhassan closed 4 years ago

bakerhassan commented 4 years ago

So since the readme asks for the data to be processed by the fmriprep then I assume it needs the pre-processed file. When I pass the fmriprep data:

  1. the bids-validator fails
  2. When I skip the bids-validator, it looks for the JSON file "'task-{taskName}_bold.json". Which is located in the BIDS raw data.

Now, I switched to pass the raw data and the program exited without generating an output. So, I looked at the code and I saw this

or subjects in ${sub_IDs}; do subjects=$path/derivatives/fmriprep/sub-$subjects

So, it does use the fmri-prep output. So can you please clarify this for me?

sajjadtorabian commented 4 years ago

This app works on top of fmriprep. So, you need to have preprocessed data under derivatives/fmriprep and then run the two analysis levels of PyMVPA in order (first, "prep", and then "test" which gives you classification results). Note that the input you feed the pipeline with should be the root of your BIDS compatible data (shown as /Users/Sajjad/Visual_object_recognition in the documentaion example). So, it is not really meaningful to say we pass raw or preprocessed data. What you pass is the BIDS dataset (like the "Visual_object_recognition" folder here), which includes both raw functional files and also fmriprep preprocessed ones. Everything gets to the pipeline, and then the pipelines knows how to take it from there.