tylerthemiler
tylerthemiler

Reputation: 5746

fMRI Brain Image Registration in Matlab or Python between Patients

So, I use SPM to register fMRI brain images between the same patient; however, I am having trouble registering images between patients.

Essentially, I want to register a brain atlas to a patient-specific scan, so that I can do some image patching. So register, then apply that warping and transformation to any number of images.

SPM was unsuccessful in such a registration. It cannot warp the atlas to be in the same brain shape as the patient brain.

Would software such as freesurfer be good for this?? Or is there something better out there in either matlab or python (but preferably python)??

Thanks!

tylerthemiler

Upvotes: 2

Views: 1944

Answers (5)

fati
fati

Reputation: 135

You can use ANTs software, or u can use Python within 3dSclicer for template registration. However, I did mane template registration in SPM and I recommend it for fMRI data better than ITK or Slicer.

I found these links very helpful :) let me know if you need more help.

https://fmri-training-course.psych.lsa.umich.edu/wp-content/uploads/2017/08/Preprocessing-of-fMRI-Data-in-SPM-12-Lab-1.pdf

https://nipype.readthedocs.io/en/latest/users/examples/fmri_spm.html

Upvotes: 0

ermenegildo
ermenegildo

Reputation: 11

Along SPM's lines, you can use IBSPM. It was developed to solve exactly that problem.

Upvotes: 1

Yaroslav Halchenko
Yaroslav Halchenko

Reputation: 895

There is a bulk of tools for image registration, e.g. look at http://www.nitrc.org under "Spatial transformation" -> "Registration". Nipype is indeed a nice Python module which wraps many of those (e.g. FSL, Freesurfer, etc) so you could explore different available tools within somewhat unified interface.

Besides those well known (SPM, FSL, AFNI) also you could give a try to somewhat less known but very powerful CMTK (http://www.nitrc.org/projects/cmtk) which comes with non-linear registration(s), population-based template construction, many other features and SRI24 atlas. Such script as asegment_sri24 could be used for a quick start with registering/reslicing each subject using labels available in SRI24 atlas.

To start using CMTK (or dozens of other neuroimaging software) in a matter of minutes I would recommend you to look at http://neuro.debian.net -- the platform to allow very easy deployment of (maintained) neuroscience software. FSL, AFNI, CMTK, SRI24 atlas etc are available there upon your demand ;)

Upvotes: 2

Jeff Witz
Jeff Witz

Reputation: 11

I think ITK is made for this kind if purpose. A Python wrapper exists (Paul Novotny distributes binaries for Ubuntu on his site), but this is mainly C++. If you work under Linux then it is quite simple to compile if you are familiar with cmake.

As this toolkit is a very low-level framework I can advise you to try elastix which is a command line utility allowing one to make registration on picture using multiscale Bspline dense registration.

Another interesting tool based on Maxwell demons and improved with diffeomorphic capabilities is MedINIRA.

Upvotes: 1

Amyunimus
Amyunimus

Reputation: 1633

Freesurfer segments and annotates the brain in the patient's native space, resulting in patient-specific regions, like so.

I'm not sure what you mean by patching, or to what other images you'd like to apply this transformation, but it seems like the software most compatible for working with individual patient data, rather than normalized data across patients.

Upvotes: 1

Related Questions