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.
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:
Create a sequence or define the path to a sequence
Define the acquisition parameters
Create an acquisition control, execute acquisition by passing sequence and parameters
Unroll sequence
Execute sequence, optionally repeat this step in case of averaging
Postprocessing
Create acquisition data
Interfaces#
The acquisition control has three different interfaces which are implemented as dataclasses:
The unrolled sequence is obtained from the sequence provider which is explained in sequence provider.
Experiment specific acquisition parameter defined by the user (e.g. larmor frequency, B1 amplitude scaling, FoV, etc.).
Acquisition data, which is the result of a successful acquisition and contains the decimated raw data.
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.
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.
Both signals are demodulated at the Larmor frequency. This is the same frequency that was used to modulate the transmit signal.
Decimation is applied along the readout dimension, independent of the number of averages, coils or phase encoding steps.
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.