As described, all program functionality is realized in separated modules. Inter-module communication is accomplished exclusively via a central container holding all image sets.
The current version (1.2) encompasses the modules listed below. A couple of more experimental modules as a.o. CT -perfusion, image registration, and some code for ASL analysis are available upon request.
Loading of a perfusion sequence:
Input format is DICOM3.0. Given one file from the perfusion sequence, the module will load all files in the directory and keep those that have the same series number as the initial file. Number of slices and number of time points are automatically determined. Measurement data needed for the calculation (TE, TR) are also taken directly from the input files.
Basic calculation methods:
Provides calculation of baseline and concentration images - calculation parameters are taken from the preferences. The resulting image sets are stored in the central image container.
Selection of a global AIF:
Definition of a global arterial input function via ROIs in any number of slices via signal or concentration images. AIFs can be loaded from/saved to file. Furthermore, the program may suggest AIF pixels based on baseline level, signal drop, shape of the concentration curve and bolus arrival time. The user may then further edit the suggested points.
Simple singular value decomposition for calculation of rCBF, rCBV and MTT as described in Østergaard et al., MRM 36 (1996), 715-725. As for all other calculation techniques, the resulting image sets are identified via a user definable name. It is thus possible to perform the same calculation with different parameters while keeping both result sets in memory. Parameter change effects can then be examined e.g. via the image arithmetics module.
Reformulated singular value decomposition as described in Smith et al., MRM 51 (2004), 631-634.
Blood-brain-barrier leakage correction:
Implementation of a correction algorithm for T1-effects from blood-brain-barrier leakage as described in Haselhorst et al. JMRI 11 (2000), 495-505. This module also creates approximate T1 and permeability image maps.
Image browser (updated in 1.2):
A module to browse all image sets in memory. Also provides simple ROI analysis functionality.
Color encoding of result images, using either a linear or a logarithmic scale - the latter normalized to a ROI as defined by the user.
This module allows for arbitrary arithmetic operations on single images or image sets (e.g. abs(A-B) where A and B are two result image sets) for comparison of calculation algorithms or evaluation of parameter change effects. Results are stored as new image sets which then can be saved, color coded, used for further arithmetics, etc.
Includes the possibility to resize the image - available interpolation methods are 'nearest neighbour', 'linear' and 'cubic'.
This module does not work under the IDL virtual machine, though.
Saving of result image sets:
Result image sets can be saved in DICOM3.0 as well as several bitmap formats. DICOM image sets can optionally be anonymized. Furthermore, the written image size can be scaled on the fly, using the same interpolation options as in the image arithmetics module.
Loading of previously calculated result image sets:
Works similar to the loading of a perfusion image set: given one image of the result image set, the module will load all files from the directory and keep the ones with the same series number. Input format is DICOM.
One central module where program preferences and calculation parameters are handled. Preferences are saved in XML format and loaded at program start.
Dicom tools (new in 1.2):
Offer a) reordering of Dicom files based on their series number (useful when all files from an examination have been stored in the same directory) and b) removal of patient related data while copying Dicom files from one directory to another.
File browser (new in 1.2):
A browser for Dicom files, supporting simple ROI analysis, display of DICOM tag data plus the usual suspects (zoom, pan, contrast).