3824

Advanced platform-independent MR prototyping: From EPI to Arterial Spin Labeling without code compilation
Thorsten Honroth1, Cristoffer Cordes1,2, Saulius Archipovas1, Federico von Samson-Himmelstjerna1,2, Matthias Günther1,2,3, and David Porter1

1Fraunhofer MEVIS, Bremen, Germany, 2University of Bremen, Bremen, Germany, 3mediri GmbH, Heidelberg, Germany

Synopsis

A previously demonstrated, platform-independent rapid prototyping environment for MR sequences that provides a workflow without code compilation has been extended with features that allow the creation of a FAIR Arterial Spin Labeling (ASL) sequence. Also, the calculation code for the necessary FOCI inversion pulse, which is protocol dependent and which needs to be executed during runtime on the scanner, can be implemented compilation-free using a scripting language.

Purpose

In previous work we presented our platform-independent, rapid prototyping environment for MR sequences that allows users to create sequences, which can react on protocol changes from the scanner UI, without code compilation1. We showed that a single pre-installed software module (driver) at the scanner can run a spoiled gradient echo sequence and an EPI sequence.

In this abstract we demonstrate that more advanced sequences like FAIR Arterial Spin Labeling2 (ASL) can also be implemented using our prototyping environment, which has been extended with new features.

Methods

The driver executable has been developed for and tested with a MAGNETOM Skyra 3T (Siemens Healthcare, Erlangen, Germany). We combined an EPI readout module with a FAIR ASL preparation and looping structure (see fig. 1 & 2).

Scripted inversion pulse: A FOCI pulse3, which is dependent on the protocol and must be calculated on the scanner, is used as an inversion pulse for labeling and background suppression (BS)4. Instead of compiling the calculation code for the pulse shape into the sequence executable, we created the possibility to write the calculation code for each rf pulse shape in the scripting language Lua5. During runtime, the driver executes the corresponding script each time the pulse shape needs to be updated.

Assigning different slices: Our prototyping environment allows users to define for each macro and its children which slice information is to be used (imaging slice or a specific saturation band). For the described sequence, the slice information from one saturation band was used for the global FOCI pulses and from another band for the slice-selective FOCI pulse. The saturation module receives its information from a third saturation band.

Scanner parameter mapping: We developed a mechanism to define in a plain text file the mapping between scanner UI parameters and platform independent parameters that are used within the sequence definitions. Instead of UI parameters, constant values can also be mapped to sequence parameters, such as the length of the multi-TI (inflow time) series.

Looping: For FAIR ASL, looping over label and control (“contrast loop”) and looping over inflow times (“TI loop”) is necessary. Our prototyping environment does not use vendor-specific looping mechanisms but allows users to define their own loops and to set reconstruction information depending on the loop indices. These loop indices can also be used in calculations, here e.g. for the current TI.

Switch-macro: Switching between slice-selective and global inversion depending on a loop counter is realized by a module called switch-macro. This type of container prepares all its children during preparation time, but it can be decided at runtime which child is played. The same mechanism can be used for example to switch between the execution of a pulse and a pause.

Background suppression: The BS module is a switch-macro whose activeChild parameter can also be a list of child names which results in playing the children in a certain order with allowed repetition (see fig. 2). Advantages: Only a small number of objects needs to be prepared and held in memory but the order and number of repetitions can be decided at runtime, e.g. depending on a loop index. The durations of the pause elements are calculated during the runtime of the sequence depending on the current TI.

Volunteer scan: A healthy volunteer was scanned using 30 label and control pairs with TI=1700ms. As the BS worked too efficiently, no saturation was performed. The first 4 pairs were rejected as a steady state had to be reached, the remaining 26 label images were averaged and likewise the control images. Both average images were subtracted.

Results

Fig. 3 shows the resulting images. A coil inhomogeneity is visible and the perfusion-weighted image shows negative values in areas which are likely to have a long bolus arrival time.

Discussion

The software is still preliminary work and might have limitations that lead to future restructuring. The BS of the ASL sequence needs to be adjusted and an M0 image needs to be acquired additionally to compensate for field inhomogeneity and to allow for quantification of perfusion.

Conclusion

The new features of our MR prototyping environment allow users to create advanced sequences, such as the above ASL sequence, without code compilation. By further integration of the scripting language Lua, new RF pulse shapes can be added by every user without recompiling the sequence executable (driver).

Acknowledgements

All funding for this study was provided by the internal Attract funding program of the German Fraunhofer-Gesellschaft.

References

1. Honroth et al. Platform-independent, rapid prototyping of MR sequences without code compilation. Proc. ISMRM 2016.

2. Kim. Quantification of relative cerebral blood flow change by flow-sensitive alternating inversion recovery (FAIR) technique: application to functional mapping. Magn Reson Med. 1995; 34(3):293–301.

3. Ordidge et al. Frequency offset corrected inversion (FOCI) pulses for use in localized spectroscopy. Magn Reson Med. 1996; 36(4):562-6.

4. Mani et al. Background suppression with multiple inversion recovery nulling: Applications to projective angiography. Magn Reson Med. 1997; 37(6):898-905.

5. The programming language Lua. https://www.lua.org. Accessed November 8, 2016.

6. Cordes et al. Parameter Dependency in Modular MR Sequences using Directed Graphs. Proc. ISMRM 2016.

Figures

Figure 1: This diagram shows roughly the used elements for the implemented pulsed ASL sequence on a time axis. For FAIR labeling, the first inversion pulse is once global and during the following repetition slice-selective, which in this implementation is controlled by the “contrast loop”. The two inversion pulses between saturation and readout belong to the background suppression and are global.

Figure 2: The modules of the implemented sequence. Modules with light-green background contain children which are not displayed for reasons of simplification. Macros are modules with children that can also contain parameters defined by connections1,6. Loops are specialized macros that play all their children in each iteration. Switch-macros are specialized macros that play only a subset of their children in a configurable order that also allows repetition, e.g. the background suppression switch-macro plays its children in the order “P1,R,P2,R,P3”. Two pause macros (gray background) have been integrated which allow to switch off the labeling module and the saturation module.

Figure 3: From left: Averaged ASL control image, averaged ASL label image, perfusion-weighted ASL difference image. All images are windowed equally.

Proc. Intl. Soc. Mag. Reson. Med. 25 (2017)
3824