Fsl_anat integration for nipype

Hi all!

I am mentoring 2-3 students in a python course final project / hackathon which will take place 22-29.7. I was trying to come up with an idea for a project and because we occasionally use fsl_anat in my lab and I couldn’t find a nipype interface for it, I proposed creating such an interface and it was accepted.
I was wondering whether there would be interest in making a PR out of it.

As far as I understand, we could either sub-class FSLCommand and make the required adjustments, or we could check out fsl_anat’s source code and generate a Workflow that imitates it. IMO, the latter seems much more robust, but of course if there is interest in the PR and a strong preference for the former we will gladly oblige.

Any thoughts or comments would be appreciated :slight_smile:

Thank you!

1 Like

@ZviBaratz - that would be great to add that as interface

there are two potential approaches:

  1. add fsl_anat into nipype as an interface. should be straightforward to do this as a PR.
  2. we decided to move workflows out of nipype into the niflows project. mostly because workflows are more complex and often depend on many moving parts. they tend to get outdated or require more maintenance. so a new niflow could be a good exercise for a hackathon as well and given 2-3 students might allow them to learn a few things and also help improve niflow.

for niflows this tutorial may help introduce things: https://effigies.github.io/niflows-intro/#1 (and we would be happy to help support with any questions in the niflow-manager repo or here on neurostars)

@satra thank you for the prompt reply!
niflow looks absolutely amazing. I’m tempted to simply say we’ll go with that option, but I may have to adjust the difficulty of the project to the level of the group. I’ll read more and get a better grasp of what exactly an implementation using niflow would entail and consult with you again before we dive in.

On a different note, I’ve been pushing off sharing a few packages I’m working on that were originally meant to support my PhD but have become somewhat of a larger project. The reason I’ve been holding back is that the documentation is still lacking and I have many things to do before the repos fully comply with open-source standards. However, I think they could potentially integrate very well with niflow in the future. One of the project’s apps, django_analyses, provides a reproducible pipeline engine using Django’s ORM, and I would be thrilled to hear your opinion of it and explore ways in which these projects might benefit each other.

The Labbing Project sounds very interesting and would be happy to chat more about the overall pieces. We have developed a few related things. Perhaps we can have an offline chat about details.

1 Like