Code style: black

Data-Driven Network Neuroscience: On Data Collection and Benchmark

This repository contains a package of scripts and codes used in the paper to convert raw functional images to connectivity matrices using fMRIPrep. The detailed description can be found in our paper on NeurIPS, Datasets and Benchmarks Track, 2023. The dataset we used and the preprocessed data is collected at https://doi.org/10.17608/k6.auckland.21397377.

Samples of the raw MRI / preprocessed outputs / matrices

Requirements

External Dependencies

Setup

  1. Install numpy, os, shutil, glob, dcm2niix, nilearn, scipy modules for python programming
  2. Install Docker/Singularity and fMRIPrep
    • Installing fMRIPrep requires several steps and sorting out dependencies and a freesurfer license (free to acquire). We recommend following this guide

Steps to preprocess neuroimages:

flow chart

Step A: Data Collection and Selection

Access Link for Neurocon and TaoWu Dataset.

Access Link for ABIDE/ADNI/PPMI.

  • A sample TaoWu subject can be accessed here: sub-control032057-raw-image
  • Each fMRI image needs to be accompanied with a structural T1-weighted (T1w) image acquired from the same subject (ideally) in the same scan session

Step B: BIDS Format Conversion

Raw T1w/fMRI data are in DICOM or NifTi format

  • This step is to convert raw MRI data in either DICOM or NifTi into BIDS format
    • ABIDE_Nifti2BIDS.py - To convert raw MRI data (NifTi format) to BIDS - For ABIDE dataset
    • ADNI_PPMI_DCM2BIDS.py - To convert raw MRI data (DICOM format) to BIDS - For PPMI and ADNI dataset
    • Neurocon and TaoWu dataset are NifTi files and are already BIDS formatted

Step C: fMRIPrep Preprocessing

Make sure you have installed fMRIPrep correctly using the information and guides from the links above.

  • Preprocess BIDS formatted neuroimages (1 T1w image and 1 fMRI BOLD image) using fMRIPrep
    • fmriprep_shellscript.sh - Script to execute fmriprep preprocessing
  • fMRIPrep outputs a number of BIDS Derivative compliant files

A sample of a fully preprocessed TaoWu subject (and its outputs) can be accessed here: sub-control032057-preprocessed

Steps D, E, and F: Parcellation and ROI Definition, Connectivity Matrix Extraction, and Graphical Brain Network

  • Convert preprocessed Nifti images into connectivity matrices
    • ConnectivityMatrices.py - Code to generate connectivity matrices

Perform Experimental Analysis

  • The codes we used to run our empirical analysis
    • NIPS_paper_gridsearch_experiments.py
    • EdgeWeightsStatistics.py

Note: Input/Output location and the required modification are detailed within the python codes

Reference

@misc{xu2023datadriven,
      title={Data-Driven Network Neuroscience: On Data Collection and Benchmark}, 
      author={Jiaxing Xu and Yunhan Yang and David Tse Jung Huang and Sophi Shilpa Gururajapathy and Yiping Ke and Miao Qiao and Alan Wang and Haribalan Kumar and Josh McGeown and Eryn Kwon},
      year={2023},
      eprint={2211.12421},
      archivePrefix={arXiv},
      primaryClass={q-bio.NC}
}