SYNcro#

Author: Chris Rorden & Steffen Bollmann

Citation:#

SynthStrip:

  • SynthStrip: Skull-Stripping for Any Brain Image; Andrew Hoopes, Jocelyn S. Mora, Adrian V. Dalca, Bruce Fischl*, Malte Hoffmann* (*equal contribution); NeuroImage 260, 2022, 119474; https://doi.org/10.1016/j.neuroimage.2022.119474

  • Boosting skull-stripping performance for pediatric brain images; William Kelley, Nathan Ngo, Adrian V. Dalca, Bruce Fischl, Lilla Zöllei*, Malte Hoffmann* (*equal contribution); IEEE International Symposium on Biomedical Imaging (ISBI), 2024, forthcoming; https://arxiv.org/abs/2402.16634

  • SynthStrip tool: https://w3id.org/synthstrip

ANTs Brain Templates:

  • Avants, Brian; Tustison, Nick (2018). ANTs/ANTsR Brain Templates. figshare. Dataset. https://doi.org/10.6084/m9.figshare.915436.v2

Load Software#

import module
await module.load('syncro/0.1.1')
await module.list()
['syncro/0.1.1']

Download Data#

%%bash
datalad install https://github.com/OpenNeuroDatasets/ds004884.git
cd ds004884 && datalad get "sub-M2304/ses-262/anat"
install(ok): /home/jovyan/workspace/books/examples/structural_imaging/ds004884 (dataset)
get(ok): sub-M2304/ses-262/anat/sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz (file) [from s3-PUBLIC
...]
get(ok): sub-M2304/ses-262/anat/sub-M2304_ses-262_acq-spcir2p2_run-6_FLAIR.nii.gz (file) [from s3-PU
BLIC...]
get(ok): sub-M2304/ses-262/anat/sub-M2304_ses-262_acq-tfl3p2_run-4_T1w.nii.gz (file) [from s3-PUBLIC
...]
get(ok): sub-M2304/ses-262/anat (directory)
action summary:
  get (ok: 4)
[INFO] Attempting a clone into /home/jovyan/workspace/books/examples/structural_imaging/ds004884 
[I
NFO] Attempting to clone from https://github.com/OpenNeuroDatasets/ds004884.git to /home/jovyan/work
space/books/examples/structural_imaging/ds004884
[INFO] Start enumerating objects 
[INFO] Start counting objects 
[INFO] Start compressing objects
[INFO] Start receiving objects
[INFO] Start resolving deltas
[INFO] Completed clone attempts for Dataset(/home/jovyan/workspace/books/examples/structural_imaging
/ds004884)
[INFO] Remote origin not usable by git-annex; setting annex-ignore
[INFO] https://github.com/OpenNeuroDatasets/ds004884.git/config download failed: Not Found
input_image = 'ds004884/sub-M2304/ses-262/anat/sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz'
from ipyniivue import NiiVue

nv_subject_space = NiiVue()
nv_subject_space.load_volumes([{"path": input_image}])
nv_subject_space 
!SYNcro.py ds004884/sub-M2304/ses-262/anat/sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz
INFO - Running: /usr/local/bin/py_synthsr --i /home/jovyan/workspace/books/examples/structural_imaging/SYNcro__2enhynq/sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz --o /home/jovyan/workspace/books/examples/structural_imaging/SYNcro__2enhynq/t1sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz --cpu --threads 31
using CPU, hiding all CUDA_VISIBLE_DEVICES
Using general model from January 2023 (version 2)
/freesurfer/models/synthsr_v20_230130.h5
using 31 threads
predicting 1/1
Prediction without flipping
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 33s/step
1/1 ━━━━━━━━━━━━━━━━━━━━ 33s 33s/step
Prediction with flipping
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 30s/step
1/1 ━━━━━━━━━━━━━━━━━━━━ 30s 30s/step

prediction  saved in: /home/jovyan/workspace/books/examples/structural_imaging/SYNcro__2enhynq/t1sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz

If you use this tool in a publication, please cite:


Joint super-resolution and synthesis of 1 mm isotropic MP-RAGE volumes from clinical 
MRI exams with scans of different orientation, resolution and contrast
JE Iglesias, B Billot, Y Balbastre, A Tabari, J Conklin, RG Gonzalez, DC Alexander,
P Golland, BL Edlow, B Fischl, for the ADNI
NeuroImage, 118206 (2021)



SynthSR: a public AI tool to turn heterogeneous clinical brain scans into 
high-resolution T1-weighted images for 3D morphometry
JE Iglesias, B Billot, Y Balbastre, C Magdamo, S Arnold, S Das, B Edlow, D Alexander,
P Golland, B Fischl
Science Advances, 9(5), eadd3607 (2023)



If you use the low-field (Hyperfine) version, please cite also:



Quantitative Brain Morphometry of Portable Low-Field-Strength MRI Using 
Super-Resolution Machine Learning
JE Iglesias, R Schleicher, S Laguna, B Billot, P Schaefer, B McKaig, JN Goldstein, 
KN Sheth, MS Rosen, WT Kimberly
Radiology, 220522 (2022)
Configuring model on the CPU
Running SynthStrip model version 1
Input image read from: /home/jovyan/workspace/books/examples/structural_imaging/SYNcro__2enhynq/t1sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz
Processing frame (of 1): 1
done
Set background to: 0
Masked image saved to: /home/jovyan/workspace/books/examples/structural_imaging/SYNcro__2enhynq/bt1sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz

If you use SynthStrip in your analysis, please cite:
----------------------------------------------------
SynthStrip: Skull-Stripping for Any Brain Image
A Hoopes, JS Mora, AV Dalca, B Fischl, M Hoffmann
NeuroImage 206 (2022), 119474
https://doi.org/10.1016/j.neuroimage.2022.119474

Website: https://synthstrip.io
INFO - sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz: min=0.0, max=571.0, interp=linear
INFO - SYNcro time: 256034 ms
nv_mni_space = NiiVue()
nv_mni_space.load_volumes([{"path": "wbt1sub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz"}])
nv_mni_space 
nv_mni_space = NiiVue()
nv_mni_space.load_volumes([{"path": "wsub-M2304_ses-262_acq-spc3p2_run-5_T2w.nii.gz"}])
nv_mni_space