-
Notifications
You must be signed in to change notification settings - Fork 40
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: Project fsLR mesh onto native sphere to enable single-shot resampling into fsLR #339
Conversation
7582b2e
to
c5ce0ed
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mgxd This is ready for review.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good overall, just some minor comments.
One thing - this adds fsLR sphere registration as required step, even on runs that do not wish to do --cifti-output
/ --project-goodvoxels
. If the processing time this adds is negligible, I'm fine with it, but if not we might want to add someway to avoid this. Or alternative, add some notion of a --fast-mode
which will avoid non-essential steps.
Codecov ReportPatch coverage:
❗ Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more. Additional details and impacted files@@ Coverage Diff @@
## master #339 +/- ##
==========================================
+ Coverage 53.59% 54.14% +0.54%
==========================================
Files 20 22 +2
Lines 1364 1461 +97
Branches 229 242 +13
==========================================
+ Hits 731 791 +60
- Misses 578 614 +36
- Partials 55 56 +1
Flags with carried forward coverage won't be shown. Click here to find out more.
☔ View full report in Codecov by Sentry. |
5 seconds. |
Co-authored-by: Mathias Goncalves <goncalves.mathias@gmail.com>
c579384
to
8361310
Compare
@mgxd Okay to merge? |
…3011) ## Changes proposed in this pull request 1) Remove goodvoxels and CIFTI-specific code from `mri_vol2surf` resampling workflow. fsnative and fsaverage will remain the same for now. 2) Removes `fsaverage` as an implicit resampling target for `--cifti-output`. `fsaverage` and `fsLR` are now entirely independent. 3) Create a subject-specific cortical ROI mask in GIFTI space. Not currently output, as it's only needed internally; it's not a great mask but is intended to be more liberal than the fsLR mask applied later. 4) Adds a number of `wb_command` commands, including an OpenMP mixin that allows `OMP_NUM_THREADS` to be set in the environment. I think most commands can take advantage, but I only tagged slow ones (take >10s) that I could verify actually used them. 5) Depends on nipreps/smriprep#339 and nipreps/niworkflows#806. TODO: * [x] Restore literate workflow code. * [x] Restore saving goodvoxels mask, if desired. ## Documentation that should be reviewed TODO --- Closes #2990.
This PR does a few things that enable resampling BOLD to fsLR using goodvoxels masking:
wb_command -surface-sphere-project-unproject
to project the fsLR meshes onto the native space (creating what HCP callssphere.reg.LR_reg
. If I understand correctly, this is the file that will be replaced if we choose to use MSMSulc in the future.md5sum
HCP and templateflow files to tell what we already had or didn't have.wb_command -surface-resample
, although we do not use it here. We use it to generate an fsLR midthickness file, but since it's cheap to generate and we don't save it, it seems more appropriate to use it in fMRIPrep. Putting it here allows us to revise that decision if needed.smoothwm
outputs towhite
. These are needed for workbench operations, and there's no clear reason to keep smoothwm. See Add white FreeSurfer surface to derivatives; replace smoothwm? #338.Closes #338.