Atlas-based subcortical nuclei transformation

Hello 3d Slicer forum,

I used General Registration (BRAINS) (affine followed by nonrigid B-spline) to align the MNI T1 atlas with a patient’s ac-pc aligned space; the results looked good There are various subcortical nuclei as separate nifti files that are stored in MNI space that I would like to bring into the patient’s ac-pc space. The approach I took was to pass the nuclei sequentially through first the calculated affine transformation node followed by the B-spline transformation node, hardening the transformation after each node. Hardening after the affine node went fine and the nuclei were established in good proximity to their known anatomical location. However, after hardening the B-Spline node, the nuclei appear in a different location and/or disappear from view. Is there any reason for this?

3d Slicer version 4.8.1
Windows 10

Thanks for your help!

For the separate subcortical nuclei nifti files (in MNI space), I resampled them using the calculated non-rigid transform. This appeared to solve the problem and then I can carry harden the transform in the affine node. My question now is related to the interpolation method for the resampling…how to decide which to use? Linear vs BSpline interpolation? From an anatomical fidelity perspective, it seems that for my dataset, linear interpolation is best. But is this considered correct given that I’m using a B-Spline transform for the resampling?

If you need the output to be aligned with another volume’s geometry then resampling using a reference volume is the way to go.

Interpolator: Linear is fast and may be good enough if voxel size small. Windowed sinc provides the closest estimation of the theoretically optimal low-pass filter. B-spline may reach same image quality as windowed sinc, but it is much faster. Nearest neighbor (no interpolation) is only for labelmaps.

Great, thanks Andras! Also, for the General Registration (BRAINS) module, I’ve coregistered the MNI T1 to the patient’s T1. Is resampling done as part of the transformation? If so, do you know if the Linear interpolation is being used as the default?


Yes, if you harden a non-linear transform using Transforms module then linear interpolation is used.

1 Like