Skip to content

Repository files navigation

UBAS

Unified BIDS Automation at Scale

Load and process BIDS datasets using modern, scalable and general-purpose declarative interfaces, so that you can concentrate on the neuroscience.

The UBAS philosophy fits well with researchers who want control over their heterogeneous analyses, but do not want to waste time writing slow and error-prone loops to load and manipulate the data. In fact, UBAS implements no neuroimaging analysis methods at all. Rather, it stands as an intermediary interface between the data and the methods, and aims for compatibility with existing algorithmic arsenals.

Features

  • BIDS transparency: UBAS objects follow the same intuitive hierarchy as the BIDS data in the file system: cohorts containing subjects, containing sessions, containing modalities, containing files and metadata, etc.

  • Data parallelism: computation is accelerated by default using proven primitives from the big data field: collecting, storing, filtering and processing in parallel is as easy as defining how to do it for one element.

  • Memory efficient: Achieved via lazy evaluation. File contents are only loaded to RAM when needed. An in-memory cache is still provided to speed-up access.

  • Seamless flexibility: The same features are available across levels of the tree structure, whether cohorts, subjects, sessions, etc.

Installation

 git clone https://github.com/isacdaavid/ubas.git

A conda environment is recommended. The repository is being developed and tested with Python 3.9.

conda create --name myenv python=3.9

conda activate myenv

Make sure to install the dependencies listed in setup.cfg:

pip install ...

If you wish to run the accompanying Jupyter notebook:

pip install notebook matplotlib importlib neurolib

About

Unified BIDS Automation at Scale

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages