Skip to content

New_features

Clorindo Notte edited this page Sep 18, 2023 · 7 revisions

What's new

This tutorial illustrates the new features/improvements implemented in the latest version of COMMIT (v2.0.0).

  • Redundancy reduction

We introduce a novel streamline representation to reduce redundancy in tractography. This is performed in two steps:

  1. Clustering of the streamlines based on their average euclidean distance, by setting a threshold blur_clust_thr (in mm). By setting blur_clust_groupby, it can exploit anatomical information deriving from a nifti image containing cortical/subcortiical GM parcellation. This will cluster streamlines connecting the same regions based on their average distance using parallel computation (fast). If blur_clust_groupby is not set, the clustering will be performed single thread on the whole brain (slow).
  2. Changing each streamline internal representation by setting blur_core_extent (in mm) and blur_gauss_extent (in mm). We suggest to set blur_core_extent equal to blur_clust_thr and blur_gauss_extent=1.

Note

step 1 can be skipped if previously performed using other softwares such as MRtrix or dipy.

  • Parallel computation

    We added the possibility to import a tractogram using parallel threads. This is particularly useful when dealing with large tractograms, as it can significantly reduce the time required to import the data. The following code shows how to import a tractogram in parallel using 10 threads by setting n_threads=10. If this parameter is not set, tht method will try to use all the available threads.

    Running with n_threads>1 will create a temporary folder named temp which will be deleted at the end of the process. If you want to keep the temporary folder, set keep_temp=True (default is False).

  • Verbosity

    We added progress bars for the clustering step given a parcellation. The verbose levels are:

    • 0: hide everything
    • 1: show only warnings/errors
    • 2: show progress bars
    • 3: show everything
from commit import trk2dictionary
trk2dictionary.run(
    filename_tractogram = 'demo01_fibers.tck',
    filename_peaks      = 'peaks.nii.gz',
    filename_mask       = 'WM.nii.gz',
    fiber_shift         = 0.5,
    n_threads           = 10,
    blur_clust_thr      = 2,
    blur_clust_groupby  = None,
    blur_core_extent    = 2,
    blur_gauss_extent   = 1.2,
    keep_temp           = False,
    peaks_use_affine    = True
)
  • License

COMMIT is now released under a proprietary license which allows free use for non-commercial purposes. If you are interested in using COMMIT for commercial purposes, please contact Alessandro Daducci at [email protected]. You can read the full license text here.