Maxim Zaitsev1, Michael Woletz1, and Martin Tik1
1High Field MR Center, Center for Medical Physics and Biomedical Engineering, Medical University of Vienna, Vienna, Austria
Synopsis
Although it is
theoretically possible to prospectively correct for deteriorative effects of known
rigid body motions in any arbitrary MRI pulse sequence, no practical open implementation
was reported to date. In this work we extend Puseq, an open-source pulse
sequence development environment with a prospective motion correction
capability based on external tracking. Real-time motion information in six degrees
of freedom is received from an optical motion tracking system by libXPACE (a
generic library for eXternal Prospective Acquisition CorrEction). The framework
is capable of both motion correction and motion artifact simulation of arbitrary
pulse sequences saved in Pulseq format.
Introduction
A theoretical ability for
correcting for motion artifacts arising from known 3D rigid body motion in six
degrees of freedom has been suggested by multiple researchers [1-4]. This
approach is based on the invariance of the Bloch equations in presence of
motion upon an application of an appropriate set of transformations to the
running sequence. However, a generic realization of such correction has been
hampered up to now, presumably by the complexity of the sequence implementation
in the vendor-specific environment. To the best of our knowledge, the closest
non-commercial match towards this goal is the libXPACE, a library for the
eXternal Prospective Acquisition CorrEction [5,6], implemented for numerous
Siemens software platforms and distributed under the customer-to-customer
partnership (C2P) program of Siemens Healthineers.
In general, implementing
novel MR pulse sequences often involves time-consuming programming in
vendor-specific environments. The problem is further exacerbated if research
sequences need to be implemented on several platforms simultaneously at
different field strengths or in heterogeneous hardware environments. A recently
presented Pulseq environment [7] is an open-source highly flexible pulse
sequence programming framework, that allows for decoupling between the sequence
design and the sequence execution steps. Pulse sequences in Pulseq are designed
using a variety of open-source design tools [8-10] and saved thereafter in Pulseq
format, which is an explicit description of the entire pulse sequence waveforms
and timing. A so-called “Pulseq interpreter sequence” is then employed on the MR
scanner to play out any arbitrary Pulseq files. The Pulseq interpreter sequence
is freely available for all current Siemens platforms via the C2P program.
We hypothesize that the Pulseq format is
well-suited for implementation of the generic prospective motion correction
(PMC) of arbitrary MR pulse sequences.Methods
Pulseq represents an MR
pulse sequence as a gapless concatenation of non-overlapping time slices
referred to as blocks. Each block contains no more than a single RF pulse, a single
ADC event and a single gradient pulse per gradient axis. Arbitrary gradient
shapes are supported naturally and transparently. Additionally a delay event
can be specified. The duration of each block is defined by the longest event
within the block. The gradient ramps for the trapezoid pulses are forced to be
contained within the block boundaries. However, gradients with arbitrary shapes
are not forced to 0 at the block boundaries, allowing for implementing time-efficient
sequences. Fig. 1 shows an example of a gradient echo sequence with possible
block boundary allocations.
Pulseq interpreter allows
for slice positioning using the integrated scanner’s UI. Rotations are achieved
by applying corresponding rotation matrices to each of the blocks. Translation
of the slice/slab/voxel positions is achieved by making all frequencies
proportional to the applied gradients during the entire pulse sequence. These
coefficients of proportionality for each gradient axis define the effective
null-points of the phase dispersion induced by the corresponding gradient. This
generic approach is compatible with any arbitrary RF excitation modules,
readout trajectories or reordering schemes. Siemens platforms provide a
built-in support for such functionality (largely unused by the product
sequences), on other platforms it could be possible to achieve the same effect
by an appropriate bookkeeping.
libXPACE is a generic
library for communication with external tracking devices. Additionally it can
simulate motion by using dummy sources, such as random generators or previously
recorded motion data. For traditional pulse sequences developed in the vendor
environment the pulse sequence designer needs to decide, when it is appropriate
to apply slice position updates within the pulse sequence (typically in the
beginning of TR prior to the excitation RF pulse). Corresponding update
directives need to be applied prior to the execution of the respective portion of
the sequence timing. Although this is easily achieved in some sequences, the
corresponding optimal locations may also be buried in depths of
“building-block” libraries, oftentimes with restricted source code access.
Although it was technically feasible for all
Pulseq blocks (open errors in Fig 1), this proof-of-concept implementation
XPACE-Pulseq only applied updates prior to the blocks containing RF pulses.
Correction of the blocks which boundaries are crossed by non-zero gradients has
also been disabled and will be investigated in the future. 3D gradient echo (TE/TR=6/15ms,
FA=15°) with
the isotropic spatial resolution of 1mm was programmed in Pulseq [8]. For in
vivo experiments optical tracking system (Metria Innovation) was used to track
a marker attached to a custom mouth piece. Phantom imaging was done in a 3D
printed phantom containing elliptical bars with randomized thickness and
spacing.Results
Figure
2 shows in vivo motion correction results in presence of head rotations without
and with PMC with the corresponding motion shown in Figure 3. Figure 4 shows
phantom images acquired with the same pulse sequence in a stationary phantom
without any correction or using the motion data from Figures 2/3(left) to
simulate motion artifacts [9]. Figure 5 demonstrates the possibility of
investigating motion sensitivity of other pulse sequences using the presented
XPACE-Pulseq framework.Conclusions
The
combined XPACE-Pulseq framework demonstrates the feasibility of prospective motion
correction of arbitrary pulse sequences. The approach is expected to be useful
for investigating motion sensitivity of novel pulse sequences.Acknowledgements
No acknowledgement found.References
1.
Shechter G and McVeigh E R 2003 MR motion correction of 3D affine deformations.
Proc. 11th Scientific Meeting of ISMRM p 1054
2.
Batchelor PG et al. 2005 Matrix description of general motion correction
applied to multishot images. Magn Reson Med 54 1273-80
3.
Nehrke K and Börnert P 2005 Prospective correction of affine motion for
arbitrary MR sequences on a clinical scanner. Magn Reson Med. 54 1130-8
4.
Maclaren J et al. 2013 Prospective motion correction in brain imaging: a review Magn Reson Med 69 621-36. doi:
10.1002/mrm.24314.
5.
Zaitsev M et al. 2006 Magnetic resonance imaging of freely moving objects:
prospective real-time motion correction using an external optical motion
tracking system. Neuroimage 31:1038-50. doi: 10.1016/j.neuroimage.2006.01.039.2006
6.
Maclaren J et al. 2012 Measurement and Correction of Microscopic Head Motion
during Magnetic Resonance Imaging of the Brain. PLoS ONE 7(11): e48088. doi: 10.1371/journal.pone.0048088
7.
Layton KJ et al. 2016 Pulseq: A rapid and hardware‐independent pulse sequence
prototyping framework. Magn Reson Med. http://dx.doi.org/10.1002/mrm.26235
8.
http://pulseq.github.io/
9.
http://github.com/imr-framework/pypulseq
10.
http://www.jemris.org/
11.
Herbst M et al. 2014 Reproduction of motion artifacts for performance analysis
of prospective motion correction in MRI. Magn Reson Med. 71:182-90. doi:
10.1002/mrm.24645