Background

Magnetic resonance perfusion imaging has become an important tool for functional assessment in various applications, like tumor diagnostics and therapy, stroke, (cardio-) vascular diseases, or functional assessment of organs [14]. Currently, contrast-enhanced dynamic MR imaging (DCE-MRI) is the method of choice to measure perfusion non-invasively and without radiation exposure. Various approaches were proposed to assess hemodynamic parameters (e.g., blood flow, blood volume, and mean transit times) as well as permeability–surface area product or interstitial volume by dynamic MRI [510]. Added value of perfusion imaging has been reported, e.g., for kidney [3, 11] or heart disease [12]. In prostate cancer perfusion imaging has developed as one part of a multi-parametric approach to stage cancer [1316].

However, so far MR perfusion imaging remained a research tool and was not broadly introduced in the clinical domain [17, 18]. One problem is the lack of standardization in technical aspects which have to be considered for successful quantitative evaluation, including sequence and contrast agent dose optimization [19], correct selection of the arterial input function [20], or correction for motion artifacts [21, 22].

The second problem is a lack of tools that allow a direct integration into the diagnostic workflow in radiology. Research tools that allow calculations of hemodynamic parameters are developed often as offline solutions and the clinician has to transfer the large image data sets to a separate workstation for analysis [3, 2327]. Furthermore, to include the results in the clinical workflow they have to be transferred back into the diagnostic system. However, results obtained from most research software are stored in various formats that could not easily be converted to DICOM objects to be stored in picture archive and communication systems (PACS) [23]. Certainly, the aforementioned procedure is feasible in the research context investigating small patient groups; however, in daily practice this becomes cumbersome.

Commercial software solutions for perfusion imaging exist. They allow (partial) integration into the clinical environment, especially if provided by the vendors of the MR scanners. However, such software is expensive which prevents ubiquitous usage, i.e., only few licenses or dedicated workstations are usually purchased. Even more, available commercial software solutions are often dedicated to a single application, i.e., heart, brain, or prostate perfusion [15, 27, 28] which does not allow for easy extension and adaption beyond the intended usage in the clinical situation [29].

Here, we present our results of the development of an Open Source OsiriX plug-in for the analysis of magnetic resonance perfusion imaging that allows for integration into the radiological and clinical workflow. We implemented a classic, pixel-by-pixel deconvolution approach to quantify T1-weighted DCE-MRI perfusion data thereby, providing a generic approach to be used with various clinical applications. Furthermore, we established a test suite that allows for automatically testing of the correctness of the obtained results to a given reference implementation and reporting tools to enable quality management with perfusion analysis.

Materials and Methods

Data Sets

Clinical Data

To test our plug-in, we applied it retrospectively to ten MR perfusion data sets of the prostate. Patients were selected randomly without any prior knowledge about the acquired data. All patient information was anonymized before processing.

All data were acquired on a 3 T scanner (Tim Trio, Siemens Medical Healthcare, Erlangen, Germany) using a 32 elements spine matrix array and a six channel surface body coil. The data sets were acquired by a standardized protocol using a 2D inversion-recovery TurboFlash sequence with parameters TR/TE/TI/FA = 193 ms/1.05 ms/72 ms/12°, matrix size of 108 × 192 reconstructed to 288 × 384, FOV = 29 × 39 cm2, in-plane resolution after reconstruction of 1 × 1 mm2, six 6-mm thick slices, 150 time points with temporal resolution of 3.4 s. A bolus of 0.1 mmol/kg body weight of gadolinium chelate (Dotarem®, Guerbet, Roissy CdG Cedex, France) at 2.5 ml/s was injected with a power injector (Medrad Inc., Pittsburgh, PA, USA) followed by a saline flush of 40 ml.

Calibration Data Set

Each calibration data set was generated out of our 4D perfusion data sets. Therefore, 32 voxel time intensity courses were selected: 16 voxel were taken from a region of interest (ROI) in an artery, i.e., forming the arterial input function (AIF; C1–D8 in Fig. 1), and 16 voxels were taken from prostate tissue (A1–B8, see Fig. 1). In total ten calibration data sets were generated.

Fig. 1
figure 1

Calibration data set of size of 32 pixels. Sixteen pixels were taken from an artery (C1–D8) and 16 pixels from the prostate (A1–B8) to obtain intensity values. Color coding of the pixel is for visualization purpose only

Data Analysis Algorithm

The core algorithm for data analysis was translated into C from an IDL implementation that is embedded in the software Platform for Medical Imaging research (PMI) [24]. The PMI algorithm is optimized for robustness, precision, and calculation time, and presented to the user as "Fast Deconvolution". For applications where high accuracy is less important, it offers a suitable alternative to more accurate, but slower and less robust algorithms for model-free deconvolution on the pixel level [30]. Calculating the perfusion parameters by deconvolution is given in the Appendix.

The implemented “Fast Deconvolution” algorithm in PMI is a modified version of the highly successful truncated singular value decomposition (TSVD) algorithm with a fixed regularization parameter, as first proposed for dynamic susceptibility contrast MRI (DSC-MRI) by Ostergaard et al. [31]. Four different modifications were implemented:

  1. 1.

    A preprocessing step is included that resamples the data to a fixed temporal resolution in case they are acquired in a triggered mode that produces non-uniform temporal sampling (e.g., in the heart, or with breathing-triggered acquisitions).

  2. 2.

    Since the algorithm in Ostergaard et al. [31] was developed for T2*-weighted DSC-MRI, the conversion of signal to concentration is modified for use in T1-weighted DCE-MRI.

  3. 3.

    For calculating the convolution product the Volterra formula [32] is used, which corrects an error in the original formula for discretization with linear interpolation proposed in Ostergaard et al. [31].

  4. 4.

    Since the algorithm is designed generic to be applicable in different applications, the extracted parameters are plasma flow and volume of distribution rather than blood flow and blood volume. The latter interpretation is only justifiable for intravascular tracers, which is the context of Ostergaard et al. [31]. The interpretation in terms of plasma values is more general and applies to extravasating tracers as well.

The algorithm consists of four consecutive steps: signal conversion, data resampling, deconvolution, and parameterization.

To calculate the tracer concentrations C(t) from the DCE-MRI signals S(t) and for the sake of robustness on the pixel level, signal conversion is performed assuming a linear relation between S and C. First, the baseline signal S0 is calculated by averaging the first n time points of S(t). Two alternative formulae for signal conversion are implemented: "Signal Enhancement" is defined as C(t) = a(S(t) − S0); it is the most robust option and is preferred for sufficiently homogeneous MRI coils; "Relative Signal Enhancement" is defined as C(t) = b(S(t) − S0)/S0, and should be used when sufficient uniformity of the coils cannot be guaranteed. Further it is assumed that the slopes "a" and "b" are tissue-independent, so that they cancel out when comparing arterial- and tissue curves, and can be set to 1.

To obtain results in terms of plasma flow and volume, the arterial input function is divided by 1-Hct, where Hct is the hematocrit of the patient, a user-defined parameter. A default value of Hct = 0.45 is set for cases when the actual hematocrit is unknown (see Fig. 2). For intravascular tracers, the plasma flow and volume of distribution produced by the algorithm can be divided by 1-Hct again to retrieve the blood flow—and volume. The latter parameters will then be independent of the value chosen for Hct.

Fig. 2
figure 2

Graphical user interface of the perfusion plug-in. The arterial input function (green curve) selected by the user is shown in display window. The plot is updated in real-time when the user changes the corresponding ROI in the image. Also the current setting of the baseline (red line) is depicted

After signal conversion, if the data has temporal non-uniform sampling the concentration time curve is resampled by linear interpolation to a uniform grid with spacing Δt equal to the smallest time-interval in the series.

OsiriX Dicom Viewer

OsiriX is an Open Source image processing software dedicated to DICOM images produced by various imaging modalities such as MRI, CT, or PET and ultrasound [33, 34]. As it is fully compliant with the DICOM standard for image communication and image file formats, OsiriX is able to communicate with any PACS or imaging modality by the DICOM communication protocol. It provides support to view and multi-dimensional imaging data [35]. Furthermore, it provides a plug-in interface to expand the capabilities of the OsiriX software [36]. Thereby, one can take advantage of the communication and viewing functionality provided by the main OsiriX software but also one is flexible to implement own algorithms and to access the image data. Currently, about 45,000 active user of this software were reported [37]. In this study, OsiriX version 3.7.1 and 3.8.1 as well as the FDA-approved version OsiriXPro 2.0 (aycan Medical Systems, LLC, Rochester, NY, USA) were utilized.

Plug-in Implementation

Our OsiriX plug-in was implemented using Objective-C and C++. The latter was mainly used for the internal image data structures used with the SVD algorithm, since these could be processed significantly faster than the corresponding native Objective-C constructs [38].

Since the deconvolution operation can be performed independently for each pixel [30], the calculations can be processed in parallel. The operating system platform (MacOS X) provides native support for parallel processing [39]; therefore, we incorporated support for multi-core/threaded processing to speed-up the calculation. Thereby, the plug-in automatically detects if multiple central processing units (CPUs) are available and distributes the calculations. In our implementation, the single cross sections of a data set are distributed to the available CPUs.

The plug-in architecture is designed such that other perfusion analysis algorithms could be integrated with the user interface. Each possible algorithm is wrapped into a separate class (Algorithm), the class UMMPAlgorithm provides an interface to our plug-in. Figure 2 depicts the user interface of the perfusion plug-in.

Calculated parametric maps can be saved as DICOM series with the current study for archiving or further tasks.

Quality Management

Besides the implementation of the deconvolution algorithm, a second goal of this work was to establish means to ensure a quality management during analysis of the perfusion data. Several pitfalls exist that can invalidate the results of a perfusion analysis [19]. The most obvious is an inappropriate choice of the AIF [20]. Commonly, the AIF is selected by drawing a small ROI into an artery supplying the tissue under investigation. In our plug-in implementation, the AIF (mean curve of all pixels within the ROI) is plotted online so that errors made while choosing an inadequate AIF are reduced (see Fig. 2). It is updated real-time if the user modifies the ROI used for the AIF measurement.

A second important aspect is defining a correct range of baseline time points for signal normalization and signal conversion into tracer concentration, respectively. The baseline selection is visualized in the display window where the AIF is plotted and can be adjusted manually. Furthermore, the total number of volumes (time points) to be processed can be adjusted by trimming the time series. This is potentially useful if, e.g., the MR sequence does not reach the steady state within the first acquired volume; such data can be discarded not to hamper the perfusion estimation.

To be able to (later) follow-up steps taken to calculate perfusion parameters, a report sheet was implemented. It depicts the AIF time intensity curve, its corresponding ROI including slice position and time point, and the number of baseline elements as well as the type of signal normalization selected. The report is automatically added as DICOM object to the current study to be archived together with the patient record in a PACS system. Also all resulting perfusion parametric maps can be automatically saved with a prefix defined by the clinical user. To allow image fusion between the saved parametric maps and the original image data the corresponding frame of reference is preserved.

Evaluation

Evaluation of our software was performed by comparing the results of the perfusion plug-in to a reference software implementation of the TSVD algorithm (PMI 0.4, written in IDL 6.0, ITT VIS, Boulder, CO, USA) [24] that has been used and evaluated in several studies, e.g., to the artificial data sets. All parameter settings were kept the same for all calculations. To make sure that the ROIs were the same within the two programs, the coordinates of the ROI were noted during drawing of ROIs within PMI and transformed into the coordinate space of OsiriX. Thereby, exact locations of the ROIs could be maintained. The results of the two programs were compared by calculating the mean difference between the corresponding parametric maps. A two-sample t test was employed to test if these differences are significant. Thereby, a p value less than 0.05 was assumed as significant different.

In addition, results obtained by PMI were saved and bundled with the calibration data to form a test suite. The whole evaluation procedure was automated, so that it could be repeated at any time, e.g., when extending the plug-in.

We also processed the ten MRI prostate perfusion data sets to test the stability of our plug-in. Furthermore, we were interested in the processing time of our implementation to see the effect of the implemented support for parallel processing. Therefore, we used two computers with typical hardware settings at our radiology department: a MacPro with 2 × 2.8 GHz Quad-Core Intel Xeon 5400 and 12 GB memory, and an iMac with 3 GHz Intel Core 2 Duo E7600 and 4 GB, respectively. Measured processing times only include the calculation of the perfusion maps, i.e., the time measurement started after the user clicked the ‘generate’ button.

Results

For all data sets parametric maps of plasma flow, volume of distribution, and mean transit time were calculated without problems.

Comparing the calibration data between our implementation and the reference implementation in PMI, on average a deviation of 0.032 (±0.02) ml/100 ml/min for the plasma flow, 0.004 (±0.0007) ml/100 ml for the volume of distribution, and 0.037 (±0.03) s for the mean transit time was observed. Differences were not significant for all three parameters (plasma flow: p = 0.9997, volume of distribution: p = 1.000, mean transit time: p = 0.9952).

Average processing time using two CPUs was 49.5 (±1.7) s for computing the parametric maps, using eight CPUs, 19.5 (±0.5) s, respectively. An increase in processing speed of 2.5-fold was achieved using a multiprocessing unit.

Figure 3 depicts the results obtained for analyzing a prostate perfusion data set, as an example. In addition to the primary viewing window containing the 4D perfusion data set, three viewer instances are automatically generated each showing one of the obtained parametric maps (plasma flow, volume of distribution, mean transit time). Color coding of the parametric maps is arbitrary. It can be adjusted by the reader using the built-in color maps provided by OsiriX. Moreover, a fusion of the parametric maps with the high-resolution anatomical MR images was available with one mouse click. Three-dimensional resampling of the parametric maps, already provided by OsiriX, allowed for the adaption to MR images with different slice orientations (cf. Fig. 4).

Fig. 3
figure 3

Visualization of perfusion analysis results by our plug-in using. Top left the original data set (3D + time), top right plasma flow, lower left volume of distribution, lower right mean transit time. Data originates from a prostate MR exam

Fig. 4
figure 4

Illustration of image fusion of a plasma flow map calculated by our plug-in to a high-resolution T1-weighted MRI of the same patient data set. The T1-weighted image is given in grayscale, the plasma flow map in a rainbow colormap

Figure 5 depicts the report that is automatically generated and stored in the DICOM database during the calculation of the perfusion parameters by our plug-in. It depicts the parameters of the algorithm like regularization or the length of the baseline, the type and position of the ROI drawn to select the AIF by a screen shot, and finally, the time intensity curve of the AIF generated from the aforementioned ROI. If temporal resampling by linear interpolation was used during the calculations it is noted in the report, too.

Fig. 5
figure 5

Report generated during perfusion analysis. It shows location and shape of the arterial input function and parameter settings like the chosen regularization for the perfusion calculation

Discussion

We developed successfully a perfusion analysis plug-in for the Open Source DICOM workstation OsiriX. It provides quantitative pixel-by-pixel analysis of T1-weighted DCE-MRI data and fast computation by using parallel processing. Calculated parametric maps are saved directly to the OsiriX DICOM data base, allowing for transferring data easily to a PACS or other workstations. A report that records all parameter settings of the perfusion analysis is automatically generated and saved with the patient record, too. Thereby, our plug-in provides quality management for perfusion analysis. While implementing the plug-in, an interface to easily extent the plug-in, e.g., to incorporate other perfusion calculations, was created.

We selected OsiriX as platform since it is already used in several clinical applications, ranging from reading multimodal images to spine surgery or aortic stent graft planning [34, 37, 40, 41]. In addition, a plug-in interface allows extending the OsiriX software and numerous plug-ins already exist [36]. Furthermore, as Open Source software, OsiriX provides vendor neutral processing and cost-efficient reading of images [37] including image fusion and multimodal reading. Therefore, it was a reasonable step to implement the TSVD approach into this system.

The implementation of the plug-in was tested using artificially constructed data similar to Kosior et al. [23]; however, we did not simulate the perfusion data but obtained them from real-world data. Setting up a small matrix of only 32 pixels compared to a matrix of 50 by 50 as Kosior et al. allows for fast and easy assessment of the calculated results. Even a manual step by step verification of the TSVD algorithm is feasible.

Results showed only very small differences between our implementation and the reference PMI. These differences were not significant (p > 0.05) and might be due to the iterative numerical calculation scheme of the TSVD algorithm. Results on perfusion MRI in prostate reported standard deviations for the plasma flow of up to 39.7 ml/100 ml/min, for the volume of distribution of 2.7 ml/100 ml, and mean transit times variation of up to 9.6 s [2]. With respect to these variations, probably mostly due physiological variations in the patients, the differences in the second decimal place between the two implementations are acceptable. We conclude that our implementation is technically correct.

Besides integrating perfusion analysis into the radiological workflow itself, also the time needed to compute results is an important aspect, especially if used in a clinical setting [16]. In our implementation, parallel data processing is supported, allowing utilizing hardware advantages like multiple CPUs to reduce calculation time. Certainly, calculation times are heavily dependent on the size of the data set and the utilized hardware. Thus, our results (ca. 1 min for iMac, 30 s for an eight-core MacPro) could be seen as orientation. We think that a processing time of less than 30 s is acceptable for the use in clinical routine.

The developed plug-in was evaluated on MRI of prostate. Software already exists for this purpose, also including DICOM communication [15, 28]. However, these applications cover a whole multi-spectral approach to prostate cancer diagnosis, rather than only perfusion analysis. Our aim was not to build specific software for prostate cancer diagnostics, but a plug-in to perform perfusion analysis in general, not limited to a single clinical application. Nevertheless, in conjunction with other OsiriX plug-ins (i.e., ADC, T2 mapping) [36], a multi-spectral analysis and diagnostic of prostate cancer is possible, too, without the need for separate, dedicated software.

In contrast to most reported tools for perfusion analysis [23, 25, 28], our software provides means for basic quality management. Thereby, it is possible to track and identify errors made during the initial analysis easily at a later time. This might probably reduce the propagation of wrong results within the clinical workflow and therefore, in the end, prevent false diagnosis or decisions in treatment of patients. Moreover, a risk analysis and quality management plan as well as a handbook for the use of the software was authored (available at http://www.opossumm.de/). These efforts strongly support a possible in-house certification according to the Medical Devices Directive of the European Union for the use of the software in clinical routine. Thereby, the software module can be used in a clinical environment without additional costs and with minimal efforts.

So far, we implemented in our plug-in a deconvolution method to analyze perfusion data. Our rational was that this algorithm is generic (i.e., model-free approach) and robust. This is reflected by numerous studies using deconvolution-based perfusion analysis for diagnostic of diseases in the brain [9, 42], the heart [43, 44], the lungs [45, 46], the breast [47], the kidneys [48], and the prostate [14]. This technique is not limited to MRI and was also applied to CT perfusion data [49, 50]. In principle, the only prerequisite for using deconvolution analysis in all these applications is a bolus tracking experiment.

However, more dedicated physiological models can provide not only perfusion-related parameters (blood flow, blood volume, and mean transit time) but also additional, tissue-specific parameters like permeability or filtration. This is desirable, i.e., when studying brain barrier leakage [51], tumors [52], or kidney filtration [4, 11, 18]. Such tasks can be performed when applying compartment models [6, 19]. Future research will be directed towards implementing a one- and two-compartment model as reported in the literature [5, 6, 8].

Our plug-in is limited to calculating the perfusion from T1-weighted DCE-MRI data. However, we implemented an interface within the plug-in to allow for extensions or to integrate other computations of the perfusion. Since the only difference in calculating perfusion parameters from T1- and T2*-weighted dynamic MRI is the signal to concentration conversion [30], such an extension will be easily to implement in a future version of our plug-in. Also, when using the plug-in for perfusion analysis of moving organs like the heart or the kidneys, motion artifacts have to be corrected for independently, using image registration [21] or breathing, triggering, or navigation techniques during image acquisition [22, 53].

Another aspect of deploying such a plug-in into a clinical routine is its usability. We currently roll out the tool at our radiology department (about 70 diagnostic OsiriX workstations) and thus, only little information about usability issues is yet available. However, initial feedback was positive, stating an easy usage of the tool and only few minutes for learning how to use the plug-in. A more detailed analysis of usability aspects is currently investigated.

The plug-in is licensed under a BSD type license and is available at http://www.opossumm.de/projects/ummperfusion/files. The website also provides access to a source code repository and documentation. We further plan to list our plug-in with the OsiriX website to reach a broader audience of possible users or developers.

Conclusion

We successfully developed an Open Source plug-in for perfusion analysis. The plug-in is integrated in the DICOM workstation OsiriX, therefore, providing integration in a clinical environment. We envision that by our plug-in approach, an important tool was created to bring further perfusion analysis into the clinical practice.