Open adelavega opened 6 years ago
Seconding the need for a BIDSDataSink
. After a couple hours looking for a better solution I'm resorting to putting a Rename
node before the DataSink for every single file. For those of us trying to comply with BIDS this is something that should be routine and easy, but isn't.
I see there's a BIDSDataSink interface class in https://github.com/poldracklab/fitlins . Is this ever going to be added to nipype?
@hbraunDSP There are also derivatives data sinks in https://poldracklab.github.io/niworkflows/api/niworkflows.interfaces.bids.html#niworkflows.interfaces.bids.DerivativesDataSink. We would need to agree on the desired features to bring something into nipype.
It may also make sense to have small interface packages that allow projects to select which interfaces they want, which would make it a bit less of a fraught decision, in terms of maintaining backwards compatibility.
Anyway, the niworkflows interface has been used in several projects, while the FitLins one is only in one, so you might see if that does what you need.
Starting this issue as a place to gather discussion about BIDS-awareness we'd like to include in nipype 2.0 (most of these suggestions came from the nipype 2.0 sprint).
Domain specify versions of these interfaces already exist in existing projects such as
fitlins
,fmriprep
,mriqc
and more. It would be great to abstract these out into general purpose Interfaces.Improvements to
BIDSDataGrabber
BIDS-model
and iterate over relevant subjects/runs/tasksBIDS metadata awareness in interfaces
TR
BIDS
compliant, could write converters (e.g. convertingFSL
outputs toBIDS
)Derivatives compliant
BIDSDataSink
DataSink
substitutions is one of the biggest issues for beginners. It would be great if you could plug the outputs of Interfaces into aBIDSDataSink
and output a valid BIDS derivative dataset.BIDSLayout
can be used to write BIDS paths, but the challenge is obtaining the entities for outputs. At first, it may be good enough and useful to let users manually specify these (if they know them), and just let theBIDSDataSink
handle formatting / dataset creation.BIDS Specify Model
FSL
,SPM
,nistats
from a BIDS-Model.Of course, none of this would be complete without docs, so once this is release it would be great to include it in the niype tutorial.
Other suggestions are welcome.