Jean-Christophe Houde1 and Maxime Descoteaux1
1Sherbrooke Connectivity Imaging Lab (SCIL), Université de Sherbrooke, Sherbrooke, QC, Canada
Synopsis
We
propose a new technique to automatically assign visually distinct colors to streamlines bundles. Our technique takes into account spatial positioning of bundles to
avoid assigning similar colors to neighboring bundles. This will help
researchers visually disambiguate close bundles. We show that basic
techniques simply trying to spread the colors through the available
spectrum often fail to take neighbors into consideration, and assign
visually indistinguishable colors to close bundles. Our technique is
fully automatic and stable, giving the same color assignments for any
subject with the same bundles and similar structure.Purpose
Propose a new method to automatically assign visually distinct colors
to presegmented bundles of streamlines. This is useful to
researchers and neuroscientists, to ensure an easy distinction
between close bundles, and ensure color consistency throughout a
study.
Problem statement
Various tools and methods
1, 2 now allow to automatically
extract white matter (WM) bundles from whole brain tractograms. To
reduce manual interaction, most tools automatically assign a color to
each bundle. No matter the strategy chosen for this assignment, there
never is a consideration of spatial relationship between bundles,
contrarily to, for example, brain surface coloring
3. This
frequently results in neighboring bundles sharing almost exactly the
same color, making them difficult to distinguish visually (see Figure
1). This can be quite limiting when trying to visualize those
bundles.
Methods
To overcome this problem, we propose the following method: 1) Compute
the bounding box of bundles, to have information on their spatial
reaches; 2) Create a graph representing spatial relationships, having
the bundles as vertices and connecting bundles having intersecting
bounding boxes (see Figure 2 for an example); 3) Generate a colormap where each sequential color is
the farthest from all previously chosen colors in a perceptually
uniform color space (CieLAB4); 4) Beginning with the most
connected vertex, assign a color from the colormap to each bundle; 5)
Find N, the number of bundles that have a color similar to one of
their neighbors; 6) Generate N new colors following the same
principles as step 3; 7) For each of the N bundles, iteratively
choose, in the new colormap, the color that maximizes the distance to
its neighbors' colors.
To validate that our method produces a color assignment which
facilitates distinguishing neighboring bundles, we used a Scilpy5 production pipeline to create a 500k streamlines, whole-brain
tractogram. Dipy6 CSD modeling was ran on a 64 directions,
b=1000 s/mm2 DWI. Deterministic tractography was done through Mrtrix7, seeding from the WM mask. 29 of the main WM bundles were
extracted using the
TractQuerier1 with a custom query.
Bundles were then divided in various configurations: 1) all bundles,
2) Corpus Callosum (CC) bundles, 3) all bundles except those from the
CC. Those groups of bundles were then colored using 2 techniques: 1)
a basic technique8 based on sampling the HSV color space
using a golden ratio based spacing, sequentially assigning a color to
each bundle, 2) our proposed technique. Each bundle group / coloring
technique combination was then visually analyzed to check how often 2
neighboring bundles were indistinguishable.
Results
Table 1 shows the occurrence of visually indistinguishable bundles
for the various bundles groups and coloring technique combinations.
Using the basic technique on the full 29 bundles resulted in 13 pairs
of bundles that were not separable. Our technique generated no such
pair. This is clearly a gain, since it makes it easier for users to
see the full content of their extracted bundles, with no manual
intervention to assign new colors to bundles. Figure 3 shows bundles
extracted in the right hemisphere and their coloring, whereas Figure 4 shows a subset of those bundles demonstrating the problem of
distinguishing bundles. Using the basic technique, each of the 2
pairs of bundles has only one color for the 2 distinct bundles of the
pair. Our technique assigned easily distinguishable colors to those
same 4 bundles.
Discussion
Using our proposed technique enhances the distinction between
neighboring bundles, to more efficiently work with those datasets. An
additional advantage of the technique is that no manual intervention
is needed. Colors are automatically optimized based on the spatial
relations of bundles.
Conclusion
We have shown that using our automated color assignment technique
results in bundle color assignments that enhance the ease of visual
identification of bundles, by assigning sharply different colors to
neighboring bundles. This will help users developing automated
processing pipelines to obtain consistent and more usable bundle
datasets. It will also help neuroscientists in quickly identifying
missing bundles when some colors are not present.
Acknowledgements
We would like to thank Marc-Alexandre Côté from the SCIL for the input on the color selection code.References
1. Wassermann et al. On describing human white matter anatomy: The white matter query language. MICCAI 2013.
2. Garyfallidis et al. Recognition of bundles in healthy and
severely diseased brains. Proceedings of: International Society of
Magnetic Resonance in Medicine (ISMRM), 2015.
3. Klein et al. An interactive tool for constructing optimal brain colormaps. 40th International Meeting of the Society for Neuroscience, 2010.
4. International Color Consortium, Specification ICC.1:2004-10
(Profile version 4.2.0.0) Image technology colour management —
Architecture, profile format, and data structure, (2006).
5. The Scilpy team. Scilpy: https://github.com/scilus/scilpy
6. Garyfallidis et al. Dipy, a library for the analysis of diffusion
MRI data. Front. In NeuroInformatics. 2014.
7. Tournier et al. MRtrix: Diffusion tractography in crossing fibers regions, IJIST 22(1), 53-66, 2012.
8. Martin Ankerl. How to generate random colors programmatically,
http://martin.ankerl.com/2009/12/09/how-to-create-random-colors-programmatically/.
Accessed November 9, 2015.