What is ClinicaDL ?¶
ClinicaDL is an open-source deep learning software for reproducible neuroimaging processing. It can be seen as the deep learning extension of Clinica, an open-source Python library for neuroimaging preprocessing and analysis. The combination of ClinicaDL and Clinica allows performing an end-to-end neuroimaging analysis, from the download of raw data sets to the interpretation of trained networks, including neuroimaging preprocessing, quality check, label definition, architecture search, and network training and evaluation.
ClinicaDL has been implemented to bring answers to three common issues encountered by deep learning users who are not always familiar with neuroimaging data: - accessing properly formatted and pre-processed datasets can be difficult, which can be partly tackled by a dataset format established by the community: the Brain Imaging Data Structure (BIDS) - methodological flaws in many studies which results are contaminated by data leakage, - a lack of reproducibility that discredits results,
Employing ClinicaDL serves as an initial measure to avoid such prevalent problems.
This library was at first developed from the AD-DL project, a GitHub repository hosting the source code of a scientific publication on the deep learning classification of brain images in the context of Alzheimer's disease. This is why some functions of ClinicaDL can still be specific to Alzheimer's disease context.
For moreinformation on this clinical context, please refer to our tutorial.
If you are new to ClinicaDL, please consider reading the First steps section before starting your project!
Visit our hands-on tutorial web site to try ClinicaDL directly in a Google Colab instance!
See Installation section for detailed instructions.
ClinicaDL can be installed on Mac OS X and Linux machines, and possibly on Windows computers with a Linux Virtual Machine.
We assume that users installing and using ClinicaDL are comfortable using the command line.
User documentation (ClinicaDL)¶
Prepare your metadata¶
clinicadl tsvtools- Handle TSV files for metadata processing and data splits
Prepare your imaging data¶
clinicadl quality-check- Quality control of preprocessed data: use a pretrained network [Fonov et al., 2022] to classify adequately registered images.
clinicadl prepare-data- Prepare input data for deep learning with PyTorch
clinicadl generate- Generate synthetic data sets
clinicadl random-search- Explore hyperparameter space by training random models
Train deep learning networks¶
clinicadl train [classification|reconstruction|regression]- Train with your data and create a model
clinicadl train from_json- Reproduce an experiment from a JSON file
clinicadl train resume- Resume a prematurely stopped job
clinicadl train custom- Custom experiments
Inference using pretrained models¶
clinicadl predict- Predict one image or a list of images with your previously trained network
Interpretation with gradient maps¶
clinicadl interpret- Interpret trained CNNs on data groups
Pretrained models for CNN networks performing classification of subjects for Alzheimer disease are proposed in here in MAPS format (ready to use with ClinicaDL >= 1.0.4). Models trained with previous versions of ClinicaDL are also available. For more details concerning the parameters used to create these models please refer to the supplementary material of [Wen et al., 2020], particularly the etable 4. All the original pretrained models, produced for the aforementioned publication are also available in this Zenodo record (note that models in this format are not useful anymore with current version of ClinicaDL).
If you want to contribute but are not familiar with GitHub, please read the Contribute section. You will also find how to run the test suite to check that your modifications are ready to be integrated.
ClinicaDL is distributed under the terms of the MIT license given here.
For publications or communications using ClinicaDL, please cite [Thibeau-Sutre et al., 2021]
as well as the references mentioned on the wiki page of the pipelines you used
(for example, citing PyTorch when using the
ClinicaDL is a software for research studies. It is not intended for use in medical routine.