Medial wall masking (or not) in fMRIPrep 25.1.0, fsaverage5

Summary of what happened:

The fsaverage5 _bold.func.gii images produced by fMRIPrep 25.1.0 have non-zero values for the medial wall vertices, unlike those produced by some previous versions of fMRIPrep (20.2.7, others).

The other vertices (i.e., not medial wall) in the two _bold.func.gii are reasonably similar in both versions. For example, here are the first frame from preprocessing the same input image with both versions, 20.2.7 first, then 25.1.0:


We don’t analyze the medial wall vertices and I don’t think this is a bug, but I am curious where the change came from; perhaps the older fMRIPrep versions always assigned 0 to the medial wall vertices? Or some freesurfer-related change? Thanks for any insight!

Command used (and if a helper script was used, a link to the helper script or the command generated):

for 25.1.0; very similar for previous versions:

LOGGINGTIMESTAMP() { date -Ins; }
CURRENTCPUUSE() { echo $[100-$(vmstat 1 2|tail -1|awk '{print $15}')]; }
FREESPACEINCURRENTDIR() { printf '%s\n' $(df -BG -P . | tail -1 | awk '{print $4}' | sed s'/G$//'); }
pushd ${PRIMARY_WORKING_DIR}
mkdir -p ${PRIMARY_WORKING_DIR}${SUBID}/.license/freesurfer/
cp /scratch2/license.txt ${PRIMARY_WORKING_DIR}${SUBID}/.license/freesurfer/license.txt


##### fmriprep: volume AND SURFACE (for single-echo or to combine if multi-echo)
singularity run --cleanenv -B \
${PRIMARY_WORKING_DIR}${SUBID}:/tmp \
/data/nil-bluearc/ccp-hcp/SingularityImages/fmriprep-25.1.0.simg \
--fs-license-file /tmp/.license/freesurfer/license.txt \
-w /tmp /tmp/BIDS /tmp/derivatives \
participant --participant_label ${SUBID} \
--output-spaces fsaverage5 MNI152NLin2009cAsym \
--n-cpus 16 \
--omp-nthreads 4 \
--mem-mb 64000 -v >> ${PRIMARY_WORKING_DIR}${SUBID}/${SUBID}_fmriprep_singularity_VOLSURF.txt 2>&1

Version:

fMRIPrep 25.1.0 w/FreeSurfer 7.3.2; fMRIPrep 20.2.7 w/FreeSurfer 6.0.1

Environment (Docker, Singularity / Apptainer, custom installation):

singularity

Data formatted according to a validatable standard? Please provide the output of the validator:

You are using fMRIPrep-25.1.0, and a newer version of fMRIPrep is available: 25.2.0.
Please check out our documentation about how and when to upgrade:
https://fmriprep.readthedocs.io/en/latest/faq.html#upgrading
251008-02:26:41,475 cli INFO:
	 Telemetry system to collect crashes and errors is enabled - thanks for your feedback!. Use option ``--notrack`` to opt out.
251008-02:26:50,331 cli INFO:
	 Making sure the input data is BIDS compliant (warnings can be ignored in most cases).
bids-validator@1.14.10
(node:10458) Warning: Closing directory handle on garbage collection
(Use `node --trace-warnings ...` to show where the warning was created)
e[32mThis dataset appears to be BIDS compatible.e[39m
        e[34me[4mSummary:e[24me[39m                e[34me[4mAvailable Tasks:e[24me[39m        e[34me[4mAvailable Modalities:e[39me[24m 
        38 Files, 2.46GB        StroopBas               MRI                   
        1 - Subject             StroopPro                                     
        1 - Session             StroopRea                                     

Relevant log outputs (up to 20 lines):

PASTE LOG OUTPUT HERE

Screenshots / relevant information:


Hi Jo, I think that code is relatively untouched for a number of years. Perhaps you were previously using the --medial-surface-nan flag?

I wondered that, too, but couldn’t find the --medial-surface-nan flag specified in our datasets. I hunted the release notes a bit to see if the default changed, but didn’t find anything.

Here’s the report .html summary of the old run:

 fMRIPrep version: 20.2.7
 fMRIPrep command: /usr/local/miniconda/bin/fmriprep --fs-license-file /tmp/.license/freesurfer/license.txt -w /tmp /tmp/BIDS /tmp/derivatives participant --participant_label SCW955358 --output-spaces fsaverage5 MNI152NLin2009cAsym --n-cpus 16 --omp-nthreads 4 --mem-mb 64000 -v
 Date preprocessed: 2023-07-26 11:29:04 -0500