qsiprep icon indicating copy to clipboard operation
qsiprep copied to clipboard

FSL dependency

Open mb3152 opened this issue 1 year ago • 4 comments

I would like to remove the FSL dependency from QSIPrep.

mb3152 avatar Oct 24 '22 18:10 mb3152

Can you open up a PR and enable contributions from other editors? I think with TORTOISE included we can remove it without loss of performance

mattcieslak avatar Oct 24 '22 22:10 mattcieslak

Got it, @jbh1091 is working on it for now.

mb3152 avatar Oct 25 '22 18:10 mb3152

@mattcieslak I'm looking at FAST usage right now. I basically see 2 options for replacement: Freesurfer segmentation and AFNI's 3dSeg. Both have differences that prevent a quick plug-and-play swap (no CSF mask in Freesurfer, no TPMs in AFNI). Did you have a solution in mind?

@mb3152 mentioned FAST outputs are already not used much, so deleting the current usage and added segmentation references later in the pipeline when needed is also an option.

jbh1091 avatar Oct 25 '22 21:10 jbh1091

We can remove FAST from preprocessing entirely. Nothing in the preprocessing workflow uses a brain segmentation other than distortion correction plotting. Maybe we could use Atropos from ANTs, or 3dSeg sounds interesting too.

The trickiest thing to replace is going to be avscale, which we use to convert itk transforms to FSL transforms and from those calculate the head motion parameters.

I have no idea how FSL calculates these motion parameters. They're different from what you get if you read the itk transform files as Euler3DTransforms and get the translations and rotations.

mattcieslak avatar Oct 25 '22 21:10 mattcieslak

Totally separate question: I know TORTOISE will be replacing eddy and topup; does that replacement extend to FUGUE and PRELUDE as well? From what I've been reading they do similar things (EPI distortion correction) just with a different method.

jbh1091 avatar Oct 27 '22 20:10 jbh1091

These also require different fieldmap acquisitions. AFAIK there is nothing out there that does exactly what fugue and prelude do, but unless you acquire GRE fieldmaps (not as popular nowadays) these programs are not useful

mattcieslak avatar Oct 27 '22 20:10 mattcieslak

OK that makes sense, thanks. If there isn't a good replacement but it's also not used much, I'll just plan to remove them entirely.

jbh1091 avatar Oct 27 '22 20:10 jbh1091

What push/review strategy makes the most sense to you? There are a ton of changes to make, so it may be better for me to push to the branch after I change (and locally test) each component individually. A piecewise approach seems easier to write and easier to review.

jbh1091 avatar Oct 28 '22 15:10 jbh1091