Skip to content

Python Port of NYU's DKI-Designer Pipeline

License

Notifications You must be signed in to change notification settings

TheJaeger/PyDesigner

 
 

Repository files navigation

PyDesigner

Docker Pulls GitHub release (latest SemVer including pre-releases) Documentation Status

Welcome to the official PyDesigner project!

PyDesigner was inspired by NYU's DESIGNER dMRI preprocessing pipeline to bring pre- and post- processing to every MRI imaging scientist. With PyDesigner, users are no longer confined to specific file types, operating systems, or complicated scripts just to extract DTI or DKI parameters – PyDesigner makes this easy, and you will love it!

Click here to view documentation PyDesigner Walkthrough Video: Software Setup & Usage

Notable Features

  • 100% Python-based scripts
  • Minimized package dependencies for small package footprint
  • Preprocessing designed to boost SNR
  • Accurate and fast DTI and DKI metrics via cutting-edge algorithms
  • One-shot preprocessing to parameter extraction
  • Cross-platform compatibility between Windows, Mac and Linux using Docker
  • Highly flexible and easy to use
  • Parallel processing for quicker preprocessing and parameterization
  • Easy install with pip
  • Input file-format agnostic – works with .nii, .nii.gz, .mif and dicoms
  • Quality control metrics to evaluate data integrity – SNR graphs, outlier voxels, and head motion
  • Uses the latest techniques from DTI/DKI/FBI literature
  • Works with DTI, DKI, WMTI, FBI, or FBWM datasets
  • Supports multi-TE dataset processing
  • Tractography ready: Computes ODF spherical harmonic expansion for MRtrix3, and .fib files for DSI Studio
  • Installable modules for Python or Jupyter Notebook scripting of custom workflows

We welcome all DTI/DKI researchers to evaluate this software and pass on their feedback or issues through the Issues and Discussion page of this project’s GitHub repository.

System Requirements

Parallel processing in PyDesigner scales almost linearly with the nummber of CPU cores present. The application is also memory-intensive due to the number of parameter maps being computed.

Based on this evaluation, for processing a single DWI using PyDesigner, we recommend the following minimum system specifications:

  • Ubuntu 18.04
  • Intel i7-9700 or AMD Ryzen 1800X [8 cores]
  • 16 GB RAM
  • 12 GB free storage
  • Nvidia CUDA-enabled GPU

PyDesigner in Container

PyDesigner can run on all major platforms (x86, x64, and ARM) via Docker container technology. The containerized form of PyDesigner is called NeuroDock and comes preloaded with PyDesigner, FSL, and MRtrix3.

Obtaining the FSL software typically requires registration. Therefore, we requeust users of NeuroDock who have not previously registered as a user of the FSL software complete the registration process. This allows developers of FSL to be recognized for the utilization of their software.

Cite PyDesigner

Please include the following citation if you used PyDesigner in your work or publication:

  1. Siddhartha Dhiman, Joshua B Teves, Kathryn E Thorn, Emilie T McKinnon, Hunter G Moss, Vitria Adisetiyo, Benjamin Ades-Aron, Jelle Veraart, Jenny Chen, Els Fieremans, Andreana Benitez, Joseph A Helpern, Jens H Jensen. PyDesigner: A Pythonic Implementation of the DESIGNER Pipeline for Diffusion Tensor and Diffusional Kurtosis Imaging. bioRxiv 2021.10.20.465189. doi: 10.1101/2021.10.20.465189

References

The PyDesigner software packages is based upon the the references listed below. Please be sure to cite them if PyDesigner was used in any publications.

  1. Jensen JH, Helpern JA, Ramani A, Lu H, Kaczynski K. Diffusional kurtosis imaging: the quantification of non-Gaussian water diffusion by means of MRI. Magn Reson Med 2005;53:1432-1440. doi: 10.1002/mrm.20508
  2. Jensen JH, Helpern JA. MRI Quantification of non-Gaussian water diffusion by kurtosis analysis. NMR Biomed 2010;23:698-710. doi: 10.1002/nbm.1518
  3. Fieremans E, Jensen JH, Helpern JA. White matter characterization with diffusional kurtosis imaging. Neuroimage 2011;58:177-188. doi: 10.1016/j.neuroimage.2011.06.006
  4. Tabesh A, Jensen JH, Ardekani BA, Helpern JA. Estimation of tensors and tensor-derived measures in diffusional kurtosis imaging. Magn Reson Med 2011;65:823-836. doi: 10.1002/mrm.22655
  5. Glenn GR, Helpern JA, Tabesh A, Jensen JH. Quantitative assessment of diffusional kurtosis anisotropy. NMR Biomed 2015;28:448-459. doi: 10.1002/nbm.3271
  6. Jensen JH, Glenn GR, Helpern JA. Fiber ball imaging. Neuroimage 2016; 124:824-833. doi: 10.1016/j.neuroimage.2015.09.049
  7. McKinnon ET, Helpern JA, Jensen JH. Modeling white matter microstructure with fiber ball imaging. Neuroimage 2018;176:11-21. doi: 10.1016/j.neuroimage.2018.04.025
  8. Ades-Aron B, Veraart J, Kochunov P, McGuire S, Sherman P, Kellner E, Novikov DS, Fieremans E. Evaluation of the accuracy and precision of the diffusion parameter EStImation with Gibbs and NoisE removal pipeline. Neuroimage. 2018;183:532-543. doi: 10.1016/j.neuroimage.2018.07.066
  9. Moss H, McKinnon ET, Glenn GR, Helpern JA, Jensen JH. Optimization of data acquisition and analysis for fiber ball imaging. Neuroimage 2019;200;690-703. doi: 10.1016/j.neuroimage.2019.07.005
  10. Moss HG, Jensen JH. Optimized rectification of fiber orientation density function. Magn Reson Med. 2020 Jul 25. doi: 10.1002/mrm.28406. Online ahead of print.

About

Python Port of NYU's DKI-Designer Pipeline

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 95.6%
  • Jupyter Notebook 4.0%
  • Other 0.4%