-
Notifications
You must be signed in to change notification settings - Fork 307
ENH: Write out cortex mask GIFTIs #3491
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
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #3491 +/- ##
==========================================
- Coverage 73.50% 73.31% -0.20%
==========================================
Files 60 60
Lines 4582 4549 -33
Branches 585 486 -99
==========================================
- Hits 3368 3335 -33
- Misses 1085 1087 +2
+ Partials 129 127 -2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
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.
If this is a necessary output, should we move this calculation into anat_fit_wf
, look for it in precomputed derivatives, and pass it to hcp_morphometrics_wf
?
Co-authored-by: Chris Markiewicz <[email protected]>
I think moving it into anat_fit_wf would involve duplicating a lot of stuff from |
I think the only necessary duplication is |
I opened a PR to sMRIPrep. I can change this PR to use the output of |
The current error is
It looks like the list of supported transform extensions in niworkflows' dictionary (https://github.com/nipreps/niworkflows/blob/551b50f8272f2172084ce6ccd8964c86b93c4282/niworkflows/interfaces/nitransforms.py#L37-L42) doesn't include |
Checking the failing node's report.rst, it looks like the second input to If I'm right, there must be a bug in sMRIPrep's |
I just checked with the container. Running With
Note the fsnative transforms are NLin6Asym! If I use
The fsnative transform list is just the other space's transform list. |
Since I switched to using smriprep@master in this PR and other PRs are not affected, something merged after 0.18.0 must be the culprit. EDIT: Maybe nipreps/smriprep@7460c38? |
Can you write a quick script to test? If so, we could bisect it. |
Okay last comment on this. I ran a check using Python 3.12, and from pprint import pprint
from json import loads
from pathlib import Path
spec, _ = tuple(loads(Path('/Users/taylor/Documents/tsalo/smriprep/src/smriprep/data/io_spec.json').read_text()).values())
qry_base = {'subject': '01'}
pprint(spec['transforms'])
std_spaces = ['MNI152NLin2009cAsym', 'fsnative', 'fsLR']
derivs_cache = {}
transforms = derivs_cache.setdefault('transforms', {})
for _space in std_spaces:
space = _space.replace(':cohort-', '+')
print(space)
for key, qry in spec['transforms'].items():
# For a quick and dirty workaround, adding qry = qry.copy() here fixes the issue.
pprint(qry)
qry |= qry_base
qry['from'] = qry['from'] or space
qry['to'] = qry['to'] or space
pprint(qry)
pprint(spec['transforms']) In EDIT: lol perfect timing @effigies |
I opened nipreps/smriprep#486 with a proper script that can be bisected (I think). |
It's finally running all the way through, but there's a mismatch in the expected outputs:
|
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.
LGTM.
@effigies what about the weird sMRIPrep outputs? I know this PR isn't responsible for them, but they'll be an issue at some point. |
Oh never mind it's passing now 😕 |
The You're welcome to dig into it. |
25.2.0 (October 01, 2025) New feature release in the 25.2.x series. This release is an *fMRIPrep Long-Term Support (LTS)* release. The planned support window is 4 years, until October 2029. This release is an incremental improvement over 25.1.x, but includes some fixes and improvements that do not fit within our `bug-fix policy <https://www.nipreps.org/devs/releases/#bug-fix-releases>`__. Importantly, the change in interpolation in 25.1.0 introduced artifacts for some datasets. This release changes the default interpolation mode to ``grid-constant``, which resolves those problems while not reintroducing the issue the previous release sought to fix. This release also (finally) introduces per-session processing. The ``--session-label`` flag selects the sessions to process, and the ``--subject-anatomical-reference`` flag indicates whether and how to combine across sessions. Existing filters passed via ``--bids-filter-file`` may need to be updated or removed in favor of using these flags to achieve the desired behavior. We would like to thank the AMP-SCZ and ENIGMA consortia for testing out and providing feedback on this release. * FIX: Clean up output report language (#3529) * FIX: Default to grid-constant interpolation mode (#3516) * FIX: Adapt to transposed ndcoords in nitransforms (#3517) * FIX: Write out Freesurfer-derived outputs (#3512) * FIX: Add kwargs to _warnings.py (#3483) * ENH: Resample BOLD data to any surface template space using the Connectome Workbench (#3461) * ENH: Add boldref / sbref to source metadata (#3532) * ENH: Add dedicated session filtering, alternative anatomical template options (#3495) * ENH: Write out goodvoxels mask (#3513) * ENH: Add registration metadata to boldref-to-anat transforms (#3500) * ENH: Write out cortex mask GIFTIs (#3491) * ENH: Update transforms.py according to new transform chain of nitransforms (#3494) * RF/DOC: Improve and document command-line parser defaults (#3487) * DOC: Explain better SDC and B0FieldSource requirement (#2768) * DOC: Document `freesurfer` parameter in BOLD confound workflow init (#3504) * DOC: Add myself to contributor list (#3506) * DOC: Fix non-standard Input/Output docstring section management (#3505) * MNT: Split Dockerfile into base and pixi layers (#3521) * MNT: Replace conda with pixi and lock (#3503) * MNT: Update license metadata using SPDX expression (#3486) * MNT: no need to re-run `ruff check` after `ruff format` (#3480) * MNT: Update pre-commit ruff legacy alias (#3479)
Closes #3433.
Changes proposed in this pull request
anat_fit_wf
instead ofhcp_morphometrics_wf
.