bids-standard / bids-2-devel

Discussions and suggestions of backwards incompatible changes to BIDS
https://bids.neuroimaging.io/
Creative Commons Attribution 4.0 International
10 stars 1 forks source link

Treat associated modalities as independent #45

Open tsalo opened 3 years ago

tsalo commented 3 years ago

I am not completely set on this, but I wanted to float the idea to stir up some discussion. Basically, my idea is to move "associated data", like events and physio, to the beh data type/folder in all cases- not just when there's no corresponding imaging data.

I see two benefits:

  1. A simplification of the rules. You don't need to know that events only go in beh if they don't have an associated functional scan- you just organize them the same way regardless.
  2. Implicit support of multimodal acquisitions. If you acquired both fMRI and EEG at the same time, you don't need to worry about where to place these associated data files.

The main cost is in interpretability. The filenames would either have to match up in terms of entities or there would need to be some metadata field with a unique identifier (perhaps in _scans.tsv? see https://github.com/bids-standard/bids-specification/issues/529).

robertoostenveld commented 3 years ago

The challenges I see with this are that at this moment

  1. the link between recordings is now implemented by matching file names (up to the suffix)
  2. the temporal synchronization is now implemented by prioritizing one of the recordings (the func, meg, eeg) over the other (events, physio)

For 1 it would be needed to implement an explicit link between recordings (e.g. func and events) that are to be analyzed in combination. You could consider the current IntendedFor (linking MEG or EEG coordsys and anat/T1w) a step in that direction.

For 2 it would be needed to make the relative timing of the two recordings explicit. Right now I am personally using and recommending to others the acq_time in the _scans.tsv file for that, like here.

However, regardless of the motivation behind this proposal, both item 1 and 2 are now already a problem for using BIDS to organize data in some cases. E.g. when you do combined fMRI and EEG and events. Or when you do a hyperscanning experiment, measuring EEG from multiple participants at the same time (as in https://www.cell.com/current-biology/fulltext/S0960-9822(17)30411-6). Hence I think that these need to be addressed more systematically anyway.

tsalo commented 3 years ago
  1. the link between recordings is now implemented by matching file names (up to the suffix)

It's not a major problem, but this rule doesn't apply to entities that I would describe as "within-acquisition" (e.g., echo and recording). For example, events files associated with multi-echo fMRI scans should not include the echo entity. I have an issue open in the main repo about making that distinction concrete (https://github.com/bids-standard/bids-specification/issues/530). The same would logically apply for the proposed entities part and coil/ch.

For 1 it would be needed to implement an explicit link between recordings (e.g. func and events) that are to be analyzed in combination. You could consider the current IntendedFor (linking MEG or EEG coordsys and anat/T1w) a step in that direction.

I agree, something like AcquiredWith would be a pretty good alternative to a unique identifier in the metadata.

  1. the temporal synchronization is now implemented by prioritizing one of the recordings (the func, meg, eeg) over the other (events, physio)

Yes, this prioritization is what I'd like move away from- particularly for multimodal acquisitions.

For 2 it would be needed to make the relative timing of the two recordings explicit. Right now I am personally using and recommending to others the acq_time in the _scans.tsv file for that, like here.

I hadn't considered the possibility of overlapping, but asynchronous, acquisitions (e.g., if EEG started before fMRI during a simultaneous EEG/fMRI study). What about a new metadata field called "StartTime", like the one already implemented for physio data? This would explicitly define the start time that events files should refer to, with the default being the start of the first data point (which is currently what the specification enforces).

robertoostenveld commented 3 years ago

Regarding overlapping, but asynchronous, acquisitions; could you have a look at the http://bids.neuroimaging.io/bep009 PET proposal? That deals with PET (the scanner) and blood (which I guess is drawn from the arm). I believe that contrary to events.tsv (which now by definition must be time-aligned) they already added something to indicate how the blood timeseries is time-shifted from the PET timeseries.