Disco toolbox

This toolbox contains the magic disco registration technique, waow!

The original algorithm is fully described in [Auzias et al., Diffeomorphic Brain Registration Under Exhaustive Sulcal Constraints, IEEE TMI, 2011]. Please cite this article if you use this toolbox.

The main idea of this registration approach is to base the brains alignment on sulcal constraints (bundles constraints are still in progress). The final space is study-specific, i.e. built from data included in the database (not toward a reference space). At least 2 data have to be registered together!

A database has to be previously constitued (be careful, some steps work with absolute paths). The DISCO toolbox has been tested with brains processed and sulci labelled by Morphologist. If the labelling of sulci has been manually changed, please check your left / right labelling thanks to Clean database - side error.

The core of the algorithm is computed with Matlab and has been tested with Matlab2014. A Matlab license is required.

To set your experiment, start with Preprocessing steps, especially with 00. Copy DISCO/DARTEL inputs in a compatible format if your data are not in NIfTI (format required for DISCO processing). Then, run at least 01. Sulci Label Translation and 02a. Sulci To Be Removed to generate text files required for DISCO (and DARTEL) processing(s). The setting of your experiment will be save in the output files.

You can then run Disco pipeline or DISCO components individually. 03. Grid deformation provides the DISCO deformation field. If you deform sulci (deformGraph), you can visualize results with View Sulci of all subjects before and after DISCO.

To optimize the cortical ribbon registration, you can then perform the DARTEL registration (as described in [Ashburner, A fast diffeomorphic image registration algorithm, NeuroImage, 2007]). Default parameters as set in DARTEL tools spm12 are used. Here, DARTEL considers the grey_white segmentations resulting from Morphologist processing (deformed or not by DISCO) as inputs. A preprocessing step is added in Dartel pipeline or directly in 01. Prepare grey and white maps for DARTEL to align all inputs in a common space (here Talairach), to set a common 'internal referential' in the inputs headers, and to resample them within a same isotropic resolution and volume dimensions as required in SPM. 02. DARTEL Template Creation provides the DARTEL flow field.

To chain DISCO and DARTEL registrations, you can run disco_dartel_pipeline.

Create DISCO+DARTEL deformation field toward the common space provides the final deformation field to register data in the common space.

As both DISCO and DARTEL are invertible, deformations can be inverted to transfer information from one brain to another. Create DISCO+DARTEL deformation field from subjectA to subjectB provides the final deformation field to register a subjectA in a subjectB space.

Final deformation fields can be applied on volumes (Final deformation applied on volume), graphs (Final deformation applied on graph), surfaces (Final deformation applied on mesh), and bundles (still in progress).

Let's go now and enjoy your registration experience!