From 90f2c941230cfc7d91bfe7194934c35c47f88f49 Mon Sep 17 00:00:00 2001 From: Taylor Salo Date: Tue, 18 Nov 2025 10:21:03 -0500 Subject: [PATCH 1/2] Collect preprocessed T2w image. --- src/smriprep/data/io_spec.json | 10 ++++++++++ src/smriprep/utils/bids.py | 5 ++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/smriprep/data/io_spec.json b/src/smriprep/data/io_spec.json index b3c97c588b..057c8f634f 100644 --- a/src/smriprep/data/io_spec.json +++ b/src/smriprep/data/io_spec.json @@ -44,6 +44,16 @@ ".nii.gz", ".nii" ] + }, + "t2w_preproc": { + "datatype": "anat", + "space": null, + "desc": "preproc", + "suffix": "T2w", + "extension": [ + ".nii.gz", + ".nii" + ] } }, "transforms": { diff --git a/src/smriprep/utils/bids.py b/src/smriprep/utils/bids.py index 463391335c..6ac168b476 100644 --- a/src/smriprep/utils/bids.py +++ b/src/smriprep/utils/bids.py @@ -70,7 +70,10 @@ def collect_derivatives( paths = [item.path for item in item] - derivs_cache[f't1w_{key}'] = paths[0] if len(paths) == 1 else paths + if key.startswith('t2w_'): + derivs_cache[key] = paths[0] if len(paths) == 1 else paths + else: + derivs_cache[f't1w_{key}'] = paths[0] if len(paths) == 1 else paths transforms = derivs_cache.setdefault('transforms', {}) for _space in std_spaces: From a103259043876f143883c66bdbc6c4611058d8bd Mon Sep 17 00:00:00 2001 From: Taylor Salo Date: Tue, 18 Nov 2025 10:40:12 -0500 Subject: [PATCH 2/2] Update src/smriprep/utils/bids.py Co-authored-by: Chris Markiewicz --- src/smriprep/utils/bids.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/smriprep/utils/bids.py b/src/smriprep/utils/bids.py index 6ac168b476..7d8f9e0786 100644 --- a/src/smriprep/utils/bids.py +++ b/src/smriprep/utils/bids.py @@ -70,10 +70,9 @@ def collect_derivatives( paths = [item.path for item in item] - if key.startswith('t2w_'): - derivs_cache[key] = paths[0] if len(paths) == 1 else paths - else: - derivs_cache[f't1w_{key}'] = paths[0] if len(paths) == 1 else paths + if not key.startswith('t2w_'): + key = f't1w_{key}' + derivs_cache[key] = paths[0] if len(paths) == 1 else paths transforms = derivs_cache.setdefault('transforms', {}) for _space in std_spaces: