-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Introduction
BIDS or Brain Imaging Data Structure can be decribed as a simple and intuitive way to organize and describe your neuroimaging and behavioral data.
BIDS is not an image format, but describes a formal human- and computer-readable way of setting up a folder structure, a filenaming convention and the storing of metadata from neuroimaging studies.
An introduction to the BIDS specification is published in a Nature Scientific Data paper.
BIDS allows to
- easily share data with other researchers (within and between labs)
- setup processing pipelines which can be triggered automatically as the data is computer readable
- use several BIDS-compatible tools in one processing pipeline, getting the best out of all tools
- make sure that you still know your data after 10 years not looking at it as the data is human readable and structured
Community
BIDS is gaining more and more importance in the open science neuroimaging community.
A recent survey showed that the MRI is the main modality to use BIDS.
This community is very vivid with videoconferencing, online meetings, collaborations, Google Docs documents, a github page etc.
Since publication, BIDS has been extended with 4 other modalities and 23 extensions (BEP, BIDS Extension Proposal) are under development. BEP005 on ASL and BEP009 on PET are now very close to completion.

Tools
There are already some tools available to generate or interact with a BIDS dataset.
Some of these tools are organized under BIDS Apps which are portable BIDS compatible neuroimaging tools using e.g. Docker.
We can split up these tools by their use:
-
VALIDATION
A very important tool is the BIDS Validator, a web application which can be used to validate your BIDS dataset against the specification. -
CONVERTING
Datasets from all modalities must be converted to BIDS. For Dicom data, dcm2niix is an important tool. Heudiconv, dcm2BIDS and BIDSKit are other examples. Also specific tools like pybv or MNE_bids are available. -
INTERPRETING
To be able to work with BIDS datasets, one must be able to interpret datasets. A reference implementation is pybids.
Most tools are written in Python. -
PROCESSING/MANIPULATION
A lot of software tools (SPM, FSL, mriqc, ...) implement parts of the BIDS specification.
A big issue is that those tools do often not implement the whole specification.
The FSL website e.g. states:
Note
The pybids library is a more suitable choice if you are after a more robust and featured interface for working with BIDS datasets.
Challenge
As said before, almost all tools are written in Python. Some efforts are made to implement a BIDS interpreter in Matlab The topic of this project is to discuss on a good interface between BIDS and Matlab and test/improve current Matlab based packages.
Some suggestions of topics can be:
- wish list: what is necessary to have a good interface/API
- define the interface (eg like pybids, bids-matlab, matbids or something else)
- inventorize BIDS compatible packages (Python & Matlab) and identify distinct implementations
- compare current Matlab packages (BIDS-matlab, matbids, ...)
- what about adding files to the Matlab BIDS data structure on the fly during analysis (not possible in current packages)
- a completely Matlab-based BIDS converter
- what is necessary to make a (Matlab) BIDS interpreter tool future proof: what are the good design practices to make sure that the package can easily deal with new extensions
- For the coders: improve BIDS-matlab, matbids or other custom Matlab scripts, compare them, do code-profiling, improve design, improve interface, clean-up etc.
This list is obviously non-exhaustive and not-binding!
Outcome
Ideally, we end with a well-defined interface for a Matlab package (based or not on one of the existing ones), have and idea on good practices, a working-plan, etc.
Skills to participate
General
No real skills are necessary to discuss on data sharing. However, some knowledge of the BIDS specification is recommended.
Coding
If you would like to work on the code, knowledge of Matlab and eventually Python is recommended.
Organization
Depending on the group size and interests, we will need to split up in taskforces.
Links
https://bids.neuroimaging.io/
https://github.com/bids-standard
https://www.nature.com/articles/sdata201644
https://medium.com/stanford-center-for-reproducible-neuroscience/bids-usage-survey-results-72637ff039c4