How to get the resolution of ANTs registered functional images in native resolution?

Hi all,

Apologies in advance if this has been answered in one of the previous posts (I have been looking and could not find the answer).

My functional images have a resolution of 1.6mm iso and T1ws of 0.75mm iso. I am using a preprocessing pipeline (similar to fmriprep) where I use FSL’s BBR to register functional to T1w, ANTs to register T1w to MNI template, then combine/apply resultant transformation matrices/warp to normalise the functional images to MNI space (1mm).

However, the normalised functional images have a resolution of 1mm since the MNI template have a resolution of 1mm. As far as I know in ANTs the resultant normalised images have the same resolution as the reference image (in this case MNI template). I know for instance in spm’s DARTEL the final resolution of the images can be defined during registration, but no such option seems available in ANTs?

So my question is; how can I get my normalised functional images in the native resolution (1.6mm)? Would I need to resample the normalised functional images as a last step (with ResampleImage in ANTs for example) from 1mm to 1.6mm?

Also, how is this done in fmriprep? In this page it says that images are resampled to the user defined output space, but how is this done exactly, if lets say the --output-spaces is MNI_xxx_res:native?

Thank you!

Hi @sev-ince,

The way to achieve what you want is to resample your reference image (here the MNI template) to your desired resolution and use this resampled image as the “reference” in your antsApplyTransforms call.

In fmriprep, it is this fonction that is used:

https://www.nipreps.org/niworkflows/master/api/niworkflows.interfaces.nibabel.html#niworkflows.interfaces.nibabel.GenerateSamplingReference

I hope this helps!

Thank you so much @jsein ! Yes that helps! :slight_smile: