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

[V55J] Pipeline reproduction (SPM - raw) #233

Open
9 tasks done
bclenet opened this issue Dec 20, 2024 · 4 comments
Open
9 tasks done

[V55J] Pipeline reproduction (SPM - raw) #233

bclenet opened this issue Dec 20, 2024 · 4 comments
Assignees
Labels
✨ goal: improvement Improvement to an existing feature raw SPM 🏁 status: ready for dev Ready for work

Comments

@bclenet
Copy link
Collaborator

bclenet commented Dec 20, 2024

Softwares

SPM12 revision 7487 (Nov 14th 2018) running on MATLAB R2014b

Input data

raw data

Additional context

List of tasks

Please tick the boxes below once the corresponding task is finished. 👍

  • 👌 A maintainer of the project approved the issue, by assigning a 🏁status: ready for dev label to it.
  • 🌳 Create a branch on your fork to start the reproduction.
  • 🌅 Create a file team_{team_id}.py inside the narps_open/pipelines/ directory. You can use a file inside narps_open/pipelines/templates as a template if needed.
  • 📥 Create a pull request as soon as you completed the previous task.
  • 🧠 Write the code for the pipeline, using Nipype and the file architecture described in docs/pipelines.md.
  • 📘 Make sure your code is documented enough.
  • 🐍 Make sure your code is explicit and conforms with PEP8.
  • 🔬 Create tests for your pipeline. You can use files in tests/pipelines/test_team_* as examples.
  • 🔬 Make sure your code passes all the tests you created (see docs/testing.md).

NARPS team description : V55J

General

  • teamID : V55J
  • NV_collection_link : https://neurovault.org/collections/4919/
  • results_comments :
    We ran an additional model to check how robust the results were to different ways of modeling the effects. In the alternative model, the duration of the decision phase was set to the reaction time instead of 4s (as in the model we report and in the reference papers), and all four possible responses (weakly/strongly accept/reject) were modeled.
    None of the hypotheses were confirmed with this more conservative model. We based our confidence and similarity ratings on the convergence/divergence between the two models, and on how sensitive the effects were to different multiple-comparisons correction methods.
  • preregistered : No
  • link_preregistration_form : NA
  • regions_definition : We superimposed the thresholded statistical map on the AAL atlas (Tzourio-Mazoyer et al., 2002) in MRIcron to make our decisions.
  • softwares : SPM12 revision 7487 (Nov 14th 2018) running on MATLAB R2014b
  • general_comments :

Exclusions

  • n_participants : 108
  • exclusions_details : No participant (beyond the 11 people already excluded from the available fMRI data set) was excluded.

Preprocessing

  • used_fmriprep_data : No
  • preprocessing_order : Pre-processing steps were performed in the following order:
    1. Distortion correction with field maps
    2. Motion correction
    3. Function-to-strucure coregistration
    4. Segmentation
    5. Normalization to MNI space
    6. Smoothing
  • brain_extraction : No brain extraction was performed.
  • segmentation : We perfromed segmentation on the structural image for each subject by using the "Segment" routine in SPM12, with default values for each parameter and using the template tissue probability maps (grey matter, white matter, CSF, bone, soft tissue, and air/background) in the tpm folder of SPM12. We saved a bias-corrected version of the image and both inverse and forward deformation field images.
  • slice_time_correction : No slice time correction was performed.
  • motion_correction : We used the "Realign & Unwarp" routine in SPM12. We kept the default values for each parameter, except for quality-speed trade-off that was increased to highest quality (i.e., 1), interpolation method that was set to 7th degree B-spline, and image registration that was set to be performed w.r.t. the mean.
  • motion :
  • gradient_distortion_correction : No gradient distortion correction was performed.
  • intra_subject_coreg : We used the "Coregister: Estimate" routine in SPM12. We set the mean functional image calculated in the motion correction step as reference image and the structural image as source image. We kept the default values for all other parameters.
  • distortion_correction : We used the "Calculate VDM" routine of the FieldMap tool in SPM12. We set the subject's phase (sub.*phasediff.nii) and magnitude (sub.*magnitude1.nii) images, the TE times to 4.92 and 7.38, the blip direction to -1, the total EPI readout time to 29.15, and field map to non-EPI. For each run, we selected image 10 to distortion correct and asked to match the VDM file to the EPI image and to write out the distortion-corrected EPI image. We set the structural image for comparison with the distortion-corrected EPI image and matched the first to the latter. For all other parameters we used the default values. We did not use Jacobian modulation.
  • inter_subject_reg : We used the "Normalise: Write" routine in SPM12. We set the motion-corrected EPI images for each run as images to resample and the spatial normalization deformation field file obtained with the "Segment" routine as deformation field for the normalization procedure. We used default values for the bounding box and set voxel size to 2 x 2 x 2.4 mm and interpolation method to 7th degree B-spline.
  • intensity_correction : No intensity correction was performed.
  • intensity_normalization : No intensity normalization was performed.
  • noise_removal : No artifact and structured noise removal was performed.
  • volume_censoring : No volume censoring was performed.
  • spatial_smoothing : We used the "Smooth" routine in SPM12. We selected the normalized EPI images and set the FWHM of the Gaussian smoothing kernel to 6mm. We used the default values for the other parameters.
  • preprocessing_comments : No

Analysis

  • data_submitted_to_model : Time points from all trials, except those in which participants did not respond on time, were used for the analyses. We used data from all the 108 participants.
  • spatial_region_modeled : The analyses were performed using the full brain.
  • independent_vars_first_level : The model contained 6 regressors per run:
    • One predictor with onset at the start of the trial and duration of 4s.
    • Two parametric modulators (one for gains, one for losses) were added to the trial onset predictor. The two parametric modulators were orthogonalized w.r.t. the main predictor, but were not orthogonalized w.r.t. one another.
    • Two predictors modelling the decision output, one for accepting the gamble and one for rejecting it (merging strong and weak decisions). The onset was defined as the beginning of the trial + RT and the duration was set to 0 (stick function).
    • One constant term for each run was included (SPM12 default design).
      All predictors, except the constant term, were convolved with a canonical HRF.
      A high-pass filter with a cut-off period of 128s (SPM12 default) was applied.
  • RT_modeling : duration
  • movement_modeling : 0
  • independent_vars_higher_level : The first-level coefficient images for the parametric modulators gains and losses were used as second level predictors for the following contrasts:
    • parametric effect of gains
    • parametric effect of losses.
      One sample t-tests were run for the equal-indifference and equal-range groups separately, then each of the effects listed above was compared to zero to assess null effects. A two sample t-test was run to compare the positive effect of losses between the two groups.
      No covariate was added. Subject effects were not modeled.
  • model_type : Mass Univariate GLM analyses were performed.
  • model_settings : For the first-level analysis, serial correlations in fMRI time series were accounted for by using an autoregressive (AR1) model, as implemented in SPM12.
    Second-level analyses were implemented using an OLS approach, as implemented in SPM12. For between-group comparisons, the measurements were assumed to be independent and to have unequal variance.
  • inference_contrast_effect : At the first level, the following contrasts were performed for all participants:
    • parametric effect of gains
    • parametric effect of losses.
      At the second level, the following contrasts were tested for each of the two groups:
    • positive effect of gains
    • negative effect of gains
    • positive effect of losses
    • negative effect of losses.
      Additionally, the parametric effects of losses were compared between the two groups with a one-sided t-test (equal range > equal indifference).
  • search_region : Analyses were performed on the whole brain.
  • statistic_type : Cluster-wise statistics were performed with cluster-forming threshold of p<0.001 at voxel-level and minimum cluster size as calculaed by SPM12.
  • pval_computation : We used standard parametric inference.
  • multiple_testing_correction : Multiple testing correction relied on Gaussian Random Field theory for FWE-corrected cluster-wise inference.
  • comments_analysis : We ran an additional model to assess how robust the reported effects were to how the predictors were defined. Our confidence rating are based on the convergence/divergence of results between the two models.

Categorized for analysis

  • region_definition_vmpfc : atlas AAL
  • region_definition_striatum : atlas AAL
  • region_definition_amygdala : atlas AAL
  • analysis_SW : SPM
  • analysis_SW_with_version : SPM12
  • smoothing_coef : 6
  • testing : parametric
  • testing_thresh : p<0.001
  • correction_method : GRTFWE
  • correction_thresh_ :

Derived

  • n_participants : 108
  • excluded_participants : n/a
  • func_fwhm : 6
  • con_fwhm :

Comments

  • excluded_from_narps_analysis : No
  • exclusion_comment : Bad histogram : very small values.
  • reproducibility : 2
  • reproducibility_comment :
@bclenet
Copy link
Collaborator Author

bclenet commented Dec 20, 2024

To be refactored !

@bclenet bclenet moved this from In progress to Backlog in NARPS Open Pipelines | Reproductions Dec 20, 2024
@bclenet bclenet changed the title [V55J] Pipeline reproduction [V55J] Pipeline reproduction (SPM - raw) Dec 20, 2024
@bclenet bclenet moved this from Backlog to In progress in NARPS Open Pipelines | Reproductions Jan 8, 2025
@bclenet bclenet mentioned this issue Jan 8, 2025
8 tasks
@bclenet bclenet added the 🚀 status: ready for test Ready for running and testing label Jan 9, 2025
@bclenet
Copy link
Collaborator Author

bclenet commented Jan 9, 2025

Pipeline works on 4 subjects after #234 was merged. Needs to be tested on 108 subjects.

@bclenet
Copy link
Collaborator Author

bclenet commented Jan 9, 2025

Some todos left:

team_V55J.py:139:9: W0511: TODO apply to files ... but reverse transform ? (fixme)
The coregistration step takes the anat as source and the motion corrected (through realign&unwarp) func mean image as target.
It also applies the computed transformation to the realigned and unwarped func files... which should be the other way around (transfom from func to anat).

team_V55J.py:159:71: W0511: TODO change gaussians ? (fixme)
cf. #232

@bclenet
Copy link
Collaborator Author

bclenet commented Jan 10, 2025

Correlation results with 108 subjects : [0.8998014417697264, 0.8377728768668904, 0.8998014417697264, 0.8377728768668904, 0.9125549789101003, 0.8159051830952394, 0.9125549789101003, 0.8159051830952394, -0.8648354800797016]
Version used : faa8de6

@bclenet bclenet added ✨ goal: improvement Improvement to an existing feature and removed 🚀 status: ready for test Ready for running and testing labels Jan 10, 2025
@bclenet bclenet moved this from In progress to Done in NARPS Open Pipelines | Reproductions Jan 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ goal: improvement Improvement to an existing feature raw SPM 🏁 status: ready for dev Ready for work
Projects
Development

No branches or pull requests

1 participant