Skip to main content

siibra - Software interfaces for interacting with brain atlases

Project description

siibra - Python interface for interacting with brain atlases

Authors: Big Data Analytics Group, Institute of Neuroscience and Medicine (INM-1), Forschungszentrum Jülich GmbH

Copyright 2020-2021, Forschungszentrum Jülich GmbH

:warning: siibra-python is still at an experimental stage. The API of the library is not stable, and the software is not yet fully tested. You are welcome to install and test it, but be aware that you will likely encounter bugs.

Overview

siibra is a Python client for interacting with "multilevel" brain atlases, which combine multiple brain parcellations, reference coordinate spaces and modalities. siibra is designed to allow safe and convenient interaction with brain definitions from different parcellations, to provide streamlined access to multimodal data features linked to brain regions, and to facilitate reproducible implementation of basic analyses with region-specific data features. In particular, siibra aims to unify access to regional data features at the millimeter and micrometer scale of the human brain.

siibra is largely developed inside the Human Brain Project for accessing the EBRAINS human brain atlas. It stores most of its configuration and data features in the EBRAINS Knowledge Graph, and is designed to support the OpenMINDS metadata standards.

The functionality of siibra-python matches common actions known from browsing the siibra explorer hosted on EBRAINS: Selecting different parcellations, browsing and searching brain region hierarchies, downloading maps, selecting regions, and accessing multimodal data features associated with brain regions. A key feature is a streamlined implementation of performing structured data queries for selected brain regions. siibra implements a hierarchy of features, which unifies handling of

  • spatial data features (which are linked to atlas regions via coordinates; like contact points of physiological electrodes),
  • regional data features (which are linked to atlases via a brain region specifications, like cell densities or neurotransmitter distributions), and
  • global data features (linked to an atlas via the whole brain or parcellation, like connectivity matrices or activation maps).

As a result, all forms of data features can be queried using the same mechanism (get_features()) which accepts the specification of a data modality, and considers the selected parcellation and regions in the atlas. Currently available data features include neurotransmitter densities, regional connectivity profiles, connectivity matrices, gene expressions, and spatial properties of brain regions. Additional features, including distributions of neuronal cells, functional activation maps and electrophysiologal recordings, will become available soon. Stay tuned!

siibra hides much of the complexity that would be required to interact with the individual data repositories that host the associated data. By encapsulating many aspects of interacting with different maps and reference templates spaces, it also minimizes common risks like misinterpretation of coordinates from different reference spaces, or utilisation of inconsistent versions of parcellation maps. It aims to provide a safe way of using maps defined across multiple spatial scales.

Documentation

The main place for siibra-python's documentation is at https://siibra-python.readthedocs.io.

Usage examples

To get familiar with siibra, we recommend to checkout the jupyter notebooks in the examples/ subfolder of this repository.

Installation and setup

siibra is available on pypi. To install the latest version, simply run pip install siibra.

siibra retrieves much of its data from the EBRAINS Knowledge Graph, which requires authentication. Therefore you have to provide an EBRAINS authentication token for using all features provided by siibra.

Please make sure that you have a valid EBRAINS user account by registering to EBRAINS. Then follow the instructions for obtaining EBRAINS API auth tokens. As a last step, you need to fetch a recent token from the authorization endpoint, and make it known to siibra. There are two ways to do so:

  1. Use siibra's package function siibra.set_ebrains_token().
  2. Set an environment variable HBP_AUTH_TOKEN with the token before loading the siibra module.

Note that as of now, you need to get a new token approximately every day to perform EBRAINS data queries. However, siibra implements a local cache on your harddisk, so once retrieved, your data will become usable and accessible without refreshing the token.

Acknowledgements

This software code is funded from the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 945539 (Human Brain Project SGA3).

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

siibra-0.1a7.tar.gz (484.4 kB view details)

Uploaded Source

Built Distribution

siibra-0.1a7-py3-none-any.whl (504.9 kB view details)

Uploaded Python 3

File details

Details for the file siibra-0.1a7.tar.gz.

File metadata

  • Download URL: siibra-0.1a7.tar.gz
  • Upload date:
  • Size: 484.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.1

File hashes

Hashes for siibra-0.1a7.tar.gz
Algorithm Hash digest
SHA256 7c8d553a64c6c5b9d895c981714d6153d446d2ab7e5801cbc8156b9bbf29eb49
MD5 e360e0dc3bbf258b4c35fb7fbedfb4c2
BLAKE2b-256 f531a0136e68e3b0aeb4dd87896af3ed8dacedc8f92e27272e767635a9ce0fae

See more details on using hashes here.

File details

Details for the file siibra-0.1a7-py3-none-any.whl.

File metadata

  • Download URL: siibra-0.1a7-py3-none-any.whl
  • Upload date:
  • Size: 504.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.1

File hashes

Hashes for siibra-0.1a7-py3-none-any.whl
Algorithm Hash digest
SHA256 d951b5ebc4b2baaa55a19ba829df37a6a23a1a78dfd5c2d2eb33f09314c7dd17
MD5 b5f37995bd36b74b5f06b977f9332eff
BLAKE2b-256 e14b117696fc25ac8cffdfcfc352af743836ecbba9c46628f51f02cca2d05b49

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page