tfmri.sampling.radial_trajectory

radial_trajectory(base_resolution, views=1, phases=None, ordering='linear', angle_range='full', tiny_number=7, readout_os=2.0, flatten_encoding_dims=False)[source]

Calculate a radial trajectory.

This function supports the following 2D ordering methods:

  • linear: Uniformly spaced radial views. Views are interleaved if there are multiple phases.

  • golden: Consecutive views are spaced by the golden angle (222.49 degrees if angle_range is 'full' and 111.25 degrees if angle_range is 'half') 1.

  • golden_half: Variant of 'golden' in which views are spaced by 111.25 degrees even if angle_range is 'full' 1.

  • tiny: Consecutive views are spaced by the n-th tiny golden angle, where n is given by tiny_number 2. The default tiny number is 7 (47.26 degrees if angle_range is 'full' and 23.63 degrees if angle_range is 'half').

  • tiny_half: Variant of 'tiny' in which views are spaced by a half angle even if angle_range is 'full' 2 (23.63 degrees for tiny_number equal to 7).

  • sorted: Like golden, but views within each phase are sorted by their angle in ascending order. Can be an alternative to 'tiny' ordering in applications where small angle increments are required.

  • sorted_half: Variant of 'sorted' in which angles are computed on a half range but modified to continuously cover the full range.

This function also supports the following 3D ordering methods:

  • sphere_archimedean: 3D radial trajectory (“koosh-ball”). The starting points of consecutive views trace an Archimedean spiral trajectory along the surface of a sphere, if angle_range is 'full', or a hemisphere, if angle_range is 'half' 3. Views are interleaved if there are multiple phases.

Parameters
  • base_resolution – An int. The base resolution, or number of pixels in the readout dimension.

  • views

    An int. The number of radial views per phase.

  • phases

    An int. The number of phases for cine acquisitions. If None, this is assumed to be a non-cine acquisition with no time dimension.

  • ordering – A str. The ordering type. Must be one of: {'linear', 'golden', 'tiny', 'sorted', 'sorted_half', 'sphere_archimedean'}.

  • angle_range

    A str. The range of the rotation angle. Must be one of: {'full', 'half'}. If angle_range is 'full', the full circle/sphere is included in the range. If angle_range is 'half', only a semicircle/hemisphere is included.

  • tiny_number

    An int. The tiny golden angle number. Only used if ordering is 'tiny' or 'tiny_half'. Must be >= 2. Defaults to 7.

  • readout_os – A float. The readout oversampling factor. Defaults to 2.0.

  • flatten_encoding_dims – A boolean. If True, the encoding dimensions are flattened to a single dimension. Defaults to False.

Returns

A Tensor of type float32 and shape [views, samples, 2] if phases is None, or of shape [phases, views, samples, 2] if phases is not None. samples is equal to base_resolution * readout_os. The units are radians/voxel, ie, values are in the range [-pi, pi].

References

1(1,2)

Winkelmann, S., Schaeffter, T., Koehler, T., Eggers, H. and Doessel, O. (2007), An optimal radial profile order based on the golden ratio for time-resolved MRI. IEEE Transactions on Medical Imaging, 26(1): 68-76, https://doi.org/10.1109/TMI.2006.885337

2(1,2)

Wundrak, S., Paul, J., Ulrici, J., Hell, E., Geibel, M.-A., Bernhardt, P., Rottbauer, W. and Rasche, V. (2016), Golden ratio sparse MRI using tiny golden angles. Magn. Reson. Med., 75: 2372-2378. https://doi.org/10.1002/mrm.25831

3

Wong, S.T.S. and Roos, M.S. (1994), A strategy for sampling on a sphere applied to 3D selective RF pulse design. Magn. Reson. Med., 32: 778-784. https://doi.org/10.1002/mrm.1910320614