This repository contains scripts for reproducing the experiments for the paper: Scan-specific Self-supervised Bayesian Deep Non-linear Inversion for Undersampled MRI Reconstruction by Andrew P. Leynes, Srikantan S. Nagarajan, and Peder E. Z. Larson
A. P. Leynes, N. Deveshwar, S. S. Nagarajan and P. E. Z. Larson,
"Scan-specific Self-supervised Bayesian Deep Non-linear Inversion for Undersampled MRI Reconstruction,"
in IEEE Transactions on Medical Imaging, doi: 10.1109/TMI.2024.3364911
Pre-print: https://arxiv.org/abs/2203.00361 Journal: https://doi.org/10.1109/TMI.2024.3364911
The reconstruction code for deep non-linear inversion is inside the dnlinv
directory.
The scripts for reproducing the experiments in the paper is inside the reproducibility
directory.
- Operating system: the code has been tested on Windows 10 64-bit using Cygwin, Ubuntu 18.04, and RHEL 7 operating system environments.
- BART Toolbox v0.6.00
- Miniconda with Python 3 (see below)
- Bash shell
All DNLINV reconstruction code requires an NVIDIA GPU with at least 8GB of GPU memory. At least 32GB of RAM is recommended.
-
Install Miniconda from: https://docs.conda.io/en/latest/miniconda.html
-
Set up conda environments
conda env create -n dnlinv -f dnlinv_environment.yml python=3.6
conda env create -n fastMRI -f fastMRI_environment.yml pyhon=3.8
-
Install BART toolbox v0.6.00 (recommended): https://github.com/mrirecon/bart/releases/tag/v0.6.00
-
Set up paths to the DNLINV, fastMRI, and BART repositories and executables
- Edit the file
setup_paths.sh
to assign the correct paths toDNLINV_PATH
,FASTMRI_PATH
, and (bart)TOOLBOX_PATH
- Run the command
source setup_paths.sh
- If you plan on using the provided SLURM-compatible job submission scripts, append sourcing the
setup_paths.sh
to the SLURM script or to your.bashrc
file. E.g.source <path_to_this_repo>/setup_paths.sh
- Edit the file
-
Run scripts inside each directory in
reproducibility
. Follow the directory-specific instructions.