| Literature DB >> 30651067 |
Charlotte Debus1,2,3,4,5, Ralf Floca6,7, Michael Ingrisch8, Ina Kompan9,10, Klaus Maier-Hein9,10,11, Amir Abdollahi12,13,14,15,9, Marco Nolden10.
Abstract
BACKGROUND: Many medical imaging techniques utilize fitting approaches for quantitative parameter estimation and analysis. Common examples are pharmacokinetic modeling in dynamic contrast-enhanced (DCE) magnetic resonance imaging (MRI)/computed tomography (CT), apparent diffusion coefficient calculations and intravoxel incoherent motion modeling in diffusion-weighted MRI and Z-spectra analysis in chemical exchange saturation transfer MRI. Most available software tools are limited to a special purpose and do not allow for own developments and extensions. Furthermore, they are mostly designed as stand-alone solutions using external frameworks and thus cannot be easily incorporated natively in the analysis workflow.Entities:
Keywords: Dynamic PET; Model fitting; Multi-purpose; Pharmacokinetic modeling; Software development; Tracer-kinetics
Mesh:
Substances:
Year: 2019 PMID: 30651067 PMCID: PMC6335810 DOI: 10.1186/s12859-018-2588-1
Source DB: PubMed Journal: BMC Bioinformatics ISSN: 1471-2105 Impact factor: 3.169
Fig. 1Abstraction of the fitting process. A ModelFitFunctor composes an optimizer and a suitable cost function. A ModelFitFunctor also depends on the input sample, initial MP values and a parameterized model instance. These are provided when calling the functor. Optionally a ModelFitFunctor class may specify additional settings (e.g. stopping criteria). Constraints may serve for explicit regularization (e.g. when using L-BFGS as optimizer) or for implicit regularization by boundary conditions that penalize the cost function. The control flow (red, double stroked arrows) of the optimization process loops through the steps 1 to 4 until a stopping criteria is met. Value class instances (green boxes) refer to input that is considered simple data. Base class instances (blue box) represent any derived class and are part of the abstraction
Fig. 2Illustration of the fitting process using the example of voxel-wise fitting. The PixelBasedParameterFitGenerator computes the fits concurrently for all relevant voxels (identified by the optional mask). The generator interacts with a ModelParameterizer and a ModelFitFunctor instance that should be used for the generation. The control flow (red, double stroked arrows) of the generation process loops through the step 1 to 5 for each voxel index. Output is, besides the parameter images, a criterion image (representing the final cost function value of the fit), evaluation maps (representing additional user defined measures for fit quality) and optional debug images (containing ModelFitFuctor specific information like number of iteration or met stop criterion of a fit). Value class instances (green boxes) refer to input/output that is considered simple data. Base class instances (blue box) represent any derived class and are part of the abstraction
Fig. 3Simplified illustration of the interplay between components for model fitting. The plug-ins (yellow boxes) represent the MVC controllers. Data (green boxes) are part of the MVC application model together with the modeling relevant classes (blue boxes; bottom part). The Model Fit Inspector visualizes raw 3D+t input data (a) and, if present in the data storage, uses the result of fits (d) to visualize the fits. Fits are generated by domain specific generator plug-ins that use the inputs (b) and store the results (c) in the data storage. The whole fit information is encoded in the result images and their meta information. All fitting plug-ins and domain specific modules (e.g. pharmacokinetics) depend on parts of the ModelFit module (e). In addition, domain-specific plug-ins also depend on specific modules (f) that provide the model, cost function or ModelFitFunctor classes of the domain. To allow every part of the application to use a specific model class, they are registered (g) by their modules via micro services (model provider). The model providers are e.g. used (h) by the Model Fit Inspector to plot the respective model signals without establishing code dependence on any generator plug-in or domain module
Software characteristics
| MITK- ModelFit | UMM Perfusion | Rocketship | DCEMRI.jl | PMI | DATforDCEMRI | 3DSlicer PkModeling | |
|---|---|---|---|---|---|---|---|
| Operating system | Linux, Mac OS, Windows | Mac OS | Linux, Mac OS, Windows | Linux, Mac OS, Windows | Windows | Linux, Mac OS, Windows | Linux, Mac OS, Windows |
| Language | C++ | C | Matlab | Julia | IDL | R | C++ |
| License | BSD | BSD | GNUGPL | MIT | GNU GPL | Creative Commons | Slicer (BSD like) |
| Advanced extensibility | Yes | Yes | No | No | No | No | Yes |
| Fitting domain | Time, Frequency, anya | Time | Time | Time | Time | Time | Time |
| Eco-system | Yes (MITK) | Yes (OsiriX) | No | No | Yes (PMI) | No | Yes (3DSlicer) |
| Image modalities | DCE-MRI, DCE-CT, PET, dynamic MRI, dynamic CT, CESL/CEST,a | DCE-MRI | DCE-MRI | DCE-MRI | DCE-MRI, DSC-MRI, DCE-CT | DCE-MRI | DCE-MRI |
| Models | Tofts, Extended Tofts, 2CXM, 1TCM, 2TCM, Brix, Three-step linear (3SL), Semi-quantitative metrics (BAT, TTP, AUC, Cmax, Wash-in/Wash-out Slope, final uptake, mean residence time) | Extended Tofts, 1CP, 2CXM, 2C uptake model, two compartment filtration model (2FM) | Tofts, Extended Tofts, Fast Exchange Regime, 2CXM, Tissue uptake, Nested-model selection, Patlak, Semi-quantitative metrics (AUC) | Tofts, Extended Tofts, Plasma Only | Uptake models, Steady-state, Patlak, Model-free deconvolution, Tofts, Extended Tofts, 2CXM, 2C filtration model for kidney, Dual-inlet models for Liver, Semi-quantitative metrics (Slope/Signal enhancement) | Tofts, Semi-quantitative metrics (AUC, MRT - mean residence time) | Tofts, Semi-quantitative metrics (AUC, slope) |
| Input / Output | DICOM, Analyze, NIFTI, NRRD, VTK, Raw data | DICOM | DICOM, Analyze, NIFTI, Raw data, Matlab data | Matlab data | DICOM, Raw data | R readable data formats | DICOM, Analyze, NIFTI, NRRD, VTK, Raw data |
| GUI | Yes | Yes | Yes | No | Yes | No | Yes |
| Fit exploration | Yes | Yes | Yes | No | Yes | No | Yesb |
| PACS Support | Yes | Yes | No | No | No | No | Yes |
| Automatization | Yes | Partiallyc | Yes | Yes | Yes | Yes | Yes |
| Source |
|
|
|
|
|
|
|
aPossibility to extend framework to support other fitting domains
bPossibility to generate a 3D+t image that encode the voxel-wise model signal and to explore the image with the MultiVolumeExplorer
cPossibility to loop over all models and selected tissue ROIs for the loaded Data in the UMMPerfusion user interface
The selection of solutions represents well-known or relative similar solutions compared to our work in order to clarify the differences. The selection does not claim to be exhaustive. Commercial solutions are not included. Further R or Matlab are only included in context of concrete tools (DATforDCEMRI and Rocketship) and not as generic fitting environments on their own. The later would be a categorical error. R as well as Matlab can handle generic fitting problems or allow GUIs but by implementing an application from scratch and not by just using it of the shelf or extending an existing one. The following characteristics are assessed in the table: Operating system; Language (Programming language of the software); License (needed to regard if software is used/extended); Advanced extensibility (Indicates if software was designed to easily be extended with new models without the need to change the basis application or its programming logic; implies a advanced level of abstraction and decoupling); Fitting domain (Indicates which domains are supported for the fitting); Eco-system (indicates if software is embedded into image processing eco-system); Image modalities (medical image modalities that are supported be model and fitting techniques); Models (included pharmacokinetic models); Input / Output (most relevant data formats supported by the software); GUI (indicates if software offers a graphical user interface); Fit exploration (indicates if the software allows to interactively investigate the fit and signal curve per voxel/ROI); PACS Support (indicates if the software allows to use DICOM Q/R or receive data via DICOM Send); Automatization (indicates if the software can be used to automatize the analysis with no user interaction); Source (Link to the source codes or developer’s site)
Fig. 4Screenshot of the MITK workbench and the MFI plug-in (right), with exemplary DCE MRI data from a glioblastoma patient. In the 4-window view, the acquired 3D images can be viewed at each time point. The MFI plug-in enables display of the signal-time curves in each image voxel (crosshair). The respective signal-time curve can be exported as 2-column .csv file
Fig. 5Screenshot of the MITK workbench and the curve description parameters plug-in that enables calculation of several semi-quantitative parameters, like the area-under-the-curve (AUC), time-to-peak and maximum signal. The images show the AUC calculated from the 4D DCE MRI data of a glioblastoma patient
Fig. 6Example of pharmacokinetic fitting analysis with the presented plug-in in a glioblastoma patient using the 2CXM within the tumor ROI (red). The 4-window view shows the first time frame of the dynamic MRI series, overlaid with the parameter map of plasma flow F. The MFI (right) shows the measured concentration-time curve in a single voxel (red dots), together with the estimated model fit (black line) and the used AIF (green dots). The respective model parameter estimates of the fit are listed in the table below
Fig. 7The DCE MRI analysis plug-in. Several models are currently implemented: a simple three-step linear function, a descriptive model, the standard and extended Tofts model and the 2CXM. Arterial input functions can be image-based (from the same image as the analyzed ROI or a different one) and file-based (.csv format). The fit configuration allows for definition of model parameter starting values, parameter constraints and the desired conversion of signal to concentration units
Fig. 8Example case of application of the fitting software for tracer-kinetic analysis in dynamic PET, using the tracer kinetic one tissue compartment model. The image shows the parameter map of the exchange rate K1. In the MFI, the measured time-activity curve in tissue (red) with corresponding fit (black) and the utilized arterial time-activity curve (green) are displayed
Relative errors on parameter estimates from fitting the validation data sets
| Mean Error [%] | |||
|---|---|---|---|
| Standard Tofts |
| 3.24 | |
|
| 0.38 | ||
| extended Tofts |
| 7.01 | |
|
| 22.06 | ||
|
| 5.95 | ||
| 2CXM |
| 푃푆 = 0 푚푙/푚푖푛/100 푚푙 | 2.54 |
| 푃푆 = 5 푚푙/푚푖푛/100 푚푙 | 1.99 | ||
| 푃푆 = 15 푚푙/푚푖푛/100 푚푙 | 1.86 | ||
|
| 푃푆 = 0 푚푙/푚푖푛/100 푚푙 | 10.55 | |
| 푃푆 = 5 푚푙/푚푖푛/100 푚푙 | 1.83 | ||
| 푃푆 = 15 푚푙/푚푖푛/100 푚푙 | 2.87 | ||
|
| 푃푆 = 5 푚푙/푚푖푛/100 푚푙 | 3.05 | |
| 푃푆 = 15 푚푙/푚푖푛/100 푚푙 | 2.69 | ||
|
| 푃푆 = 5 푚푙/푚푖푛/100 푚푙 | 3.22 | |
| 푃푆 = 15 푚푙/푚푖푛/100 푚푙 | 2.48 |
Fig. 9Relative errors on K, vand v from fits with our implementation of the extended Tofts model to the noise free 4D QIBA digital reference object. True parameter values, used to create the DRO, are indicated on the left (v), right (v) and bottom (K) scale, in order to see patterns of errors for certain tissue types
Fig. 10Relative errors on parameter estimates of F and v for three cases of PS = 0 ml/ min /100 ml, PS = 5 ml/ min /100 ml and PS = 15 ml/ min /100 ml from fits with our implementation of the 2CXM to the digital reference object created using JSim. True parameter values, used to create the DRO, are indicated on the left (v), right (v) and bottom (F) scale, in order to see patterns of errors for certain tissue types
Fig. 11Relative errors on parameter estimates of PS and v for two cases of PS = 5 ml/ min /100 ml and PS = 15 ml/ min /100 ml from fits with our implementation of the 2CXM to the digital reference object created using JSim. True parameter values, used to create the DRO, are indicated on the left (v), right (v) and bottom (F) scale, in order to see patterns of errors for certain tissue types