Tractography

Having computed the diffusion tensor, you can now go on to perform tractography. In the Diffusion Analysis tool, select the Tractography tab in the Diffusion Analysis tool, which will appear as below:

tractography_tab

You will use the diffusion tensor (DT) image produced by the tensor calculation, together with one or more regions of interest as seed points for the tracking. You can also optionally use a second set of regions of interest as a "target" for the tracking: only those tracts that pass through one of the target regions will be shown.

Select the diffusion tensor image that you have already created by the tensor calculation, either by clicking on the open icon, or by typing in the folder (directory) and file name of the image. The diffusion tensor image will have a suffix "DT":

tract_input

Next, select the ROI file that will be used to generate the tract seed points.

tract_seeds

Either click on the select_roi_file_button button, or type in the path to the ROI file name (and press return). The seed points will be selected from those pixels that are entirely contained within an ROI. If the ROI file contains Marker ROIs, each Marker location will be used as a seed point.

If you want to use target ROIs, make sure that the tract_target_check check-box is selected, and then select the ROI file that will be used as the tract target area(s).

tract_target

Either click on the select_roi_file_button button, or type in the path to the ROI file name (and press return). Only tracts that propagate from a seed point and pass through one of the regions defined in the tract target regions will be retained and displayed. Tracts which do not pass through at least one of the target regions will be discarded.

Now choose the other settings that will affect the way that tracts propagate.

tract_prop_panel

  • Tract propagation speed. This affects the step size in the tract propagation algorithm. A fifth-order Runga-Kutta algorithm is used to propagate the tracts, and this algorithm adapts the propagation step size until a smaller step size makes an inconsequential difference to the tract path. Setting the propagation speed affects what is meant by "inconsequential"; setting the propagation speed to "Fastest" will still result in errors due to the propagation algorithm which are small compared to errors caused by noise in the data. However, if you require the best possible accuracy, set the propagation speed to "Most accurate". For exploratory analysis, you are recommended to use "Fastest" or "Medium".

  • Seed replication. Normally, there will be one tract seed at the centre of each voxel that is within an ROI used to define the seeds. However, this can result in somewhat sparse-looking tracts, and you can increase the number of seeds to either 8, or 27.

    Seed point replication.
    diff_seed_1 diff_seed_8 diff_seed_27
    Seed replication=1 Seed replication=8 Seed replication=27

    The replicated seeds are evenly spaced within a voxel, as illustrated above.

  • Tract smoothing. The tractography algorithm uses Sinc interpolation to interpolate the diffusion tensor field from the diffusion tensor image. However, if your data are noisy, you may wish to apply a Gaussian smoothing filter to the diffusion tensor data to reduce propagation errors due to noise. The Tract smoothing filter width setting applies a 3-dimensional Gaussian smoothing filter of full-width at half-maximum (FWHM) equal to the value that you enter (in mm).

  • FA threshold. This is one of the tract stopping criteria. When the fractional anisotropy of the tract drops below this threshold, propagation of a tract terminates.

  • Min. radius of curvature. This is the second tract stopping criterion. When the radius of curvature of the tract drops below this threshold, propagation of a tract terminates. If you leave this field blank, a default minimum of radius of curvature will be calculated from the image as:

    Minimum radius of curvature = 2 × minimum pixel dimension

Now select how you would like the tracts to appear when displayed:

tract_appear_panel

  • Tract colouring. You can colour tracts either in a uniform colour, or coloured according to the fractional anisotropy value.

    If you select tract_uniform_colour, you can then click the colour_button button to set the colour of the tracts.

    If you select tract_colour_fa, then select the colour mapping that maps FA values to colours from the adjacent menu.

  • Tract rendering. You can render tracts either as thin lines, or as tubes. If you select "As tubes", you can also set the tube diameter (in mm) to get a pleasing appearance.

The figures below show how tracts appear (zoomed in) with different combinations of the tract appearance settings.

