This repository contains code for performing MRI reconstruction with non-cartesian or cartesian data. Several iterative reconstruction are implemented. They all consist in minimizing a regularized or non-regularized least-square objective function.
Make sure to visit our documentation.
If you find this useful, please leave us a star!
To get started with the MRI reconstruction code, follow these steps:
- Clone the repository
git clone https://github.com/MattechLab/monalisa.git
cd monalisa- Make sure you have a compiler that is recognized by MATLAB. To check that you can run
mex -setup C++Depending on your configuration, you should install a C++ compiler. (If you see a message like "No supported compiler or SDK was found. For options, visit https://www.mathworks.com/support/compilers".)
If you have to install a compiler, we recommend:
- g++ for Linux,
- Xcode Clang++ for macOS,
- Visual studio c++ or MinGW for windows. Normally, the compiler from Visual studio c++ will work. If it fails, you can also install MinGW alternatively following these instructions. After downloading the MinGW, such as
mingw81, run the command% configuremingw('\path\to\mingw81'),then you are ready to compile Monalisa!
-
Compile the cpp code using the helper compiling function . On macOS you should change the libomp_dirs directory here:
. If you are using brew for the installations, you can find the libomp_dirs path by running: brew --prefix libomp. (you need libomp as explained here) -
Great, installation is done! You are now ready to run the first tutorial
For better installation guidelines and much more check Monalisa's documentation here!
This repository is organized into 5 main subfolders, each with a specific purpose:
-
demo/– Example scripts and tutorials demonstrating how to use the toolbox. -
docs/– Documentation sources and build tools for generating the project’s documentation. -
src/– Core source code of the Monalisa toolbox. This is where the main functionality is implemented. -
third_part/– Third-party software dependencies (some with local modifications). These are distributed under licenses different from Monalisa’s. -
tests/– Unit tests and validation scripts to ensure code reliability.
Monalisa is still very young. If you encounter an issue, please consider opening a GitHub issue in the repository. If you know how to fix the problem, feel free to submit a pull request!