Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ENH] Add PETsurfer to nipype #3437

Merged
merged 114 commits into from
Apr 21, 2022
Merged

Conversation

mnoergaard
Copy link
Contributor

@mnoergaard mnoergaard commented Mar 11, 2022

Summary

This PR adds PETsurfer to nipype (Issue #3422) by providing support for two FreeSurfer functions, namely gtmseg and mri_gtmpvc. It also provides support for pharmacokinetic modeling, which is supported by mri_glmfit. A tutorial for running these commands can be found here (https://surfer.nmr.mgh.harvard.edu/fswiki/PetSurfer).
All the necessary code has been added to petsurfer.py, including minor edits in the freesurfer interface init file and model.py.

  • Added support for PETsurfer via petsurfer.py
  • Updated init.py to import the classes GTMSeg and GTMPVC
  • Updated model.py to include flags for mrtm1, mrtm2 and logan in the GLMFitInputSpec

Acknowledgment

I acknowledge that this contribution will be available under the Apache 2 license.

Copy link
Member

@effigies effigies left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, I think I've now gone over everything closely. Some final comments and suggestions. As always, feel free to push back or ask questions.

nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
@effigies
Copy link
Member

@mnoergaard Did you have any further people you wanted to look over this?

@pwighton @mgxd Would you like time to review before merge?

@mnoergaard
Copy link
Contributor Author

Tagging @melanieganz just to be sure, and also to potentially refer others. But otherwise everything LGTM. Thanks for all your help on this @effigies.

Copy link
Member

@mgxd mgxd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, one little thing

nipype/interfaces/freesurfer/petsurfer.py Outdated Show resolved Hide resolved
Co-authored-by: Mathias Goncalves <goncalves.mathias@gmail.com>
@mnoergaard
Copy link
Contributor Author

Thank you for your corrections/reviewing @mgxd!

@ghisvail
Copy link
Contributor

That would help us for our PET pipelines in Clinica 👍

Is there a plan for a point release of nipype soon after this is merged? Just to know whether we should wait for the update or vendor this interface within Clinica in the meantime.

@effigies
Copy link
Member

@ghisvail I almost always vendor new interfaces in projects I run so that I'm not dependent on the nipype release process. Once they're in and I've tested the latest release, I can transition away.

That said, I'm happy to merge this now, and we can plan to make a release soon. I want to give other contributors a chance to polish off PRs if they're ready to do so, so I expect it will be next week.

@effigies effigies merged commit 1a476bd into nipy:master Apr 21, 2022
@ghisvail
Copy link
Contributor

@ghisvail I almost always vendor new interfaces in projects I run so that I'm not dependent on the nipype release process. Once they're in and I've tested the latest release, I can transition away.

That's what we did for the recent mrtrix3 merge actually :-)

That said, I'm happy to merge this now, and we can plan to make a release soon. I want to give other contributors a chance to polish off PRs if they're ready to do so, so I expect it will be next week.

A week sounds good to us. Thanks for your quick reply.

@effigies effigies mentioned this pull request Apr 27, 2022
11 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants