Welcome to DWI_ML documentation!
This website is a guide to the github repository from the SCIL-VITAL organisation: https://github.com/scil-vital/dwi_ml/. DWI_ML is a toolkit for Diffusion Magnetic Resonance Imaging (dMRI) analysis using machine learning and deep learning methods. It is mostly focused on the tractography derivatives of dMRI.
In this doc, we will present you everything included in this library for you to become either a developer or a user.
On this page:
1. Installing dwi_ml
Installing dwi_ml
2. Explanations for users of pre-trained models (Learn2track, Transformers)
Pages in this section explain how to use our scripts to use our pre-trained models.
1. Downloading models: If you want to use our pre-trained models, you may contact us for access to the models learned weights. They will be available online once publications are accepted.
2. Organizing your data: In most cases, data must be organized correctly as a hdf5 before usage. Follow the link below for an explanation.
3. Using our models to perform tractography: Use our models to track on your own subjects!
OR, Using our models to denoise your tractograms: (upcoming)
3. Explanations for advanced users: train a model with your own hyperparameters
Pages in this section are useful if you want to train a model based on pre-existing code, such as Learn2track or TractographyTransformers, using your favorite set of hyperparameters.
4. Explanations for developers: create your own model
Page in this section explain more in details how the code is implemented in python.
1. Create your models: The first aspect to explore are our models. Discover how you can create your model to fit with our structure. Many parent classes are available for you: if your model inherits from them, they will have access to everything each one offers. For instance, some models have instructions on how to receive inputs from MRI data, prepare inputs in a neighborhood, and use embedding. Other models have access to many options of loss functions for the context of tractography (cosine similarity, classification, Gaussian loss, Fisher von Mises, etc.).
2. Explore our hdf5 organization: Our library has been organized to use data in the hdf5 format. Our hdf5 data organization should probably be enough for your needs.
3. Train your model: Take a look at how we have implemented our trainers for an efficient management of heavy data. Note that our trainer uses Data Management classes such as our BathLoader and BatchSampler. See below for more information.
4. Use your trained model: This step depends on your model. For tractography models, discover our objects allowing to perform a full tractography from a tractography model. You can also see our pages for Learntrack and TractoTransformer usage: Using tractography models.