Color this! An automatic algorithm to assign visually distinct colors to white matter bundles
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 methods1, 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 coloring3. 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.

Figures

Figure 1: 7 bundles making up the Corpus Callosum, numbered from CC_1 to CC_7 and colored using a basic, non-spatially aware algorithm. It is hard to visually distinguish the limits of CC_3 against CC_4, since both were assigned a similar green color.

Table 1: number of pairs of bundles having visually indistinguishable colors, according to bundle group and coloring technique. We see that the proposed technique never created a visually similar color assignment for any pair of bundles.

Figure 2: graph representing the neighboring information for the bundles seen in Figure 1. Those bundles represent a segmentation of the Corpus Callosum into 7 areas. Each vertex represents a bundle, and each edge represents the fact that 2 bundles are neighbors of each other.

Figure 3: 11 bundles extracted in the right hemisphere and their coloring. Top shows the basic technique, bottom shows our proposed technique. Bundles colored using the proposed technique seem better delineated, and no pairs of differently shaped bundles share a color.

Figure 4: 4 bundles selected from those in Figure 3, highlighting the coloring problem. The basic technique made the Optic Radiation and part of the Superior Longitudinal Fasciculus a light blue, and the Inferior Fronto-Occipital Fasciculus and Cortico-spinal tract purple. The proposed technique assigned different colors to those 4 bundles.



Proc. Intl. Soc. Mag. Reson. Med. 24 (2016)
3056