Key words

1 Introduction

Contrast enhanced imaging is based on the use of endogenous tracers (or contrast agents) with para- or ferromagnetic properties and was proposed in the mid-1980s. The aim was to measure or derive the tissue perfusion and capillary permeability from the signal changes caused by the tracer. Based on the employed imaging technique, this concept is called dynamic susceptibility contrast (DSC) or dynamic contrast-enhanced (DCE) MRI whereby the first is used in conjunction with T2-weighted imaging techniques whereas the latter is used in T1-weighted imaging. During such DCE-MRI exams a signal time curve (STC) is recorded that reflects the passage of the tracer through tissue and therefore also the perfusion and filtration of the renal tissue. To analyze the tracer kinetics and the STC various approaches were proposed comprising semiquantitative, model-free, and model based approaches which will be outlined in this chapter [1,2,3,4,5,6].

Theoretical considerations and acquisition protocols are detailed in the chapters by Pedersen M et al. “Dynamic Contrast Enhancement (DCE) MRI–Derived Renal Perfusion and Filtration: Basic Concepts” and by Irrera P et al. “Dynamic Contrast Enhanced (DCE) MRI-Derived Renal Perfusion and Filtration: Experimental Protocol.”

A typical workflow for analyzing DCE-MRI data and for calculating parametric maps of renal perfusion and filtration comprises the segmentation of the kidney and the delineation of the arterial input function (AIF), calculation of T1 maps to convert voxel-wise STCs to concentration time curves (CTC), model selection, and eventually the calculation of perfusion and filtration parameters [7,8,9,10]. There are several existing software packages that can calculate renal perfusion and filtration from a dynamic contrast enhanced MRI scan. However, none of the packages provide a complete solution so that the user has to select the package(s) that fit(s) his needs most.

This analysis protocol chapter is complemented by two separate chapters describing the basic concept and experimental procedure, which are part of this book.

This chapter is part of the book Pohlmann A, Niendorf T (eds) (2020) Preclinical MRI of the Kidney—Methods and Protocols. Springer, New York.

2 Materials

2.1 Software Requirements

