Skip to content

Trajectory Calibration

Per default, OpenMRF will use the nominal trajectory (as saved in the backup data) for the image reconstruction. However, especially when using demanding gradient operations at higher field strengths, the actual trajectory might deviate from the nominal trajectory. To correct this, OpenMRF offers the option to perform trajectory measurements that can then be used for calibration. In the following, we'll outline this process in five easy steps.

Unique trajectory orientations

For MRF to work, the k-space trajectory (typically spiral) should be rotated between excitations to ensure homogeneous k-space coverage. Often, the rotations follow a golden angle pattern to ensure incoherent undersampling artifacts. However, instead of using the exact golden angle (which would result in as many unique orientations as your sequence features excitations), we can use an approximate golden angle scheme and reduce the number of unique orientations. This comes with the advantage of simpler calculations as well as faster trajectory calibrations.

1. MRF sequence creation.

Compile any MRF sequence that you want to use for data acquisition. Make sure flag_backup is set to 1.

2. Trajectory calibration sequence creation.

Open main_sequences/calibrate_trajectories/pulseq_traj_meas.m. In the second cell, change the path of the SPI object to be loaded to the backup .mat file corresponding to the MRF sequence in question.

3. Measurement

For trajectory calibration measurements, we recommend using a spherical water phantom which is typically available in any standard scanner room. Place the phantom as close to the isocenter as possible. Prepare the pulseq measurement and and select the slice orientation to correspond to your MRF measurement (e.g., axial for brain or abdominal scans, coronal for phantom scans).

Slice placement

DO NOT manually move the slice - the trajectory measurement has to be performed in the scanner's isocenter, otherwise it will fail.

Measurement failed

Should you run into issues when trying to acquire trajectory calibration data, make sure to check this potential solution.

4. Reconstruction - standalone (optional)

If you want to visualize the results of the trajectory calibration, open main_sequences/calibrate_trajectories/reco_traj_meas.m. Set the variables study_path and study_name to point to your trajectory calibration data and run the file. Deviations from the nominal trajectory should typically be smaller than 1%. If they are substantially larger, double check your field homogeneity and trajectory calibration acquisition.

5. Use in MRF reconstruction

In the first cell of reco_mrf.m, define a variable study_name_mrf and set it to the name of the trajectory calibration data. In a later part of that script, there is code that checks whether this variable exists, and if so, it loads the measured trajectory. If study_name_mrf is not defined, the reconstruction defaults to using the nominal trajectory (which, in many cases, is sufficient).