I am working on a multi-echo fMRI pipeline using fMRIPrep + tedana, and I have two questions about the tedana workflow.
1. Dummy scans in tedana
I included the dummy_scans parameter in the tedana_workflow, but the output image still appears to have the same number of volumes as the original input. I am unsure how to interpret this:
Does this mean the dummy_scans argument was not actually applied?
Or does tedana ignore the dummy scans during estimation/processing, while still writing out an output image with the original number of frames?
I would appreciate clarification on how dummy_scans affects the final output dimensions and whether there is a recommended way to verify that it was handled correctly.
2. WM/CSF signals after tedana denoising
My understanding is that tedana performs TE-dependent denoising and separates BOLD-like from non-BOLD components. In that context, I am wondering whether WM- and CSF-related signals are already partly accounted for by tedana.
So my question is: after running tedana, is it still recommended to perform additional WM/CSF regression during post-processing, especially for resting-state functional connectivity analyses? Or would that risk over-denoising?
My main concern is finding a reasonable balance between insufficient denoising and over-denoising for downstream FC analysis.
But tedana’s own docs also note an important limitation of spatial ICA: it is good at removing spatially localized noise, yet it can miss spatially diffuse noise spread across much of the brain. For that reason, the tedana docs explicitly describe additional post-processing to remove diffuse noise, and list methods such as GSR, MIR, and aCompCor among the approaches used after tedana. See here: tedana’s denoising approach — tedana 26.0.2 documentation
It would still be wise to try both with and without additional denoising, and see if you get considerable improvement in QC-FC after including additional denoising.
Thanks so much! Updating to tedana 26.0.3 solved it — the dummy_scans parameter now correctly removes the dummy volumes. Really appreciate your help!!!
Thank you very much for your reply and explanation — that was very helpful. I understand the point about diffuse noise much better now!!!
I have one more question. At the moment, I am using tedana_workflow mostly with the default settings, only specifying fittype="curvefit" and tedpca="kic". However, I noticed that some users also add ica_method="robustica" and n_robust_runs=50.
Could you please explain the purpose of these two settings? I am not sure whether adding them would be beneficial, or whether the default ICA settings are already sufficient for most cases.
The robustica option basically runs ICA n_robust_runs times with different random seeds and finds common components across those runs. There’s more information about that approach in Tahayori et al. (2025), but the gist is that it produces more stable components than just running ICA once. The downside is that it takes longer. If you have the computational resources and the time, it’s probably a good idea to use robustica. If you check out this GitHub issue, you’ll find that 30 is probably sufficient for n_robust_runs, and 50 is probably overkill.