Get areas and orientations of nodes in parcellated image for The Virtual Brain

Hello MRtrix team,

I’m pretty new to MRtrix and MRI image processing in general. I’m trying to use MRtrix to generate a structural connectome from the Human Connectome Project for further analysis in The Virtual Brain, but it requires a lot of components for it to work.

Specifically, I need the connectivity weights, tract lengths, region center coordinates and labels, region orientations, region areas, cortical flags, and hemisphere flags.

I followed the ISMRM tutorial to get the actual weights matrix. Then I was able to generate the tract lengths from tckstats. I ran one of the custom functions posted on another topic, mrcentre.cpp to generate the region centers. The region labels and all the flags I was able to extract from the fs_default.txt file. But I am struggling to figure out how I can calculate the region areas and orientations. What functions will I need to run to get that?

The Virtual Brain defines areas and orientations as follows:
Areas: Estimated area represented by the regions in the connectivity matrix.
Orientations: Unit vectors of the average orientation of the regions represented in the connectivity matrix.

Really appreciate any assistance!


Hi Rafi,

The descriptions of the requisite fields are slightly ambiguous.

  • “Areas” I suspect might be referring to the surface area of a parcel on the cortical ribbon. These should be provided in the FreeSurfer output text files; however if you’re looking to include both cortical and sub-cortical regions, that definition becomes a little unwieldy.
    Alternatively, you could use the volume of each region, which you could get using e.g.:
for i in {1..N}; do mrcalc parcellation.mif $i -eq - -quiet | mrstats - -ignorezero -output count; done
  • The “Orientations” field has me a little baffled. My guess is that it’s somehow important for dealing with e.g. EEG data? It could be the mean of all normal vectors for all surface vertices ascribed to the parcel; or it could be something like the “primary axis of elongation” (I’m sure there’s a more mathematical term for it). This requirement probably requires clarification from someone more familiar with TVB…