longitudinal-mri-pet-preproc

MATLAB code to perform longitudinal structural MRI and PET analyses

https://github.com/hayleyshanks/longitudinal-mri-pet-preproc

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: ncbi.nlm.nih.gov, wiley.com, nature.com
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.8%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

MATLAB code to perform longitudinal structural MRI and PET analyses

Basic Info
  • Host: GitHub
  • Owner: hayleyshanks
  • License: mit
  • Language: MATLAB
  • Default Branch: main
  • Size: 302 KB
Statistics
  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created about 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

Longitudinal MRI/PET Pre-processing Code

Code by Hayley R.C. Shanks, with edits from Taylor W. Schmitz, Kate M. Onuska, Western University
This repository contains code to perform longitudinal MRI and PET pre-processing as used in Shanks et al. (2024), Nature Medicine and German-Castelan et al. (2023), Alzheimer’s and Dementia. Code takes raw DICOM or NIfTI images and performs the following pre-processing steps:

MRI:

  • DICOM reconstruction (optional)
  • manual reorientation
  • co-registration to template image
  • longitudinal registration
  • segmentation
  • segmentation quality control (QC)
  • custom population-specific template creation with geodesic shooting (optional)
  • longitudinal modulation
  • spatial normalization to template
  • population average creation
  • spatial normalization QC
    ## PET
  • DICOM reconstruction (optional)
  • manual reorientation
  • co-registration to subject’s anatomical image
  • spatial normalization
  • SUVr computation with a user-supplied reference mask
  • Partial volume correction with the Müller-Gärtner (MG) method (optional)
    ### Notes The code was written in MATLAB r2021a using SPM12 v7771 and CAT12.9 (r2577). PET pre-processing relies on MRI data for spatial normalization. PET code can handle multi-frame “dynamic” PET data obtained during the static period, but is not made to perform true kinetic analyses.
    This code is meant to help users new to longitudinal MRI/PET analysis get started, and comes with no warranty. It was created with longitudinal T1 MRI data, and has undergone limited testing on cross sectional MRI or other MRI weightings. The code is essentially a series of wrappers to automate running a combined version of SPM12 and CAT12’s preprocessing. Brief descriptions of each step are included in the instruction manual. Further details can be found in the SPM manual and CAT12 manual. This code assumes basic knowledge of imaging principles. ## Requirements and Set-up Download the longitudinal preprocessing code, and unzip the folder. In MATLAB, add it to your path as addpath(genpath(‘pathtocode’)) ### Toolboxes:
  • Download and install SPM12 and CAT12, following the instructions on the SPM and CAT websites
    • Once CAT12 is downloaded, set CAT12 to run automatically in expert mode. Open cat_defaults.m and set cat.extopts.expertgui = 1;
  • MRI segmentation requires you've downloaded the enhanced TPM files from Lorio et al. 2016 and placed them in the SPM TPM subdirectory
    • The TPM should be named ‘enhanced_TPM.nii’
  • If you will be running DICOM reconstruction, download and install xiangruili’s dicm2nii from MATLAB’s file exchange
  • If you are performing partial volume correction, download and follow the SPM installation instructions from the PETPVE toolbox ### Data organization: Raw imaging data should be contained in a subfolder within the main project directory titled ‘firstlevel’. Within the first level folder, the subfolder organization should be:
    subject --> date --> imaging modality (MRI or PET) --> scan type (e.g. T1, FDG) --> scan name (e.g. s001)
    The raw MRI or PET images should be within the scan directory. The midpoint average subdirectory will be created during pre-processing. image ### Set input arguments in longitudinal
    preprocargumentsetup.m file Most of the functions across pre-processing will use similar input arguments. Follow the instructions in the longitudinalpreprocargumentsetup.m file to set the appropriate input arguments for your study. ### Run pre-processing steps with runlongitudinalpreproc function Once your arguments have been set in the step above, you can run any step of preprocessing by calling runlongitudinalpreproc: ``` runlongitudinalpreproc(subs, modality, steptorun) ``` Detailed explanations of each of the pre-processing steps that can be run are in **stepdescriptions.pdf**

Owner

  • Name: Hayley Shanks
  • Login: hayleyshanks
  • Kind: user
  • Location: Canada

PhD Student, Neuroscience + Collaborative Specialization in Machine Learning, Western University

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: Longitudinal-MRI-PET-preproc
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Hayley Renee Christine
    family-names: Shanks
    email: hayley.r.shanks@gmail.com
    affiliation: Western University
    orcid: 'https://orcid.org/0000-0003-4502-7170'
  - given-names: Taylor
    family-names: Schmitz
    email: tschmitz@uwo.ca
    affiliation: Western University
    orcid: 'https://orcid.org/0000-0003-0585-7524'
  - given-names: Kate
    family-names: Onuska
    email: konuska@uwo.ca
    affiliation: Western University
    orcid: 'https://orcid.org/0000-0001-6150-4403'
repository-code: >-
  https://github.com/hayleyshanks/Longitudinal-MRI-PET-preproc
abstract: >-
  MATLAB code to perform longitudinal pre-processing of
  structural magnetic resonance imaging and positron
  emission tomography data. 
keywords:
  - magnetic resonance imaging
  - positron emission tomography
  - longitudinal
license: MIT
date-released: '2024-09-20'

GitHub Events

Total
  • Watch event: 1
  • Push event: 4
  • Pull request event: 2
  • Fork event: 1
Last Year
  • Watch event: 1
  • Push event: 4
  • Pull request event: 2
  • Fork event: 1