Vertex-wise statistics

Hi Arno and colleagues,

My question is quite related to an earlier thread:

As I am using mindboggle for a group analysis I wonder whether it is possible to perform vertex-wise SBM analysis within in a toolbox (e.g. Freesurfer QDESC or CAT12 SBM)?
Is there a way to convert data to suite these analyses?

Kind regards,


Ahoi hoi @JeroenBlommaert,

thank you for very much for your post and welcome to neurostars, it’s great to have you here.

This question popped up a bunch of times through the last years I think. As @binarybottle mentioned in the other post you linked, it’s possible to do that using the .vtk files in e.g. the shapes folder of the mindboggle output directory. Please remember the caveats or features of .vtk files as outlined by @binarybottle. As we’re working on a more native integration of nilearn for plotting surface files and its dev days are currently happening, during which surface support is a big topic, a nice extension would be a respective integration. Maybe mindboggle could support the conversion of .vtk files to a format that can than be used within nilearn’s stats module (previously known as nistats). What do you think about this?

Best and cheers, Peer

@PeerHerholz – Thank you! I think that connecting mindboggle with nilearn would be a great solution!

Hi both,

Thanks for the quick reply
Problem is that all group comparison software I know uses mgz or gii, and I don’t know how to get to the .vtk format.
Moreover, I would of course want to make use of their protocols to account for the multiple comparisons (be it with cluster-based enhancement or gausian random fields).
As far as I understand, you are now trying to get it compatible with nilearn, but is there anyway to get with the current Mindboggle to a statistical software with some ‘simple’ manipulation?

Ahoi hoi,

a few things:

If you want/nee to use mgz and/or gii, you can convert the vtk files respectively.
You can check mindboogle’s respective code for ideas and a possible point to start.

Even though the assumptions for these approaches are outlined clearly (smoothing, linearity, error terms, euler characteristic, etc.), they are a big pill to swallow and in the majority of cases never checked before applying these techniques. In a lot of cases, alternative procedures would actually be more appropriate.
All this not even includes the voxel vs vertices differences …

It’s less about tailoring it specifically to nilearn (which is also a statistical software), but to include a functionality in mindboggle to convert vtk into a format that is also supported by nilearn (and other software). However, this goes into the whole standardizing surfaces discussion. “Simple” depends I guess…as mentioned above: check mindboggle's freesurfer to vtk functions to get an idea. You could also try to read the vtk files with the mindboggle functions and then use nibabel to write a gii file, but given the structure of surface files this might be a not-super-fun endeavor.

Tagging the experts @jeromedockes, @binarybottle, @bthirion, @tbazeille and @effigies for more experienced insights.

HTH, best, Peer