Fibre tract appearance settings.
tract_line_uniform tract_line_fa
Uniform colour, line Coloured by FA, line
tract_tube_uniform tract_tube_fa
Uniform colour, tube Coloured by FA, tube

Note: each time you press the track_fibres_button, you will add new tracts to the display. You can set the appearance of the fibres you add between fibre tracking operations. However, once a set of fibre tracts has been added to the display, the appearance cannot be changed.

Gradient sign convention

You may already have corrected the gradient sign convention when calculating the diffusion tensor, in which case it does not need to be done again for tractography. However, if not, you now have the opportunity here to do so. If your computed tracts follow unexpected paths, with strange results, it may be that the gradient sign convention is wrong. The gradients specification, assumes that:

  • When a positive x-magnetic field gradient is applied, the magnetic field increases from the image left to the image right. If the opposite is true, then select the neg_x_grad button.
  • When a positive y-magnetic field gradient is applied, the magnetic field increases from the image top to the image bottom. If the opposite is true, then select the neg_y_grad button.
  • When a positive z-magnetic field gradient is applied, the magnetic field increases from the first slice position to the last slice position. If the opposite is true, then select the neg_z_grad button.

Performing tractography

You are now ready to generate some tracts and display them. You can either:

  • add_tracts add the newly-computed tracts to the display, retaining any tracts which are already displayed.
  • replace_tracts add the newly-computed tracts to the display, first removing any tracts which are already displayed.

If you want to explicitly remove all tracts from the display, click the remove_tracts_button button.

If you have already computed some tracts and saved them to disk (see below), you can load the tracts from disk without recomputing them by clicking the load_tracts_button button.

Now initiate tracking from the seed points by clicking the track_fibres_button button.

If you obtain satisfactory results, you can save the whole setup by clicking the save_settings_button button. Then, the next time you use perform tractography, the same settings will be retrieved. To revert to the default setting, click the set_defaults_button.

Saving tracts and tract statistics

You can save the tracts and tract statistics to disk file by selecting the save_tracts_check and/or save_tract_stats_check check-boxes in the tract output panel:

tract_output_panel

The format and contents of the files produced are detailed in the file formats chapter of this manual. The tract and tract statistics are computed with an adaptive step size propagation algorithm. However, once the tract is computed, its path and statistics along the path are output at regular steps, and you select the distance between steps using the tract_step_spinnerspinner. You can choose a value between 0.1 mm and 5.0 mm, in steps of 0.1 mm.

Set the base name of the tract and tract statistics file:

Setting the tracts basename

The tracts and tract statistics files will be created in the same folder as the input image, and will have the following names.

  • basename.xml. This contains a description of the each of the tracts computed in XML format. A tracts consists of:
  • The tract length, in mm.
  • The mean tensor trace, fractional anisotropy (FA), and relative anisotropy (RA) averaged over the tract.
  • A list of points (x,y,z coordinates) along the tract.
  • At each point along the tract, the trace, FA, RA and full tensor at each point.

  • basename.txt. This contains the tract statistics in tabular form, suitable for importation into a spread sheet. The table consists of six columns of numbers recording the x, y and z coordinates of each point along the tract, and the trace, FA and RA values at each point.

Individual tracts have a header listing the length, mean trace, mean FA and mean RA for the tract, and a tract is terminated by a row containing a single "&" character.

See the file formats chapter for more detail.

If there is a pre-existing file with the same name, you can choose whether to append any existing tracts or tract statistics to that file by selecting the "Append" or "Overwrite" option.

Tract display

The Diffusion Analysis tool has an integrated 3-dimensional display to the left of the processing area. When you create fibre tracts, they will be automatically loaded and displayed there. However, you can of course, display any other 3-D objects that can be displayed on the regular 3-D display. Shown below is a screen shot showing orthogonal planes from a fractional anisotropy image as a backdrop, with two sets of tracts: the first was seeded from the motor tract and is coloured according to fractional anisotropy; the second was seeded from the genu of the corpus callosum has has a uniform colour.

tracts