https://github.com/kerkelae/dkmri
Reproducible and efficient diffusion kurtosis imaging in Python.
https://github.com/kerkelae/dkmri
diffusion-mri
Last synced: 6 months ago
JSON representation
Reproducible and efficient diffusion kurtosis imaging in Python.
- Host: GitHub
- URL: https://github.com/kerkelae/dkmri
- Owner: kerkelae
- License: mit
- Created: 2022-01-19T14:44:40.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-18T11:46:13.000Z (almost 2 years ago)
- Last Synced: 2025-04-12T19:14:39.195Z (6 months ago)
- Topics: diffusion-mri
- Language: Python
- Homepage:
- Size: 570 KB
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: license.txt
Awesome Lists containing this project
README
> 🚨 Instead of the code in this repository, it is recommended to use the [non-negativity-constrained](https://doi.org/10.1016/j.neuroimage.2019.116405) diffusion kurtosis imaging available in, for example, [DIPY](https://github.com/dipy/dipy).
# `dkmri.py`
`dkmri.py` stands for diffusion kurtosis magnetic resonance imaging in Python. It is a Python package for estimating diffusion and kurtosis tensors from diffusion-weighted magnetic resonance data. The estimation is performed using regularized non-linear optimization informed by a fully-connected feed-forward neural network that is trained to learn the mapping from data to kurtosis metrics. Details can be found in the [arXiv preprint](https://arxiv.org/abs/2203.07327) and [source code](https://github.com/kerkelae/dkmri/blob/main/dkmri/dkmri.py).
This software can be used from the command line or in a Python interpreter.
- The command-line interface does not require any knowledge about Python.
- Python interface is for people comfortable with basic Python programming.## Installation
First, make sure you have installed [Python](https://www.python.org/downloads/).
If you just want to use the command-line interface, the recommended way of installing `dkmri.py` is to use [pipx](https://github.com/pypa/pipx/#install-pipx):
```
pipx install dkmri
```pipx automatically creates an isolated environment in which the dependencies are installed.
If you want to use the Python interface, you can use [pip](https://pip.pypa.io/en/stable/) (you should install `dkmri.py` in an isolated environment using [venv](https://docs.python.org/3/library/venv.html) or [conda](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html) to avoid dependency issues):
```
pip install dkmri
```## Usage example
### Command-line interface
The command for using `dkmri.py` is
```
dkmri.py data bvals bvecs optional-arguments
```where `data`, `bvals`, and `bvecs` are the paths of the files containing the
diffusion-weighted data, b-values, and b-vectors, and `optional-arguments` is
where to define things such as which parameter maps to save.For example, a command for computing a mean kurtosis map from `data.nii.gz` and
saving it in `mk.nii.gz` could be```
dkmri.py data.nii.gz bvals.txt bvecs.txt -mask mask.nii.gz -mk mk.nii.gz
```To see a full description of the arguments, execute the following:
```
dkmri.py -h
```### Python interface
See the [example notebook](https://github.com/kerkelae/dkmri/blob/main/docs/example.ipynb).
## Support
If you have questions, found bugs, or need help, please open an
[issue on Github](https://github.com/kerkelae/dkmri/issues).## Citation
If you find this repository useful in work that leads to a scientific publication, please cite the [arXiv preprint](https://arxiv.org/abs/2203.07327).