Skip to content

bundle_seg

Subworkflow to perform BundleSeg [1] to extract major white matter bundle from a tractogram.

[1] St-Onge, Etienne, Kurt G. Schilling, and Francois Rheault. “BundleSeg: A versatile,reliable and reproducible approach to white matter bundle segmentation.” International Workshop on Computational Diffusion MRI. Cham: Springer Nature Switzerland (2023)

--------- Steps --------------------

1. Anatomical Registration (ANTs)
Use the FA map from the subject to register the atlas anatomical file and compute the transformations.
2. Bundle Recognition (scilpy)
Perform bundle recognition and extraction using BundleSeg.

--------- Experimental features -----

DISCLAIMER !!! The following features are experimental and may not work as expected. While we run tests to ensure computational stability of the subworkflow, we cannot guarantee the correctness of the results.

Anatomical Registration (SynthMorph) : params.run_synthmorph = true Synthmorph is a machine learning-based registration method developed by the Freesurfer team. It is made available in this subworkflow by the REGISTRATION subworkflow, please refer to its documentation for more details.

Keywords : BundleSeg, WM bundles, Tractogram, Segmentation

Components : bundle/recognize, registration, utils_options


TypeDescriptionMandatoryPattern
ch_fafileThe input channel containing the FA map. This map is used to compute the transformation between the atlas’ space and the subject’s space.

Structure : tuple val(meta), path(fa)
  • meta [map] Metadata map.
  • fa [file] FA map image file.
True*.\{nii,nii.gz\}
ch_tractogramfileThe input channel containing the whole-brain tractogram to be segmented.

Structure : tuple val(meta), path(tractogram)
  • meta [map] Metadata map.
  • tractogram [file] Whole-brain tractogram file.
True*.trk
ch_freesurfer_licensefileONLY USED WITH SYNTHMORPH REGISTRATION. The input channel containing the Freesurfer license file.

Structure : tuple val(meta), path(license)
  • meta [map] Metadata map.
  • license [file] Freesurfer license file.
False*.txt
optionsmapMap of options for the bundle_seg subworkflow.
  • run_synthmorph (boolean) [Default: False]
    Use Synthmorph ML registration model instead of ANTs.
  • run_easyreg (boolean) [Default: False]
    This option is not supported and will throw an error if set to ‘true’.
  • atlas_directory (string) [Default: None]
    Use an alternative atlas to the default BundleSeg one available on Zenodo (https://zenodo.org/records/10103446). The folder MUST follow the same organisation as archive atlas.zip hosted on Zenodo.
False

TypeDescriptionMandatoryPattern
bundlesfileChannel containing all the segmented bundle files.

Structure : tuple val(meta), path(bundles)
  • meta [map] Metadata map.
  • bundles [file] List of segmented bundle files.
True*.trk
mqcfileChannel containing QC data for MultiQC reports.

Structure : tuple path(mqc)
  • mqc [file] MultiQC report file.
False*mqc.*
bundles_mqcfileChannel containing the bundle segmentation mosaic images for QC.

Structure : tuple path(bundles_mosaic)
  • bundles_mosaic [file] Bundle segmentation mosaic image.
False*_bundles_mosaic_mqc.png
stats_mqcfileChannel containing the bundle segmentation statistics for QC.

Structure : tuple path(stats)
  • stats [file] Bundle segmentation statistics JSON file.
False*_bundles_stats_mqc.json
versionsfileFile containing software versions

Structure : tuple path(versions)
  • versions [file] Versions YAML file.
Trueversions.yml


Last updated : 2026-03-17