Open-Minds-Lab / MRdataset

MRdataset : unified interface to various neuroimaging dataset formats
https://open-minds-lab.github.io/MRdataset/
Apache License 2.0
1 stars 4 forks source link

MRdataset uses run id for differentiating between sequences, task and acquisition should taken into account #35

Open sinhaharsh opened 8 months ago

sinhaharsh commented 8 months ago

For BIDS datasets, MRdataset uses run id as an identifier. However, run id is not a unique. I found that for some BIDS datasets, there are several JSON files with the same run-id. However, they differ in other entities, for example task and acquisition. For example

sinhaharsh commented 8 months ago

A simple way to address this is to use additional information from task and acquisition entities to try to create a unique run id.

  1. However, the uniqueness is not guaranteed.
  2. Another drawback is that it is a hacky solution, which I feel would not be future proof. For example, if new entities might have to be added, the definition for run id would have to be changed again.
  3. Another issue is that mrQA would need task and acquisition info, which have to been then extracted back from the newly created string.

A good solution is to create individual classe for Run. Entities like run_id, task, acquisition can be attributes of the class. And python would naturally generate a unique id for each Run using id()