0748

Research and educational applications of an open source, low cost MRI console with an accessible pulse sequence programming environment
Lincoln Craven-Brightman1, Thomas O'Reilly2, Benjamin Menkuec3, Marcus Prier4, Rubén Pellicer-Guridi5,6, Joseba Alonso5,6, Lawrence L. Wald1,7, Maxim Zaitsev8, Jason Stockmann1,7, Thomas Witzel9, Andrew Webb2, and Vlad Negnevitsky10
1A.A. Martinos Center for Biomedical Imaging, Department of Radiology, Massachusetts General Hospital, Charlestown, MA, United States, 2Department of Radiology, Leiden University Medical Center, Leiden, Netherlands, 3University of Applied Sciences and Arts Dortmund, Dortmund, Germany, 4Otto von Guericke Universität Magdeburg, Magdeburg, Germany, 5Universitat Politècnica de València, Valencia, Spain, 6Spanish National Research Council, Valencia, Spain, 7Harvard Medical School, Boston, MA, United States, 8Medizinische Universität Wien, Vienna, Austria, 9Qbio Inc, San Carlos, CA, United States, 10Independent researcher, Zürich, Switzerland

Synopsis

The hardware and software for a low cost programmable MR console has been developed, characterized and tested in various setups at multiple sites for both educational and research applications. A new Python-based wrapper allows easy pulse programming of different sequences and k-space trajectories using PulSeq, with output data also being processed via Python. The first two- and three-dimensional in vivo images have also been acquired using this hardware on a large bore Halbach array system.

Introduction

In this work a newly-formed consortium of international developers1-5 present data which demonstrate that a low-cost, flexible and programmable MR console that can be used for both educational and clinical research applications. We show for the first time that an upgraded OCRA (Open-source Console for Real-time Applications, Fig. 1) system can be interfaced with a low-field setup previously used to acquire in vivo images of the brain and extremities. The low cost (under 1,000 USD) allows such a system to be used in teaching laboratories which may require individual systems per student6, and also can be integrated into more sophisticated low-field MRI systems in which all other components (magnet, RF and gradient amplifiers, RF and gradient coils) have been designed for low cost and sustainability7-9. The original OCRA was introduced as an inexpensive, accessible way to enable MRI experiments and educational demonstrations at sites around the world10. While MR images were acquired on a table-top system, pulse sequences originally had to be hand-coded in a low-level assembly language. This presents a barrier to entry for most MRI engineers and scientists. In this work, we overcome this obstacle by creating wrapper software that bridges the gap between OCRA machine code and the open-source pulse sequence programming environment PulSeq11,12. PulSeq allows users to easily specify RF and gradient events in a Matlab and Python environment. We have integrated the software required to run our OCRA package into a single central repository13, which is easily accessible for new users. We also demonstrate OCRA's compatibility with low field scanners through the first in-vivo image with an OCRA system.

Methods

Our version of OCRA runs on the Red Pitaya 122-16, with two RF inputs and outputs capable of 300kHz to 550MHz signals14. The previous OCRA client software relied on a hand-coded text file to describe the pulse sequence, which was uploaded along with the TX, RX and gradient parameters to a C-based server running on the OCRA console through a custom, binary protocol. With the new system, a user instead describes their pulse sequence using the PulSeq MATLAB or Python libraries capable of interfacing with other MRI vendor platforms, such as Siemens and GE11. Next, the user writes the experiment logic and data analysis code in Python, including writing a loop for the number of repetitions, filtering and sanity checks on the acquired data, and plotting commands. All the information is transferred to the OCRA console via a new open client-server interface based on key-value pairs encoded using Msgpack. The console replies with the acquired data and status information. Figure 1 shows the workflow and data pipeline. A fully-featured GUI to complement the script-based workflow is also planned; the standardized client-server interface means that new client software or GUIs can be easily created in any programming language. Test images have been generated with various pulse sequences on different MR devices using the presented OCRA upgrade. Figure 2 shows the various setups where our OCRA package is in use, including a 0.5 T test setup (10 mm field of view) for teaching, and a 0.05 T setup (27 cm diameter) capable of in-vivo imaging9.

Results

Pulse sequences generated with PulSeq have been interpreted by the OCRA wrapper developed. Figure 3 shows an example pulse sequence diagram generated using our PulSeq library, with an oscilloscope trace showing the RF pulses and gradient waveforms played out by the console. Figure 4 shows 1D, 2D, and 3D image data acquired on two different MRI scanner setups. Figures 4a and 4b were acquired on the educational tabletop scanner (FH Dortmund) with 1D and 2D spin echo sequences. Figures 4c and 4d were acquired with the research system (LUMC) using 2D and 3D turbo spin echo sequences with an echo train length of 2.

Discussion

We have developed and validated an upgraded version of OCRA and a PulSeq-to-OCRA wrapper. Figure 4a shows ghosting artifacts due to the B0 inhomogeneity of the desktop system. However, the smooth k-space phase and the absence of ghosting on Figures 4b-d suggest that the pulse sequence produces sequence waveforms accurately with stable timing. Although many different low-cost MR consoles have been proposed over the years6 none have yet achieved the critical mass of users and developers necessary to take full advantage of advances in digital technology and open source software. In order to achieve this, our approach includes making all required electronic circuitry open source15 and designing a software interface for sequence design and implementation. This is based on the most commonly used open-source scientific software (Python) and an off-the-shelf ”core” containing an FPGA with multiple digital and analog inputs and outputs (Red Pitaya). The OCRA client, server and FPGA firmware are actively being developed, with support for the OCRA116 DAC and GPA-FHDO17 gradient boards, and ongoing work to reduce latency and jitter. We also envision that the flexibility of this approach will allow us to design sequences with many unique features such as real-time feedback control, as well as incorporating multiple transmit and receive channels, and additional sensors, at very low cost.

