Official Implementation of "Computer-Aided Diagnosis of Skeletal Metastases in Multi-Parametric Whole-Body MRI"
The full paper is available at : Computer Methods and Programs in Biomedicine
The network architecture is made with the Dynamic Unet function of monai, which implements the nnU-Net model within monai. The exact network architecture is shown below.
The scripts are built making use of monai 0.7. Recent Monai versions are incompatible with the code as syntax has changed. When installing Monai to run the scripts, ensure to install the correct version.
- Install monai (version 0.7.0) :
pip install monai==0.7
The models are trained on a 40Gb A100 GPU. To ensure smooth dataloading, at least 12 CPU cores should be available on the system.
- Running the training script with default parameters:
python Train.py --logdir=/path/to/logdir --data_dir=/path/to/dataset
- Running the Inference script with default parameters and saving the binary predictions:
python Inference.py --pretrain_dir=/path/to/model_best.pt --data_dir=/path/to/Dataset --output_dir_root=/path/to/results --save_mask
- The dataset should be structured as indicated below to run the scripts. Note that each patient has five associated images: T1, b1000, ADC and mask, and a skeleton mask. More clarification on the preprocessing steps applied to the dataset before running the scripts can be found in section 2.2 of the paper.
|-- Dataset
| |-- Train
| | |-- Patient_1
| | | |-- T1.nii
| | | |-- b1000.nii
| | | |-- ADC.nii
| | | |— mask.nii
| | | |— skeleton.nii
| | |-- Patient_2
| | | |-- T1.nii
| | | |-- b1000.nii
| | | |-- ADC.nii
| | | |— mask.nii
| | | |— skeleton.nii
| |-- Validation
| | |-- Patient_1
| | | |-- T1.nii
| | | |-- b1000.nii
| | | |-- ADC.nii
| | | |— mask.nii
| | | |— skeleton.nii
| |-- Test
| | |-- Patient_1
| | | |-- T1.nii
| | | |-- b1000.nii
| | | |-- ADC.nii
| | | |— mask.nii
| | | |— skeleton.nii
The Train and Validation folder must have patients in it to use the Train.py script. To use the Inference.py script, the Test folder should contain patients.
Different preprocessing steps can be applied before using the training and inference scripts provided on this page. When using the pre-trained models that are available here (Dynamic U-nets), it is important to select a model that is trained with the same preprocessing applied to it as your data. The table below describes the different preprocessing steps applied to models 1-5. For more information on the preprocessing, please have a look at the journal publication.
Quantitative Comparison of the U-Net models with incremental preprocessing complexity. Best results are obtained when using the most complex preprocessing scheme (5)
The saved U-Net models obtained in this work can be found here (Dynamic U-nets).
If you think this paper helps, please cite:
J. Ceranka, J. Wuts, O. Chiabai, F. Lecouvet, and J. Vandemeulebroucke, ‘Computer-aided diagnosis of skeletal metastases in multi-parametric whole-body MRI’, Computer Methods and Programs in Biomedicine, vol. 242, p. 107811, 2023.
@article{ceranka2023computer,
title={Computer-aided diagnosis of skeletal metastases in multi-parametric whole-body MRI},
author={Ceranka, Jakub and Wuts, Joris and Chiabai, Oph{\'e}lye and Lecouvet, Fr{\'e}d{\'e}ric and Vandemeulebroucke, Jef},
journal={Computer Methods and Programs in Biomedicine},
volume={242},
pages={107811},
year={2023},
publisher={Elsevier}
}