The methods described in this chapter require the following software tools:

  1. 1.

    A recent version of the DICOM workstation OsiriX (www.pixmeo.com) or Horos (https://horosproject.org/).

  2. 2.

    UMMPerfusion Plugin version 1.5.3 (http://www.opossumm.de/redmine/projects/ummperfusion).

  3. 3.

    Bayesian Data-Analysis Toolbox (a working manual of the entire Bayesian Data-Analysis Toolbox, including server- and client-side installation and operation instructions, descriptions and operating instructions for software packages and an overview of Bayesian Probability Theory can be found at: http://bayes.wustl.edu/Manual/BayesManual.pdf). Information on server-side and client-side configurations may be found below in Notes 1 and 2.

2.2 Source Data: Format Requirements and Quality Check

2.2.1 Input Requirements

To analyze preclinical data with UMMPerfusion, the image data need to be converted into DICOM prior to the analysis [11, 12]. It is recommended to convert DICOM to NIFTI first, then use the NIFTI images for all processing within ROCKETSHIP [13]. Data can be imported into DCE @ur-Lab from DICOM format, Bruker Biospin MRI data format (http://www.bruker.com/products/mr/mri.html), as well as from binary unformatted data [14]. MITK-model fit can import various data formats like DICOM or NIFTI [15].

2.2.2 Prequality Check

Visual inspection is required to check that all slices are aligned as time advances. Slices with clear motion artifacts should be removed. More robustly, data with slight movements can be recovered by coregistration images to suitable baseline image(s).

3 Methods

3.1 Segmentation

For the calculation of whole kidney GFR it is necessary to segment the kidneys and to determine their volume .

3.2 T1 Mapping

According to the software chosen for performing the analysis the series of images acquired may be converted to a convenient format (e.g., DICOM).

The calculations should be performed only on the pixels obtained from renal segmentation (see Subheading 3.1).

More detailed descriptions of T1 mapping calculations are described in the chapter by Garteiser P et al. “Analysis Protocols for MRI Mapping of Renal T1.”

3.2.1 VTR Analysis

For the analysis of the VTR images a pixel-by-pixel fitting procedure is used to fit the intensities of every renal pixel in the images as a function of TR against the following signal equation

$$ S=A+{S}_{\mathrm{o}}\left(1-{\mathrm{e}}^{-\mathrm{TR}/{T}_1}\right) $$
(1)

where TR is the repetition time, A is a bias intensity, and S0 is the intensity once reached a plateau.

For every pixel a T1 value can be obtained according to the fitting of Eq. 1 (an example of T1 map fitting within the Bruker Paravision® software is shown in Fig. 1).

Fig. 1
figure 1

T1 map fitting under the VTR scheme performed within the Bruker Paravision 5.1® software for a selected ROI

3.2.2 VFA Analysis

For the analysis of the VFA images a pixel by pixel fitting procedure is used to fit the intensities of every renal pixel in the images as a function of FA against the following signal equation

$$ S=A+{S}_{\mathrm{o}}\left[\frac{\sin \mathrm{FA}\times \left(1-{\mathrm{e}}^{-\mathrm{TR}/{T}_1}\right)}{1-\cos \mathrm{FA}\times {\mathrm{e}}^{-\mathrm{TR}/{T}_1}}\right] $$
(2)

where FA is the flip angle, TR is the repetition time, A is a bias intensity and S0 is the intensity reached a plateau.

For every pixel a T1 value can be obtained according to the fitting of Eq. 2.

3.3 Model Selection and Quantification

Several methods for DCE-MRI analysis have been proposed, with different mathematical representation of physiologic system interpretation through kinetic modeling [1]. Due to the large number of these methods and models, herein we describe only those that are mostly used and that can be easily exploited due to the availability of free software for these analyses. Among them we will consider deconvolution approaches (see Subheading 3.4) and extended Toft’s model (see Subheading 3.5). In addition, a description on how to select the best model based on Bayesian approaches according to the acquired data is also provided (see Subheading 3.6).

3.4 Deconvolution Approach

The following steps are based on the UMMPerfusion plugin [12] and the DICOM workstation OsiriX.

  1. 1.

    Open the dataset in the Osirix 4D-viewer (see Note 3):

  2. 2.

    OsiriX will check if the data selected are a 4D data set (3D spatial plus 1D temporal), however, sometimes this internal check fails. Therefore, an intermediate step might be necessary to load the data into the UMMPerfusion plugin. To do so, select the series in the database window. Press the Alt-Key and click the 2D-viewer’s icon at the same time. A window will open. Select/click on the 4D-viewer button, the series will appear within the 4D viewer, although it was not designed for it initially.

  3. 3.

    Start the plugin via the Osirix plugin menu (see Fig. 2):

    Plugins → image filter → UMMPerfusion

  4. 4.

    Select algorithm from the tool bar (see Fig. 3).

  5. 5.

    Place a ROI on a clearly visible artery in order to receive an arterial input function.

  6. 6.

    For ensuring correct results all algorithms require an arterial input function (AIF). This function is defined by using the Osirix ROI-tool and by placing/designating a “region of interest” (ROI ) on the abdominal artery. An oval is used as a standard, however all ROI-tools offered by Osirix are supported by UMMPerfusion.

  7. 7.

    Upon placing a ROI , a chart will appear on the right-hand side of the plugin window, depicting the arterial input function. The aif-color corresponds to the current ROI border color, whereas the vertical line, the base line will always be in red. When a ROI is created, it will be attached to the popup-menu. If several ROIs have been created within this dataset, the desired ROI has to be assigned to its determined position. If only one pixel shall be the source of the AIF, the ROI-Brush- Tool with the size of 1px is to be used in order to specify the smallest ROI possible (Fig. 4).

  8. 8.

    Make sure that the desired ROI is selected in the popup menu called “Arterial.”

  9. 9.

    A good ROI selection can be recognized by a large peak on the chart to the right of the plugin-window.

  10. 10.

    Drag the baseline to a desired position or simply enter the value in the respective text field.

  11. 11.

    The length of baseline represents the number of images during a certain period of time that are used for signal normalization. For attaining correct results, the baseline should be chosen in a way that the tracer is not yet visible at that point of time. The easiest way to set the baseline is to drag the baseline with the mouse to its desired timeframe in the AIF-chart. The value can alternatively be inserted into the baseline textfield (see Note 4, and Fig. 5).

  12. 12.

    Set limits to the relevant scope by using the trim-sliders if necessary.

  13. 13.

    Before hitting the generate-button, there is the opportunity to activate the autosave-checkbox to automatically save the results and to generate a report.

  14. 14.

    The calculation begins after using the generate-button.

  15. 15.

    As a result, three new views/viewers are created in which the calculated data are presented. Each viewer shows one parametric map calculated by the deconvolution approach: blood flow (perfusion) in ml/100 ml/min, the blood volume (ml/100 ml) and the mean transit time (s) (Fig. 6).

  16. 16.

    If the autosave function has not been activated before using the generate button, it is still possible to save the results as well as the report after the calculation. In this case, use the export button next to the generate-button.

Fig. 2
figure 2

Selecting the UMMPerfusion plugin from the plugin menu of OsiriX

Fig. 3
figure 3

UMMperfusion drop down menu to select a perfusion model

Fig. 4
figure 4

Example of placing a ROI to select the AIF. The AIF is displayed as a chart next to the plugin

Fig. 5
figure 5

Selection of the baseline

Fig. 6
figure 6

Example of the result of the deconvolution model implemented in UMMPerfusion. Besides the original DCE-MRI data (top left), three additional viewers are opened presenting parametric maps of blood flow, blood volume, and mean transit time

3.5 Toft’s Model

Three open source packages for renal perfusion and filtration quantification implement the Toft’s model, namely, UMMPerfusion [12], ROCKETSHIP [13], MITK-model fit [15], and DCE @ur-LAB [14]. In the following, the processing steps are given for UMMPerfusion; however, the other three tools can be used in exchange. For details on using them please refer to the respective documentation.

  1. 1.

    Open the dataset in the Osirix 4D-viewer.

  2. 2.

    Start the plugin via the Osirix plugin menu:

    Plugins → image filter → UMMPerfusion.

  3. 3.

    Select algorithm from the tool bar.

    UMMperfusion implements the extended Toft’s model. It can be calculated either ROI-based (see Note 5) or pixel-wise. The latter is described in the following.

  4. 4.

    Place a ROI on a clearly visible artery in order to receive an arterial input function. The recommended shape of the ROI is oval.

    Please see Subheading 3.4 for more details.

  5. 5.

    Place a rectangular ROI on the relevant tissue. When using the pixel-based compartment model algorithms, only a rectangular ROI shape is supported at the moment by UMMPerfusion.

  6. 6.

    The pixelwise calculation might require some time to calculate. To save time, the ROI should be accurately fitting around the tissue that is to be analyzed (see Fig. 7).

  7. 7.

    The arterial-ROI and the tissue-ROI do not have to be on the same slice.

  8. 8.

    Make sure that the desired arterial-ROI is selected in the popup menu called “Arterial.”

  9. 9.

    Make sure that the desired tissue-ROI is selected in the popup menu called “Tissue.”

  10. 10.

    Select the tracer approximation, baseline, and spatiotemporal trimming of the data as described in Subheading 3.4.

  11. 11.

    The calculation begins after using the generate-button. A new window will appear, in which the desired viewers (parametric maps) can be chosen.

  12. 12.

    Upon approval with the OK button the selected viewers will appear and show the specified area (see Fig. 8).

  13. 13.

    If the autosave function has not been activated before using the generate button, it is still possible to save the results, as well as the report. In that case, use the export button next to the generate-button. The dataset’s name will be appended on your specified name.

Fig. 7
figure 7

Example of rectangular ROI placed tight around the kidney. Within this ROI, a voxel-wise fit of the Toft’s model is performed, all pixels outside the ROI are not considered

Fig. 8
figure 8

Example of different parametric maps calculated by the Toft’s model. Based on the ROI drawn around the kidney, only voxels within this ROI are used during model fit. Voxels outside the ROI are not taken into account

3.6 Bayesian Model Selection

3.6.1 Analyzing Regions of Interest Data Using the Enter ASCII Model Package

From the client-side Java interface:

  1. 1.

    Select the “enter ASCII Model” option under the “Package” menu.

  2. 2.

    Load your signal model.

    • Your own signal model can be loaded using the “User” button (links to the client-side .../Bayes/BayesAsciiModels folder, where you should store you model and parameter files).

    • A prepackaged “System” model can be loaded using the “System” button (links to Server-side models).

  3. 3.

    Load ASCII data using widgets.

    • File → Load ASII → File.

    • Data file must be in ASCII format.

    • Data are typically in 2-column ASCII format (abscissa, ordinate), however, the software package allows both multicolumn abscissas and ordinates.

  4. 4.

    Build your model using the “Build” button.

  5. 5.

    OPTIONAL: If you believe that your data contains outliers, you can check the “Find Outliers” option under “Analysis Options.”

  6. 6.

    Under the “Prior Viewer” tab, review your user-defined prior probability distributions and parameter ranges.

  7. 7.

    If you have multiple servers running the Bayesian Data-Analysis Toolbox, select the desired server for processing the analysis using the “Select” button.

  8. 8.

    OPTIONAL: You can check the status of the selected server using the “Status” button.

  9. 9.

    Run the analysis using the “Run” button.

  10. 10.

    You can monitor the status of the analysis using the Status button or the button bearing a picture of an eye at the bottom left of the window.

  11. 11.

    Once the analysis is complete, retrieve the results using the “Get Job” button or the job will be automatically retrieved when the job status is checked and the job is completed.

3.6.2 Model Selection and Analysis of Region of Interest Data Using the Enter ASCII Model Selection Package

From the client-side Java interface:

  1. 1.

    Select the “enter ASCII Model Selection” option under the “Package” menu.

  2. 2.

    Load all of the signal models that you would like to compare.

    • Your own signal models can be loaded using the “User” button (links to the client-side ../Bayes/BayesAsciiModels folder, where a model and parameter files are stored).

    • Prepackaged “System” models can be loaded using the “System” button (links to Server-side models).

  3. 3.

    Load your data.

    • File → Load ASII → File.

    • Data file must be in ASCII format.

    • Data are typically in 2-column ASCII format (abscissa, ordinate), however, the software package allows for multicolumn data and abscissaes (See the Bayesian Data-Analysis Toolbox manual, Appendix A for details).

  4. 4.

    Build your models using the “Build” button.

  5. 5.

    OPTIONAL: If you believe that your data contain outliers, you can check the “Find Outliers” option under “Analysis Options.”

  6. 6.

    Under the “Fortran/C Model Viewer” → “Parameters” tabs, review your user-defined prior probability distributions.

  7. 7.

    If you have multiple servers running the Bayesian Data-Analysis Toolbox, select desired server for processing the analysis using the “Select” button.

  8. 8.

    OPTIONAL: You can check the status of the selected server using the “Status” button.

  9. 9.

    Run the analysis using the “Run” button.

  10. 10.

    You can monitor the status of the analysis with the Button bearing a picture of an eye at the bottom left of the window, or using the status button.

  11. 11.

    Once the analysis is complete, retrieve the results using the “Get Job” button. The job is automatically retrieved when the job status is checked and the job is completed.

3.7 Voxel-Wise Image Analysis

3.7.1 Analyzing Image Data Using the Analyze Image Pixels Package

From the client-side Java interface:

  1. 1.

    Select the “Analyze Image Pixels” option under the “Package” menu.

  2. 2.

    Load your signal model.

    • Your own signal model can be loaded using the “User” button (links to the client-side ../Bayes/BayesAsciiModels folder, where you should store you model and parameter files).

    • A prepackaged “System” model can be loaded using the “System” button (links to Server-side models).

  3. 3.

    Load your data.

    • File → Load Image.

    • Select the file format of your data.

  4. 4.

    Load an abscissa file (your vector specifying the time at which data were collected, b-values, echo times, etc.).

  5. 5.

    Set the noise standard deviation of the data.

    • An acceptable approximation of the noise standard deviation for this purpose would be to draw an ROI in a region of no signal of an image and input the RMS value of this ROI . Tools to make this measurement are available in the main window once data have been loaded—Do not use the standard deviation of the data.

  6. 6.

    Compile your signal model using the “Build” button.

  7. 7.

    OPTIONAL: If you believe that your data contains outliers, you can check the “Find Outliers” option under “Analysis Options.”

  8. 8.

    OPTIONAL: If you want a much faster analysis, you can select the “Max Probability” option. The option comes at the cost of only returning the max probability parameter value. No posterior probability distribution information is available if you use this option.

  9. 9.

    Under the “Prior Viewer” tab, review the prior probability distributions.

  10. 10.

    If you have multiple servers running the Bayesian Data-Analysis Toolbox, select desired server for processing the analysis using the “Select” button.

  11. 11.

    OPTIONAL: You can check the status of the selected server using the “Status” button.

  12. 12.

    Run the analysis using the “Run” button.

  13. 13.

    You can monitor the status of the analysis with the status button or the button bearing a picture of an eye at the bottom left of the window.

  14. 14.

    Once the analysis is complete, retrieve the results using the “Get Job” button. The job is automatically retrieved when the job status is checked and the job is completed.

3.7.2 Model Selection and Analysis of Image Data Using the Image Model Selection Package

From the client-side Java interface:

  1. 1.

    Select the “Analyze Image Pixels” option under the “Package” menu.

  2. 2.

    Load all of the signal models that you would like to compare.

    • Your own signal models can be loaded using the “User” button (links to the client-side ../Bayes/BayesAsciiModels folder, where you should store you model and parameter files).

    • Prepackaged “System” models can be loaded using the “System” button (links to Server-side models).

  3. 3.

    Load your data.

    • File → Load Image.

    • Select the file format of your images.

  4. 4.

    Load an abscissa file (your vector specifying the time at which data were collected, b-values, echo times, etc.).

  5. 5.

    Set the noise standard deviation of the data.

    • An acceptable approximation of the noise standard deviation for this purpose would be to draw an ROI in a region of no signal of an image and input the RMS value of this ROI . Tools to make this measurement are available in the main window once data have been loaded.

  6. 6.

    Build your signal models using the “Build” button.

  7. 7.

    Under the “Fortran/C Model Viewer” → “Parameters” tabs, review your user-defined prior probability distributions.

  8. 8.

    If you have multiple servers running the Bayesian Data-Analysis Toolbox, select desired server for processing the analysis using the “Select” button.

  9. 9.

    OPTIONAL: You can check the status of the selected server using the “Status” button.

  10. 10.

    Run the analysis using the “Run” button.

  11. 11.

    You can monitor the status of the analysis using the status button, or with the Button bearing a picture of an eye at the bottom left of the window.

  12. 12.

    Once the analysis is complete, retrieve the results using the “Get Job” button. The job is automatically retrieved when the job status is checked and the job is completed.

3.8 Results Validation

3.8.1 Evaluation of Analysis Errors and Variability Using Synthetic Data

UMMPerfusion has been in-house certified by the authors and comes with a set of simulated data to test the technical validity of the algorithms. Also, the other software packages provide example data for testing. The Bayesian Data-Analysis Toolbox provides an estimation of uncertainty, even for a single measurement and it has been validated with simulated data for which ground truth is known [4].

3.8.2 Comparison with Reference Values from the Literature

Table 1 surveys reference values from the literature for renal blood flow in small rodents. Please note that these values might vary versus those obtained by the reader following this chapter due to different AIF selection and acquisition parameters.

Table 1 Values of renal blood flow (RBF) reported in the literature for different animal models and field strengths

4 Notes

  1. 1.

    Recommended server configuration and server-side installation of the Bayesian Data-Analysis Toolbox: Multicore LinuxPC (32 or 64 cores); 32- or 64-bit processor; Operating system: Linux (CentOS 4.7 or higher) or Sun Solaris 9 or 10; Installing Fortran and C is strongly recommended (required to build and analyze data with your own signal model). Server-side installation instruction can be found at: http://bayesiananalysis.wustl.edu/install.html.

  2. 2.

    Recommended client-side configuration for the Bayesian Data-Analysis Toolbox: any operating system that can run Java 6 or higher. Note that the client machine only runs a Java graphical user interface that the sends and receives jobs from the server-side Bayesian Data-Analysis Toolbox. Through this interface, data can be loaded and visualized, mathematical models can be written in Fortran and tested, jobs can be sent to the server-side software for analysis, and completed jobs can be retrieved from the server-side Bayesian Data-Analysis Toolbox and visualized.

  3. 3.

    If T1-mapping is available, please convert signal intensities to concentrations beforehand and save this back into DICOM files.

  4. 4.

    If concentration time curves are used, please select the option “Signal enhancement.”

  5. 5.

    For examples to perform ROI based analysis with UMMperfusion please see http://www.opossumm.de/redmine/projects/ummperfusion/wiki/Tutorials__How_to_.