Acknowledgements

AW and TR acknowledge support from Horizon 2020 European Research Grant FET-OPEN 737180 Histo MRI, Horizon 2020 ERC Advanced NOMA-MRI 670629, Simon Stevin Meester Prize and NWO WOTRO Joint SDG Research Programme W 07.303.101. JA and RP acknowledge the European Union (737180 Histo MRI, and IDIFEDER/2018/022) and the Spanish Ministry of Science (PID2019-111436RB-C21). BM acknowledges support from Auto-Intern GmbH and Wuerth Electronic.

References

[1] Open-source Console for Real-time Acquisition https://zeugmatographix.org/ocra/

[2] LUMC-LowFieldMRI repositories https://github.com/LUMCLowFieldMRI

[3] Tabletop MRI Wiki, 2020. https://tabletop.martinos.org/

[4] Solution Centre for Image Guided Local Therapies, 2020. https://www.forschungscampus-stimulate.de/en/start/start.html

[5] Laboratory for Electromagnetic Imaging, University of Applied Sciences and Arts Dortmund. https://github.com/menkueclab

[6] C. Zimmerman Cooley, J.P. Stockmann, T. Witzel, C. LaPierre, A. Mareyam, F. Jia, and others, ‘Design and Implementation of a Low-Cost, Tabletop MRI Scanner for Education and Research Prototyping’, Journal of Magnetic Resonance, 310 (2020), 106625

[7] T. O’Reilly, W.M. Teeuwisse, and A.G. Webb, ‘Three-Dimensional MRI in a Homogenous 27 Cm Diameter Bore Halbach Array Magnet’, Journal of Magnetic Resonance, 307 (2019), 106578

[8] B. De Vos, P. Fuchs, T. O’Reilly, A.G. Webb, and R. Remis, ‘Gradient Coil Design and Realization for a Halbach-Based MRI System’, IEEE Transactions on Magnetics, 56 (2020)

[9] T. O’Reilly, W.M. Teeuwisse, D. Gans, K. Koolstra, and A.G. Webb, ‘In Vivo 3D Brain and Extremity MRI at 50 MT Using a Permanent Magnet Halbach Array’, Magnetic Resonance in Medicine, 2020, mrm.28396

[10] S. Anand, J.P. Stockmann, L.L. Wald, T. Witzel, A low-cost (¡500 USD) FPGA-based console capable of real-time control, in: Proc. Jt. Annu. Meet. ISMRM-ESMRM 2018 Paris, p. 0948, 2018

[11] K.J. Layton, S. Kroboth, F. Jia, S. Littin, H. Yu, J. Leupold, J.-F. Nielsen, T. St¨ocker, and M. Zaitsev, Pulseq: A rapid and hardware-independent pulse sequence prototyping framework. Magn. Reson. Med., 77;2017:1544- 1552. https://doi.org/10.1002/mrm.26235

[12] PulSeq: Open-source pulse sequences http://pulseq.github.io/

[13] ocra-pack project wiki, 2020. https://github.com/OpenMRI/ocrapack/wiki

[14] Red Pitaya SDRlab 122-16 - STEMlab swiss army knife for engineers, 2020. https://www.redpitaya.com/Catalog/p52/sdrlab-122-16- standard-kit?cat=c102

[15] Open Source Magnetic Resonance Imaging, www.opensourceimaging.org

[16] OCRA1 – SPI controlled 4 channel 18bit DAC and RF Attenuator, 2020. https://zeugmatographix.org/ocra/2020/11/27/ocra1-spi-controlled-4- channel-18bit-dac-and-rf-attenutator/

[17] B. Menkuec, J.P. Stockmann, N. Arango, GPA-FHDO - Gradient Power Amplifier for low-field MRI, 2020. https://github.com/menkueclab/GPAFHDO

Figures

Figure 1. Software and hardware stack of our OCRA package. A standard PulSeq description (.seq) file is converted by the ocra-pulseq and marcos_client libraries into data that can be executed on the open-source OCRA console. Yellow boxes show the novel elements in the stack: ocra-pulseq and marcos_client Python libraries, the new server and gradient firmware in the OCRA system, and the new OCRA1 DAC and GPA-FHDO gradient boards.

Figure 2. Example MRI scanner hardware platforms at several sites which use the OCRA console framework. (a) 50 mT Halbach scanner designed for human brain imaging; uses OCRA1 DAC board (Leiden, Netherlands); (b) Tabletop demonstration/educational scanner with 1 cm imaging FOV; uses OCRA1 DAC board (MGH, Charlestown, MA). (c) Prototype 0.5T educational scanner for university courses; uses GPA-FHDO board (Dortmund, Germany);

Figure 3. 2D spin echo imaging pulse sequence diagram and an overlaid oscilloscope trace with the waveforms playing out faithfully from RF transmit channel and DAC outputs. The TX glitches are caused by the RF amplifier, and the gradient glitches have been fixed in the newest software version.

Figure 4. Example imaging data acquired with OCRA console. (a) 1D projection imaging of a 1-cm FOV two-tube phantom for use in MRI educational curriculum on a tabletop scanner, along with 2D FFT reconstruction. (b) K-space data and a 2D image of a star phantom are also shown. (c) Phase and magnitude of a 2D turbo spin echo acquisition of an apple, and (d) two slides of a 3D turbo spin echo acquisition of a forearm in vivo, both acquired on the Leiden brain scanner platform.

Proc. Intl. Soc. Mag. Reson. Med. 29 (2021)
0748