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

Add option to use SynthSeg as alternative to recon-all #343

Open
tsalo opened this issue Jun 1, 2023 · 5 comments
Open

Add option to use SynthSeg as alternative to recon-all #343

tsalo opened this issue Jun 1, 2023 · 5 comments
Labels
enhancement New feature or request

Comments

@tsalo
Copy link
Contributor

tsalo commented Jun 1, 2023

Is your feature request related to a problem? Please describe.
Given that SynthSeg is much faster than recon-all, and more accurate than FAST, I was thinking that it might be good to provide an option to use it in sMRIPrep.

@mattcieslak has successfully integrated SynthSeg and SynthStrip into QSIPrep. For a normal T1w, he has profiled it as using about 7.5 GB memory. He might have specific recommendations for implementing a workflow in sMRIPrep, if you are interested.

Describe the solution you'd like
A --synthseg parameter that is mutually exclusive with --fs-no-reconall would work well, I think, assuming you don't want to default to SynthSeg when --fs-no-reconall is used.

Describe alternatives you've considered
I'd specifically like to make this an option for ASLPrep, so if the sMRIPrep devs don't think it's a good idea to support SynthSeg in sMRIPrep, I could adapt a workflow from QSIPrep to handle this.

Additional context
None

@effigies
Copy link
Member

effigies commented Nov 20, 2023

Sorry, we should discuss this. @oesteban has been integrating synthseg into other workflows, so it seems inevitable that it gets here sooner or later. I'm instinctively conservative here, as plenty of surefire improvements have led to a long series of bug fixes. I think it would be worth thinking about how to "prove" an alternative without a big commitment.

How would this interact with the #280 effort?

@effigies
Copy link
Member

Also: #299

@tsalo
Copy link
Contributor Author

tsalo commented Aug 12, 2024

I don't know much about FastSurfer. Maybe SynthSeg would supersede it?

@oesteban
Copy link
Member

Regarding FastSurfer vs. SynthSeg, I don't have a solid opinion but I'd intuitively lean towards SynthSeg as it is more 'continuist' with FreeSurfer's development line.

Regarding SynthStrip (#299), I'd say we should test SynthStrip first as it has demonstrated the value and given rise to a number of issues within MRIQC that seem to be now under control.

One problem is that SynthStrip is built with PyTorch and SynthStrip was TensorFlow last time I checked. Delivery of both used to be quite tricky AFAIK.

@tsalo
Copy link
Contributor Author

tsalo commented Sep 20, 2024

I think QSIPrep has both SynthStrip and SynthSeg installed, so @mattcieslak might be able to help with the dependencies.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants