mimosa

mimosa is an R package based on the paper: MIMoSA: An Automated Method for Inter-Modal Segmentation Analysis of Multiple Sclerosis Brain Lesions by Valcarcel et al. published in the Journal of Neuroimaging. This package creates data structures necessary for training and testing and then allows the user to train a model and then apply the trained model to generate probability maps and predicted lesion segmentations.

Installation

To install the package from neuroconductor, type:

source("https://neuroconductor.org/neurocLite.R")
neuro_install("mimosa")

To get the latest development version from GitHub:

devtools::install_github('avalcarcel9/mimosa')

avalcarcel9 badges:

Travis-CI Build Status

Coverage status

muschellij2 badges:

Travis-CI Build Status

Coverage status

Vignette

For a full implementation of the methods with output please see our vignette.

Functions

Below is a list of the functions and a description of options available to utilize through the mimosa package.

count_stats

This function calculates true positive rate, false positive rate, false negative rate, false positive count, and sensitivity.

Formulas for how these are calculated are provided in the 'Evaluate Performance' section.

count_stats(gold_standard, 
            predicted_segmentation, 
            k, 
            percent_overlap = NULL, 
            verbose = TRUE)

Arguments

mimosa_data

This function creates the training vectors from a single MRI study that has FLAIR, T1, T2, and PD volumes. When utilizing the function for training you will also need gold standard binary segmentation mask. The function can create a tissue mask (or the user can supply a brain mask), a binary mask of candidate voxels for lesion segmentation, smoothed volumes, and coupling maps. The user may supply already normalized data if they wish to use an alternative normalization method.

mimosa_data(brain_mask, 
            FLAIR, 
            T1, 
            T2 = NULL, 
            PD = NULL, 
            tissue = FALSE, 
            gold_standard = NULL, 
            normalize = 'no', 
            cand_mask = NULL, 
            slices = NULL, 
            orientation = c("axial", "coronal", "sagittal"), 
            cores = 1, 
            verbose = TRUE)

Arguments

mimosa_training

This function trains the MIMoSA model from the data frames produced by mimosa_data on all subjects and determines an optimal threshold based on training data.

mimosa_training(brain_mask, 
                FLAIR, 
                T1, 
                T2 = NULL, 
                PD = NULL, 
                tissue = FALSE, 
                gold_standard, 
                normalize = 'no', 
                slices = NULL, 
                orientation = c("axial", "coronal", "sagittal"), 
                cores = 1, 
                verbose = TRUE, 
                outdir = NULL, 
                optimal_threshold = NULL)

Arguments

Pre-Trained Models

The method performs best when trained on data. Since gold standard manual segmentations are not always delineated though through the mimosa package we have trained four (4) distinct models for use. These models can be called and are stored under the following names:

Users should use the model which matches their imaging sequence. For example, if you only have data collected for FLAIR and T1 modalities then you should use the mimosa_model_No_PD_No_T2.

mimosa_model
mimosa_model_No_PD
mimosa_model_No_T2
mimosa_model_No_PD_No_T2


neuroconductor-devel/mimosa documentation built on Sept. 21, 2019, 6:24 p.m.