Register images with different spherical harmonics order


I have a template spherical harmonics image with order 45. Now I want to register another spherical harmonics image to this template. However, this new image has only order 28. When running mrregister it is giving an error because both images do not have the same number of elements in the time dimension. How would you deal with this scenario? Can I just keep the first 28 elements from the template image to make the time dimensions have the same number of elements?

Yes, you can either crop the image with higher number of volumes (mrconvert in.mif -coord 3 0:nvols - | mrregister - ...) or zero pad (mrpad) that with the lower number to match the respective other image.

Note that most likely (depending on you lmax setting) this yields the same transformation as registration is by default performed with l_max up to 4 and therefore any information after the first 15 volumes is not used for registration. However, if you use the -transformed output options, the transformed images would be padded or cropped in the volume dimension.

1 Like

Thank you for this answer. mrregister now works. However, the results look really bad. My template image was create on HCP data (msmt-csd, 1.25mm resolution) and I am trying to register another image (standard csd, one shell, 2.5mm resolution) to this template. Might this be the problem? Do the template as well as the image I want to register have to be created using the same CSD method? (for my low resolution image I also did not use mtnormalise because you would need msmt for that, right? Also the low resolution image used another response function as the template. Not sure if this is a problem.)
I am aware that for any quantitative analysis on the FODs the same response function should be used for all subjects as well as mtnormalise. But if I only want to use the FOD based registration is this also needed?

Hi Jakob,

Yep, not surprising they’d look bad in that setting. Spatial resolution shouldn’t be the main problem, but intensity normalisation certainly will be: the registration uses an SSD metric. The same CSD method is not absolutely crucial, but to e.g. apply mtnormalise you’ll at least need a 2-tissue (or more) CSD variant. Just for the sake of registration, I also wouldn’t worry too much about the response function(s) matching up exactly. I’ve some experience on that front, testing a few things: no problem there. What I would suggest with the current tools is to try and run a 2-tissue CSD (WM-CSF, with dwi2response dhollander responses), and apply mtnormalise to the 2-tissue result. Additionally, also apply mtnormalise to the HCP data template, but using its full 3 tissue types. I suppose you only have a WM FOD volume for that template though… I’m hoping you still have the warps for all HCP (WM FOD) images to template space, as well as their individual GM and CSF volumes…? If so, apply the same warps to the GM and CSF volumes, and average their results, so you’ve got a full “3-tissue template”. Those 3 (template) tissues then feed into mtnormalise. Once your 3-tissue template and 2-tissue subject have gone through mtnormalise, they should register far better. Some details within the cortical GM might not align perfectly, but that’s not a concern if you’re mostly interested in WM alignment.

Better still would be to have put the HCP subjects 3-tissue CSD results through mtnormalise individually, before creating a template from them (maybe you have effectively done that?). Then you don’t even have to be bothered with warping the GM and CSF volumes (as their only purpose in this particular story is to inform mtnormalise). And then again put the 2-tissue result from the subject through mtnormalise of course as well (just as above).

As mentioned, I have been able to pull of good results with similar strategies in other scenarios. The final chances of success still depend on the x-tissue CSD result of the individual subject. 3-tissue will work better here, since the template is (derived from) 3-tissue too, but as mentioned, I’ve seen it work too with 2-tissue to 3-tissue (template).

Good luck! :wink:


1 Like

Thanks Thijs, I will try this out.