This App was designed to compute the degree of overlap between two bundle masks using the Dice Similarity Coefficient (DSC) score (Dice et al., 1945). The DSC is a standard score to evaluate the result of bundle segmentation, being the two bundle masks (i) the estimated mask and (ii) the ground truth mask (see for example Garyfallidis et al., 2017, Wasserthal et al., 2018, Bertò et al., 2020).
Given two bundles b̂ and b, the DSC is proportional to the number of common voxels over the total number of voxels, as follows:
where |v()| is the number of voxels of the bundle mask. The DSC ranges from 0 to 1 and the closer the score is to 1, the more the two bundles are similar.
brainlife.io is publicly funded and for the sustainability of the project it is helpful to Acknowledge the use of the platform. We kindly ask that you acknowledge the funding below in your publications and code reusing this code.
We kindly ask that you cite the following articles when publishing papers and code using this code.
-
Dice, L. R., 1945. Measures of the amount of ecologic association between species. Ecology 26 (3), 297–302. https://www.jstor.org/stable/1932409
-
Avesani, P., McPherson, B., Hayashi, S. et al. The open diffusion data derivatives, brain data upcycling via integrated publishing of derivatives and reproducible open cloud services. Sci Data 6, 69 (2019). https://doi.org/10.1038/s41597-019-0073-y
On Brainlife.io
You can submit this App online at https://doi.org/10.25663/brainlife.app.212 via the “Execute” tab.
Inputs:
The two inputs are (i) a collection of estimated masks and (ii) a collection of ground truth masks. If you have bundles in WMC format, you can convert them in the correct datatype by using this App: https://doi.org/10.25663/brainlife.app.142. WARNING: be sure that the two collections contain the exact same bundles, and that are in the same anatomical space.
Output:
Along with the DSC score, other 5 common scores are returned, specifically:
- Dice Similarity Coefficient (DSC)
- Jaccard index (J)
- sensitivity (sens)
- True Positives (TP)
- False Positives (FP)
- False Negatives (FN)
- git clone this repo.
- Inside the cloned directory, create
config.json
with something like the following content with paths to your input files.
{
"seg_est": "./input/estimated_tracts/masks",
"seg_true": "./input/true_tracts/masks"
}
- Launch the App by executing
main
./main
The main output of this App is a file called output_FiberStats.csv
, in which on the columns there are the different scores, and on the rows the different bundles of the collections.
This App only requires singularity to run.