Currently runs only on GPUs due to a limitation in the GPyFFT package.
The Software is tested on Linux using the latest Nvidia driver but should be compatible with older drivers as well as different hardware (AMD). The following Installation Guide is targeted at Ubuntu but should work on any distribution provided the required packages are present (could be differently named).
- It is highly recommended to use an Anaconda environment
First make sure that you have a working OpenCL installation
- OpenCL is usually shipped with GPU driver (Nvidia/AMD)
- Install the ocl_icd and the OpenCL-Headers
apt-get install ocl_icd* opencl-headers
Possible restart of system after installing new drivers
- Build clinfo
- Run clinfo in terminal and check for errors
Install clFFT library:
- Either use the package repository,e.g.:
apt-get install libclfft*
- Or download a prebuild binary of clfft
- Or build from source and install.
Optional: Make a new cona environment (with pip python and cython):
conda create -n ENV_NAME pip python cython
Install the bart toolbox Please refer to the documentaiton of bart for a detailed explanation on how to set up the toolbox.
- Navigate to the root directory of ISMRM_RRSG and activate the conda environment
Finally
source activate ENV_NAME
should take care of the other dependencies using PyPI and install the package.pip install .
First download the challenge data (goettingen, NYU), extract it, and copy the two .h5 files into the ISMRM_RRSG root folder. Use any shell to navigate to the root folder of ISMRM_RRSG and simply type:
./run_acc
to run the reconstruction for brain and heart data with increasing accelaration. After reconstruction is finished, the required plots will be automatically generated and saved in the root folder.
Regularization can be changed or turned off by changing the value of lambd
in default.ini
. The .ini file will be automatically generated the first time the code is run. The tol
parameter can be used to change the desired toleranze of the optimization scheme. max_iters
defines the maximum number of CG iterations.
Please cite "Oliver Maier, Matthias Schloegl, Kristian Bredies, and Rudolf Stollberger; 3D Model-Based Parameter Quantification on Resource Constrained Hardware using Double-Buffering. Proceedings of the 27th meeting of the ISMRM, 2019, Montreal, Canada" if using the software or parts of it, specifically the PyOpenCL based NUFFT, in your work.