Releases: aramis-lab/clinicadl
Releases · aramis-lab/clinicadl
v2.0.0rc2
Release v2.0.0rc2
v2.0.0rc1
[2.0.0rc1] – 2025-07-24
This release marks a major overhaul of ClinicaDL, refactoring the entire framework into a modular, API-first design.
Previously centered around the command line, ClinicaDL now provides a flexible Python API that allows users to build and customize deep learning pipelines with high-level configuration objects. The goal is to make the code more maintainable, scalable, and user-extensible, while preserving the core values of ClinicaDL: reproducibility, robust support for neuroimaging, and data leakage prevention.
This is the first release candidate for version 2.0.0, with the final release planned for September 2025.
Highlights
- Full rewrite of the core library — now fully object-oriented and modular.
- New modules (see next section)
- New MAPS architecture for managing model outputs and metadata.
- Clear configuration-based design with JSON files and dedicated config classes based on pydantic.
- Modern deep learning tooling: PyTorch, MONAI, TorchIO, HuggingFace, MLflow, and Weights & Biases support.
- Extensive and fully updated documentation.
Added
Core Modules:
Trainer
: high-level training controller managing full model lifecycle.ClinicaDLModel
: flexible base class to define and extend custom architectures.CapsDataset
: redesigned dataset class in the newdataset
module, tailored for CAPS/MAPS.Splitter
: new module for managing train/val/test split logic.Maps
: a structured and reproducible representation of model outputs and metadata.
Configuration Classes:
OptimizationConfig
,DataloaderConfig
,LossConfig
,TransformConfig
,MetricConfig
, etc.- Designed to be composable and readable using TOML files.
- Stored alongside results to ensure experiment traceability.
Integration with Modern Tools:
- Transforms: use of
torchio
andmonai.transforms
for preprocessing and data augmentation. - Metrics: integration with MONAI metrics and support for custom metrics.
- Networks: fully compatible with native PyTorch models.
- Logging: support for MLflow and Weights & Biases (W&B) out of the box.
- HuggingFace: integration point for loading pretrained models and tokenizers.
Documentation:
- Fully rewritten Sphinx documentation with improved structure and usage examples.
- Interactive object documentation and visual MAPS structure navigation.
Changed
- All pipelines removed and replaced by a unified API-driven interface.
- Internal architecture redesigned for independent modules that can be combined or extended.
- CLI options replaced by TOML configuration — reducing duplication and increasing clarity.
- All training now done through
Trainer
, using configuration objects and custom hooks.
Removed
- All legacy CLI commands (e.g.,
clinicadl train
,clinicadl random-search
, etc.). - Old pipelines (
train_from_json
,preprocessing run
, etc.). - JSON-based configuration files.
- Hardcoded command-line flags and argparse logic.
Breaking Changes
- Backward compatibility is broken with all 1.x versions.
- You must migrate to the new API and TOML-based configuration system.
ClinicaDL v1.6.1
ClinicaDL 1.6.1
Fixed
- Fix sorting particpants sessions with 2 digit,
- Fix
interpret —-save_nifti
issue, - Fix BIDS file format for pet,
Changed
- Change 2 digits session label to 3 digits,
- Change black and isort for ruff and codespell,
- Update type hint and docstring,
New
- Add
--fsdp
option - Add
--valid_longitudinal
option to allow the validation on longitudinal data,
ClinicaDL v1.6.0
pyproject release (#530)
ClinicaDL v1.5.1
ClinicaDL 1.5.1
Fixed
- Fix retrocompatibility for new option in maps.json
Changed
- Change MapsManager architecture by adding Callbacks
New
- Add
--fully_sharded_data_parallelism
option - Add
--emisions_calculator
option with codecarbon - Add the semi-supervised domain adaptation network proposed for the MICCAI DART workshop.
ClinicaDL v1.5.0
ClinicaDL 1.5.0
Fixed
- Fix
adapt
command
Changed
- SSIM is now executed on GPU when possible
New
- Add new command
generate artifacts
to generate noise/contract/motion - Add options for data augmentation
- Add fine-tuning option
- Add
--amp
for automatic mixed precision - Add
--track_exp
option to track your parameters during training with MLflow or WandB
ClinicaDL v1.4.0
Fixed
- Fix
--diagnoses
and--merged_tsv
option bug inclinicadl get-labels
- Fix Pathlib bugs
- Fix
get_tsv_paths
function bug. - Fix a bug for which it was impossible to use predict without specifying the splits and selection metrics.
Changed
- Changed default batch size to 8 for
clinicadl predict
- Changed VAEs main class
New
- Add
--n_proc
option inclinicadl generate
pipelines for parallelization. - Add
--split
toclinicadl predict
- Add new VAE networks.
- Add pytorch function to summarize
- Add
--size_reduction
and--size_reduction_factor
options toclinicadl train
,clinicadl predict
andclinicadl interpret
. - Add SSIM2D, SSIM3D metrics for VAE.
- Add
--save_latent_space
option toclinicadl train
andclinicadl predict
. - Add
clinicadl generate trvial_motion
- Add Data augmentation with torchio
Release ClinicaDL 1.3.1
ClinicaDL 1.3.1
Fixed
- Fix TypeError when running ClinicaDL.
- Fix
--extract_json
option bug inclinicadl prepare-data
. - Fix
clinicadl tsvtools get-labels
error findingclinica iotools missing-modalities
output.
Changed
- Changed
clinicadl tsvtools get-labels
output directory.
New
- Add
--caps_directory
option inclinicadl tsvtools get-labels
.
Release ClinicaDL v1.3.0
ClinicaDL 1.3.0
New
- Add new command
quality-check pet-linear
. - Add new command
generate hypometabolic
. - Add new network architecture:
Resnet3D
andSqueezeExcitationCNN
. - Add
flair-linear
modality forprepare-data
command. - Add pytorch profiler.
- Add
--save_nifti
option forinterpret
command. - Add
--output_dir
argument fortsvtools get-labels
command
Changed
** Core: **
- Transition from os to pathlib.
- Update data CI.
- Improve maps_manager.
- Change
--acq_label
option for--tracer
. - Update tutorial.
ClinicaDL 1.2.0
ClinicaDL 1.2.0
Changed
** Core: **
- Add ClinicaDL installation with pipx.
- Improve logging.
- Add method argument to the interpret command to choose between the new Grad-CAM method and the gradient method.
- Change
extract
command toprepare-data
. - Change output of
get-labels
,split
andkfold
commands to one TSV per split instead of one per label. - Change
tsvtool
command totsvtools
. - Change
tsvtools getlabels
command totsvtools get-labels
and remove the progression column in the TSV output. - Add new commands:
tsvtools get-progression
,tsvtools get-metadata
,tsvtools prepare-experiment
(split + kfold), andtsvtools adapt
. - Update data CI.
- Add a new model for quality check
Fixed
- Fix
quality-check t1-linear