Acquisition Process#

Overview#

The execution of an MR experiment is achieved by the interaction of multiple components. A high-level description of the involved components is shown in the figure below.

Overview of the acquisition process

The experiment managed by an acquisition control object. It receives a pulseq sequence, either as a filepath or as an instance of a pypulseq sequence object. In addition an acquisition parameter object is defined, which contains experiment specific parameters.

An experiment can be summarized by the following steps:

  1. Create a sequence or define the path to a sequence

  2. Define the acquisition parameters

  3. Create an acquisition control, execute acquisition by passing sequence and parameters

  4. Unroll sequence

  5. Execute sequence, optionally repeat this step in case of averaging

  6. Postprocessing

  7. Create acquisition data

Interfaces#

The acquisition control has three different interfaces which are implemented as dataclasses:

Interfaces of the acquisition control

Acquisition parameters are exposed to the whole acquisition routine and must be provided with an experiment. Some of the parameters are required by the sequence provider (e.g. Larmor frequency, field of view scaling) and some by the post processing step. The unrolled sequence instead is generated by the sequence provider inside the acquisition control. It is used only by the transmit card to replay the calculated waveforms. The result of a successful acquisition is an acquisition data object which contains the decimated raw data. Optionally, it also contains the unprocessed raw data. In both cases the dimensions are defined by [averages, coils, phase encoding steps, readout sample points].

Postprocessing#

When data has been acquired, the post-processing step is started which comprises the following step.

  1. Separation of MR signal and reference signal. To correct for any phase jumps in the received signal, a reference signal is transferred between the measurement cards. The digital signal is received by synchronous digital input and encoded by the 16th bit of analog input channel 0. In a first step, reference signal and transmit signal are separated. This is only the case for analog channel 0, it is assumed that this channel is always enabled. All other channels have full resolution.

  2. Both signals are demodulated at the Larmor frequency. This is the same frequency that was used to modulate the transmit signal.

  3. Decimation is applied along the readout dimension, independent of the number of averages, coils or phase encoding steps.

  4. The MR signal is corrected with the phase of the decimated and demodulated reference signal. The result is stored in an acquisition data object. A detailed description can be found in the api reference.